www.niospet.com Open in urlscan Pro
2606:4700::6811:f677  Public Scan

Submitted URL: http://www.niospet.com/products/cat-self-groomer-corner-scratcher?variant=20219a12-55fa-46a3-ab7a-a375e3885a8d
Effective URL: https://www.niospet.com/products/cat-self-groomer-corner-scratcher?variant=20219a12-55fa-46a3-ab7a-a375e3885a8d
Submission: On July 20 via api from US — Scanned from GB

Form analysis 7 forms found in the DOM

<form>
  <input name="variant_id" type="hidden" value="${data.variants[0].id}">
  <button type="button" class="product-snippet__quick-shop-icon" role="addToCart" data-quick-shop="${data.handle}" data-track-product-id="${data.id}" data-track="click" data-track-content="add_to_cart" data-track-source="quick_shop">
    <svg class="" width="16" height="16" xmlns="http://www.w3.org/2000/svg">
      <path d="M8.6 1.9a.3.3 0 0 0-.3-.3h-.6a.3.3 0 0 0-.3.3v5.5H1.9a.3.3 0 0 0-.3.3v.6a.3.3 0 0 0 .3.3h5.5v5.5a.3.3 0 0 0 .3.3h.6a.3.3 0 0 0 .3-.3V8.6h5.5a.3.3 0 0 0 .3-.3v-.6a.3.3 0 0 0-.3-.3H8.6V1.9z" fill="currentColor"></path>
    </svg>
  </button>
</form>

GET /search

<form class="flex items-center" action="/search" method="get">
  <button type="submit" class="clear text-0 text-inherit cursor-pointer">
    <svg class="" width="26" height="26" xmlns="http://www.w3.org/2000/svg">
      <path fill-rule="evenodd" clip-rule="evenodd"
        d="M17.925 20.057A9.955 9.955 0 0 1 12 22C6.477 22 2 17.523 2 12S6.477 2 12 2s10 4.477 10 10a9.968 9.968 0 0 1-2.864 7.006l4.929 4.928a.8.8 0 0 1-1.132 1.132l-5-5-.008-.01zM20.4 12a8.4 8.4 0 1 1-16.8 0 8.4 8.4 0 0 1 16.8 0z"
        fill="currentColor"></path>
    </svg>
  </button>
  <input @input-debounced="header_search_predictive_render-sidebar.rerender(data=event.value, redo=true);" class="header__search_sidebar-input flex-1 text-base leading-none type-text-font-family clear" type="text" autocomplete="off" name="q"
    placeholder="Search products">
  <button type="reset" class="header__search-modal-close text-0 text-inherit clear cursor-pointer" @tap="header_search_sidebar.close()">
    <svg class="" width="26" height="26" xmlns="http://www.w3.org/2000/svg">
      <path d="M21.502 5.732A.85.85 0 0 0 20.3 4.53l-7.32 7.32L5.734 4.6a.85.85 0 0 0-1.202 1.203l7.248 7.247L4.53 20.3A.85.85 0 0 0 5.733 21.5l7.248-7.248 7.319 7.319a.85.85 0 0 0 1.202-1.202l-7.319-7.319 7.319-7.319z" fill="currentColor"></path>
    </svg>
  </button>
</form>

<form role="spz-product-forma8a8d0d2-d32d-4a50-a0fc-ad86cc8b51d2">
  <div class="product-info-body-inner product-info-body-z-index" id="product-info-body-inner-container">
    <h1 class="product-info-title m-0 leading-1.25 type-heading-font-family break-words product-title-color "> Cat Self Groomer Corner Scratcher </h1>
    <spz-render class="mt-4 lg:mt-5 i-spzhtml-layout-container i-spzhtml-element i-spzhtml-built i-spzhtml-layout" id="product-info-prices" layout="container" manual="" i-spzhtml-layout="container" style="height: auto;">
      <template> ${function() { const variantData = data.variant ||
        {"id":"20219a12-55fa-46a3-ab7a-a375e3885a8d","product_id":"a8a8d0d2-d32d-4a50-a0fc-ad86cc8b51d2","title":"White+Green","weight_unit":"kg","inventory_quantity":981,"sku":"","barcode":"","position":3,"option1":"White+Green","option2":"","option3":"","note":"","image":{"src":"\/\/img.fantaskycdn.com\/7f7f91a1fe01f17f1867e16825eb18c2.jpeg","path":"7f7f91a1fe01f17f1867e16825eb18c2.jpeg","width":1170,"height":1170,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":24,"min_quantity":1}],"weight":"0.04","compare_at_price":"8","price":"24","retail_price":"8","available":true,"url":"\/products\/cat-self-groomer-corner-scratcher?variant=20219a12-55fa-46a3-ab7a-a375e3885a8d","available_quantity":999999999,"options":[{"name":"color","value":"White+Green"}],"off_ratio":0,"flashsale_info":[],"sales":47};
        const saveType = "amount"; const productLabelDiscountOn = true; return ` <div class="flex items-center justify-between">
          <div spz-if="${!variantData.price}" class="mr-2 text-2xl leading-1.2 font-semibold color-price flex items-center">
            <spz-currency class="mr-2" container-class="product-info__header_price" value="${data.product.price_min}" layout="container"></spz-currency>
            <span class="flex" spz-if="${!variantData.price &amp;&amp; data.product.price_min < data.product.price_max}"> - <spz-currency class="ml-2" container-class="product-info__header_price" value="${data.product.price_max}"
                layout="container"></spz-currency></span>
          </div>
          <div spz-else="" class="flex items-center flex-wrap">
            <spz-currency class="mr-2" container-class="product-info__header_price" value="${variantData.price}" layout="container"></spz-currency>
            <spz-currency class="leading-1.2 color-compare-price line-through mr-2 lg:body-plus-2" container-class="product-info__header_compare-at-price" layout="container" value="${variantData.compare_at_price}"
              spz-if="${+variantData.price < +variantData.compare_at_price}"></spz-currency>
            <div spz-if="${productLabelDiscountOn &amp;&amp; variantData.off_ratio > 0}" class="product-info-saved-label inline-block color-save-price whitespace-nowrap font-semibold"> ${saveType == 'percentage' ? `-${variantData.off_ratio}%` :
              `<span>-</span><spz-currency class="inline-block" value="${variantData.compare_at_price - variantData.price}" layout="container"></spz-currency>` } </div>
          </div>
        </div> `; }()} </template>
      <div class="flex items-center justify-between">
        <div class="flex items-center flex-wrap" spz-else="">
          <spz-currency class="mr-2 i-spzhtml-element i-spzhtml-layout-container i-spzhtml-built i-spzhtml-layout" container-class="product-info__header_price" value="24" layout="container" i-spzhtml-layout="container">
            <div class="money product-info__header_price notranslate">£24.00</div>
          </spz-currency>
        </div>
      </div>
    </spz-render>
    <div class="plugin-discount-wrap empty-hidden" role="[theme-seat-for-plugin]">
      <div class="bootstrap">
        <div class="plugin__wrappers d-flex flex-column">
          <div class="plugin_modals position-relative plugin_modals-bundle" id="Modal464291" style="order: 10">
            <style>
              #Modal464291 {
                --modal_background: linear-gradient(0deg, #ebc19e, #fff3e8 100%);
                --modal_caret_background: #fff2e9;
                --modal_title_color: #B83D07;
                --modal_close_color: #FFFFFF;
                --modal_close_background_color: #F03010;
                --list_border_color: #dddddd;
              }

              @media (max-width: 767.98px) {
                #Modal464291 .coupon_plugin__coupon:last-child {
                  padding-bottom: 0;
                }
              }

              #Modal464291 .modal-footer {
                position: relative;
                margin-top: -30px;
              }

              #Modal464291 .modal-footer::before {
                content: '';
                position: absolute;
                bottom: 0;
                left: 0;
                right: 0;
                height: 150%;
                background-image: url(//img.fantaskycdn.com/oss/operation/e8ebb03dbb710457ca3b4b6a70898ab2.svg);
                background-repeat: no-repeat;
                background-size: 100%;
                pointer-events: none;
              }

              @media (max-width: 767.98px) {
                #Modal464291 .discount-present-item:last-child {
                  padding-bottom: 40px;
                }

                #Modal464291 .plugin_modals__wrapper-list>a:last-child {
                  padding-bottom: 14px;
                }
              }
            </style>
            <!-- 入口 -->
            <div class="plugin_modals__list" data-toggle="modal" data-target="#target_Modal464291" impr="1" imprevt="1" imprsd="true">
              <div class="plugin_modals__list-name"><a class="bundle_list" href="/promotions/discount/d40f8ca6-6030-4d79-a051-774c31218582" style="display: inline-flex; align-items: start">
<div class="bundle_svg" style="margin-inline-end: 4px; margin-top: 6px">
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="none"><g fill="#EB391B" clip-path="url(#a)"><path d="M15.805 2.747a1.774 1.774 0 0 0-1.583-.97h-4.59c-.476 0-.93.191-1.265.528L2.305 8.429c0 .002 0 .003-.002.003a1.809 1.809 0 0 0-.444.777L.658 7.16a1.777 1.777 0 0 1 .633-2.433L8.73.377c.41-.24.898-.306 1.358-.181l4.435 1.188c.672.18 1.15.724 1.28 1.363Z" opacity=".55"></path><path d="M9.631 1.778h4.591c.982 0 1.778.795 1.778 1.778v4.597c0 .471-.187.924-.52 1.257l-6.061 6.06c-.691.692-1.81.695-2.507.01L2.32 10.945a1.779 1.779 0 0 1-.018-2.514c.002 0 .003 0 .003-.002l6.062-6.124a1.778 1.778 0 0 1 1.264-.528ZM12 7.11a1.334 1.334 0 1 0-.001-2.668 1.334 1.334 0 0 0 0 2.668Z"></path></g><defs><clipPath id="a"><path fill="#fff" d="M0 0h16v16H0z"></path></clipPath></defs></svg>
</div>
<div>
  
    <li>Choose <span>2</span> piece(s) to enjoy bundle sales price for <span class="money notranslate">£38.7</span></li>
  
</div>
</a></div>
              <div class="plugin_modals__list-labels text-right"></div>
            </div>
          </div>
        </div>
      </div>
    </div>
    <spz-variants class="product-info__variants flex flex-col items-start i-spzhtml-layout-container i-spzhtml-element i-spzhtml-built i-spzhtml-layout" layout="container" id="product-info-variants" src="script:product-json" switch-slide="[]"
      slide="product-detail-images" manual="" interference="" select-soldout-suffix=" - Sold out" interact="hover" inherit-url-variant="" @mouseout="product-info-selected-variant-option1.rerender(data=event);"
      @colormouseover="product-info-selected-variant-option1.rerender(data=event);" i-spzhtml-layout="container">
      <fieldset class="product-info__variants_content mx-0 mt-4 lg:mt-5" name="color">
        <legend class="w-full m-0 p-0">
          <span class="lg:body-plus-2 font-semibold leading-1.25 product-info__variants_title">Color:&nbsp;</span>
          <spz-render class="product-info-selected-variant-option-text inline-block color-body-70 leading-1.25 lg:body-minus-2 i-spzhtml-layout-container i-spzhtml-element i-spzhtml-built i-spzhtml-layout" id="product-info-selected-variant-option1"
            layout="container" manual="" i-spzhtml-layout="container" style="height: 18px;">
            <template> ${function(){ const optName = "color"; const optionValue = data.originData.selectData ? data.originData.selectData[optName].value : data.originData.value; const optionValueText = optionValue ? (optionValue) : ''; return
              `<span>${optionValueText}</span>`; }()} </template>
            <span>White+Green</span></spz-render>
        </legend>
        <div class="flex flex-wrap ">
          <div class="relative mt-3 mr-3">
            <input type="radio" option="White(2 Pcs)" id="product-info-variant-White(2 Pcs)-0" class="pointer-events-auto" name="product-info-variant-color" value="White(2 Pcs)" form="product-info-body"
              @input-debounced="product-info-selected-variant-option1.rerender(data=event);">
            <label class="product-info-variant-option relative flex items-center break-words flex-shrink-0 overflow-hidden 
    
      rounded-sm
    
  " data-type="image-with-text">
              <spz-img src="//img.fantaskycdn.com/b63b68e05e6ec771bcaf0d2d98e0ee03_48x.jpeg" layout="responsive" width="44" height="44" alt="" object-fit="cover" auto-fit=""
                class="i-spzhtml-layout-responsive i-spzhtml-layout-size-defined i-spzhtml-element i-spzhtml-built i-spzhtml-layout" i-spzhtml-layout="responsive" complete=""><i-spzhtml-sizer style="padding-top:100%;"></i-spzhtml-sizer><img
                  decoding="async" alt="" src="//img.fantaskycdn.com/b63b68e05e6ec771bcaf0d2d98e0ee03_48x.jpeg" class="i-spzhtml-fill-content i-spzhtml-replaced-content" style="object-fit: cover;"></spz-img>
              <span class="break-words">White(2 Pcs)</span>
            </label>
          </div>
          <div class="relative mt-3 mr-3">
            <input type="radio" option="Green(2 Pcs)" id="product-info-variant-Green(2 Pcs)-1" class="pointer-events-auto" name="product-info-variant-color" value="Green(2 Pcs)" form="product-info-body"
              @input-debounced="product-info-selected-variant-option1.rerender(data=event);">
            <label class="product-info-variant-option relative flex items-center break-words flex-shrink-0 overflow-hidden 
    
      rounded-sm
    
  " data-type="image-with-text">
              <spz-img src="//img.fantaskycdn.com/4ab86e62d8a185b5ce7fd669508af27e_48x.jpeg" layout="responsive" width="44" height="44" alt="" object-fit="cover" auto-fit=""
                class="i-spzhtml-layout-responsive i-spzhtml-layout-size-defined i-spzhtml-element i-spzhtml-built i-spzhtml-layout" i-spzhtml-layout="responsive" complete=""><i-spzhtml-sizer style="padding-top:100%;"></i-spzhtml-sizer><img
                  decoding="async" alt="" src="//img.fantaskycdn.com/4ab86e62d8a185b5ce7fd669508af27e_48x.jpeg" class="i-spzhtml-fill-content i-spzhtml-replaced-content" style="object-fit: cover;"></spz-img>
              <span class="break-words">Green(2 Pcs)</span>
            </label>
          </div>
          <div class="relative mt-3 mr-3">
            <input type="radio" option="White+Green" id="product-info-variant-White+Green-2" class="pointer-events-auto" name="product-info-variant-color" value="White+Green" form="product-info-body"
              @input-debounced="product-info-selected-variant-option1.rerender(data=event);" checked="">
            <label class="product-info-variant-option relative flex items-center break-words flex-shrink-0 overflow-hidden 
    
      rounded-sm
    
  " data-type="image-with-text">
              <spz-img src="//img.fantaskycdn.com/7f7f91a1fe01f17f1867e16825eb18c2_48x.jpeg" layout="responsive" width="44" height="44" alt="" object-fit="cover" auto-fit=""
                class="i-spzhtml-layout-responsive i-spzhtml-layout-size-defined i-spzhtml-element i-spzhtml-built i-spzhtml-layout" i-spzhtml-layout="responsive" complete=""><i-spzhtml-sizer style="padding-top:100%;"></i-spzhtml-sizer><img
                  decoding="async" alt="" src="//img.fantaskycdn.com/7f7f91a1fe01f17f1867e16825eb18c2_48x.jpeg" class="i-spzhtml-fill-content i-spzhtml-replaced-content" style="object-fit: cover;"></spz-img>
              <span class="break-words">White+Green</span>
            </label>
          </div>
          <div class="relative mt-3 mr-3">
            <input type="radio" option="Blue" id="product-info-variant-Blue-3" class="pointer-events-auto" name="product-info-variant-color" value="Blue" form="product-info-body"
              @input-debounced="product-info-selected-variant-option1.rerender(data=event);">
            <label class="product-info-variant-option relative flex items-center break-words flex-shrink-0 overflow-hidden 
    
      rounded-sm
    
  " data-type="image-with-text">
              <spz-img src="//img.fantaskycdn.com/dcf04b091b92e579d2754a6034aac229_48x.jpeg" layout="responsive" width="44" height="44" alt="" object-fit="cover" auto-fit=""
                class="i-spzhtml-layout-responsive i-spzhtml-layout-size-defined i-spzhtml-element i-spzhtml-built i-spzhtml-layout" i-spzhtml-layout="responsive" complete=""><i-spzhtml-sizer style="padding-top:100%;"></i-spzhtml-sizer><img
                  decoding="async" alt="" src="//img.fantaskycdn.com/dcf04b091b92e579d2754a6034aac229_48x.jpeg" class="i-spzhtml-fill-content i-spzhtml-replaced-content" style="object-fit: cover;"></spz-img>
              <span class="break-words">Blue</span>
            </label>
          </div>
          <div class="relative mt-3 mr-3">
            <input type="radio" option="Pink" id="product-info-variant-Pink-4" class="pointer-events-auto" name="product-info-variant-color" value="Pink" form="product-info-body"
              @input-debounced="product-info-selected-variant-option1.rerender(data=event);">
            <label class="product-info-variant-option relative flex items-center break-words flex-shrink-0 overflow-hidden 
    
      rounded-sm
    
  " data-type="image-with-text">
              <spz-img src="//img.fantaskycdn.com/266cd46ee63b5b46d7b27335beed1610_48x.jpeg" layout="responsive" width="44" height="44" alt="" object-fit="cover" auto-fit=""
                class="i-spzhtml-layout-responsive i-spzhtml-layout-size-defined i-spzhtml-element i-spzhtml-built i-spzhtml-layout" i-spzhtml-layout="responsive" complete=""><i-spzhtml-sizer style="padding-top:100%;"></i-spzhtml-sizer><img
                  decoding="async" alt="" src="//img.fantaskycdn.com/266cd46ee63b5b46d7b27335beed1610_48x.jpeg" class="i-spzhtml-fill-content i-spzhtml-replaced-content" style="object-fit: cover;"></spz-img>
              <span class="break-words">Pink</span>
            </label>
          </div>
        </div>
      </fieldset>
      <spz-render id="product-variant-option1-error-tip" manual="" layout="container" class="i-spzhtml-layout-container i-spzhtml-element i-spzhtml-built i-spzhtml-layout" i-spzhtml-layout="container">
        <template> ${function(){ const tipText = "Please select a {{ name }}".replace(/\{\{\s+name\s+\}\}/g, data); return `<div class="product-info__variants-tips font-bold">${tipText}</div>` }()} </template>
      </spz-render>
    </spz-variants>
    <div class=" mt-4  lg:mt-5">
      <div class="leading-1.25 font-semibold lg:body-plus-2">Quantity</div>
      <spz-quantity class="product-info-qty mt-2 lg:mt-3 i-spzhtml-layout-fixed-height i-spzhtml-layout-size-defined i-spzhtml-element i-spzhtml-built i-spzhtml-layout" id="product-info-quantity" name="quantity" value="1" min="1" max="999999999"
        icon-class="product-info-qty-btn clear flex items-center justify-center flex-shrink-0" input-class="product-info-qty-input clear flex-shrink-0 body-plus-2 text-center" height="40" layout="fixed-height" style="height:40px;"
        i-spzhtml-layout="fixed-height">
        <div class="i-spzhtml-fill-content i-spzhtml-replaced-content"><span role="button" aria-label="decrease" class="i-spzhtml-quantity-number-decrease product-info-qty-btn clear flex items-center justify-center flex-shrink-0" disabled=""><svg
              role="decrease" class="" width="16" height="16" xmlns="http://www.w3.org/2000/svg">
              <path d="M13.7 7.4a.3.3 0 0 1 .3.3v.6a.3.3 0 0 1-.3.3H2.3a.3.3 0 0 1-.3-.3v-.6a.3.3 0 0 1 .3-.3h11.4z" fill="currentColor"></path>
            </svg></span><input type="number" name="quantity" min="1" max="999999999" class="i-spzhtml-quantity-number-input product-info-qty-input clear flex-shrink-0 body-plus-2 text-center"><span role="button" aria-label="increase"
            class="i-spzhtml-quantity-number-increase product-info-qty-btn clear flex items-center justify-center flex-shrink-0"><svg role="increase" class="" width="16" height="16" xmlns="http://www.w3.org/2000/svg">
              <path d="M8.3 14a.3.3 0 0 0 .3-.3V8.6h5.1a.3.3 0 0 0 .3-.3v-.6a.3.3 0 0 0-.3-.3H8.6V2.3a.3.3 0 0 0-.3-.3h-.6a.3.3 0 0 0-.3.3v5.1H2.3a.3.3 0 0 0-.3.3v.6a.3.3 0 0 0 .3.3h5.1v5.1a.3.3 0 0 0 .3.3h.6z" fill="currentColor"></path>
            </svg></span></div>
      </spz-quantity>
    </div>
    <div class="mt-4 lg:mt-5">
      <button class="relative  button-secondary  flex items-center justify-center w-full body-plus-2 leading-1.25 type-text-font-family rounded-btn product-info_atc_btn" type="button" role="addToCart" data-track="click"
        data-track-content="add_to_cart" data-track-source="add_to_cart">
        <span role="content">Add to cart</span>
        <spz-render id="product-info-btn-price" layout="container" template="product-info-btn-price-template" manual="" class="i-spzhtml-layout-container i-spzhtml-element i-spzhtml-built i-spzhtml-layout" i-spzhtml-layout="container"
          style="height: auto;">
          <div class="flex"><span class="product_price_before"></span><spz-currency value="24" layout="container" class="i-spzhtml-element i-spzhtml-layout-container i-spzhtml-built i-spzhtml-layout" i-spzhtml-layout="container">
              <div class="money notranslate">£24.00</div>
            </spz-currency></div>
        </spz-render>
        <style>
          .product_price_before::before {
            content: ' - ';
            display: block;
            width: 20px;
          }
        </style>
        <template id="product-info-btn-price-template"> ${function(){ const wholesale_enabled = false; const qty = data.quantity || 1; const currentSelectVariant = data.variant; const defaultVariant = (data.product &amp;&amp; data.product.variants
          &amp;&amp; data.product.variants[0]); const productVariant =
          {"id":"20219a12-55fa-46a3-ab7a-a375e3885a8d","product_id":"a8a8d0d2-d32d-4a50-a0fc-ad86cc8b51d2","title":"White+Green","weight_unit":"kg","inventory_quantity":981,"sku":"","barcode":"","position":3,"option1":"White+Green","option2":"","option3":"","note":"","image":{"src":"\/\/img.fantaskycdn.com\/7f7f91a1fe01f17f1867e16825eb18c2.jpeg","path":"7f7f91a1fe01f17f1867e16825eb18c2.jpeg","width":1170,"height":1170,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":24,"min_quantity":1}],"weight":"0.04","compare_at_price":"8","price":"24","retail_price":"8","available":true,"url":"\/products\/cat-self-groomer-corner-scratcher?variant=20219a12-55fa-46a3-ab7a-a375e3885a8d","available_quantity":999999999,"options":[{"name":"color","value":"White+Green"}],"off_ratio":0,"flashsale_info":[],"sales":47};
          const variantData = currentSelectVariant || defaultVariant || productVariant; const wholesale_price = variantData.wholesale_price || []; if(wholesale_enabled &amp;&amp; wholesale_price.length &gt; 0) { let wholesaleIndex =
          wholesale_price.findIndex(item =&gt; { return item.min_quantity &gt; qty; }); if(wholesaleIndex &lt; 0){ wholesaleIndex = wholesale_price.length - 1; }else if(wholesaleIndex &gt; 0){ wholesaleIndex = wholesaleIndex - 1; } const
          wholesalePrice = wholesale_price[wholesaleIndex] || ''; return ` <div class="flex">
            <span class="product_price_before"></span><spz-currency value="${wholesalePrice.price}" layout="container"></spz-currency>
          </div> ` }else { const price = variantData &amp;&amp; variantData.price; return price != undefined ? `<div class="flex"><span class="product_price_before"></span><spz-currency value="${price}" layout="container"></spz-currency></div>` :
          '<span></span>'; } }()} </template>
        <div class="loading items-center justify-center absolute inset-0 flex" role="loading" show="">
          <div class="loading-bounce"></div>
        </div>
      </button>
      <button class="relative button-primary w-full body-plus-2 leading-1.25 type-text-font-family rounded-btn mt-2 lg:mt-3 product-info_atc_btn" role="buyNow" type="button" data-track="click" data-track-content="checkout"
        data-track-source="buy_now">
        <span role="content">Buy now</span>
        <div class="loading items-center justify-center absolute inset-0 flex" role="loading" show="">
          <div class="loading-bounce"></div>
        </div>
      </button>
      <div class="product-info__out_stock mt-2 text-center text-sm leading-1.3 opacity-70 lg:mt-3 hidden"> Product was out of stock. </div>
      <div class="product-info__unavailable mt-2 text-center text-sm leading-1.3 opacity-70 lg:mt-3 hidden"> Product is unavailable. </div>
    </div>
    <spz-render class="mt-4 lg:mt-5 i-spzhtml-layout-container i-spzhtml-element i-spzhtml-built i-spzhtml-layout" layout="container" id="product-detail-featured" manual="" i-spzhtml-layout="container" style="height: 16px;">
      <template> ${function(){ const variantData = data.variant ||
        {"id":"20219a12-55fa-46a3-ab7a-a375e3885a8d","product_id":"a8a8d0d2-d32d-4a50-a0fc-ad86cc8b51d2","title":"White+Green","weight_unit":"kg","inventory_quantity":981,"sku":"","barcode":"","position":3,"option1":"White+Green","option2":"","option3":"","note":"","image":{"src":"\/\/img.fantaskycdn.com\/7f7f91a1fe01f17f1867e16825eb18c2.jpeg","path":"7f7f91a1fe01f17f1867e16825eb18c2.jpeg","width":1170,"height":1170,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":24,"min_quantity":1}],"weight":"0.04","compare_at_price":"8","price":"24","retail_price":"8","available":true,"url":"\/products\/cat-self-groomer-corner-scratcher?variant=20219a12-55fa-46a3-ab7a-a375e3885a8d","available_quantity":999999999,"options":[{"name":"color","value":"White+Green"}],"off_ratio":0,"flashsale_info":[],"sales":47};
        return ` <div class="body-minus-2">
          <div spz-if="${!!(variantData &amp;&amp; variantData.sku)}" class="product-detail-featured-item"> Sku : <span>${variantData &amp;&amp; variantData.sku}</span>
          </div>
          <div spz-if="${variantData &amp;&amp; +variantData.weight > 0}" class="product-detail-featured-item"> Weight : <span>${variantData &amp;&amp; variantData.weight}${variantData &amp;&amp; variantData.weight_unit}</span>
          </div>
          <div spz-if="${!!(variantData &amp;&amp; variantData.barcode)}" class="product-detail-featured-item"> Barcode : <span>${variantData &amp;&amp; variantData.barcode}</span>
          </div>
        </div> ` }()} </template>
      <div class="body-minus-2">
        <div class="product-detail-featured-item" spz-if="true"> Weight : <span>0.04kg</span>
        </div>
      </div>
    </spz-render>
    <div class="bundle-combination-container">
      <div class="common__product-row">
        <bundle-product-list data-version="0112 15:08" class="bundle-main" style-type="sutra" is-quick-shop="true" pid="a8a8d0d2-d32d-4a50-a0fc-ad86cc8b51d2" title-text="Frequently Bought Together " title-color="#000000" btn-bg-color="#EE7C30"
          btn-text-color="#ffffff" impr="1" imprevt="1" imprsd="true" style=""></bundle-product-list>
      </div>
    </div>
    <style>
      .bundle-combination-container {
        --color_price: #CD201A;
        --color_title: #000000;
        --color_btn_bg: #EE7C30;
        --color_btn_color: #ffffff;
        --color_origin_price: #BEBEBE;
      }

      .app-container {
        padding: var(--general-layout-spacing, var(--page-spacing, 40px));
        max-width: var(--general-layout-width, var(--layout-width, var(--page-width, 1140px)));
        margin: 0 auto;
      }
    </style>
    <script id="apps_bundle-1539149753700">
      try {
        (() => {
          const productInfo = document.querySelector('.product-info');
          const productInfoBody = document.querySelector('.product-info-body');
          const curProductInfo = productInfo || productInfoBody;
          const productInfoIn = !document.querySelector('div[data-section-type*="//apps/appbundle/blocks/bundle-combination/"] bundle-product-list');
          // 仅针对 Hero 做处理 ,debug APPS-2880
          if (window.C_SETTINGS.theme.merchant_theme_name === 'Hero' && productInfoIn) {
            const $target = curProductInfo?.parentElement;
            if ($target) {
              const $targetZIndex = window.getComputedStyle($target)['zIndex'];
              let newIndex = $targetZIndex === ' auto' ? 1 : parseInt($targetZIndex) + 1;
              $target.style.zIndex = newIndex;
            }
          }
          // Flash主题的遮挡问题,低于20,被兄弟节点图片覆盖,超过100,盖住了底部满减优惠,超过1000盖住了顶部吸附,只能取20-100之间
          if (curProductInfo && window?.C_SETTINGS?.theme.merchant_theme_name === "Flash") {
            curProductInfo.style.zIndex = 20;
          }
          try {
            ! function(t) {
              "function" == typeof define && define.amd ? define(t) : t()
            }((function() {
              "use strict";

              function t(t, e, i, o) {
                var n, s = arguments.length,
                  r = s < 3 ? e : null === o ? o = Object.getOwnPropertyDescriptor(e, i) : o;
                if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(t, e, i, o);
                else
                  for (var l = t.length - 1; l >= 0; l--)(n = t[l]) && (r = (s < 3 ? n(r) : s > 3 ? n(e, i, r) : n(e, i)) || r);
                return s > 3 && r && Object.defineProperty(e, i, r), r
              }

              function e(t, e, i, o) {
                return new(i || (i = Promise))((function(n, s) {
                  function r(t) {
                    try {
                      a(o.next(t))
                    } catch (t) {
                      s(t)
                    }
                  }

                  function l(t) {
                    try {
                      a(o.throw(t))
                    } catch (t) {
                      s(t)
                    }
                  }

                  function a(t) {
                    var e;
                    t.done ? n(t.value) : (e = t.value, e instanceof i ? e : new i((function(t) {
                      t(e)
                    }))).then(r, l)
                  }
                  a((o = o.apply(t, e || [])).next())
                }))
              }
              "function" == typeof SuppressedError && SuppressedError;
              const i = window,
                o = i.ShadowRoot && (void 0 === i.ShadyCSS || i.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype,
                n = Symbol(),
                s = new WeakMap;
              class r {
                constructor(t, e, i) {
                  if (this._$cssResult$ = !0, i !== n) throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
                  this.cssText = t, this.t = e
                }
                get styleSheet() {
                  let t = this.o;
                  const e = this.t;
                  if (o && void 0 === t) {
                    const i = void 0 !== e && 1 === e.length;
                    i && (t = s.get(e)), void 0 === t && ((this.o = t = new CSSStyleSheet).replaceSync(this.cssText), i && s.set(e, t))
                  }
                  return t
                }
                toString() {
                  return this.cssText
                }
              }
              const l = (t, ...e) => {
                  const i = 1 === t.length ? t[0] : e.reduce(((e, i, o) => e + (t => {
                    if (!0 === t._$cssResult$) return t.cssText;
                    if ("number" == typeof t) return t;
                    throw Error("Value passed to 'css' function must be a 'css' function result: " + t + ". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")
                  })(i) + t[o + 1]), t[0]);
                  return new r(i, t, n)
                },
                a = o ? t => t : t => t instanceof CSSStyleSheet ? (t => {
                  let e = "";
                  for (const i of t.cssRules) e += i.cssText;
                  return (t => new r("string" == typeof t ? t : t + "", void 0, n))(e)
                })(t) : t;
              var d;
              const c = window,
                p = c.trustedTypes,
                h = p ? p.emptyScript : "",
                u = c.reactiveElementPolyfillSupport,
                f = {
                  toAttribute(t, e) {
                    switch (e) {
                      case Boolean:
                        t = t ? h : null;
                        break;
                      case Object:
                      case Array:
                        t = null == t ? t : JSON.stringify(t)
                    }
                    return t
                  },
                  fromAttribute(t, e) {
                    let i = t;
                    switch (e) {
                      case Boolean:
                        i = null !== t;
                        break;
                      case Number:
                        i = null === t ? null : Number(t);
                        break;
                      case Object:
                      case Array:
                        try {
                          i = JSON.parse(t)
                        } catch (t) {
                          i = null
                        }
                    }
                    return i
                  }
                },
                v = (t, e) => e !== t && (e == e || t == t),
                m = {
                  attribute: !0,
                  type: String,
                  converter: f,
                  reflect: !1,
                  hasChanged: v
                },
                g = "finalized";
              class y extends HTMLElement {
                constructor() {
                  super(), this._$Ei = new Map, this.isUpdatePending = !1, this.hasUpdated = !1, this._$El = null, this._$Eu()
                }
                static addInitializer(t) {
                  var e;
                  this.finalize(), (null !== (e = this.h) && void 0 !== e ? e : this.h = []).push(t)
                }
                static get observedAttributes() {
                  this.finalize();
                  const t = [];
                  return this.elementProperties.forEach(((e, i) => {
                    const o = this._$Ep(i, e);
                    void 0 !== o && (this._$Ev.set(o, i), t.push(o))
                  })), t
                }
                static createProperty(t, e = m) {
                  if (e.state && (e.attribute = !1), this.finalize(), this.elementProperties.set(t, e), !e.noAccessor && !this.prototype.hasOwnProperty(t)) {
                    const i = "symbol" == typeof t ? Symbol() : "__" + t,
                      o = this.getPropertyDescriptor(t, i, e);
                    void 0 !== o && Object.defineProperty(this.prototype, t, o)
                  }
                }
                static getPropertyDescriptor(t, e, i) {
                  return {
                    get() {
                      return this[e]
                    },
                    set(o) {
                      const n = this[t];
                      this[e] = o, this.requestUpdate(t, n, i)
                    },
                    configurable: !0,
                    enumerable: !0
                  }
                }
                static getPropertyOptions(t) {
                  return this.elementProperties.get(t) || m
                }
                static finalize() {
                  if (this.hasOwnProperty(g)) return !1;
                  this[g] = !0;
                  const t = Object.getPrototypeOf(this);
                  if (t.finalize(), void 0 !== t.h && (this.h = [...t.h]), this.elementProperties = new Map(t.elementProperties), this._$Ev = new Map, this.hasOwnProperty("properties")) {
                    const t = this.properties,
                      e = [...Object.getOwnPropertyNames(t), ...Object.getOwnPropertySymbols(t)];
                    for (const i of e) this.createProperty(i, t[i])
                  }
                  return this.elementStyles = this.finalizeStyles(this.styles), !0
                }
                static finalizeStyles(t) {
                  const e = [];
                  if (Array.isArray(t)) {
                    const i = new Set(t.flat(1 / 0).reverse());
                    for (const t of i) e.unshift(a(t))
                  } else void 0 !== t && e.push(a(t));
                  return e
                }
                static _$Ep(t, e) {
                  const i = e.attribute;
                  return !1 === i ? void 0 : "string" == typeof i ? i : "string" == typeof t ? t.toLowerCase() : void 0
                }
                _$Eu() {
                  var t;
                  this._$E_ = new Promise((t => this.enableUpdating = t)), this._$AL = new Map, this._$Eg(), this.requestUpdate(), null === (t = this.constructor.h) || void 0 === t || t.forEach((t => t(this)))
                }
                addController(t) {
                  var e, i;
                  (null !== (e = this._$ES) && void 0 !== e ? e : this._$ES = []).push(t), void 0 !== this.renderRoot && this.isConnected && (null === (i = t.hostConnected) || void 0 === i || i.call(t))
                }
                removeController(t) {
                  var e;
                  null === (e = this._$ES) || void 0 === e || e.splice(this._$ES.indexOf(t) >>> 0, 1)
                }
                _$Eg() {
                  this.constructor.elementProperties.forEach(((t, e) => {
                    this.hasOwnProperty(e) && (this._$Ei.set(e, this[e]), delete this[e])
                  }))
                }
                createRenderRoot() {
                  var t;
                  const e = null !== (t = this.shadowRoot) && void 0 !== t ? t : this.attachShadow(this.constructor.shadowRootOptions);
                  return ((t, e) => {
                    o ? t.adoptedStyleSheets = e.map((t => t instanceof CSSStyleSheet ? t : t.styleSheet)) : e.forEach((e => {
                      const o = document.createElement("style"),
                        n = i.litNonce;
                      void 0 !== n && o.setAttribute("nonce", n), o.textContent = e.cssText, t.appendChild(o)
                    }))
                  })(e, this.constructor.elementStyles), e
                }
                connectedCallback() {
                  var t;
                  void 0 === this.renderRoot && (this.renderRoot = this.createRenderRoot()), this.enableUpdating(!0), null === (t = this._$ES) || void 0 === t || t.forEach((t => {
                    var e;
                    return null === (e = t.hostConnected) || void 0 === e ? void 0 : e.call(t)
                  }))
                }
                enableUpdating(t) {}
                disconnectedCallback() {
                  var t;
                  null === (t = this._$ES) || void 0 === t || t.forEach((t => {
                    var e;
                    return null === (e = t.hostDisconnected) || void 0 === e ? void 0 : e.call(t)
                  }))
                }
                attributeChangedCallback(t, e, i) {
                  this._$AK(t, i)
                }
                _$EO(t, e, i = m) {
                  var o;
                  const n = this.constructor._$Ep(t, i);
                  if (void 0 !== n && !0 === i.reflect) {
                    const s = (void 0 !== (null === (o = i.converter) || void 0 === o ? void 0 : o.toAttribute) ? i.converter : f).toAttribute(e, i.type);
                    this._$El = t, null == s ? this.removeAttribute(n) : this.setAttribute(n, s), this._$El = null
                  }
                }
                _$AK(t, e) {
                  var i;
                  const o = this.constructor,
                    n = o._$Ev.get(t);
                  if (void 0 !== n && this._$El !== n) {
                    const t = o.getPropertyOptions(n),
                      s = "function" == typeof t.converter ? {
                        fromAttribute: t.converter
                      } : void 0 !== (null === (i = t.converter) || void 0 === i ? void 0 : i.fromAttribute) ? t.converter : f;
                    this._$El = n, this[n] = s.fromAttribute(e, t.type), this._$El = null
                  }
                }
                requestUpdate(t, e, i) {
                  let o = !0;
                  void 0 !== t && (((i = i || this.constructor.getPropertyOptions(t)).hasChanged || v)(this[t], e) ? (this._$AL.has(t) || this._$AL.set(t, e), !0 === i.reflect && this._$El !== t && (void 0 === this._$EC && (this._$EC =
                    new Map), this._$EC.set(t, i))) : o = !1), !this.isUpdatePending && o && (this._$E_ = this._$Ej())
                }
                async _$Ej() {
                  this.isUpdatePending = !0;
                  try {
                    await this._$E_
                  } catch (t) {
                    Promise.reject(t)
                  }
                  const t = this.scheduleUpdate();
                  return null != t && await t, !this.isUpdatePending
                }
                scheduleUpdate() {
                  return this.performUpdate()
                }
                performUpdate() {
                  var t;
                  if (!this.isUpdatePending) return;
                  this.hasUpdated, this._$Ei && (this._$Ei.forEach(((t, e) => this[e] = t)), this._$Ei = void 0);
                  let e = !1;
                  const i = this._$AL;
                  try {
                    e = this.shouldUpdate(i), e ? (this.willUpdate(i), null === (t = this._$ES) || void 0 === t || t.forEach((t => {
                      var e;
                      return null === (e = t.hostUpdate) || void 0 === e ? void 0 : e.call(t)
                    })), this.update(i)) : this._$Ek()
                  } catch (t) {
                    throw e = !1, this._$Ek(), t
                  }
                  e && this._$AE(i)
                }
                willUpdate(t) {}
                _$AE(t) {
                  var e;
                  null === (e = this._$ES) || void 0 === e || e.forEach((t => {
                    var e;
                    return null === (e = t.hostUpdated) || void 0 === e ? void 0 : e.call(t)
                  })), this.hasUpdated || (this.hasUpdated = !0, this.firstUpdated(t)), this.updated(t)
                }
                _$Ek() {
                  this._$AL = new Map, this.isUpdatePending = !1
                }
                get updateComplete() {
                  return this.getUpdateComplete()
                }
                getUpdateComplete() {
                  return this._$E_
                }
                shouldUpdate(t) {
                  return !0
                }
                update(t) {
                  void 0 !== this._$EC && (this._$EC.forEach(((t, e) => this._$EO(e, this[e], t))), this._$EC = void 0), this._$Ek()
                }
                updated(t) {}
                firstUpdated(t) {}
              }
              var b;
              y[g] = !0, y.elementProperties = new Map, y.elementStyles = [], y.shadowRootOptions = {
                mode: "open"
              }, null == u || u({
                ReactiveElement: y
              }), (null !== (d = c.reactiveElementVersions) && void 0 !== d ? d : c.reactiveElementVersions = []).push("1.6.3");
              const x = window,
                w = x.trustedTypes,
                _ = w ? w.createPolicy("lit-html", {
                  createHTML: t => t
                }) : void 0,
                $ = "$lit$",
                S = `lit$${(Math.random()+"").slice(9)}$`,
                C = "?" + S,
                k = `<${C}>`,
                E = document,
                T = () => E.createComment(""),
                P = t => null === t || "object" != typeof t && "function" != typeof t,
                A = Array.isArray,
                I = "[ \t\n\f\r]",
                z = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,
                O = /-->/g,
                H = />/g,
                L = RegExp(`>|${I}(?:([^\\s"'>=/]+)(${I}*=${I}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`, "g"),
                B = /'/g,
                j = /"/g,
                N = /^(?:script|style|textarea|title)$/i,
                R = (t => (e, ...i) => ({
                  _$litType$: t,
                  strings: e,
                  values: i
                }))(1),
                q = Symbol.for("lit-noChange"),
                V = Symbol.for("lit-nothing"),
                M = new WeakMap,
                U = E.createTreeWalker(E, 129, null, !1);

              function D(t, e) {
                if (!Array.isArray(t) || !t.hasOwnProperty("raw")) throw Error("invalid template strings array");
                return void 0 !== _ ? _.createHTML(e) : e
              }
              const W = (t, e) => {
                const i = t.length - 1,
                  o = [];
                let n, s = 2 === e ? "<svg>" : "",
                  r = z;
                for (let e = 0; e < i; e++) {
                  const i = t[e];
                  let l, a, d = -1,
                    c = 0;
                  for (; c < i.length && (r.lastIndex = c, a = r.exec(i), null !== a);) c = r.lastIndex, r === z ? "!--" === a[1] ? r = O : void 0 !== a[1] ? r = H : void 0 !== a[2] ? (N.test(a[2]) && (n = RegExp("</" + a[2], "g")), r = L) :
                    void 0 !== a[3] && (r = L) : r === L ? ">" === a[0] ? (r = null != n ? n : z, d = -1) : void 0 === a[1] ? d = -2 : (d = r.lastIndex - a[2].length, l = a[1], r = void 0 === a[3] ? L : '"' === a[3] ? j : B) : r === j ||
                    r === B ? r = L : r === O || r === H ? r = z : (r = L, n = void 0);
                  const p = r === L && t[e + 1].startsWith("/>") ? " " : "";
                  s += r === z ? i + k : d >= 0 ? (o.push(l), i.slice(0, d) + $ + i.slice(d) + S + p) : i + S + (-2 === d ? (o.push(void 0), e) : p)
                }
                return [D(t, s + (t[i] || "<?>") + (2 === e ? "</svg>" : "")), o]
              };
              class F {
                constructor({
                  strings: t,
                  _$litType$: e
                }, i) {
                  let o;
                  this.parts = [];
                  let n = 0,
                    s = 0;
                  const r = t.length - 1,
                    l = this.parts,
                    [a, d] = W(t, e);
                  if (this.el = F.createElement(a, i), U.currentNode = this.el.content, 2 === e) {
                    const t = this.el.content,
                      e = t.firstChild;
                    e.remove(), t.append(...e.childNodes)
                  }
                  for (; null !== (o = U.nextNode()) && l.length < r;) {
                    if (1 === o.nodeType) {
                      if (o.hasAttributes()) {
                        const t = [];
                        for (const e of o.getAttributeNames())
                          if (e.endsWith($) || e.startsWith(S)) {
                            const i = d[s++];
                            if (t.push(e), void 0 !== i) {
                              const t = o.getAttribute(i.toLowerCase() + $).split(S),
                                e = /([.?@])?(.*)/.exec(i);
                              l.push({
                                type: 1,
                                index: n,
                                name: e[2],
                                strings: t,
                                ctor: "." === e[1] ? Z : "?" === e[1] ? X : "@" === e[1] ? tt : Y
                              })
                            } else l.push({
                              type: 6,
                              index: n
                            })
                          } for (const e of t) o.removeAttribute(e)
                      }
                      if (N.test(o.tagName)) {
                        const t = o.textContent.split(S),
                          e = t.length - 1;
                        if (e > 0) {
                          o.textContent = w ? w.emptyScript : "";
                          for (let i = 0; i < e; i++) o.append(t[i], T()), U.nextNode(), l.push({
                            type: 2,
                            index: ++n
                          });
                          o.append(t[e], T())
                        }
                      }
                    } else if (8 === o.nodeType)
                      if (o.data === C) l.push({
                        type: 2,
                        index: n
                      });
                      else {
                        let t = -1;
                        for (; - 1 !== (t = o.data.indexOf(S, t + 1));) l.push({
                          type: 7,
                          index: n
                        }), t += S.length - 1
                      } n++
                  }
                }
                static createElement(t, e) {
                  const i = E.createElement("template");
                  return i.innerHTML = t, i
                }
              }

              function G(t, e, i = t, o) {
                var n, s, r, l;
                if (e === q) return e;
                let a = void 0 !== o ? null === (n = i._$Co) || void 0 === n ? void 0 : n[o] : i._$Cl;
                const d = P(e) ? void 0 : e._$litDirective$;
                return (null == a ? void 0 : a.constructor) !== d && (null === (s = null == a ? void 0 : a._$AO) || void 0 === s || s.call(a, !1), void 0 === d ? a = void 0 : (a = new d(t), a._$AT(t, i, o)), void 0 !== o ? (null !== (r = (l =
                  i)._$Co) && void 0 !== r ? r : l._$Co = [])[o] = a : i._$Cl = a), void 0 !== a && (e = G(t, a._$AS(t, e.values), a, o)), e
              }
              class Q {
                constructor(t, e) {
                  this._$AV = [], this._$AN = void 0, this._$AD = t, this._$AM = e
                }
                get parentNode() {
                  return this._$AM.parentNode
                }
                get _$AU() {
                  return this._$AM._$AU
                }
                u(t) {
                  var e;
                  const {
                    el: {
                      content: i
                    },
                    parts: o
                  } = this._$AD, n = (null !== (e = null == t ? void 0 : t.creationScope) && void 0 !== e ? e : E).importNode(i, !0);
                  U.currentNode = n;
                  let s = U.nextNode(),
                    r = 0,
                    l = 0,
                    a = o[0];
                  for (; void 0 !== a;) {
                    if (r === a.index) {
                      let e;
                      2 === a.type ? e = new J(s, s.nextSibling, this, t) : 1 === a.type ? e = new a.ctor(s, a.name, a.strings, this, t) : 6 === a.type && (e = new et(s, this, t)), this._$AV.push(e), a = o[++l]
                    }
                    r !== (null == a ? void 0 : a.index) && (s = U.nextNode(), r++)
                  }
                  return U.currentNode = E, n
                }
                v(t) {
                  let e = 0;
                  for (const i of this._$AV) void 0 !== i && (void 0 !== i.strings ? (i._$AI(t, i, e), e += i.strings.length - 2) : i._$AI(t[e])), e++
                }
              }
              class J {
                constructor(t, e, i, o) {
                  var n;
                  this.type = 2, this._$AH = V, this._$AN = void 0, this._$AA = t, this._$AB = e, this._$AM = i, this.options = o, this._$Cp = null === (n = null == o ? void 0 : o.isConnected) || void 0 === n || n
                }
                get _$AU() {
                  var t, e;
                  return null !== (e = null === (t = this._$AM) || void 0 === t ? void 0 : t._$AU) && void 0 !== e ? e : this._$Cp
                }
                get parentNode() {
                  let t = this._$AA.parentNode;
                  const e = this._$AM;
                  return void 0 !== e && 11 === (null == t ? void 0 : t.nodeType) && (t = e.parentNode), t
                }
                get startNode() {
                  return this._$AA
                }
                get endNode() {
                  return this._$AB
                }
                _$AI(t, e = this) {
                  t = G(this, t, e), P(t) ? t === V || null == t || "" === t ? (this._$AH !== V && this._$AR(), this._$AH = V) : t !== this._$AH && t !== q && this._(t) : void 0 !== t._$litType$ ? this.g(t) : void 0 !== t.nodeType ? this.$(
                    t) : (t => A(t) || "function" == typeof(null == t ? void 0 : t[Symbol.iterator]))(t) ? this.T(t) : this._(t)
                }
                k(t) {
                  return this._$AA.parentNode.insertBefore(t, this._$AB)
                }
                $(t) {
                  this._$AH !== t && (this._$AR(), this._$AH = this.k(t))
                }
                _(t) {
                  this._$AH !== V && P(this._$AH) ? this._$AA.nextSibling.data = t : this.$(E.createTextNode(t)), this._$AH = t
                }
                g(t) {
                  var e;
                  const {
                    values: i,
                    _$litType$: o
                  } = t, n = "number" == typeof o ? this._$AC(t) : (void 0 === o.el && (o.el = F.createElement(D(o.h, o.h[0]), this.options)), o);
                  if ((null === (e = this._$AH) || void 0 === e ? void 0 : e._$AD) === n) this._$AH.v(i);
                  else {
                    const t = new Q(n, this),
                      e = t.u(this.options);
                    t.v(i), this.$(e), this._$AH = t
                  }
                }
                _$AC(t) {
                  let e = M.get(t.strings);
                  return void 0 === e && M.set(t.strings, e = new F(t)), e
                }
                T(t) {
                  A(this._$AH) || (this._$AH = [], this._$AR());
                  const e = this._$AH;
                  let i, o = 0;
                  for (const n of t) o === e.length ? e.push(i = new J(this.k(T()), this.k(T()), this, this.options)) : i = e[o], i._$AI(n), o++;
                  o < e.length && (this._$AR(i && i._$AB.nextSibling, o), e.length = o)
                }
                _$AR(t = this._$AA.nextSibling, e) {
                  var i;
                  for (null === (i = this._$AP) || void 0 === i || i.call(this, !1, !0, e); t && t !== this._$AB;) {
                    const e = t.nextSibling;
                    t.remove(), t = e
                  }
                }
                setConnected(t) {
                  var e;
                  void 0 === this._$AM && (this._$Cp = t, null === (e = this._$AP) || void 0 === e || e.call(this, t))
                }
              }
              class Y {
                constructor(t, e, i, o, n) {
                  this.type = 1, this._$AH = V, this._$AN = void 0, this.element = t, this.name = e, this._$AM = o, this.options = n, i.length > 2 || "" !== i[0] || "" !== i[1] ? (this._$AH = Array(i.length - 1).fill(new String), this
                    .strings = i) : this._$AH = V
                }
                get tagName() {
                  return this.element.tagName
                }
                get _$AU() {
                  return this._$AM._$AU
                }
                _$AI(t, e = this, i, o) {
                  const n = this.strings;
                  let s = !1;
                  if (void 0 === n) t = G(this, t, e, 0), s = !P(t) || t !== this._$AH && t !== q, s && (this._$AH = t);
                  else {
                    const o = t;
                    let r, l;
                    for (t = n[0], r = 0; r < n.length - 1; r++) l = G(this, o[i + r], e, r), l === q && (l = this._$AH[r]), s || (s = !P(l) || l !== this._$AH[r]), l === V ? t = V : t !== V && (t += (null != l ? l : "") + n[r + 1]), this
                      ._$AH[r] = l
                  }
                  s && !o && this.j(t)
                }
                j(t) {
                  t === V ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, null != t ? t : "")
                }
              }
              class Z extends Y {
                constructor() {
                  super(...arguments), this.type = 3
                }
                j(t) {
                  this.element[this.name] = t === V ? void 0 : t
                }
              }
              const K = w ? w.emptyScript : "";
              class X extends Y {
                constructor() {
                  super(...arguments), this.type = 4
                }
                j(t) {
                  t && t !== V ? this.element.setAttribute(this.name, K) : this.element.removeAttribute(this.name)
                }
              }
              class tt extends Y {
                constructor(t, e, i, o, n) {
                  super(t, e, i, o, n), this.type = 5
                }
                _$AI(t, e = this) {
                  var i;
                  if ((t = null !== (i = G(this, t, e, 0)) && void 0 !== i ? i : V) === q) return;
                  const o = this._$AH,
                    n = t === V && o !== V || t.capture !== o.capture || t.once !== o.once || t.passive !== o.passive,
                    s = t !== V && (o === V || n);
                  n && this.element.removeEventListener(this.name, this, o), s && this.element.addEventListener(this.name, this, t), this._$AH = t
                }
                handleEvent(t) {
                  var e, i;
                  "function" == typeof this._$AH ? this._$AH.call(null !== (i = null === (e = this.options) || void 0 === e ? void 0 : e.host) && void 0 !== i ? i : this.element, t) : this._$AH.handleEvent(t)
                }
              }
              class et {
                constructor(t, e, i) {
                  this.element = t, this.type = 6, this._$AN = void 0, this._$AM = e, this.options = i
                }
                get _$AU() {
                  return this._$AM._$AU
                }
                _$AI(t) {
                  G(this, t)
                }
              }
              const it = x.litHtmlPolyfillSupport;
              null == it || it(F, J), (null !== (b = x.litHtmlVersions) && void 0 !== b ? b : x.litHtmlVersions = []).push("2.8.0");
              var ot, nt;
              class st extends y {
                constructor() {
                  super(...arguments), this.renderOptions = {
                    host: this
                  }, this._$Do = void 0
                }
                createRenderRoot() {
                  var t, e;
                  const i = super.createRenderRoot();
                  return null !== (t = (e = this.renderOptions).renderBefore) && void 0 !== t || (e.renderBefore = i.firstChild), i
                }
                update(t) {
                  const e = this.render();
                  this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(t), this._$Do = ((t, e, i) => {
                    var o, n;
                    const s = null !== (o = null == i ? void 0 : i.renderBefore) && void 0 !== o ? o : e;
                    let r = s._$litPart$;
                    if (void 0 === r) {
                      const t = null !== (n = null == i ? void 0 : i.renderBefore) && void 0 !== n ? n : null;
                      s._$litPart$ = r = new J(e.insertBefore(T(), t), t, void 0, null != i ? i : {})
                    }
                    return r._$AI(t), r
                  })(e, this.renderRoot, this.renderOptions)
                }
                connectedCallback() {
                  var t;
                  super.connectedCallback(), null === (t = this._$Do) || void 0 === t || t.setConnected(!0)
                }
                disconnectedCallback() {
                  var t;
                  super.disconnectedCallback(), null === (t = this._$Do) || void 0 === t || t.setConnected(!1)
                }
                render() {
                  return q
                }
              }
              st.finalized = !0, st._$litElement$ = !0, null === (ot = globalThis.litElementHydrateSupport) || void 0 === ot || ot.call(globalThis, {
                LitElement: st
              });
              const rt = globalThis.litElementPolyfillSupport;
              null == rt || rt({
                LitElement: st
              }), (null !== (nt = globalThis.litElementVersions) && void 0 !== nt ? nt : globalThis.litElementVersions = []).push("3.3.3");
              const lt = (t, e) => "method" === e.kind && e.descriptor && !("value" in e.descriptor) ? {
                  ...e,
                  finisher(i) {
                    i.createProperty(e.key, t)
                  }
                } : {
                  kind: "field",
                  key: Symbol(),
                  placement: "own",
                  descriptor: {},
                  originalKey: e.key,
                  initializer() {
                    "function" == typeof e.initializer && (this[e.key] = e.initializer.call(this))
                  },
                  finisher(i) {
                    i.createProperty(e.key, t)
                  }
                },
                at = (t, e, i) => {
                  e.constructor.createProperty(i, t)
                };

              function dt(t) {
                return (e, i) => void 0 !== i ? at(t, e, i) : lt(t, e)
              }

              function ct(t) {
                return dt({
                  ...t,
                  state: !0
                })
              }
              const pt = ({
                finisher: t,
                descriptor: e
              }) => (i, o) => {
                var n;
                if (void 0 === o) {
                  const o = null !== (n = i.originalKey) && void 0 !== n ? n : i.key,
                    s = null != e ? {
                      kind: "method",
                      placement: "prototype",
                      key: o,
                      descriptor: e(i.key)
                    } : {
                      ...i,
                      key: o
                    };
                  return null != t && (s.finisher = function(e) {
                    t(e, o)
                  }), s
                } {
                  const n = i.constructor;
                  void 0 !== e && Object.defineProperty(i, o, e(o)), null == t || t(n, o)
                }
              };

              function ht(t, e) {
                return pt({
                  descriptor: i => {
                    const o = {
                      get() {
                        var e, i;
                        return null !== (i = null === (e = this.renderRoot) || void 0 === e ? void 0 : e.querySelector(t)) && void 0 !== i ? i : null
                      },
                      enumerable: !0,
                      configurable: !0
                    };
                    if (e) {
                      const e = "symbol" == typeof i ? Symbol() : "__" + i;
                      o.get = function() {
                        var i, o;
                        return void 0 === this[e] && (this[e] = null !== (o = null === (i = this.renderRoot) || void 0 === i ? void 0 : i.querySelector(t)) && void 0 !== o ? o : null), this[e]
                      }
                    }
                    return o
                  }
                })
              }
              var ut;

              function ft(t) {
                return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t
              }
              null === (ut = window.HTMLSlotElement) || void 0 === ut || ut.prototype.assignedElements;
              var vt = {
                exports: {}
              };
              ! function(t) {
                function e(i) {
                  return t.exports = e = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) {
                    return typeof t
                  } : function(t) {
                    return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t
                  }, t.exports.__esModule = !0, t.exports.default = t.exports, e(i)
                }
                t.exports = e, t.exports.__esModule = !0, t.exports.default = t.exports
              }(vt);
              var mt, gt, yt = ft(vt.exports),
                bt = {
                  exports: {}
                },
                xt = {
                  exports: {}
                },
                wt = {
                  exports: {}
                };
              ! function(t) {
                var e = vt.exports.default;
                t.exports = function(t, i) {
                  if ("object" !== e(t) || null === t) return t;
                  var o = t[Symbol.toPrimitive];
                  if (void 0 !== o) {
                    var n = o.call(t, i || "default");
                    if ("object" !== e(n)) return n;
                    throw new TypeError("@@toPrimitive must return a primitive value.")
                  }
                  return ("string" === i ? String : Number)(t)
                }, t.exports.__esModule = !0, t.exports.default = t.exports
              }(wt),
              function(t) {
                var e = vt.exports.default,
                  i = wt.exports;
                t.exports = function(t) {
                  var o = i(t, "string");
                  return "symbol" === e(o) ? o : String(o)
                }, t.exports.__esModule = !0, t.exports.default = t.exports
              }(xt), gt = xt.exports, (mt = bt).exports = function(t, e, i) {
                return (e = gt(e)) in t ? Object.defineProperty(t, e, {
                  value: i,
                  enumerable: !0,
                  configurable: !0,
                  writable: !0
                }) : t[e] = i, t
              }, mt.exports.__esModule = !0, mt.exports.default = mt.exports;
              var _t = ft(bt.exports),
                $t = {
                  exports: {}
                };
              ! function(t) {
                function e(t, e, i, o, n, s, r) {
                  try {
                    var l = t[s](r),
                      a = l.value
                  } catch (t) {
                    return void i(t)
                  }
                  l.done ? e(a) : Promise.resolve(a).then(o, n)
                }
                t.exports = function(t) {
                  return function() {
                    var i = this,
                      o = arguments;
                    return new Promise((function(n, s) {
                      var r = t.apply(i, o);

                      function l(t) {
                        e(r, n, s, l, a, "next", t)
                      }

                      function a(t) {
                        e(r, n, s, l, a, "throw", t)
                      }
                      l(void 0)
                    }))
                  }
                }, t.exports.__esModule = !0, t.exports.default = t.exports
              }($t);
              var St = ft($t.exports),
                Ct = {
                  exports: {}
                };
              ! function(t) {
                var e = vt.exports.default;

                function i() {
                  t.exports = i = function() {
                    return n
                  }, t.exports.__esModule = !0, t.exports.default = t.exports;
                  var o, n = {},
                    s = Object.prototype,
                    r = s.hasOwnProperty,
                    l = Object.defineProperty || function(t, e, i) {
                      t[e] = i.value
                    },
                    a = "function" == typeof Symbol ? Symbol : {},
                    d = a.iterator || "@@iterator",
                    c = a.asyncIterator || "@@asyncIterator",
                    p = a.toStringTag || "@@toStringTag";

                  function h(t, e, i) {
                    return Object.defineProperty(t, e, {
                      value: i,
                      enumerable: !0,
                      configurable: !0,
                      writable: !0
                    }), t[e]
                  }
                  try {
                    h({}, "")
                  } catch (o) {
                    h = function(t, e, i) {
                      return t[e] = i
                    }
                  }

                  function u(t, e, i, o) {
                    var n = e && e.prototype instanceof x ? e : x,
                      s = Object.create(n.prototype),
                      r = new O(o || []);
                    return l(s, "_invoke", {
                      value: P(t, i, r)
                    }), s
                  }

                  function f(t, e, i) {
                    try {
                      return {
                        type: "normal",
                        arg: t.call(e, i)
                      }
                    } catch (t) {
                      return {
                        type: "throw",
                        arg: t
                      }
                    }
                  }
                  n.wrap = u;
                  var v = "suspendedStart",
                    m = "suspendedYield",
                    g = "executing",
                    y = "completed",
                    b = {};

                  function x() {}

                  function w() {}

                  function _() {}
                  var $ = {};
                  h($, d, (function() {
                    return this
                  }));
                  var S = Object.getPrototypeOf,
                    C = S && S(S(H([])));
                  C && C !== s && r.call(C, d) && ($ = C);
                  var k = _.prototype = x.prototype = Object.create($);

                  function E(t) {
                    ["next", "throw", "return"].forEach((function(e) {
                      h(t, e, (function(t) {
                        return this._invoke(e, t)
                      }))
                    }))
                  }

                  function T(t, i) {
                    function o(n, s, l, a) {
                      var d = f(t[n], t, s);
                      if ("throw" !== d.type) {
                        var c = d.arg,
                          p = c.value;
                        return p && "object" == e(p) && r.call(p, "__await") ? i.resolve(p.__await).then((function(t) {
                          o("next", t, l, a)
                        }), (function(t) {
                          o("throw", t, l, a)
                        })) : i.resolve(p).then((function(t) {
                          c.value = t, l(c)
                        }), (function(t) {
                          return o("throw", t, l, a)
                        }))
                      }
                      a(d.arg)
                    }
                    var n;
                    l(this, "_invoke", {
                      value: function(t, e) {
                        function s() {
                          return new i((function(i, n) {
                            o(t, e, i, n)
                          }))
                        }
                        return n = n ? n.then(s, s) : s()
                      }
                    })
                  }

                  function P(t, e, i) {
                    var n = v;
                    return function(s, r) {
                      if (n === g) throw new Error("Generator is already running");
                      if (n === y) {
                        if ("throw" === s) throw r;
                        return {
                          value: o,
                          done: !0
                        }
                      }
                      for (i.method = s, i.arg = r;;) {
                        var l = i.delegate;
                        if (l) {
                          var a = A(l, i);
                          if (a) {
                            if (a === b) continue;
                            return a
                          }
                        }
                        if ("next" === i.method) i.sent = i._sent = i.arg;
                        else if ("throw" === i.method) {
                          if (n === v) throw n = y, i.arg;
                          i.dispatchException(i.arg)
                        } else "return" === i.method && i.abrupt("return", i.arg);
                        n = g;
                        var d = f(t, e, i);
                        if ("normal" === d.type) {
                          if (n = i.done ? y : m, d.arg === b) continue;
                          return {
                            value: d.arg,
                            done: i.done
                          }
                        }
                        "throw" === d.type && (n = y, i.method = "throw", i.arg = d.arg)
                      }
                    }
                  }

                  function A(t, e) {
                    var i = e.method,
                      n = t.iterator[i];
                    if (n === o) return e.delegate = null, "throw" === i && t.iterator.return && (e.method = "return", e.arg = o, A(t, e), "throw" === e.method) || "return" !== i && (e.method = "throw", e.arg = new TypeError(
                      "The iterator does not provide a '" + i + "' method")), b;
                    var s = f(n, t.iterator, e.arg);
                    if ("throw" === s.type) return e.method = "throw", e.arg = s.arg, e.delegate = null, b;
                    var r = s.arg;
                    return r ? r.done ? (e[t.resultName] = r.value, e.next = t.nextLoc, "return" !== e.method && (e.method = "next", e.arg = o), e.delegate = null, b) : r : (e.method = "throw", e.arg = new TypeError(
                      "iterator result is not an object"), e.delegate = null, b)
                  }

                  function I(t) {
                    var e = {
                      tryLoc: t[0]
                    };
                    1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e)
                  }

                  function z(t) {
                    var e = t.completion || {};
                    e.type = "normal", delete e.arg, t.completion = e
                  }

                  function O(t) {
                    this.tryEntries = [{
                      tryLoc: "root"
                    }], t.forEach(I, this), this.reset(!0)
                  }

                  function H(t) {
                    if (t || "" === t) {
                      var i = t[d];
                      if (i) return i.call(t);
                      if ("function" == typeof t.next) return t;
                      if (!isNaN(t.length)) {
                        var n = -1,
                          s = function e() {
                            for (; ++n < t.length;)
                              if (r.call(t, n)) return e.value = t[n], e.done = !1, e;
                            return e.value = o, e.done = !0, e
                          };
                        return s.next = s
                      }
                    }
                    throw new TypeError(e(t) + " is not iterable")
                  }
                  return w.prototype = _, l(k, "constructor", {
                    value: _,
                    configurable: !0
                  }), l(_, "constructor", {
                    value: w,
                    configurable: !0
                  }), w.displayName = h(_, p, "GeneratorFunction"), n.isGeneratorFunction = function(t) {
                    var e = "function" == typeof t && t.constructor;
                    return !!e && (e === w || "GeneratorFunction" === (e.displayName || e.name))
                  }, n.mark = function(t) {
                    return Object.setPrototypeOf ? Object.setPrototypeOf(t, _) : (t.__proto__ = _, h(t, p, "GeneratorFunction")), t.prototype = Object.create(k), t
                  }, n.awrap = function(t) {
                    return {
                      __await: t
                    }
                  }, E(T.prototype), h(T.prototype, c, (function() {
                    return this
                  })), n.AsyncIterator = T, n.async = function(t, e, i, o, s) {
                    void 0 === s && (s = Promise);
                    var r = new T(u(t, e, i, o), s);
                    return n.isGeneratorFunction(e) ? r : r.next().then((function(t) {
                      return t.done ? t.value : r.next()
                    }))
                  }, E(k), h(k, p, "Generator"), h(k, d, (function() {
                    return this
                  })), h(k, "toString", (function() {
                    return "[object Generator]"
                  })), n.keys = function(t) {
                    var e = Object(t),
                      i = [];
                    for (var o in e) i.push(o);
                    return i.reverse(),
                      function t() {
                        for (; i.length;) {
                          var o = i.pop();
                          if (o in e) return t.value = o, t.done = !1, t
                        }
                        return t.done = !0, t
                      }
                  }, n.values = H, O.prototype = {
                    constructor: O,
                    reset: function(t) {
                      if (this.prev = 0, this.next = 0, this.sent = this._sent = o, this.done = !1, this.delegate = null, this.method = "next", this.arg = o, this.tryEntries.forEach(z), !t)
                        for (var e in this) "t" === e.charAt(0) && r.call(this, e) && !isNaN(+e.slice(1)) && (this[e] = o)
                    },
                    stop: function() {
                      this.done = !0;
                      var t = this.tryEntries[0].completion;
                      if ("throw" === t.type) throw t.arg;
                      return this.rval
                    },
                    dispatchException: function(t) {
                      if (this.done) throw t;
                      var e = this;

                      function i(i, n) {
                        return l.type = "throw", l.arg = t, e.next = i, n && (e.method = "next", e.arg = o), !!n
                      }
                      for (var n = this.tryEntries.length - 1; n >= 0; --n) {
                        var s = this.tryEntries[n],
                          l = s.completion;
                        if ("root" === s.tryLoc) return i("end");
                        if (s.tryLoc <= this.prev) {
                          var a = r.call(s, "catchLoc"),
                            d = r.call(s, "finallyLoc");
                          if (a && d) {
                            if (this.prev < s.catchLoc) return i(s.catchLoc, !0);
                            if (this.prev < s.finallyLoc) return i(s.finallyLoc)
                          } else if (a) {
                            if (this.prev < s.catchLoc) return i(s.catchLoc, !0)
                          } else {
                            if (!d) throw new Error("try statement without catch or finally");
                            if (this.prev < s.finallyLoc) return i(s.finallyLoc)
                          }
                        }
                      }
                    },
                    abrupt: function(t, e) {
                      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
                        var o = this.tryEntries[i];
                        if (o.tryLoc <= this.prev && r.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
                          var n = o;
                          break
                        }
                      }
                      n && ("break" === t || "continue" === t) && n.tryLoc <= e && e <= n.finallyLoc && (n = null);
                      var s = n ? n.completion : {};
                      return s.type = t, s.arg = e, n ? (this.method = "next", this.next = n.finallyLoc, b) : this.complete(s)
                    },
                    complete: function(t, e) {
                      if ("throw" === t.type) throw t.arg;
                      return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), b
                    },
                    finish: function(t) {
                      for (var e = this.tryEntries.length - 1; e >= 0; --e) {
                        var i = this.tryEntries[e];
                        if (i.finallyLoc === t) return this.complete(i.completion, i.afterLoc), z(i), b
                      }
                    },
                    catch: function(t) {
                      for (var e = this.tryEntries.length - 1; e >= 0; --e) {
                        var i = this.tryEntries[e];
                        if (i.tryLoc === t) {
                          var o = i.completion;
                          if ("throw" === o.type) {
                            var n = o.arg;
                            z(i)
                          }
                          return n
                        }
                      }
                      throw new Error("illegal catch attempt")
                    },
                    delegateYield: function(t, e, i) {
                      return this.delegate = {
                        iterator: H(t),
                        resultName: e,
                        nextLoc: i
                      }, "next" === this.method && (this.arg = o), b
                    }
                  }, n
                }
                t.exports = i, t.exports.__esModule = !0, t.exports.default = t.exports
              }(Ct);
              var kt = Ct.exports(),
                Et = kt;
              try {
                regeneratorRuntime = kt
              } catch (t) {
                "object" == typeof globalThis ? globalThis.regeneratorRuntime = kt : Function("r", "regeneratorRuntime = r")(kt)
              }
              var Tt, Pt;

              function At(t, e) {
                if ("string" == typeof t && "string" == typeof e) {
                  if (!e.startsWith("/")) throw new Error("prefixionPath: urlPath must be start with /");
                  if (!t.startsWith("/")) throw new Error("prefixionPath: prefix must be start with /");
                  return t + e
                }
              }

              function It(t) {
                if ("string" != typeof t) throw new Error("globalizePath: urlPath must be string");
                if (t.startsWith("http")) throw new Error("globalizePath: urlPath can't be http url");
                t.startsWith("/") || (t = "/" + t);
                var e = function() {
                  var t = window.C_SETTINGS && window.C_SETTINGS.routes && window.C_SETTINGS.routes.root || "";
                  return t.length > 0 && (t.startsWith("/") || (t = "/" + t)), t
                }();
                return e.length > 0 && !t.startsWith(e) || "/ca" === e && t.startsWith("/cart") ? At(e, t) : t
              }

              function zt(t, e) {
                var i = Object.keys(t);
                if (Object.getOwnPropertySymbols) {
                  var o = Object.getOwnPropertySymbols(t);
                  e && (o = o.filter((function(e) {
                    return Object.getOwnPropertyDescriptor(t, e).enumerable
                  }))), i.push.apply(i, o)
                }
                return i
              }

              function Ot(t) {
                for (var e = 1; e < arguments.length; e++) {
                  var i = null != arguments[e] ? arguments[e] : {};
                  e % 2 ? zt(Object(i), !0).forEach((function(e) {
                    _t(t, e, i[e])
                  })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(i)) : zt(Object(i)).forEach((function(e) {
                    Object.defineProperty(t, e, Object.getOwnPropertyDescriptor(i, e))
                  }))
                }
                return t
              }
              var Ht = function(t) {
                  var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 50,
                    i = null;
                  return function() {
                    for (var o = arguments.length, n = new Array(o), s = 0; s < o; s++) n[s] = arguments[s];
                    var r = this;
                    i && clearTimeout(i), i = setTimeout((function() {
                      t.apply(r, n)
                    }), e)
                  }
                },
                Lt = function(t, e) {
                  var i = null;
                  return function() {
                    var o = this,
                      n = arguments;
                    i || (i = setTimeout((function() {
                      t.apply(o, n), clearTimeout(i), i = null
                    }), e))
                  }
                },
                Bt = {
                  ROOT_URL: C_SETTINGS && C_SETTINGS.routes && C_SETTINGS.routes.root || "",
                  post: function(t) {
                    return (Tt = Tt || St(Et.mark((function t(e) {
                      var i, o, n, s = arguments;
                      return Et.wrap((function(t) {
                        for (;;) switch (t.prev = t.next) {
                          case 0:
                            return i = s.length > 1 && void 0 !== s[1] ? s[1] : {}, t.prev = 1, t.next = 4, fetch(Bt.ROOT_URL + e, Ot(Ot({
                              method: "POST",
                              headers: {
                                "Content-Type": "application/json"
                              }
                            }, i), {}, {
                              body: JSON.stringify(i.body)
                            }));
                          case 4:
                            return o = t.sent, t.next = 7, o.json();
                          case 7:
                            return n = t.sent, t.abrupt("return", n);
                          case 11:
                            throw t.prev = 11, t.t0 = t.catch(1), new Error("post request error" + t.t0);
                          case 14:
                          case "end":
                            return t.stop()
                        }
                      }), t, null, [
                        [1, 11]
                      ])
                    })))).apply(this, arguments)
                  },
                  get: function(t) {
                    return (Pt = Pt || St(Et.mark((function t(e) {
                      var i, o;
                      return Et.wrap((function(t) {
                        for (;;) switch (t.prev = t.next) {
                          case 0:
                            return t.prev = 1, t.next = 4, fetch(Bt.ROOT_URL + e);
                          case 4:
                            return i = t.sent, t.next = 7, i.json();
                          case 7:
                            return o = t.sent, t.abrupt("return", o);
                          case 11:
                            throw t.prev = 11, t.t0 = t.catch(1), new Error("get request error" + t.t0);
                          case 14:
                          case "end":
                            return t.stop()
                        }
                      }), t, null, [
                        [1, 11]
                      ])
                    })))).apply(this, arguments)
                  }
                },
                jt = function(t, e) {
                  var i, o = {
                      amount: {
                        n: 2,
                        x: 3,
                        s: ",",
                        c: "."
                      },
                      amount_no_decimals: {
                        n: 0,
                        x: 3,
                        s: ",",
                        c: ""
                      },
                      amount_with_comma_separator: {
                        n: 2,
                        x: 3,
                        s: ".",
                        c: ","
                      },
                      amount_no_decimals_with_comma_separator: {
                        n: 0,
                        x: 3,
                        s: ".",
                        c: ""
                      },
                      amount_with_apostrophe_separator: {
                        n: 2,
                        x: 3,
                        s: "'",
                        c: "."
                      }
                    } [e] || "amount",
                    n = "\\d(?=(\\d{" + (o.x || 3) + "})+" + (o.n > 0 ? "\\D" : "$") + ")";
                  return i = 0 === o.n ? t.toFixed(0) : parseFloat(t).toFixed(o.n + 1).slice(0, -1), (o.c ? i.replace(".", o.c) : i).replace(new RegExp(n, "g"), "$&" + (o.s || ","))
                },
                Nt = function(t) {
                  if (window.C_APPS_MULTI_CURRENCY && window.C_APPS_MULTI_CURRENCY.globalFinance) return window.C_APPS_MULTI_CURRENCY.globalFinance(Number(t));
                  var e = window.C_SETTINGS.currency_symbol,
                    i = window.C_SETTINGS ? window.C_SETTINGS.currency_symbol_pos : "left",
                    o = window.C_SETTINGS ? window.C_SETTINGS.money_format : "amount";
                  return "right" === i ? jt(1 * Number(t), o) + e : e + jt(1 * Number(t), o)
                },
                Rt = !!window.$;

              function qt(t) {
                var e = document.querySelector(".product-info"),
                  i = document.querySelector(".product-info-body"),
                  o = document.querySelector(".product-info__body"),
                  n = e || i || o,
                  s = document.querySelector("bundle-product-list"),
                  r = document.querySelector('div[data-section-type*="//apps/appbundle/blocks/bundle-combination/"]'),
                  l = r && r.contains(s),
                  a = {
                    isInProductInfo: n ? n.contains(s) : !l,
                    productInfo: n || null
                  };
                if (t) {
                  var d = Number(window.getComputedStyle(n).paddingLeft.replace(/[^/.\d]/g, "")),
                    c = Number(n.offsetWidth) - d;
                  return Ot(Ot({}, a), {}, {
                    productInfoWidth: c
                  })
                }
                return a
              }
              const Vt = {
                  FASHION_HORIZONTAL: "fashionHorizontal",
                  FASHION_VERTICAL: "fashionVertical"
                },
                Mt = "fixed_price",
                Ut = "fixed_amount",
                Dt = "percentage",
                Wt = "multi",
                Ft = "single";
              class Gt extends st {
                constructor() {
                  super(...arguments), this.titleText = "", this.switchable = !1, this.titleColor = "", this.btnBgColor = "", this.btnTextColor = "", this.pid = "", this.discount_ids = "", this.styleType = "sutra", this.isQuickShop = "false",
                    this.atcBtnStyle = void 0, this.selected_all = !0, this.select_one = !1, this.selectedInfo = [], this.modalVisible = !1, this.loading = !1, this.success = !1, this.onResize = () => {}
                }
                requestUpdate() {
                  super.requestUpdate()
                }
                connectedCallback() {
                  this.onResize = Lt(this.computeWidth, 50), super.connectedCallback(), window.addEventListener("resize", this.onResize)
                }
                disconnectedCallback() {
                  super.disconnectedCallback(), window.removeEventListener("resize", this.onResize)
                }
                computeWidth() {
                  var t, e;
                  const {
                    isInProductInfo: i,
                    productInfo: o,
                    productInfoWidth: n
                  } = qt(!0), s = null === (t = this.shadowRoot) || void 0 === t ? void 0 : t.querySelector(".main");
                  if (s)
                    if (i) {
                      if (o) {
                        let t = n;
                        "Flash" === (null === (e = null === window || void 0 === window ? void 0 : window.SHOPLAZZA) || void 0 === e ? void 0 : e.theme.merchant_theme_name) && (null === window || void 0 === window ? void 0 : window
                          .innerWidth) < 960 && (t -= 32), s.style.maxWidth = `${t}px`, s.classList.add("main--in")
                      }
                    } else o && this.styleType === Vt.FASHION_VERTICAL && (s.style.maxWidth = `${n}px`), s.classList.remove("main--in")
                }
                showToast(t) {
                  const e = document.createElement("bundle-toast");
                  t && (e.text = t), document.body.appendChild(e)
                }
                buySelectedProduct() {
                  return e(this, void 0, void 0, (function*() {
                    if (this.selectedInfo.every((t => !t.is_selected))) return;
                    this.loading = !0;
                    const t = this.bundleInfo.entitled_products.filter((t => t.is_selected)),
                      i = t.map((t => ({
                        product_id: t.id,
                        variant_id: t.selected_id,
                        quantity: Number(t.count),
                        note: t.note || "",
                        price: t.variants.find((e => e.id === t.selected_id)).price,
                        available: "true",
                        selected: "true"
                      })));
                    let o = [];
                    o.push(this.bundleInfo.id), Bt.post("/api/bundle-sales/cart", {
                      body: {
                        cart: {
                          line_items: i
                        },
                        action_type: "buy_now",
                        bundle_sale_ids: o
                      }
                    }).then((t => {
                      const o = {
                        line_items: (i || []).map((t => ({
                          quantity: Number(t.quantity),
                          variant_id: t.variant_id,
                          note: t.note || "",
                          properties: t.properties || {}
                        }))),
                        refer_info: {
                          source: "buy_now"
                        }
                      };
                      fetch(It("/api/checkout/order"), {
                        method: "POST",
                        body: JSON.stringify(o),
                        headers: {
                          "Content-Type": "application/json;charset=utf-8"
                        }
                      }).then((t => e(this, void 0, void 0, (function*() {
                        if (t.redirected && t.url.includes("/account/login")) return window.location.href = It(`/account/login?_returnUrl=${encodeURIComponent(window.location.pathname)}`);
                        const e = yield t.json();
                        if ("success" !== e.state) this.showToast(e.message || e.errors[0] || "Unknown error"), location.reload();
                        else {
                          const t = e && e.data && e.data.order_token;
                          t && (window.safeHref ? window.safeHref = It(`/checkout/${t}?step=contact_information`) : window.location.href = It(`/checkout/${t}?step=contact_information`))
                        }
                      }))))
                    }))
                  }))
                }
                addSelectedToCart() {
                  var t;
                  return e(this, void 0, void 0, (function*() {
                    if (this.selectedInfo.every((t => !t.is_selected))) return;
                    this.loading = !0;
                    const e = this.bundleInfo.entitled_products.filter((t => t.is_selected)),
                      i = e.map((t => ({
                        product_id: t.id,
                        variant_id: t.selected_id,
                        quantity: t.count
                      })));
                    try {
                      const e = {
                        discount_id: this.bundleInfo.id,
                        value_type: this.bundleInfo.value_type,
                        popups_setting: this.bundleInfo.popups_setting,
                        global_show_text: this.bundleInfo.global_show_text,
                        target_selection: this.bundleInfo.target_selection,
                        page: null === (t = window.SHOP_PARAMS) || void 0 === t ? void 0 : t.template_type,
                        product_ids: this.bundleInfo.entitled_products.map((t => t.id)),
                        block: !0,
                        operation_type: this.bundleInfo.operation_type,
                        entitled_product_ids: this.bundleInfo.entitled_product_ids.join(",")
                      };
                      window.sa && window.sa.track("plugin_bundle_combination_click_atc", e)
                    } catch (t) {}
                    const o = yield Bt.post("/api/cart/batch", {
                      body: {
                        line_items: i
                      }
                    });
                    if (this.loading = !1, o.errors && o.errors[0]) this.showToast(o.errors[0]);
                    else {
                      this.success = !0;
                      try {
                        const t = sessionStorage.bundle_sale_ids && JSON.parse(sessionStorage.bundle_sale_ids) || [];
                        t.includes(this.bundleInfo.id) || (t.push(this.bundleInfo.id), sessionStorage.setItem("bundle_sale_ids", JSON.stringify(t)))
                      } catch (t) {}
                      e.forEach((t => {
                        var e;
                        const i = {
                          id: t.id,
                          product_id: t.id,
                          number: t.count || 1,
                          quantity: t.count || 1,
                          variant_id: t.selected_id,
                          childrenId: t.selected_id,
                          item_price: null === (e = t.variants.find((e => e.id === t.selected_id))) || void 0 === e ? void 0 : e.price,
                          name: t.title,
                          type: "",
                          source: "bundle"
                        };
                        Rt ? window.$(document.body).trigger("dj.addToCart", i) : document.dispatchEvent(new CustomEvent("dj.addToCart", {
                          detail: i
                        }))
                      })), setTimeout((() => {
                        window.safeHref ? window.safeHref = It("/cart") : window.location.href = It("/cart")
                      }))
                    }
                  }))
                }
                switch () {
                  this.dispatchEvent(new CustomEvent("bundle-combination-switch"))
                }
                clickSelect() {
                  var t, e;
                  this.select_one = this.selectedInfo.filter((t => t.is_selected)).length <= 1, this.selectedInfo.every((t => t.is_selected)) && (null === (e = null === (t = this.bundleInfo) || void 0 === t ? void 0 : t.entitled_products) ||
                    void 0 === e ? void 0 : e.length) === this.selectedInfo.length ? (this.selected_all = !0, this.requestUpdate()) : this.selected_all = !1
                }
                clickProduct(t) {
                  const e = t.detail;
                  "true" === this.isQuickShop && (this.modalProduct = e, this.modalVisible = !0);
                  const i = {
                    block: !0,
                    discount_ids: this.discount_ids,
                    product_id: this.pid,
                    discount_id: this.bundleInfo.id,
                    CurrProd_id: e.id,
                    operation_type: this.bundleInfo.operation_type,
                    entitled_product_ids: this.bundleInfo.entitled_product_ids.join(",")
                  };
                  window.sa && window.sa.track("plugin_bundle_combination_product_click", i)
                }
                renderImgs(t, e) {
                  var i;
                  const o = this.parentNode.offsetWidth > 960;
                  return null === (i = this.selectedInfo) || void 0 === i ? void 0 : i.slice(t, e).map(((e, i) => {
                    var n, s, r;
                    const l = null === (n = e.variants) || void 0 === n ? void 0 : n.find((t => t.id === e.selected_id)),
                      a = (null === (s = null == l ? void 0 : l.image) || void 0 === s ? void 0 : s.src) || (null === (r = e.image) || void 0 === r ? void 0 : r.src);
                    return R`<div class="img-item">${0!==i||3===t?R`<svg style="${o?"":"padding: 0 12px;"}" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="none"><path d="M18.573 8.571h-7.145V1.428a1.427 1.427 0 1 0-2.856 0V8.57H1.428a1.428 1.428 0 0 0 0 2.856h7.144v7.144a1.428 1.428 0 0 0 2.856 0v-7.145h7.144a1.428 1.428 0 0 0 0-2.855z" fill="#C5C5C5"/></svg>`:""}<bundle-product-img class="${o?"":"main--in"}" ?is-select="${e.is_selected}" .isQuickShop="${"true"===this.isQuickShop}" .count="${e.count}" .href="${e.url}" .src="${a}" @click="${()=>this.clickProduct(e)}"></bundle-product-img></div>`
                  }))
                }
                getlowestPricedProduct(t, e) {
                  let i = [],
                    o = [],
                    n = e;
                  const s = [...t];
                  return s.sort(((t, e) => Number(t.price) - Number(e.price))), s.forEach((t => {
                    if (0 === n) o.push(t);
                    else {
                      const e = Number(t.count);
                      e <= n ? (i.push(t), n -= e) : (i.push(Object.assign(Object.assign({}, t), {
                        count: `${n}`
                      })), o.push(Object.assign(Object.assign({}, t), {
                        count: "" + (e - n)
                      })), n = 0)
                    }
                  })), [i, o]
                }
                getPrice(t, e = "price") {
                  let i = 0;
                  return t.filter((t => t.is_selected)).forEach((t => {
                    var o;
                    const n = null === (o = t.variants) || void 0 === o ? void 0 : o.find((e => e.id === t.selected_id)),
                      s = +(n && n[e] || 0);
                    i += +t.count * s
                  })), i
                }
                handlePriceValue() {
                  const t = this.getPrice(this.selectedInfo);
                  let e = t,
                    i = 0;
                  if (this.bundleInfo.layer_type === Wt) {
                    const t = this.selectedInfo.filter((t => t.is_selected));
                    if (!this.bundleInfo.target_product_id || this.bundleInfo.target_product_id && this.selectedInfo.filter((t => t.is_selected)).some((t => t.id === this.bundleInfo.target_product_id))) {
                      let o = 0,
                        n = 0;
                      const s = t.reduce(((t, e) => t + Number(e.count)), 0),
                        r = this.bundleInfo.prerequisite_quantity_range;
                      for (let t = r.length - 1; t >= 0; t--) {
                        const e = r[t],
                          {
                            value: i,
                            greater_than_or_equal_to: l
                          } = e;
                        if (s >= Number(l)) {
                          o = Number(i), n = Number(l);
                          break
                        }
                      }
                      if (this.bundleInfo.value_type === Ut) i = o, e -= o;
                      else if (this.bundleInfo.value_type === Dt) {
                        const [s, r] = this.getlowestPricedProduct(t, n), l = this.getPrice(s), a = this.getPrice(r);
                        i = Math.round(l * (o / 100) * 100) / 100, e = l - i + a
                      }
                    }
                  } else {
                    const o = Number(this.bundleInfo.value);
                    this.bundleInfo.value_type === Mt ? o < Number(e) && (e = o, i = t - o) : this.bundleInfo.value_type === Ut ? (i = o, e -= o) : this.bundleInfo.value_type === Dt && (i = Math.round(e * (o / 100) * 100) / 100, e -= i)
                  }
                  return e = e < 0 ? 0 : e, this.bundleInfo.totalPrice = e.toFixed(2), {
                    salePrice: t.toFixed(2),
                    savePrice: i.toFixed(2)
                  }
                }
                updated() {
                  var t;
                  if (this.computeWidth(), this.modalVisible) {
                    const e = document.createElement("bundle-product-modal");
                    e.data = this.modalProduct, e.setAttribute("btn-bg-color", this.btnBgColor), e.setAttribute("btn-text-color", this.btnTextColor), e.setAttribute("top", document.documentElement.scrollTop.toString()), e.close = () => {
                      this.modalVisible = !1, e.remove()
                    }, null === (t = document.querySelector(".bundle-combination-container")) || void 0 === t || t.appendChild(e)
                  }
                }
                changeCheckBox(t) {
                  const {
                    index: e
                  } = t.detail, i = this.selectedInfo[e].is_selected;
                  this.selectedInfo[e].is_selected = !i, this.requestUpdate(), window.sa && window.sa.track("plugin_bundle_combination_product_select", {
                    block: !0
                  })
                }
                render() {
                  var t, e;
                  if (!this.bundleInfo) return;
                  const i = this.parentNode.offsetWidth > 960;
                  i && (null === (e = null === (t = document.querySelector(".bundle-combination-container")) || void 0 === t ? void 0 : t.classList) || void 0 === e || e.add("app-container")), this.selectedInfo = this.bundleInfo ? this
                    .bundleInfo.entitled_products.filter((t => t.published)) : [], this.clickSelect();
                  const {
                    salePrice: o,
                    savePrice: n
                  } = this.handlePriceValue();
                  let s = "";
                  return [Vt.FASHION_HORIZONTAL, Vt.FASHION_VERTICAL].includes(this.styleType) && (s = this.styleType),
                    R`<div class="main ${s}"><div class="header" style="${s?"margin-bottom: 20px;":""}"><div class="title" style="${i?"":"font-size: 20px;"}"><span style="color:${this.titleColor}">${this.titleText}</span></div>${this.switchable?R`<div class="switch" @click="${this.switch}" style="${i?"":"font-size: 14px;"}">Related Items</div>`:""}</div>${s?R`<bundle-fashion .overWidth="${i}" title-text="${this.titleText}" switchable="${this.switchable}" title-color="${this.titleColor}" btn-bg-color="${this.btnBgColor}" btn-text-color="${this.btnTextColor}" styleTypeClass="${s}" .isQuickShop="${"true"===this.isQuickShop}" .atcBtnStyle="${this.atcBtnStyle}" .select_one="${this.select_one}" .loading="${this.loading}" .success="${this.success}" .selected_all="${this.selected_all}" .selectedInfo="${this.selectedInfo}" .bundleInfo="${this.bundleInfo}" .salePrice="${o}" .savePrice="${n}" @clickSelect="${this.clickSelect}" @clickProduct="${this.clickProduct}" @changeCheckBox="${this.changeCheckBox}" @addToCart="${this.addSelectedToCart}" @buySelectedProduct="${this.buySelectedProduct}"></bundle-fashion>`:R`<bundle-sutra .overWidth="${i}" title-text="${this.titleText}" switchable="${this.switchable}" title-color="${this.titleColor}" btn-bg-color="${this.btnBgColor}" btn-text-color="${this.btnTextColor}" styleTypeClass="${s}" .isQuickShop="${"true"===this.isQuickShop}" .atcBtnStyle="${this.atcBtnStyle}" .select_one="${this.select_one}" .loading="${this.loading}" .success="${this.success}" .selected_all="${this.selected_all}" .selectedInfo="${this.selectedInfo}" .bundleInfo="${this.bundleInfo}" .salePrice="${o}" .savePrice="${n}" @clickSelect="${this.clickSelect}" @clickProduct="${this.clickProduct}" @changeCheckBox="${this.changeCheckBox}" @addToCart="${this.addSelectedToCart}" @buySelectedProduct="${this.buySelectedProduct}"></bundle-sutra>`}</div>${""}`
                }
              }
              Gt.styles = [
                l`.main{padding:20px 0;margin-left:auto;margin-right:auto;max-width:var(--layout-width,1366px)}.header{display:flex;align-items:center}.title{font-size:24px;line-height:24px}.switch{cursor:pointer;text-decoration:underline;font-size:16px;white-space:nowrap;margin-left:10px}.main--in.main{padding:20px 0}.main--in .header{flex-direction:column;align-items:flex-start}.main--in .switch{font-size:14px;margin-top:4px;margin-left:0}@media (max-width:960px){.main{padding:20px 0;max-width:unset}.header{flex-direction:column;align-items:flex-start;margin-bottom:8px}.title{font-size:16px!important}.switch{font-size:14px;margin-top:4px;margin-left:0}}`,
                l`.fashionHorizontal .title{font-size:22px;line-height:24px}.fashionHorizontal .switch{color:val(--color-body-text,#292929);font-weight:400}.fashionHorizontal .header{justify-content:space-between}.fashionVertical .header{flex-direction:column;align-items:flex-start}.fashionVertical .switch{margin-top:10px;margin-left:0}.fashionVertical.main{margin-right:initial}.main--in.fashionHorizontal .header{flex-direction:column;align-items:flex-start;justify-content:flex-start}.main--in.fashionHorizontal .switch{margin-top:4px;margin-left:0}.main--in.fashionHorizontal.main{padding:20px 0}.main--in.fashionVertical.main{padding:20px 0!important;margin-left:0}.main--in.fashionVertical.main{margin-right:auto}@media (max-width:960px){.fashionVertical.main{margin-right:auto}}`
              ], t([dt({
                type: String,
                attribute: "title-text"
              })], Gt.prototype, "titleText", void 0), t([dt()], Gt.prototype, "switchable", void 0), t([dt({
                type: String,
                attribute: "title-color"
              })], Gt.prototype, "titleColor", void 0), t([dt({
                type: String,
                attribute: "btn-bg-color"
              })], Gt.prototype, "btnBgColor", void 0), t([dt({
                type: String,
                attribute: "btn-text-color"
              })], Gt.prototype, "btnTextColor", void 0), t([dt({
                type: String,
                attribute: !1
              })], Gt.prototype, "pid", void 0), t([dt({
                type: String,
                attribute: !1
              })], Gt.prototype, "discount_ids", void 0), t([dt({
                attribute: !1
              })], Gt.prototype, "bundleInfo", void 0), t([dt({
                type: String,
                attribute: "style-type"
              })], Gt.prototype, "styleType", void 0), t([dt({
                attribute: "is-quick-shop"
              })], Gt.prototype, "isQuickShop", void 0), t([dt({
                attribute: !1
              })], Gt.prototype, "atcBtnStyle", void 0), t([ct()], Gt.prototype, "selected_all", void 0), t([ct()], Gt.prototype, "select_one", void 0), t([ct()], Gt.prototype, "selectedInfo", void 0), t([ct()], Gt.prototype, "modalProduct",
                void 0), t([ct()], Gt.prototype, "modalVisible", void 0), t([ct()], Gt.prototype, "loading", void 0), t([ct()], Gt.prototype, "success", void 0), t([ct()], Gt.prototype, "onResize", void 0), window.customElements.get(
                "bundle-product-list") || window.customElements.define("bundle-product-list", Gt);
              class Qt extends st {
                constructor() {
                  super(...arguments), this.src = "", this.href = "", this.styleTypeClass = "", this.isFirst = !1, this.isSelect = !0, this.isQuickShop = !1, this.count = 1, this.icon = R`<div class="icon"></div>`
                }
                updated() {
                  if (window.innerWidth < 960) return;
                  const {
                    isInProductInfo: t,
                    productInfoWidth: e
                  } = qt(!0);
                  if (!t) return;
                  this.item.classList.add("product-img--in");
                  const i = e || 500;
                  if (this.styleTypeClass === Vt.FASHION_HORIZONTAL) {
                    const t = (i - 32) / 3;
                    this.item.style.width = `${t}px`, this.item.style.height = 4 * t / 3 + "px"
                  } else if (this.styleTypeClass === Vt.FASHION_VERTICAL);
                  else {
                    const t = (i - 88) / 3;
                    this.item.style.height = `${t}px`, this.item.style.width = `${t}px`
                  }
                }
                render() {
                  return R`<div class="product-img"><a .href="${this.isQuickShop?"javascript:void(0);":It(this.href)}"><img src="${this.src}" class="${this.isSelect?"select":""} lazyload" alt="appbundle"> </a>${this.count>1?R`<div class="count notranslate ${this.isSelect?"select":""}">x ${this.count}</div>`:""}</div>`
                }
              }
              Qt.styles = [
                l`:host{display:flex;align-items:center}:host(.sutra) .product-img{position:relative;max-width:160px;max-height:160px;width:9vw;height:9vw;border-radius:4px;overflow:hidden}a{position:relative;display:block;width:100%;height:100%}img{position:absolute;left:0;right:0;top:0;bottom:0;max-width:100%;max-height:100%;display:block;margin:auto;opacity:.2}.product-img .select{opacity:1}.icon{padding:0 16px}.count{position:absolute;top:0;right:0;background-color:#ec9154;color:#fff;font-size:12px;line-height:1;padding:4px 6px;font-weight:800;border-bottom-left-radius:4px;opacity:.2}@media (max-width:960px){:host(.sutra) .product-img{width:90px!important;height:90px!important}}`,
                l`:host(.fashionHorizontal) .product-img{width:100%;height:260px;position:relative}:host(.fashionHorizontal) .count{top:initial;bottom:0;right:0;border-bottom-left-radius:0;padding:6px 10px;background:rgba(41,41,41,.4);font-family:Jost;font-size:14px;font-style:normal;font-weight:400;line-height:14px}:host(.fashionHorizontal) .product-img--in.product-img{height:200px}:host(.fashionHorizontal) .product-img--in .count{padding:2px 4px;font-size:12px}@media (max-width:960px){:host(.fashionHorizontal) .product-img{height:200px}:host(.fashionHorizontal) .count{padding:4px 8px;font-size:12px}}`,
                l`:host(.fashionVertical){height:100%;margin:0 16px;position:relative}:host(.fashionVertical) .product-img{width:103px;height:138px}:host(.fashionVertical) .count{top:initial;bottom:0;right:0;border-bottom-left-radius:0;padding:6px 10px;background:rgba(41,41,41,.4);font-family:Jost;font-size:14px;font-style:normal;font-weight:400;line-height:14px}:host(.fashionVertical) .product-img--in.product-img{width:85px;height:113px}:host(.fashionVertical) .product-img--in.count{padding:2px 4px;font-size:12px}@media (max-width:960px){:host(.fashionVertical) .product-img{width:85px;height:113px}:host(.fashionVertical) .count{padding:4px 8px;font-size:12px}}`
              ], t([dt({
                type: String
              })], Qt.prototype, "src", void 0), t([dt({
                type: String
              })], Qt.prototype, "href", void 0), t([dt()], Qt.prototype, "styleTypeClass", void 0), t([dt({
                type: Boolean,
                attribute: "is-first"
              })], Qt.prototype, "isFirst", void 0), t([dt({
                type: Boolean,
                attribute: "is-select"
              })], Qt.prototype, "isSelect", void 0), t([dt({
                type: Boolean
              })], Qt.prototype, "isQuickShop", void 0), t([dt({
                type: Number
              })], Qt.prototype, "count", void 0), t([ht(".product-img")], Qt.prototype, "item", void 0), window.customElements.get("bundle-product-img") || window.customElements.define("bundle-product-img", Qt);
              const Jt = R`<svg xmlns="http://www.w3.org/2000/svg" width="10" height="16" viewBox="0 0 10 16" fill="none"><path d="M8.5 0.928955L1.42893 8.00002L8.5 15.0711" stroke="#222222" stroke-width="2"/></svg>`,
                Yt = R`<svg xmlns="http://www.w3.org/2000/svg" width="10" height="16" viewBox="0 0 10 16" fill="none"><path d="M1.5 0.928955L8.57107 8.00002L1.5 15.0711" stroke="#222222" stroke-width="2"/></svg>`,
                Zt =
                R`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><rect x="1" y="1" width="22" height="22" rx="1" fill="#292929"/><path d="M5.3938 12.4719L10.8058 17.0053L18.6062 6.99475" stroke="white" stroke-width="2.2"/><rect x="1" y="1" width="22" height="22" rx="1" stroke="#292929" stroke-width="2"/></svg>`,
                Kt =
                R`<svg width="16" height="16" viewBox="0 0 16 16" fill="none"><rect width="16" height="16" rx="2" fill="#2C77F6"/><path d="M12.328 3.75l1.422 1.408-7.163 7.092L2.25 7.956l1.422-1.409 2.915 2.886 5.74-5.683z" fill="#fff"/></svg>`,
                Xt =
                R`<svg width="16" height="16" viewBox="0 0 16 16" fill="none"><rect x="1" y="1" width="14" height="14" rx="1" fill="#fff"/><path fill-rule="evenodd" clip-rule="evenodd" d="M16 1.994C16 .894 15.107 0 14.006 0H1.994C.894 0 0 .893 0 1.994v12.012C0 15.106.893 16 1.994 16h12.012c1.1 0 1.994-.893 1.994-1.994V1.994zM1.994 1h12.012l.116.007a.996.996 0 0 1 .878.987v12.012l-.007.116a.996.996 0 0 1-.987.878H1.994l-.116-.007A.995.995 0 0 1 1 14.006V1.994l.007-.116A.996.996 0 0 1 1.994 1z" fill="#D8DBE6"/></svg>`,
                te =
                R`<svg width="16" height="16" viewBox="0 0 16 16" fill="none"><path opacity=".01" fill="#fff" d="M0 0h16v16H0z"/><path d="M8 11.048a.748.748 0 0 0 .57-.26l4.555-4.556a.75.75 0 0 0-1.06-1.06L8 9.236 3.936 5.172a.75.75 0 0 0-1.061 1.06l4.555 4.556a.748.748 0 0 0 .57.26z" fill="#0A1533"/></svg>`,
                ee =
                R`<svg style="display:block;margin:auto" width="22" height="22" viewBox="0 0 50 50"><path fill="currentColor" fill-opacity=".6" d="M43.935 25.145c0-10.318-8.364-18.683-18.683-18.683-10.318 0-18.683 8.365-18.683 18.683h4.068c0-8.071 6.543-14.615 14.615-14.615s14.615 6.543 14.615 14.615h4.068z"><animateTransform attributeName="transform" attributeType="xml" dur="0.6s" from="0 25 25" repeatCount="indefinite" to="360 25 25" type="rotate"/></path></svg>`,
                ie = document.querySelector("bundle-product-list");
              class oe extends st {
                constructor() {
                  super(...arguments), this.backgroundColor = (null == ie ? void 0 : ie.getAttribute("btn-bg-color")) || "#EE7C30", this.textColor = (null == ie ? void 0 : ie.getAttribute("btn-text-color")) || "#FFFFFF", this.disabled = !1,
                    this.loading = !1, this.success = !1, this.successHtml =
                    R`<svg width="16" height="17" viewBox="0 0 16 17"><path d="M8 16.5a8 8 0 1 1 .001-16A8 8 0 0 1 8 16.5zM8 2.043c-3.787 0-6.457 2.67-6.457 6.457S4.213 14.957 8 14.957s6.457-2.67 6.457-6.457S11.787 2.043 8 2.043zm-.74 9.148l-.138.137-.027-.027a.555.555 0 0 1-.238.056.559.559 0 0 1-.321-.111l-.014.013-.068-.068-.001-.002-2.355-2.354.808-.808 1.951 1.95 4.306-4.306.808.809-4.71 4.71z" fill="currentColor"/></svg> Added`
                }
                render() {
                  let t = null;
                  return this.loading && (t = ee), this.success && (t = this.successHtml),
                    R`<div class="button" style="${`background-color: ${this.backgroundColor};color: ${this.textColor};${this.disabled?"background-color: #D9DADB;":""}`}">${t||R`<slot></slot>`}</div>`
                }
              }
              oe.styles = [
                l`.button{font-size:14px;line-height:24px;font-weight:500;justify-content:center;align-items:center;padding:12px 20px;border-radius:4px 4px 4px 4px;cursor:pointer;white-space:initial;word-break:keep-all}@media (max-width:960px){.button{text-align:center}}`,
                l`:host(.fashionHorizontal) .button{border-radius:0;text-align:center}`, l`:host(.fashionVertical) .button{border-radius:0}`
              ], t([dt({
                type: String,
                attribute: "bg-color"
              })], oe.prototype, "backgroundColor", void 0), t([dt({
                type: String,
                attribute: "text-color"
              })], oe.prototype, "textColor", void 0), t([dt({
                type: Boolean
              })], oe.prototype, "disabled", void 0), t([dt({
                type: Boolean
              })], oe.prototype, "loading", void 0), t([dt({
                type: Boolean
              })], oe.prototype, "success", void 0), window.customElements.get("bundle-button") || window.customElements.define("bundle-button", oe);
              const ne = l`:host(fashion-horizontal) .content_flex{display:flex}`;
              class se extends st {
                constructor() {
                  super(...arguments), this.index = 0, this.isSelect = !1, this.selectedOptions = {}, this.thisOne = !1, this.styleTypeClass = "", this.price = "", this.compare_at_price = "", this.modalWidth = 260, this.modalLeft = 0, this
                    .modalTop = 0, this.showModal = t => {
                      if (window.innerWidth < 960 || /none/.test(t.target.classList)) return;
                      const e = t.clientX - t.offsetX;
                      e + 300 > window.innerWidth ? this.modalLeft = e - (this.modalWidth - t.target.offsetWidth) : this.modalLeft = e, this.modalTop = t.clientY - t.offsetY + t.target.offsetHeight, this.isSelect = !0, this.eva(this.isSelect)
                    }, this.hideModal = () => {
                      window.innerWidth < 960 || (this.isSelect = !1, this.eva(this.isSelect))
                    }
                }
                requestUpdate() {
                  super.requestUpdate()
                }
                willUpdate() {
                  if (this.data.variants) {
                    if (this.data.selected_options) this.selectedOptions = Object.assign({}, this.data.selected_options);
                    else
                      for (let t of this.data.variants)
                        if (t.available) {
                          this.selectedOptions.option1 = t.option1, this.selectedOptions.option2 = t.option2, this.selectedOptions.option3 = t.option3;
                          break
                        } this.data.selected_id ? this.data.variants.forEach((t => {
                      t.id === this.data.selected_id && (this.price = t.price, this.compare_at_price = t.compare_at_price)
                    })) : (this.price = this.data.variants[0].price, this.compare_at_price = this.data.variants[0].compare_at_price)
                  }
                }
                updated() {
                  const {
                    isInProductInfo: t
                  } = qt();
                  t && this.bundleProductSelect && (t ? this.bundleProductSelect.classList.add("bundle-product-select--in") : this.bundleProductSelect.classList.remove("bundle-product-select--in"))
                }
                eva(t) {
                  const e = !document.querySelector('div[data-section-type*="//apps/appbundle/blocks/bundle-combination/"] bundle-product-list');
                  if ("Eva" === window.C_SETTINGS.theme.merchant_theme_name && e) {
                    const e = document.querySelector(".product-info__body");
                    e && (t ? e.classList.remove("tw-overflow-hidden") : e.classList.add("tw-overflow-hidden"))
                  }
                }
                clickBundle() {
                  if (window.innerWidth > 960) return;
                  const t = this.data.options && 0 === this.data.options.length,
                    e = this.data.options && this.data.options.length > 0 && 1 === this.data.variants.length;
                  t || e || (this.isSelect = !this.isSelect, this.eva(this.isSelect))
                }
                variantClick(t) {
                  var e, i;
                  const o = this;
                  Object.assign(this.selectedOptions, t.detail), null === (i = null === (e = this.data) || void 0 === e ? void 0 : e.variants) || void 0 === i || i.forEach((function(t) {
                    t.option1 === o.selectedOptions.option1 && t.option2 === ((null == o ? void 0 : o.selectedOptions.option2) || "") && t.option3 === ((null == o ? void 0 : o.selectedOptions.option3) || "") && (o.data.selected_id = t
                      .id, o.price = t.price, o.compare_at_price = t.compare_at_price)
                  })), this.data.selected_options = Object.assign({}, this.selectedOptions)
                }
                onChange() {
                  this.dispatchEvent(new CustomEvent("changeCheckBox", {
                    detail: {
                      index: this.index
                    },
                    bubbles: !0,
                    composed: !0
                  }))
                }
                render() {
                  var t;
                  const e = this.data.options && 0 === this.data.options.length || !this.data.options,
                    i = this.data.options && this.data.options.length > 0 && 1 === this.data.variants.length,
                    o = R`<div class="price money notranslate">${Nt(Number(this.price).toFixed(2))}</div>`;
                  return R`<div class="bundle-product-select"><div class="title" @click="${this.onChange}">${this.thisOne?R`<span style="font-weight:800">This item: </span>`:""}${this.data.title}</div>${this.styleTypeClass?R`<div class="price-wrap">${o}</div>`:""}<div class="content_flex select notranslate ${e||i?"none":""}" @mouseenter="${this.showModal}" @mouseleave="${this.hideModal}">${e?"":R`<div class="label ${this.isSelect?" lable-select":""} ${i?"one-option":""}" @click="${this.clickBundle}"><div class="selected-variant ${i?"white-space: normal;":""}">${Object.values(this.selectedOptions).filter((t=>!!t)).join("/")}</div>${i?"":te}</div>`} ${this.styleTypeClass?"":o} ${this.isSelect?R`<bundle-select-modal @variantClick="${this.variantClick}" @closeModal="${()=>{setTimeout((()=>{this.isSelect=!1,this.eva(this.isSelect)}),200)}}" class="option_overlay ${this.isSelect?"":"hidden"}" style="${window.innerWidth>960?`left: ${this.modalLeft}px; top: ${this.modalTop}px;`:""}width:${this.modalWidth}" .selectedOptions="${this.data.selected_options||this.selectedOptions}" .options="${null===(t=this.data)||void 0===t?void 0:t.options}" .data="${this.data}" .isSelect="${this.isSelect}" top="${document.documentElement.scrollTop.toString()}"></bundle-select-modal>`:""}<div class="dropdown-overlay ${this.isSelect?"":"hidden"}" @click="${()=>this.isSelect=!1}"></div></div></div>`
                }
              }
              se.styles = [ne, l`.content_flex{display:flex;align-items:center;position:relative;max-width:100%}.price{white-space:nowrap;color:var(--color_price)}.label{cursor:pointer}`,
                  l`:host(.sutra) .bundle-product-select{display:flex}:host(.sutra) .title{margin-left:16px;margin-right:16px;width:372px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;cursor:pointer;line-height:16px;color:#212b36;align-self:center}input{width:16px;height:16px;margin:0;padding:0;margin-right:12px;cursor:pointer}:host(.sutra) .label{display:flex;align-items:center;justify-content:space-between;width:260px;min-width:0;margin-right:16px;padding:6px 12px;border-radius:2px 2px 2px 2px;border:1px solid #d8dbe6;box-sizing:border-box}.one-option{padding-left:0;padding-right:0;border:none;width:auto!important}.label>svg{flex-shrink:0;margin-left:10px}.hidden{display:none!important}.lable-select{border:1px solid #30354d!important}.options{max-width:212px}:host(.sutra) .price{margin-right:auto;flex-shrink:0;font-size:16px}.selected-variant{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#212b36}.option_overlay{position:fixed;box-sizing:border-box;top:100%;left:0;max-height:300px;width:260px;overflow-y:scroll;background:#fff;box-shadow:0 2px 10px 1px rgba(0,0,0,.10000000149011612),0 0 4px 1px rgba(0,0,0,.03999999910593033);display:none;z-index:1100;padding:16px;padding-bottom:0;display:block;scrollbar-width:none;-ms-overflow-style:none}.option_overlay::-webkit-scrollbar{display:none}:host(.w-full) .bundle-product-select{flex-direction:column}:host(.w-full) .bundle-product-select .title{align-self:auto}:host(.w-full) .select{justify-content:space-between;margin-top:8px;margin-left:16px;box-sizing:border-box}:host(.w-full) .content,:host(.w-full) .content_flex,:host(.w-full) .title{width:auto}:host(.w-full) .label{flex:1}@media (max-width:960px){.bundle-product-select{flex-direction:column}.bundle-product-select .title{align-self:auto}.content,.content_flex,.title{width:auto}:host(.sutra) .label{flex:1}:host(.sutra) .bundle-product-select{flex-direction:column}.option_overlay{position:fixed;max-height:80vh;top:50%;left:50%!important;overflow-y:auto;transform:translate(-50%,-50%);z-index:1101;border-radius:4px;width:90%!important;padding:0}:host(.sutra) .title{width:auto}:host(.sutra) .price{font-size:14px}.dropdown-overlay{position:fixed;top:0;bottom:0;left:0;right:0;display:block;background-color:rgba(0,0,0,.5);z-index:1100}:host(.sutra) .select{justify-content:space-between;margin-top:8px;margin-left:16px;box-sizing:border-box}}`,
                  l`:host(.fashionHorizontal) .title,:host(.fashionVertical) .title{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:rgba(41,41,41,.75);font-family:Jost;font-size:14px;font-style:normal;font-weight:400;margin-bottom:10px}:host(.fashionHorizontal) .price-wrap{display:flex;flex-wrap:wrap;align-items:baseline;margin-bottom:20px}:host(.fashionHorizontal) .price,:host(.fashionVertical) .price{font-size:22px;margin-right:8px;line-height:18px;overflow:hidden;text-overflow:ellipsis}:host(.fashionHorizontal) .originPrice,:host(.fashionVertical) .originPrice{color:var(--color_price);color:#9f9f9f;font-family:Jost;font-size:16px;font-style:normal;font-weight:400;text-decoration:line-through;line-height:18px}:host(.fashionHorizontal) .label{display:flex;align-items:center;justify-content:center;width:100%;max-width:200px;border:1px solid #e6e6e6;box-sizing:border-box;padding:10px 20px}:host(.fashionHorizontal) .option_overlay{position:fixed}:host(.fashion-full.fashionHorizontal) .label{padding:4px 8px}:host(.fashion-full.fashionHorizontal) .price-wrap{display:block;margin-bottom:10px}:host(.fashion-full.fashionHorizontal) .price{margin-right:0;margin-bottom:8px;font-size:14px;white-space:initial}@media (max-width:960px){:host(.fashionHorizontal) .label{padding:4px 8px}:host(.fashionHorizontal) .price{font-size:14px}}`,
                  l`:host(.fashionVertical) .select{margin-right:auto}:host(.fashionVertical) .bundle-product-select{display:flex;flex-direction:column;min-height:128px;height:100%}:host(.fashionVertical) .price-wrap{display:flex;flex-wrap:wrap;align-items:baseline;margin-bottom:auto}:host(.fashionVertical) .label{display:flex;align-items:center;justify-content:center;width:auto;max-width:100%;border:1px solid #e6e6e6;box-sizing:border-box;padding:10px 20px;margin-top:10px}:host(.fashion-full.fashionVertical) .label{padding:4px 8px}:host(.fashionVertical) .bundle-product-select--in .price{font-size:14px}:host(.fashion-full.fashionVertical) .bundle-product-select{min-height:100px}:host(.fashion-full.fashionVertical) .select{width:auto}@media (min-width:960px){:host(.fashionVertical) .bundle-product-select--in .label>svg{margin-left:0}}@media (max-width:960px){:host(.fashionVertical) .label{padding:4px 8px}:host(.fashionVertical) .bundle-product-select{min-height:100px}:host(.fashionVertical) .select{margin-right:initial;width:auto}:host(.fashionVertical) .price{font-size:14px}}`
                ], t([dt()], se.prototype, "data", void 0), t([dt({
                  type: Number,
                  attribute: "index"
                })], se.prototype, "index", void 0), t([dt({
                  type: Boolean
                })], se.prototype, "isSelect", void 0), t([dt()], se.prototype, "selectedOptions", void 0), t([dt({
                  type: Boolean,
                  attribute: "this-one"
                })], se.prototype, "thisOne", void 0), t([dt()], se.prototype, "styleTypeClass", void 0), t([ht(".option_overlay")], se.prototype, "modalEl", void 0), t([ht(".label")], se.prototype, "labelEl", void 0), t([ht(
                  ".bundle-product-select")], se.prototype, "bundleProductSelect", void 0), t([ht(".dropdown-overlay")], se.prototype, "maskEl", void 0), t([ct()], se.prototype, "price", void 0), t([ct()], se.prototype, "compare_at_price",
                  void 0), t([ct()], se.prototype, "modalWidth", void 0), t([ct()], se.prototype, "modalLeft", void 0), t([ct()], se.prototype, "modalTop", void 0), window.customElements.get("bundle-product-select") || window.customElements
                .define("bundle-product-select", se);
              var re = !1;
              if ("undefined" != typeof window) {
                var le = {
                  get passive() {
                    re = !0
                  }
                };
                window.addEventListener("testPassive", null, le), window.removeEventListener("testPassive", null, le)
              }
              var ae = "undefined" != typeof window && window.navigator && window.navigator.platform && (/iP(ad|hone|od)/.test(window.navigator.platform) || "MacIntel" === window.navigator.platform && window.navigator.maxTouchPoints > 1),
                de = [],
                ce = !1,
                pe = -1,
                he = void 0,
                ue = void 0,
                fe = void 0,
                ve = function(t) {
                  return de.some((function(e) {
                    return !(!e.options.allowTouchMove || !e.options.allowTouchMove(t))
                  }))
                },
                me = function(t) {
                  var e = t || window.event;
                  return !!ve(e.target) || (e.touches.length > 1 || (e.preventDefault && e.preventDefault(), !1))
                },
                ge = function(t, e) {
                  if (t) {
                    if (!de.some((function(e) {
                        return e.targetElement === t
                      }))) {
                      var i = {
                        targetElement: t,
                        options: e || {}
                      };
                      de = [].concat(function(t) {
                        if (Array.isArray(t)) {
                          for (var e = 0, i = Array(t.length); e < t.length; e++) i[e] = t[e];
                          return i
                        }
                        return Array.from(t)
                      }(de), [i]), ae ? window.requestAnimationFrame((function() {
                        if (void 0 === ue) {
                          ue = {
                            position: document.body.style.position,
                            top: document.body.style.top,
                            left: document.body.style.left
                          };
                          var t = window,
                            e = t.scrollY,
                            i = t.scrollX,
                            o = t.innerHeight;
                          document.body.style.position = "fixed", document.body.style.top = -e, document.body.style.left = -i, setTimeout((function() {
                            return window.requestAnimationFrame((function() {
                              var t = o - window.innerHeight;
                              t && e >= o && (document.body.style.top = -(e + t))
                            }))
                          }), 300)
                        }
                      })) : function(t) {
                        if (void 0 === fe) {
                          var e = !!t && !0 === t.reserveScrollBarGap,
                            i = window.innerWidth - document.documentElement.clientWidth;
                          if (e && i > 0) {
                            var o = parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right"), 10);
                            fe = document.body.style.paddingRight, document.body.style.paddingRight = o + i + "px"
                          }
                        }
                        void 0 === he && (he = document.body.style.overflow, document.body.style.overflow = "hidden")
                      }(e), ae && (t.ontouchstart = function(t) {
                        1 === t.targetTouches.length && (pe = t.targetTouches[0].clientY)
                      }, t.ontouchmove = function(e) {
                        1 === e.targetTouches.length && function(t, e) {
                          var i = t.targetTouches[0].clientY - pe;
                          !ve(t.target) && (e && 0 === e.scrollTop && i > 0 || function(t) {
                            return !!t && t.scrollHeight - t.scrollTop <= t.clientHeight
                          }(e) && i < 0 ? me(t) : t.stopPropagation())
                        }(e, t)
                      }, ce || (document.addEventListener("touchmove", me, re ? {
                        passive: !1
                      } : void 0), ce = !0))
                    }
                  } else console.error("disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.")
                },
                ye = function(t) {
                  t ? (de = de.filter((function(e) {
                    return e.targetElement !== t
                  })), ae && (t.ontouchstart = null, t.ontouchmove = null, ce && 0 === de.length && (document.removeEventListener("touchmove", me, re ? {
                    passive: !1
                  } : void 0), ce = !1)), ae ? function() {
                    if (void 0 !== ue) {
                      var t = -parseInt(document.body.style.top, 10),
                        e = -parseInt(document.body.style.left, 10);
                      document.body.style.position = ue.position, document.body.style.top = ue.top, document.body.style.left = ue.left, window.scrollTo(e, t), ue = void 0
                    }
                  }() : (void 0 !== fe && (document.body.style.paddingRight = fe, fe = void 0), void 0 !== he && (document.body.style.overflow = he, he = void 0))) : console.error(
                    "enableBodyScroll unsuccessful - targetElement must be provided when calling enableBodyScroll on IOS devices.")
                };
              let be;
              class xe extends st {
                constructor() {
                  super(...arguments), this.selectedOptions = {}, this.options = [], this.data = {}, this.top = "", this.price = "", this.compareAtPrice = "", this.image = {}, this.isSelect = !1, this.priceScope = "", this.backgroundColor =
                    "#EE7C30"
                }
                willUpdate() {
                  var t, e, i;
                  const o = this;
                  null === (e = null === (t = this.data) || void 0 === t ? void 0 : t.variants) || void 0 === e || e.forEach((function(t, e) {
                    var i;
                    t.option1 === o.selectedOptions.option1 && t.option2 === ((null == o ? void 0 : o.selectedOptions.option2) || "") && t.option3 === ((null == o ? void 0 : o.selectedOptions.option3) || "") && (o.image = (null === (i =
                      null == t ? void 0 : t.image) || void 0 === i ? void 0 : i.src) ? null == t ? void 0 : t.image : o.data.image, o.price = t.price, o.compareAtPrice = t.compare_at_price)
                  })), null === (i = this.modalInputEl) || void 0 === i || i.focus()
                }
                attributeChangedCallback(t, e, i) {
                  "top" === t && +i > 0 && (be = +i)
                }
                closeModal() {
                  var t;
                  window.innerWidth < 960 && ye(null === (t = this.shadowRoot) || void 0 === t ? void 0 : t.querySelector(".select")), document.documentElement.scrollTop = be, this.dispatchEvent(new CustomEvent("closeModal", {
                    bubbles: !0,
                    composed: !0,
                    cancelable: !0
                  }))
                }
                firstUpdated() {
                  window.innerWidth < 960 || (this.modalEl.addEventListener("mousedown", (t => {
                    this.closeIconEl.contains(t.target) || t.preventDefault()
                  })), this.modalInputEl.addEventListener("blur", (() => {
                    this.closeModal()
                  })))
                }
                variantChange(t) {
                  this.priceScope = t.detail
                }
                render() {
                  var t, e;
                  this.isSelect && window.innerWidth < 960 && ge(this.selectEl);
                  const i = (null === (t = this.selectEl) || void 0 === t ? void 0 : t.scrollHeight) > (null === (e = this.selectEl) || void 0 === e ? void 0 : e.clientHeight);
                  return R`<input id="modal" readonly="readonly"> <label class="modal notranslate" for="modal"><div class="modal_content"><div class="modal_header"><div class="modal_header_img"><img src="${this.image.src}" class="lazyload" alt="appbundle"></div><div class="modal_header_info"><div class="modal_header_title">${this.data.title}</div><div class="prices"><div class="modal_header_price money notranslate">${this.priceScope||Nt(this.price)}</div><div class="modal_compare_price money notranslate">${Nt(this.compareAtPrice)}</div></div></div><div class="modal_close_icon" @click="${this.closeModal}"><svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="none"><path fill="#000" d="m17.41 16.02 4.24 4.24a1.002 1.002 0 0 1-1.418 1.416l-4.241-4.24-4.269 4.269a1.009 1.009 0 0 1-1.427-1.427l4.27-4.27-4.24-4.24a1 1 0 0 1 1.414-1.416l4.241 4.241 4.298-4.298a1.009 1.009 0 0 1 1.427 1.427l-4.296 4.299Z"/></svg></div></div><div class="options"><bundle-product-option class="select" .isSelect="${this.isSelect}" .selectedOptions="${this.selectedOptions}" .options="${this.options}" .data="${this.data}" @variantClick="${()=>this.priceScope=""}" @variantChange="${this.variantChange}"></bundle-product-option></div></div></label><div class="btn" style="${i?"box-shadow: 0px 2px 10px 1px rgb(0 0 0 / 10%);":""}"><bundle-button @click="${this.closeModal}">confirm</bundle-button></div>`
                }
              }
              xe.styles =
                l`:host{position:relative}.modal_header{display:none}input#modal{height:0;opacity:0;border:0;position:absolute}.btn{display:none}@media(max-width:960px){.modal{display:flex;max-height:80vh;overflow:hidden}.modal_content{display:flex;flex-direction:column;overflow:hidden;width:100%}.modal_header{display:flex;position:relative;margin-bottom:16px;padding:16px;padding-bottom:0;flex-shrink:0}.modal_header .modal_close_icon{position:absolute;top:8px;right:6px}.modal_header_img img{margin-right:16px;flex-shrink:0}.modal_header_img{height:66px}.modal_header_img img{width:66px;height:66px;object-fit:cover;border-radius:4px 4px 4px 4px}.modal_header_info{margin-right:36px}.prices{display:flex;align-items:baseline}.modal_header_title{width:100%;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:16px}.modal_header_price{color:var(--color_price);font-size:16px;font-weight:500}.modal_compare_price{color:var(--color_origin_price);font-size:14px;margin-left:8px;text-decoration:line-through;font-weight:400}.options_wrap{padding:0 16px 78px 16px;flex:1;overflow:hidden}.options{flex:1;display:flex;overflow:hidden;padding-bottom:74px}.select{overflow:auto;padding:0 16px}.btn{display:block;position:fixed;bottom:0;left:0;width:100%;box-sizing:border-box;padding:16px;background-color:#fff;font-size:16px}}`,
                t([dt({})], xe.prototype, "selectedOptions", void 0), t([dt({
                  type: Array
                })], xe.prototype, "options", void 0), t([dt()], xe.prototype, "data", void 0), t([dt()], xe.prototype, "top", void 0), t([dt()], xe.prototype, "price", void 0), t([dt()], xe.prototype, "compareAtPrice", void 0), t([dt()], xe
                  .prototype, "image", void 0), t([dt({
                  type: Boolean
                })], xe.prototype, "isSelect", void 0), t([ht("label.modal")], xe.prototype, "modalEl", void 0), t([ht("input#modal")], xe.prototype, "modalInputEl", void 0), t([ht(".modal_close_icon")], xe.prototype, "closeIconEl", void 0), t(
                  [ht(".select")], xe.prototype, "selectEl", void 0), t([ct()], xe.prototype, "priceScope", void 0), t([dt({
                  type: String,
                  attribute: "background-color"
                })], xe.prototype, "backgroundColor", void 0), window.customElements.get("bundle-select-modal") || window.customElements.define("bundle-select-modal", xe);
              class we extends st {
                constructor() {
                  super(...arguments), this.options = [], this.selectedOptions = {}, this.overlay = !1, this.index = 0, this.isSelect = !1
                }
                variantsTypeChange(t) {
                  var e, i;
                  let o = t.currentTarget;
                  if (o.classList.contains("option_container_selected")) o.classList.remove("option_container_selected");
                  else {
                    null === (e = o.parentElement.querySelector(".option_container_selected")) || void 0 === e || e.classList.remove("option_container_selected"), o.classList.add("option_container_selected");
                    if (this.options.length === ((null === (i = this.shadowRoot.querySelectorAll(".option_container_selected")) || void 0 === i ? void 0 : i.length) || 0)) {
                      let t = {};
                      for (let e = 0; e < this.options.length; e++) t[`option${e+1}`] = this.contentEls[e].querySelector(".option_container_selected").getAttribute("val");
                      this.dispatchEvent(new CustomEvent("variantClick", {
                        detail: t,
                        bubbles: !0,
                        composed: !0,
                        cancelable: !0
                      }))
                    }
                  }
                  this.requestUpdate(), setTimeout((() => {
                    var t;
                    if (this.options.length === ((null === (t = this.shadowRoot.querySelectorAll(".option_container_selected")) || void 0 === t ? void 0 : t.length) || 0)) return;
                    let e = this.data.variants.slice();
                    const i = this.data.options;
                    this.shadowRoot.querySelectorAll(".option_container_selected").forEach((t => {
                      const o = t.id.split("-"),
                        n = parseInt(o[0].substring(6), 10) - 1,
                        s = parseInt(o[1], 10);
                      e = e.filter((t => t[o[0]] == i[n].values[s]))
                    }));
                    const o = e.reduce(((t, e) => parseFloat(t.price) > parseFloat(e.price) ? e : t), e[0]).price,
                      n = e.reduce(((t, e) => parseFloat(t.price) < parseFloat(e.price) ? e : t), e[0]).price,
                      s = o === n ? Nt(o) : `${Nt(o)} - ${Nt(n)}`;
                    this.dispatchEvent(new CustomEvent("variantChange", {
                      detail: s
                    }))
                  }), 50)
                }
                updated() {
                  var t = this.data.variants.slice();
                  const e = this.data.options;
                  let i = [];
                  this.shadowRoot.querySelectorAll(".option_container_selected").forEach((o => {
                    var n = o.id.split("-"),
                      s = parseInt(n[0].substring(6), 10) - 1,
                      r = parseInt(n[1], 10);
                    i.push(n[0]), t = t.filter((t => t[n[0]] == e[s].values[r]))
                  }));
                  this.shadowRoot.querySelectorAll(".option_container:not(.option_container_selected)").forEach((o => {
                    var n = o.id.split("-"),
                      s = parseInt(n[0].substring(6), 10) - 1,
                      r = parseInt(n[1], 10),
                      l = Object.assign({}, t[0]);
                    l[n[0]] = e[s].values[r];
                    var a = i.slice(); - 1 == a.indexOf(n[0]) && a.push(n[0]);
                    var d = 0 == this.data.variants.filter((t => (t.option1 == l.option1 || -1 === a.indexOf("option1")) && (t.option2 == l.option2 || -1 === a.indexOf("option2")) && (t.option3 == l.option3 || -1 === a.indexOf(
                      "option3")) && +t.available_quantity > 0)).length;
                    d ? o.classList.add("disabled") : o.classList.remove("disabled")
                  }))
                }
                render() {
                  var t;
                  return R`<div class="product_option notranslate">${null===(t=this.options)||void 0===t?void 0:t.map(((t,e)=>R`<div class="option_name">${t.name}</div><div class="option_content" index="${e}">${t.values.map(((t,i)=>R`<div val="${t}" option="${`option${e+1}`}" id="${`option${e+1}-${i}`}" class="option_container ${this.selectedOptions["option"+(+e+1)]===t?"option_container_selected":""}" @click="${this.variantsTypeChange}">${t}</div>`))}</div>`))}</div>`
                }
              }
              we.styles =
                l`@media(max-width:960px){:host(.select) .product_option{max-height:70vh}}.option_content{display:flex;flex-wrap:wrap;margin-bottom:8px;margin-top:8px}.option_name{font-size:12px;line-height:16px}.option_container{min-width:36px;min-height:36px;box-shadow:inset 0 0 0 1px rgba(33,43,54,.25),inset 0 0 0 3px transparent;padding:6px 12px;margin-right:8px;margin-bottom:8px;display:flex;justify-content:center;align-items:center;box-sizing:border-box;border-radius:2px;font-size:14px;cursor:pointer;word-break:break-word}.option_container_selected{box-shadow:inset 0 0 0 2px var(--color-body-text,#212b36)}.disabled{background-color:#efefef;pointer-events:none}@media(max-width:960px){.option_name{font-size:14px}.option_content{font-size:16px}.option_container{min-width:42px;min-height:42px}.product_option{scrollbar-width:none;-ms-overflow-style:none}.product_option::-webkit-scrollbar{display:none}}`,
                t([function(t) {
                  return pt({
                    descriptor: e => ({
                      get() {
                        var e, i;
                        return null !== (i = null === (e = this.renderRoot) || void 0 === e ? void 0 : e.querySelectorAll(t)) && void 0 !== i ? i : []
                      },
                      enumerable: !0,
                      configurable: !0
                    })
                  })
                }(".option_content")], we.prototype, "contentEls", void 0), t([dt()], we.prototype, "options", void 0), t([dt()], we.prototype, "data", void 0), t([dt({})], we.prototype, "selectedOptions", void 0), t([dt({
                  type: Boolean
                })], we.prototype, "overlay", void 0), t([dt({
                  type: Number
                })], we.prototype, "index", void 0), t([dt({
                  type: Boolean
                })], we.prototype, "isSelect", void 0), window.customElements.get("bundle-product-option") || window.customElements.define("bundle-product-option", we);
              const _e = window.C_SETTINGS.shop.wholesale_enabled;
              class $e extends st {
                constructor() {
                  super(...arguments), this.data = {}, this.selectedOptions = {}, this.options = [], this.numDropDown = 1, this.imgList = [], this.currentImgIndex = 0, this.currentPosition = 1, this.loading = !1, this.priceScope = "", this
                    .icon =
                    R`<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"><path opacity=".01" fill="#fff" d="M0 0h16v16H0z"/><path d="M8 11.048a.748.748 0 0 0 .57-.26l4.555-4.556a.75.75 0 0 0-1.06-1.06L8 9.236 3.936 5.172a.75.75 0 0 0-1.061 1.06l4.555 4.556a.748.748 0 0 0 .57.26z" fill="#0A1533"/></svg>`,
                    this.closeIcon =
                    R`<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path d="M3.404 2.343l4.595 4.595 4.597-4.595a.75.75 0 1 1 1.06 1.06L9.06 8l4.597 4.597a.75.75 0 1 1-1.06 1.06L7.998 9.06l-4.595 4.597a.75.75 0 1 1-1.06-1.06l4.594-4.598-4.595-4.595a.75.75 0 1 1 1.06-1.06z" fill="currentColor"/></svg>`
                }
                firstUpdated() {
                  var t, e, i, o, n;
                  if (ge(null === (t = this.shadowRoot) || void 0 === t ? void 0 : t.querySelector(".content")), this.imgList = this.data.images.map((t => t.src)) || [], null === (e = this.data) || void 0 === e ? void 0 : e.variants) {
                    if (this.data.selected_options) this.selectedOptions = Object.assign({}, this.data.selected_options);
                    else
                      for (let t of this.data.variants)
                        if (t.available) {
                          this.selectedOptions.option1 = t.option1, this.selectedOptions.option2 = t.option2, this.selectedOptions.option3 = t.option3;
                          break
                        } this.data.selected_id && this.data.variants.forEach(((t, e) => {
                      if (t.id === this.data.selected_id) {
                        let e = this.imgList.findIndex((e => {
                          var i;
                          return (null === (i = t.image) || void 0 === i ? void 0 : i.src) === e
                        }));
                        e > -1 && (this.currentImgIndex = e), this.changeNextOrPrev(0, 1)
                      }
                    }))
                  }
                  this.listEl.addEventListener("scroll", Lt((t => {
                    const e = this.listEl.scrollLeft,
                      i = .75 * document.body.offsetWidth;
                    this.currentPosition = Math.round(e / i) + 1
                  }), 100)), this.shadowRoot.querySelector(".modal").addEventListener("touchstart", (t => {
                    t.stopPropagation()
                  }));
                  (null === (i = this.shadowRoot) || void 0 === i ? void 0 : i.querySelector(".num_input")).addEventListener("blur", (t => {
                    if (t.target.value = t.target.value.replace(/[^\d]/g, ""), "" === t.target.value.trim() || +t.target.value.trim() < 1) return t.target.value = 1, void(this.numDropDown = 1);
                    this.numDropDown = +t.target.value
                  }));
                  const s = null === (o = this.shadowRoot) || void 0 === o ? void 0 : o.querySelector(".num_item_sub"),
                    r = null === (n = this.shadowRoot) || void 0 === n ? void 0 : n.querySelector(".num_item_add");
                  1 === this.numDropDown && s.classList.add("num_item_not_allow"), s.addEventListener("click", (t => {
                    this.numDropDown > 1 && this.numDropDown--
                  })), r.addEventListener("click", (t => {
                    var e, i, o;
                    const n = this.data.variants.find((t => t.id === this.data.selected_id)); + n.available_quantity > +this.numDropDown && (this.numDropDown++, null === (o = null === (i = null === (e = this.shadowRoot) || void 0 ===
                      e ? void 0 : e.querySelector(".num_item_not_allow")) || void 0 === i ? void 0 : i.classList) || void 0 === o || o.remove("num_item_not_allow"))
                  }))
                }
                variantChange(t) {
                  this.priceScope = t.detail
                }
                getQualifiedWPriceClassName(t) {
                  let e = "";
                  return t.max_quantity ? this.numDropDown <= t.max_quantity && this.numDropDown >= t.min_quantity && (e = "w-price-qualified") : this.numDropDown >= t.min_quantity && (e = "w-price-qualified"), e
                }
                variantClick(t) {
                  var e, i;
                  Object.assign(this.selectedOptions, t.detail), null === (i = null === (e = this.data) || void 0 === e ? void 0 : e.variants) || void 0 === i || i.forEach(((t, e) => {
                    if (t.option1 === this.selectedOptions.option1 && t.option2 === ((null == this ? void 0 : this.selectedOptions.option2) || "") && t.option3 === ((null == this ? void 0 : this.selectedOptions.option3) || "")) {
                      const e = this.imgList.findIndex((e => {
                        var i;
                        return (null === (i = t.image) || void 0 === i ? void 0 : i.src) === e
                      }));
                      this.data.selected_id = t.id, -1 !== e && (this.currentImgIndex = e)
                    }
                  })), this.data.selected_options = Object.assign({}, this.selectedOptions), this.scrollList(), this.changeNextOrPrev(0);
                  const o = this.data.variants.find((t => t.id === this.data.selected_id)); + this.numDropDown > +o.available_quantity && (this.numDropDown = +o.available_quantity), this.priceScope = "", this.requestUpdate()
                }
                changeImage(t) {
                  this.currentImgIndex = t, this.scrollList(), this.changeNextOrPrev(0)
                }
                scrollList() {
                  setTimeout((() => {
                    try {
                      const t = this.shadowRoot.querySelector(".img-item-selected");
                      t.parentElement.scrollTo({
                        left: t.offsetLeft,
                        behavior: "smooth"
                      })
                    } catch (t) {
                      console.error(t)
                    }
                  }))
                }
                changeNextOrPrev(t, e) {
                  const i = this.currentImgIndex + t;
                  i < 0 || i > this.imgList.length - 1 || (this.currentImgIndex += t, e ? setTimeout((() => {
                    this.shadowRoot.querySelector(".img-item-selected").scrollIntoView({
                      inline: "start"
                    })
                  })) : this.scrollList())
                }
                closeModal() {
                  var t;
                  ye(null === (t = this.shadowRoot) || void 0 === t ? void 0 : t.querySelector(".content")), document.documentElement.scrollTop = this.currentScrollTop, this.close()
                }
                buyNowProcess(t) {
                  var i;
                  return e(this, void 0, void 0, (function*() {
                    let e = t.properties || {};
                    const o = yield Bt.post("/api/checkout/order", {
                      body: {
                        line_items: [{
                          quantity: +this.numDropDown || 1,
                          variant_id: t.selected_id,
                          note: "",
                          properties: e
                        }],
                        refer_info: {
                          source: "buy_now"
                        }
                      }
                    });
                    if ("success" === o.state) return window.safeHref = It(`/checkout/${null===(i=o.data)||void 0===i?void 0:i.order_token}?step=contact_information`)
                  }))
                }
                addToCart() {
                  var t, i;
                  return e(this, void 0, void 0, (function*() {
                    if ("" !== this.priceScope) return void this.showToast('Please select a variant at least');
                    this.loading = !0;
                    const e = {
                        product_id: this.data.id,
                        variant_id: this.data.selected_id,
                        quantity: +this.numDropDown || 1
                      },
                      o = yield Bt.post("/api/cart/batch", {
                        body: {
                          line_items: [e]
                        }
                      });
                    if (o.errors) return this.showToast(o.errors[0]), this.loading = !1, void this.closeModal();
                    this.loading = !1;
                    const n = ((null === (t = window.SHOP_PARAMS) || void 0 === t ? void 0 : t.product_settings) || {}).add_to_cart_process;
                    "to_cart" === n && "page" === n || (Rt ? window.$(document).trigger("dj.common.cart.change") : document.dispatchEvent(new CustomEvent("dj.cartChange")));
                    const s = {
                      id: this.data.id,
                      product_id: this.data.id,
                      number: this.data.count || 1,
                      quantity: this.numDropDown || 1,
                      variant_id: this.data.selected_id,
                      childrenId: this.data.selected_id,
                      item_price: this.data.variants.find((t => t.id === this.data.selected_id)).price,
                      name: this.data.title,
                      type: "",
                      source: "bundle",
                      process: ((null === (i = window.SHOP_PARAMS) || void 0 === i ? void 0 : i.product_settings) || {}).add_to_cart_process
                    };
                    Rt ? window.$(document.body).trigger("dj.addToCart", s) : document.dispatchEvent(new CustomEvent("dj.addToCart", {
                      detail: s
                    })), this.closeModal(), "to_cart" === n || "page" === n ? window.safeHref ? window.safeHref = It("/cart") : window.location.href = It("/cart") : "to_checkout" === n && this.buyNowProcess(this.data), this
                    .showToast()
                  }))
                }
                showToast(t) {
                  const e = document.createElement("bundle-toast");
                  t && (e.text = t), document.body.appendChild(e)
                }
                render() {
                  const t = this.data.variants.find((t => t.id === this.data.selected_id)),
                    e = null == t ? void 0 : t.price,
                    i = null == t ? void 0 : t.compare_at_price,
                    o = window.innerWidth < 960,
                    n = this.currentImgIndex > 0,
                    s = this.currentImgIndex < this.imgList.length - 1;
                  return R`<div class="modal"><div class="content"><div class="slider"><div class="image"><img src="${this.imgList[this.currentImgIndex]}" class="lazyload" alt="appbundle"> ${n?R`<div class="arrow arrow-l" @click="${()=>this.changeNextOrPrev(-1)}"><svg viewBox="0 0 100 100"><path d="M30 50l25 25 5-5-20-20 20-20-5-5z" fill="#fff"/></svg></div>`:""} ${s?R`<div class="arrow arrow-r" @click="${()=>this.changeNextOrPrev(1)}"><svg viewBox="0 0 100 100"><path d="M70 50L45 25l-5 5 20 20-20 20 5 5z" fill="#fff"/></svg></div>`:""}</div><div class="list" style="grid-template-columns:repeat(${this.imgList.length},${o?this.imgList.length>1?"75%":"100%":"68px"})">${this.imgList.map(((t,e)=>R`<img alt="appbundle" class="lazyload img-item ${e===this.currentImgIndex?"img-item-selected":""} ${1===this.imgList.length?"lonely":""}" src="${t}" @click="${()=>this.changeImage(e)}">`))} ${this.imgList.length>1?R`<div class="position notranslate">${this.currentPosition}/${this.imgList.length}</div>`:""}</div></div><div class="body"><div class="header"><div class="title">${this.data.title}</div>${_e?R`<div><a href="${It(this.data.url)}" class="see-detail see-detail-trial">See detail${this.icon}</a></div><div class="w-price-list notranslate">${((null==t?void 0:t.wholesale_price)||[]).map((t=>R`<div class="w-price-item"><div class="w-price ${this.getQualifiedWPriceClassName(t)}">${Nt(t.price)}</div><div class="w-item">${t.max_quantity?`${t.min_quantity} - ${t.max_quantity} Pieces`:`>= ${t.min_quantity} Pieces`}</div></div>`))}</div>`:R`<div class="sub"><div class="prices"><span class="price money notranslate">${this.priceScope||Nt(e)}</span> <span class="compare-price money notranslate">${Nt(i)}</span></div><a href="${It(this.data.url)}" class="see-detail">See detail${this.icon}</a></div>`}</div>${o?R`<div class="divider"></div>`:""}<div class="options"><bundle-product-option .selectedOptions="${this.selectedOptions}" .options="${this.data.options}" .data="${this.data}" @variantClick="${this.variantClick}" @variantChange="${this.variantChange}"></bundle-product-option></div><div class="quantity"><div class="quantity_title">Quantity</div><div class="num_select_mobile"><div class="num_item_sub ${1==+this.numDropDown?"num_item_not_allow":""}"><svg fill="currentColor" width="13" height="14" xmlns="http://www.w3.org/2000/svg"><rect y="6" width="13" height="1" rx=".5" transform="translate(0 .5)" fill-rule="evenodd"></rect></svg></div><input type="tel" class="num_input" .value="${this.numDropDown}"><div class="num_item_add ${+this.numDropDown>=t.available_quantity?"num_item_not_allow":""}"><svg width="13" height="14" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 0a.5.5 0 0 1 .5.5V6h5.5a.5.5 0 1 1 0 1H7v5.5a.5.5 0 1 1-1 0V7H.5a.5.5 0 0 1 0-1H6V.5a.5.5 0 0 1 .5-.5z" fill="currentColor"></path></svg></div></div></div><div class="btn"><bundle-button text-color="${this.btnTextColor}" bg-color="${this.btnBgColor}" @click="${this.addToCart}" ?loading="${this.loading}">Add to Cart</bundle-button></div></div><div class="close-icon" @click="${this.closeModal}">${this.closeIcon}</div></div><div class="mask" @click="${this.closeModal}"></div></div>`
                }
              }
              $e.styles =
                l`.content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1101;background-color:#fff;display:flex}@media (max-width:960px){.content{top:68px;left:0;right:0;bottom:0;transform:unset;flex-direction:column;overflow:scroll;padding-bottom:86px}}.slider{position:relative;flex-shrink:0;padding:24px;width:360px;user-select:none;padding-inline-end:0}@media (max-width:960px){.slider{width:100%;padding:0}}.title{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#212b36;line-height:22px;font-size:16px}.price{font-size:22px;font-weight:500;color:var(--color_price);line-height:22px}.prices{display:flex;align-items:center}.compare-price{margin-left:8px;font-size:16px;font-weight:400;color:var(--color_origin_price);line-height:22px;text-decoration:line-through}@media (min-width:960px){.options{max-height:420px;overflow:scroll;scrollbar-width:none;-ms-overflow-style:none}.options::-webkit-scrollbar{display:none}}.image{position:relative;width:100%;height:480px}@media (max-width:960px){.image{display:none}}.image>img{width:100%;height:100%;object-fit:contain}.arrow{position:absolute;top:50%;width:40px;height:40px;background-color:rgba(0,0,0,.14);border-radius:50%;cursor:pointer;z-index:1}.arrow-not-allow{opacity:.7}.arrow-l{left:16px;transform:translate(0,-50%)}.arrow-r{right:16px;transform:translate(0,-50%)}.body{display:flex;flex-direction:column;width:350px;padding:24px 48px 24px 40px}.quantity{font-size:14px}.quantity_title{margin-bottom:8px}.num_select_mobile{display:none}.num_select_mobile{display:flex;align-items:center;justify-content:center;width:120px}.num_item_add,.num_item_sub{border:1px solid #ddd;cursor:pointer}.num_item_add,.num_item_sub,.num_item_val{display:flex;align-items:center;justify-content:center;width:38px;height:38px}.num_item_not_allow{background-color:#e6e6e6;color:rgba(16,16,16,.3)}.num_input{box-sizing:border-box;border:1px solid transparent;width:36px;height:40px;outline:0;font-size:16px;text-align:center}.quantity_select{display:flex}.select_icon{margin-top:10px;margin-left:-26px;pointer-events:none}@media (max-width:960px){.body{width:100%;padding:16px;box-sizing:border-box}}.header{display:flex;flex-direction:column}.sub{display:flex;align-items:center;padding:16px 0}.see-detail{display:flex;align-items:center;margin-left:auto;color:#30354d;font-size:14px;text-decoration:auto;cursor:pointer;white-space:nowrap;flex-shrink:0}.see-detail svg{margin-left:4px;transform:rotateZ(270deg)}.see-detail-trial{margin-top:8px}.w-price-list{display:flex;padding:12px 16px;background:#f9f9fa;border-radius:4px;overflow-x:scroll;margin-top:8px}.w-price-list::-webkit-scrollbar{height:4px}.w-price-list::-webkit-scrollbar-track{background:#f9f9fa}.w-price-list::-webkit-scrollbar-thumb{background:#cccbcb;border-radius:2px}.w-price-list::-webkit-scrollbar-thumb:hover{background:#888}.w-price-item{margin-right:32px;flex-shrink:0}.w-price-item:last-child{margin-right:0}.w-price{font-weight:500;font-size:16px;line-height:23px;color:val(--color-body-text,#292929)}.w-price-qualified{color:#ff3f02}.w-item{font-weight:400;font-size:12px;line-height:17px;color:rgba(41,41,41,.7);margin-top:4px}.list{display:grid;grid-column-gap:8px;overflow-x:scroll;width:100%;margin-top:8px;scrollbar-width:none;-ms-overflow-style:none}.list::-webkit-scrollbar{display:none}@media (max-width:960px){.list{scroll-snap-type:x mandatory;margin-top:0}.sub{padding:8px 0}.price{font-size:20px}.divider{border-bottom:1px solid #d8dbe6;margin:12px 0 20px 0}.see-detail{font-size:12px}}@media (min-width:960px){.position{display:none}}.position{position:absolute;right:12px;bottom:12px;z-index:1;background:rgba(0,0,0,.4);border-radius:17px 17px 17px 17px;padding:4px 8px;font-size:12px;color:#fff;line-height:14px}.img-item{width:68px;height:68px;object-fit:cover;border-radius:4px;box-sizing:border-box}@media (max-width:960px){.img-item{width:100%;height:75vw;scroll-snap-align:start;border-radius:0}.lonely{height:80vw;object-fit:contain;background-color:#f9f9f9}}@media (min-width:960px){.img-item-selected{padding:3px;border:1px solid #212b36}}.btn{margin-top:auto;text-align:center;padding-top:16px;margin-bottom:-8px}@media (max-width:960px){.btn{position:fixed;bottom:0;left:0;width:100%;box-sizing:border-box;padding:16px;box-shadow:0 2px 10px 1px rgb(0 0 0 / 10%);background-color:#fff;margin-bottom:0}.title{font-size:14px;line-height:16px}}.mask{position:fixed;top:0;left:0;bottom:0;right:0;z-index:1100;background-color:rgba(0,0,0,.7)}.close-icon{position:absolute;top:8px;right:8px;display:flex;justify-content:center;align-items:center;color:#0a1533;width:36px;height:36px;background-color:transparent;cursor:pointer;z-index:1}html[dir=rtl] .close-icon{left:8px;right:unset}@media (max-width:960px){.close-icon{position:fixed;top:80px;right:12px;color:#fff;border-radius:50%;background-color:rgba(0,0,0,.2)}}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}`,
                t([ht(".list")], $e.prototype, "listEl", void 0), t([dt()], $e.prototype, "data", void 0), t([dt()], $e.prototype, "selectedOptions", void 0), t([dt({
                  type: Array
                })], $e.prototype, "options", void 0), t([dt()], $e.prototype, "close", void 0), t([dt()], $e.prototype, "numDropDown", void 0), t([dt({
                  attribute: "btn-bg-color"
                })], $e.prototype, "btnBgColor", void 0), t([dt({
                  attribute: "btn-text-color"
                })], $e.prototype, "btnTextColor", void 0), t([dt({
                  attribute: "top"
                })], $e.prototype, "currentScrollTop", void 0), t([ct()], $e.prototype, "imgList", void 0), t([ct()], $e.prototype, "currentImgIndex", void 0), t([ct()], $e.prototype, "currentPosition", void 0), t([ct()], $e.prototype,
                  "loading", void 0), t([ct()], $e.prototype, "priceScope", void 0), window.customElements.get("bundle-product-modal") || window.customElements.define("bundle-product-modal", $e);
              class Se extends st {
                updated() {
                  var t;
                  const e = window.innerWidth < 960,
                    i = !document.querySelector('div[data-section-type*="//apps/appbundle/blocks/bundle-combination/"] bundle-product-list'),
                    o = this.shadowRoot.querySelector(".wrap"),
                    n = this.shadowRoot.querySelector(".skeleton");
                  i && !e && (o.style.padding = "40px 0", n.style.padding = "40px 8px 12px", null === (t = this.shadowRoot.querySelector(".skeleton br")) || void 0 === t || t.remove()), i && e && (o.style.padding = "16px 0"), i || e || (o
                    .style.padding = "40px 0"), !i && e && (o.style.padding = "16px 0")
                }
                render() {
                  return R`<div class="wrap"><div class="skeleton">The current item does not participate in the bundling. Switch the participating items to check the design.<br>(This prompt will not be displayed on the client-side)</div></div>`
                }
              }
              Se.styles =
                l`.wrap{max-width:var(--layout-width,1000px);margin:0 auto}.skeleton{position:relative;border-radius:4px;border:2px dashed #000;color:#000;line-height:20px!important;text-align:center;font-size:14px;padding:24px 16px;font-weight:500}@media (max-width:960px){.skeleton{font-size:12px;padding:40px 8px 12px!important}.skeleton::before{font-size:12px}}.skeleton::before{content:"Bundle sales";position:absolute;top:-2px;left:-2px;padding:8px 12px;font-size:14px;background-color:#000;color:#fff;border-radius:4px 0 4px 0;text-align:center;font-weight:500}`,
                window.customElements.get("bundle-skeleton") || window.customElements.define("bundle-skeleton", Se);
              class Ce extends st {
                constructor() {
                  super(...arguments), this.text = "", this.successHtml =
                    R`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M12 24C5.373 24 0 18.628 0 12S5.373 0 12 0s12 5.373 12 12-5.373 12-12 12zm0-21.685c-5.68 0-9.686 4.006-9.686 9.686S6.32 21.686 12 21.686s9.686-4.005 9.686-9.685c0-5.68-4.006-9.686-9.686-9.686zm-1.11 13.721l-.207.207-.04-.04a.833.833 0 0 1-.357.084.838.838 0 0 1-.482-.168l-.02.02-.103-.103-.002-.001-3.532-3.533 1.212-1.212 2.927 2.927 6.458-6.46 1.213 1.213-7.064 7.065-.002.001z" fill="#EE7C30"/></svg>`
                }
                firstUpdated() {
                  setTimeout((() => {
                    const t = document.querySelector("bundle-toast");
                    null == t || t.remove()
                  }), 3e3)
                }
                render() {
                  return R`<div class="toast">${this.text?"":R`<div class="icon">${this.successHtml}</div>`} ${this.text||'Added'}</div>`
                }
              }
              Ce.styles =
                l`.toast{position:fixed;z-index:1250;left:50%;transform:translateX(-50%);display:flex;justify-content:center;align-items:center;padding:12px 120px;background-color:rgba(0,0,0,.8);font-size:16px;color:#fff;animation:fade_pc 3s;animation-fill-mode:forwards;border-radius:4px;text-align:center}.icon{display:flex;align-items:center;margin-right:12px}@media (max-width:960px){.toast{padding:12px 28px;animation:fade_mobile 3s;animation-fill-mode:forwards}}@keyframes fade_pc{0%{opacity:.1;top:20px}20%{opacity:1;top:100px}80%{opacity:1;top:100px}100%{opacity:0;top:20px}}@keyframes fade_mobile{0%{opacity:.1;top:0}20%{opacity:1;top:50px}80%{opacity:1;top:50px}100%{opacity:0;top:0}}`,
                t([dt()], Ce.prototype, "text", void 0), window.customElements.get("bundle-toast") || window.customElements.define("bundle-toast", Ce);
              class ke extends st {
                constructor() {
                  super(...arguments), this.overWidth = !1, this.titleText = "", this.savePrice = "", this.salePrice = "", this.switchable = !1, this.atcBtnStyle = 1, this.titleColor = "", this.btnBgColor = "", this.btnTextColor = "", this
                    .bundleInfo = {}, this.styleType = "sutra", this.isQuickShop = !1, this.selected_all = !1, this.select_one = !1, this.selectedInfo = [], this.loading = !1, this.success = !1, this.styleTypeClass = ""
                }
                renderImgs(t, e) {
                  var i;
                  const o = this.overWidth;
                  return null === (i = this.selectedInfo) || void 0 === i ? void 0 : i.slice(t, e).map(((e, i) => {
                    var n, s, r;
                    const l = null === (n = e.variants) || void 0 === n ? void 0 : n.find((t => t.id === e.selected_id)),
                      a = (null === (s = null == l ? void 0 : l.image) || void 0 === s ? void 0 : s.src) || (null === (r = e.image) || void 0 === r ? void 0 : r.src);
                    return R`<div class="img-item">${0!==i||3===t?R`<svg style="${o?"":"padding: 0 12px;"}" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="none"><path d="M18.573 8.571h-7.145V1.428a1.427 1.427 0 1 0-2.856 0V8.57H1.428a1.428 1.428 0 0 0 0 2.856h7.144v7.144a1.428 1.428 0 0 0 2.856 0v-7.145h7.144a1.428 1.428 0 0 0 0-2.855z" fill="#C5C5C5"/></svg>`:""}<bundle-product-img class="sutra ${o?"":"w-full"}" ?is-select="${e.is_selected}" .isQuickShop="${this.isQuickShop}" .count="${e.count}" .href="${e.url}" .src="${a}" @click="${()=>this.clickProduct(e)}"></bundle-product-img></div>`
                  }))
                }
                clickProduct(t) {
                  this.dispatchEvent(new CustomEvent("clickProduct", {
                    detail: t
                  }))
                }
                clickSelect() {
                  this.dispatchEvent(new CustomEvent("clickSelect"))
                }
                render() {
                  const t = this.overWidth,
                    e =
                    R`<bundle-add-cart class="sutra ${t?"":"w-full"}" styleTypeClass="${this.styleTypeClass}" layer_type="${this.bundleInfo.layer_type}" total_price="${this.bundleInfo.totalPrice}" value="${this.bundleInfo.value}" value_type="${this.bundleInfo.value_type}" .atcBtnStyle="${this.atcBtnStyle}" .salePrice="${this.salePrice}" .savePrice="${this.savePrice}" .selectedInfo="${this.selectedInfo}" .selected_all="${this.selected_all}" .success="${this.success}" .loading="${this.loading}" .btnTextColor="${this.btnTextColor}" .btnBgColor="${this.btnBgColor}" .select_one="${this.select_one}"></bundle-add-cart>`;
                  return R`<div class="container"><div class="content-list"><div class="img-list" style="${t?"":"justify-content:center; flex-wrap: wrap"}"><div class="first-list">${this.renderImgs(0,3)}</div><div class="second-list">${this.renderImgs(3)}</div></div>${t?e:""}</div><div class="select-list">${this.selectedInfo.map(((e,i)=>R`<div class="content"><div class="checkbox-wrap ${t?"":"checkbox-top"}"><bundle-check-box class="${this.styleTypeClass}" styleTypeClass="${this.styleTypeClass}" .data="${e}" .index="${i}" ?this-one="${e.thisOne}"></bundle-check-box></div><div class="select-wrap"><bundle-product-select class="sutra ${t?"":"w-full"}" ?this-one="${e.thisOne}" .data="${e}" .index="${i}" @click="${this.clickSelect}"></bundle-product-select></div></div>`))}</div>${t?"":e}</div>`
                }
              }
              ke.styles =
                l`.select-list{width:100%}.container{display:flex;flex-wrap:wrap}.checkbox-wrap{flex-shrink:0}.select-wrap{flex:1;width:0}.content{position:relative;display:flex;flex-wrap:wrap;align-items:center;margin-bottom:16px;flex-wrap:wrap;font-size:14px}.content-list{display:flex;margin-bottom:24px}.content-list svg{width:20px;height:20px;padding:0 16px}.img-list{display:flex}.img-item{display:flex;align-items:center;margin-top:32px}.grow-1{flex-grow:1;text-align:center}.first-list,.second-list{display:flex}.checkbox-top{align-self:flex-start}@media (max-width:960px){.checkbox-wrap{align-self:flex-start}.content-list svg{width:12px;height:12px;padding:0 8px!important}.bundle_money{color:var(--color_price)}.origin_money{font-size:14px}.img-item{margin-top:16px}.first-list{width:100%;justify-content:center}.second-list{width:100%;margin-left:50px}}`,
                t([dt({
                  type: Boolean
                })], ke.prototype, "overWidth", void 0), t([dt({
                  type: String,
                  attribute: "title-text"
                })], ke.prototype, "titleText", void 0), t([dt({
                  attribute: "savePrice"
                })], ke.prototype, "savePrice", void 0), t([dt({
                  attribute: "salePrice"
                })], ke.prototype, "salePrice", void 0), t([dt()], ke.prototype, "switchable", void 0), t([dt({
                  attribute: "atcBtnStyle"
                })], ke.prototype, "atcBtnStyle", void 0), t([dt({
                  type: String,
                  attribute: "title-color"
                })], ke.prototype, "titleColor", void 0), t([dt({
                  type: String,
                  attribute: "btn-bg-color"
                })], ke.prototype, "btnBgColor", void 0), t([dt({
                  type: String,
                  attribute: "btn-text-color"
                })], ke.prototype, "btnTextColor", void 0), t([dt({
                  type: Object,
                  attribute: "bundleInfo"
                })], ke.prototype, "bundleInfo", void 0), t([dt({
                  type: String,
                  attribute: "style-type"
                })], ke.prototype, "styleType", void 0), t([dt({
                  type: Boolean
                })], ke.prototype, "isQuickShop", void 0), t([dt({
                  type: Boolean,
                  attribute: "selected_all"
                })], ke.prototype, "selected_all", void 0), t([dt({
                  type: Boolean,
                  attribute: "select_one"
                })], ke.prototype, "select_one", void 0), t([dt({
                  type: Object,
                  attribute: "selectedInfo",
                  reflect: !0
                })], ke.prototype, "selectedInfo", void 0), t([dt({
                  type: Boolean,
                  attribute: "loading"
                })], ke.prototype, "loading", void 0), t([dt({
                  type: Boolean,
                  attribute: "success"
                })], ke.prototype, "success", void 0), t([dt()], ke.prototype, "styleTypeClass", void 0), window.customElements.get("bundle-sutra") || window.customElements.define("bundle-sutra", ke);
              class Ee extends st {
                constructor() {
                  super(...arguments), this.overWidth = !1, this.titleText = "", this.salePrice = "", this.savePrice = "", this.switchable = !1, this.atcBtnStyle = 1, this.titleColor = "", this.btnBgColor = "", this.btnTextColor = "", this
                    .bundleInfo = {}, this.styleType = "sutra", this.isQuickShop = !1, this.selected_all = !1, this.select_one = !1, this.selectedInfo = [], this.loading = !1, this.success = !1, this.styleTypeClass = "", this.vertical = !1,
                    this.scrollTimer = null, this.isShowArrow = !1, this.isArSa = "ar-SA" === document.documentElement.lang
                }
                clickProduct(t) {
                  this.dispatchEvent(new CustomEvent("clickProduct", {
                    detail: t
                  }))
                }
                clickSelect() {
                  this.dispatchEvent(new CustomEvent("clickSelect"))
                }
                shiftMove(t) {
                  if (this.scrollContainer) {
                    let e = this.scrollContainer.scrollLeft;
                    if (t) e -= 230, this.isArSa || (e = e < 0 ? 0 : e);
                    else {
                      const t = this.scrollContainer.offsetWidth,
                        i = this.scrollContainer.scrollWidth - t;
                      e += 230, e = e > i ? i : e
                    }
                    this.scrollContainer.scrollTo ? this.scrollContainer.scrollTo({
                      left: e,
                      behavior: "smooth"
                    }) : this.scrollContainer.scrollLeft = e
                  }
                }
                shiftLeft() {
                  this.shiftMove(!0)
                }
                shiftRight() {
                  this.shiftMove(!1)
                }
                showArrow() {
                  this.isShowArrow = !0
                }
                hideArrow() {
                  this.isShowArrow = !1
                }
                updated() {
                  if (window.innerWidth < 960) return;
                  const {
                    isInProductInfo: t
                  } = qt(!1);
                  t ? this.fashionContainer.classList.add("fashion--in") : this.fashionContainer.classList.remove("fashion--in")
                }
                render() {
                  var t;
                  const e = this.styleTypeClass === Vt.FASHION_VERTICAL;
                  let i = !1;
                  return this.scrollContainer && (i = this.scrollContainer.scrollWidth > this.scrollContainer.offsetWidth),
                    R`<div class="fashion-container ${this.styleTypeClass}"><div class="container" @mouseenter="${this.showArrow}" @mouseleave="${this.hideArrow}"><div class="container-scroll"><div class="container-scroll-inner">${null===(t=this.selectedInfo)||void 0===t?void 0:t.map(((t,e)=>{var i,o,n;const s=null===(i=t.variants)||void 0===i?void 0:i.find((e=>e.id===t.selected_id)),r=(null===(o=null==s?void 0:s.image)||void 0===o?void 0:o.src)||(null===(n=t.image)||void 0===n?void 0:n.src);return R`<div class="container-img"><div class="img-checkbox"><bundle-check-box class="${this.styleTypeClass} ${this.overWidth?"":"fashion-full"}" styleTypeClass="${this.styleTypeClass}" .data="${t}" .index="${e}" ?this-one="${t.thisOne}"></bundle-check-box></div><div class="img-wrap"><bundle-product-img class="${this.styleTypeClass} ${this.overWidth?"":"fashion-full"}" styleTypeClass="${this.styleTypeClass}" ?is-select="${t.is_selected}" .isQuickShop="${this.isQuickShop}" .count="${t.count}" .href="${t.url}" .src="${r}" @click="${()=>this.clickProduct(t)}"></bundle-product-img></div><div class="select-specification"><bundle-product-select class="${this.styleTypeClass} ${this.overWidth?"":"fashion-full"}" styleTypeClass="${this.styleTypeClass}" ?this-one="${t.thisOne}" .data="${t}" .index="${e}" @click="${this.clickSelect}"></bundle-product-select></div></div>`}))}</div></div>${e?"":R`<div class="container-arrow-left container-arrow flex-center ${this.isShowArrow&&i?"container-arrow--show":""}" @mouseup="${this.shiftLeft}">${Jt}</div>`} ${e?"":R`<div class="container-arrow-right container-arrow flex-center ${this.isShowArrow&&i?"container-arrow--show":""}" @mouseup="${this.shiftRight}">${Yt}</div>`}</div><div class="interval"></div><div class="totalinfo">${R`<bundle-add-cart class="${this.styleTypeClass} ${this.overWidth?"":"fashion-full"}" styleTypeClass="${this.styleTypeClass}" total_price="${this.bundleInfo.totalPrice}" layer_type="${this.bundleInfo.layer_type}" value="${this.bundleInfo.value}" value_type="${this.bundleInfo.value_type}" .atcBtnStyle="${this.atcBtnStyle}" .salePrice="${this.salePrice}" .savePrice="${this.savePrice}" .selectedInfo="${this.selectedInfo}" .selected_all="${this.selected_all}" .success="${this.success}" .loading="${this.loading}" .btnTextColor="${this.btnTextColor}" .btnBgColor="${this.btnBgColor}" .select_one="${this.select_one}"></bundle-add-cart>`}</div></div>`
                }
              }
              Ee.styles = [l`.fashion-container{overflow:hidden;display:flex;border:1px solid #e6e6e6}.flex-center{display:flex;align-items:center;justify-content:center}`,
                l`.fashionHorizontal.fashion-container{flex-direction:row;padding:20px;display:inline-flex;max-width:100%;box-sizing:border-box}.fashionHorizontal .container{flex:1;min-width:0;position:relative}.fashionHorizontal .container-scroll{overflow:overlay;width:100%;height:100%}.fashionHorizontal .container-scroll::-webkit-scrollbar{width:0;height:0}.fashionHorizontal .container-scroll-inner{display:flex;height:100%}.fashionHorizontal .container-img{position:relative;width:210px;display:flex;flex-direction:column;flex-shrink:0}.fashionHorizontal .container-img:not(:first-child){margin-left:20px}.fashionHorizontal .img-checkbox{position:absolute;top:10px;right:10px;z-index:10}.fashionHorizontal .container-arrow{position:absolute;width:40px;height:40px;top:50%;border-radius:50%;border:1px solid #e6e6e6;transform:translateY(-50%);background-color:#fff;cursor:pointer;opacity:0;transition:opacity .3s cubic-bezier(.455,.03,.515,.955)}.fashionHorizontal .container-arrow--show{opacity:1}.fashionHorizontal .container-arrow-left{left:10px}.fashionHorizontal .container-arrow-right{right:10px}.fashionHorizontal .interval{border-left:1px solid #e6e6e6;margin:0 20px;flex-shrink:0}.fashionHorizontal .select-specification{margin-top:12px}.fashionHorizontal .totalinfo{display:flex;align-items:center;padding:0 30px;width:220px;flex-shrink:0;box-sizing:border-box}.fashion--in.fashionHorizontal.fashion-container{flex-direction:column;padding:16px;display:flex}.fashion--in.fashionHorizontal .container{width:auto}.fashion--in.fashionHorizontal .interval{border-top:1px solid #e6e6e6;margin:20px 0;flex-shrink:0}.fashion--in.fashionHorizontal .container-img{width:calc((100% - 32px)/ 3)}.fashion--in.fashionHorizontal .container-img:not(:first-child){margin-left:16px}.fashion--in.fashionHorizontal .select-specification{margin-top:10px}.fashion--in.fashionHorizontal .totalinfo{width:auto;padding:0}@media (max-width:960px){.fashionHorizontal.fashion-container{flex-direction:column;padding:16px;display:flex}.fashionHorizontal .container{width:auto}.fashionHorizontal .interval{border-top:1px solid #e6e6e6;margin:20px 0;flex-shrink:0}.fashionHorizontal .container-img{width:120px}.fashion--in.fashionHorizontal .container-img{width:120px}.fashionHorizontal .container-img:not(:first-child){margin-left:16px}.fashionHorizontal .select-specification{margin-top:10px}.fashionHorizontal .totalinfo{width:auto;padding:0}}`,
                l`.fashionVertical.fashion-container{flex-direction:column;padding:10px 0}.fashionVertical .container-img{display:flex;padding:20px}.fashionVertical .img-checkbox{flex-shrink:0;display:flex;align-items:center}.fashionVertical .select-specification{flex:1;width:0}.fashionVertical .interval{border-top:1px solid #e6e6e6;margin:10px 20px;flex-shrink:0}.fashionVertical .totalinfo{display:flex;flex-direction:column;padding:20px}.fashion--in.fashionVertical .container-img{padding:20px 16px}.fashion--in.fashionVertical .interval{margin:0 16px}.fashion--in.fashionVertical .totalinfo{padding:20px 16px}@media (max-width:960px){.fashionVertical .container-img{padding:20px 16px}.fashionVertical .interval{margin:0 16px}.fashionVertical .totalinfo{padding:20px 16px}}`
              ], t([dt({
                type: Boolean
              })], Ee.prototype, "overWidth", void 0), t([dt({
                type: String,
                attribute: "title-text"
              })], Ee.prototype, "titleText", void 0), t([dt({
                attribute: "salePrice"
              })], Ee.prototype, "salePrice", void 0), t([dt({
                attribute: "savePrice"
              })], Ee.prototype, "savePrice", void 0), t([dt()], Ee.prototype, "switchable", void 0), t([dt({
                attribute: "atcBtnStyle"
              })], Ee.prototype, "atcBtnStyle", void 0), t([dt({
                type: String,
                attribute: "title-color"
              })], Ee.prototype, "titleColor", void 0), t([dt({
                type: String,
                attribute: "btn-bg-color"
              })], Ee.prototype, "btnBgColor", void 0), t([dt({
                type: String,
                attribute: "btn-text-color"
              })], Ee.prototype, "btnTextColor", void 0), t([dt({
                type: Object,
                attribute: "bundleInfo"
              })], Ee.prototype, "bundleInfo", void 0), t([dt({
                type: String,
                attribute: "style-type"
              })], Ee.prototype, "styleType", void 0), t([dt({
                type: Boolean
              })], Ee.prototype, "isQuickShop", void 0), t([dt({
                type: Boolean,
                attribute: "selected_all"
              })], Ee.prototype, "selected_all", void 0), t([dt({
                type: Boolean,
                attribute: "select_one"
              })], Ee.prototype, "select_one", void 0), t([dt({
                type: Object,
                attribute: "selectedInfo",
                reflect: !0
              })], Ee.prototype, "selectedInfo", void 0), t([dt({
                type: Boolean,
                attribute: "loading"
              })], Ee.prototype, "loading", void 0), t([dt({
                type: Boolean,
                attribute: "success"
              })], Ee.prototype, "success", void 0), t([dt()], Ee.prototype, "styleTypeClass", void 0), t([ht(".fashion-container")], Ee.prototype, "fashionContainer", void 0), t([ht(".container-scroll")], Ee.prototype, "scrollContainer",
                void 0), t([ct()], Ee.prototype, "vertical", void 0), t([ct()], Ee.prototype, "scrollTimer", void 0), t([ct()], Ee.prototype, "isShowArrow", void 0), t([ct()], Ee.prototype, "isArSa", void 0), window.customElements.get(
                "bundle-fashion") || window.customElements.define("bundle-fashion", Ee);
              class Te extends st {
                constructor() {
                  super(...arguments), this.layer_type = Ft, this.value = "", this.value_type = "", this.total_price = "", this.atcBtnStyle = 1, this.selectedInfo = [], this.selected_all = !1, this.salePrice = "", this.savePrice = "", this
                    .loading = !1, this.success = !1, this.select_one = !1, this.btnTextColor = "", this.btnBgColor = "", this.styleTypeClass = ""
                }
                updated() {
                  if (window.innerWidth < 960) return;
                  const {
                    isInProductInfo: t
                  } = qt();
                  t && this.addCartPanel.classList.add("addCartPanel--in")
                }
                addToCart() {
                  this.dispatchEvent(new CustomEvent("addToCart", {
                    bubbles: !0,
                    composed: !0
                  }))
                }
                buySelectedProduct() {
                  this.dispatchEvent(new CustomEvent("buySelectedProduct", {
                    bubbles: !0,
                    composed: !0
                  }))
                }
                render() {
                  const t = this.layer_type === Wt && 0 !== Number(this.savePrice),
                    e = !t && this.selected_all,
                    i = t || e ? this.total_price : this.salePrice,
                    o = this.value_type === Mt && !t && Number(this.value) >= Number(this.salePrice),
                    n = !t && !this.selected_all || "none" === this.value_type || o ? "display: none" : "",
                    s = this.selectedInfo.every((t => !t.is_selected));
                  return R`<div class="addCartPanel ${this.styleTypeClass}">${this.styleTypeClass&&0!==Number(this.savePrice)&&(t||this.selected_all)?R`<div class="discountAmount"><span>save</span> <span class="money notranslate">${` ${Nt(this.savePrice)}`}</span></div>`:""}<div class="price"><span class="price-title">Total price:</span> <span class="bundle_money money notranslate">${Nt(i)}</span> <span class="origin_money money notranslate money_delete" style="${n}">${Nt(this.salePrice)}</span></div><div class="add-cart-btn"><bundle-button class="${this.styleTypeClass}" text-color="${this.btnTextColor}" bg-color="${this.btnBgColor}" ?disabled="${s}" ?loading="${this.loading}" ?success="${this.success}" @click="${2===this.atcBtnStyle?this.buySelectedProduct:this.addToCart}">${2===this.atcBtnStyle?'Buy Now':this.select_one?'Add to Cart':'Add selected to cart'}</bundle-button></div></div>`
                }
              }
              Te.styles = [
                  l`.addCartPanel{flex-shrink:0}.discountAmount{display:inline-block;border:1px solid var(--color-text-critical,#db393a);color:var(--color-text-critical,#db393a);font-size:14px;font-weight:400;padding:4px 8px}.price-title{white-space:nowrap}.bundle_money{color:var(--color_price,#db393a);font-weight:500;white-space:nowrap}.origin_money{color:var(--color_price);font-weight:500;font-size:16px;white-space:nowrap}.money_delete{text-decoration:line-through;color:var(--color_origin_price)}`,
                  l`:host(.sutra){width:100%}:host(.sutra) .addCartPanel{margin-top:56px;text-align:center;margin-left:60px;white-space:nowrap}:host(.sutra) .price{display:flex;justify-content:center;align-items:center;margin-bottom:16px;line-height:20px;font-size:16px}:host(.sutra) .price-title{margin-right:8px}:host(.sutra) .bundle_money{margin-right:8px}:host(.sutra) .origin_money{margin-right:8px}:host(.w-full) .addCartPanel{width:100%;text-align:center;margin-top:8px;margin-left:0}@media (max-width:960px){:host(.sutra) .addCartPanel{width:100%;text-align:center;margin-top:8px;margin-left:0}}`,
                  l`:host(.fashionHorizontal){width:100%}.fashionHorizontal .discountAmount{margin-bottom:20px}.fashionHorizontal .price{margin-bottom:40px;display:flex;flex-wrap:wrap;align-items:baseline}.fashionHorizontal .price-title{width:100%;margin-bottom:8px;color:val(--color-body-text,#292929);font-family:Jost;font-size:18px;font-style:normal;font-weight:500;line-height:20px;text-transform:capitalize}.fashionHorizontal .bundle_money{margin-right:10px;font-size:24px}.fashionHorizontal .origin_money{font-weight:400}.addCartPanel--in.fashionHorizontal .price-title{width:auto}.addCartPanel--in.fashionHorizontal.addCartPanel{display:flex;flex-direction:column;align-items:flex-end}.addCartPanel--in.fashionHorizontal .price{text-align:right;margin-bottom:30px;justify-content:flex-end}.addCartPanel--in.fashionHorizontal .bundle_money{margin:0 10px}.addCartPanel--in.fashionHorizontal .add-cart-btn{width:auto}@media (max-width:960px){.addCartPanel--in.fashionHorizontal.addCartPanel,.fashionHorizontal.addCartPanel{display:flex;flex-direction:column;align-items:center}.fashionHorizontal .price-title{width:auto}.fashionHorizontal .price{margin-bottom:30px}.fashionHorizontal .bundle_money{margin:0 10px}.addCartPanel--in.fashionHorizontal .add-cart-btn,.fashionHorizontal .add-cart-btn{width:100%}}`,
                  l`.fashionVertical{text-align:right;white-space:nowrap}.fashionVertical .discountAmount{margin-bottom:10px}.fashionVertical .price{margin-bottom:30px;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:baseline}.fashionVertical .price-title{margin-bottom:8px;color:val(--color-body-text,#292929);font-family:Jost;font-size:18px;font-style:normal;font-weight:500;line-height:20px;text-transform:capitalize}.fashionVertical .bundle_money{margin:0 10px;font-size:22px}.fashionVertical .origin_money{font-weight:400}.fashionVertical .add-cart-btn{width:auto;display:inline-block;margin-left:auto}:host(.fashion-full) .fashionVertical .add-cart-btn{width:auto}@media (max-width:960px){.fashionVertical .add-cart-btn,:host(.fashion-full) .fashionVertical .add-cart-btn{width:100%}}`
                ], t([dt()], Te.prototype, "layer_type", void 0), t([dt()], Te.prototype, "value", void 0), t([dt()], Te.prototype, "value_type", void 0), t([dt()], Te.prototype, "total_price", void 0), t([dt({
                  attribute: "atcBtnStyle"
                })], Te.prototype, "atcBtnStyle", void 0), t([dt({
                  type: Object,
                  attribute: "selectedInfo",
                  reflect: !0
                })], Te.prototype, "selectedInfo", void 0), t([dt({
                  type: Boolean,
                  attribute: "selected_all"
                })], Te.prototype, "selected_all", void 0), t([dt({
                  attribute: "salePrice"
                })], Te.prototype, "salePrice", void 0), t([dt({
                  attribute: "savePrice"
                })], Te.prototype, "savePrice", void 0), t([dt({
                  type: Boolean,
                  attribute: "loading"
                })], Te.prototype, "loading", void 0), t([dt({
                  type: Boolean,
                  attribute: "success"
                })], Te.prototype, "success", void 0), t([dt({
                  type: Boolean,
                  attribute: "select_one"
                })], Te.prototype, "select_one", void 0), t([dt({
                  attribute: "btnTextColor"
                })], Te.prototype, "btnTextColor", void 0), t([dt({
                  attribute: "btnBgColor"
                })], Te.prototype, "btnBgColor", void 0), t([dt()], Te.prototype, "styleTypeClass", void 0), t([ht(".addCartPanel")], Te.prototype, "addCartPanel", void 0), window.customElements.get("bundle-add-cart") || window.customElements
                .define("bundle-add-cart", Te);
              class Pe extends st {
                constructor() {
                  super(...arguments), this.data = {}, this.styleTypeClass = "", this.thisOne = !1, this.index = 0
                }
                onChange() {
                  this.dispatchEvent(new CustomEvent("changeCheckBox", {
                    detail: {
                      index: this.index
                    },
                    bubbles: !0,
                    composed: !0
                  }))
                }
                requestUpdate() {
                  super.requestUpdate()
                }
                render() {
                  return R`<div class="content_flex"><input style="display:none" type="checkbox" class="bundle-checked" id="bundle-checked" .checked="${this.data.is_selected}" @click="${this.onChange}"> <label for="bundle-checked" class="check-label"><div class="close-icon">${this.data.is_selected?this.styleTypeClass?Zt:Kt:Xt}</div></label></div>`
                }
              }
              Pe.styles =
                l`.content_flex{display:flex;align-items:center;position:relative}.check-label{display:flex;align-items:center}.close-icon{display:flex;cursor:pointer}:host(.fashionHorizontal) .close-icon svg,:host(.fashionVertical) .close-icon svg{width:24px;height:24px}:host(.fashion-full.fashionHorizontal) .close-icon svg,:host(.fashion-full.fashionVertical) .close-icon svg{width:16px;height:16px}@media (max-width:960px){:host(.fashionHorizontal) .close-icon svg,:host(.fashionVertical) .close-icon svg{width:16px;height:16px}}`,
                t([dt()], Pe.prototype, "data", void 0), t([dt()], Pe.prototype, "styleTypeClass", void 0), t([dt({
                  type: Boolean,
                  attribute: "thisOne"
                })], Pe.prototype, "thisOne", void 0), t([dt({
                  type: Number,
                  attribute: "index"
                })], Pe.prototype, "index", void 0), window.customElements.get("bundle-check-box") || window.customElements.define("bundle-check-box", Pe), e(void 0, void 0, void 0, (function*() {
                  var t, i;
                  let o = [];
                  const n = t => e(void 0, void 0, void 0, (function*() {
                      if (!t) return [];
                      const {
                        data: e
                      } = yield Bt.get(
                        `/api/product/list?${function(t){var e=[],i=function(t,i){i=null==(i="function"==typeof i?i():i)?"":i,e[e.length]=encodeURIComponent(t)+"="+encodeURIComponent(i)};return function t(o,n){var s,r,l;if(o)if(Array.isArray(n))for(s=0,r=n.length;s<r;s++)t(o+"["+("object"==yt(n[s])&&n[s]?s:"")+"]",n[s]);else if("[object Object]"===Object.prototype.toString.call(n))for(l in n)t(o+"["+l+"]",n[l]);else i(o,n);else if(Array.isArray(n))for(s=0,r=n.length;s<r;s++)i(n[s].name,n[s].value);else for(l in n)t(l,n[l]);return e}("",t).join("&")}({ids:t,limit:t.length,page:1})}`
                        ), i = e.list;
                      return i.forEach((t => {
                        window.C_SETTINGS.store_trial && (t.variant || []).forEach((t => {
                          (t.wholesale_price || []).forEach(((e, i) => {
                            const o = t.wholesale_price[i + 1];
                            o && (e.max_quantity = o.min_quantity - 1)
                          }))
                        }))
                      })), i
                    })),
                    s = t => e(void 0, void 0, void 0, (function*() {
                      if (d && (d.style.cursor = "wait", d.pid = t, d.style.pointerEvents = "none", d.switchable = p.bundle_sales.length > 1), 0 === p.bundle_sales.length) return void r(d);
                      const e = p.bundle_sales[a];
                      e.entitled_products.forEach((t => Object.assign(t, o.find((e => e.id === t.id)))));
                      const i = e.entitled_products.find((e => e.id === t)),
                        n = e.entitled_products.findIndex((e => e.id === t));
                      e.entitled_products.splice(n, 1), e.entitled_products.unshift(i), e.isRequested = !0, d && (d.bundleInfo = e, d.discount_ids = p.bundle_sales.map((t => t.id)).join(","), d.bundleInfo.entitled_products.filter((t =>
                          t.price)).forEach((e => {
                          e.is_selected = !0, e.selected_id = e.variants.filter((t => t.available))[0].id, e.id === t && (e.thisOne = !0)
                        })), d.style.cursor = "", d.style.pointerEvents = ""),
                        function(t, e) {
                          var i = document.querySelector(t),
                            o = function() {
                              e()
                            };
                          i && !i.getAttribute("imprsd") ? i.addEventListener("impress", o) : o()
                        }("bundle-product-list", (() => {
                          var e, i;
                          const o = p.bundle_sales[a],
                            n = {
                              discount_id: o.id,
                              value_type: o.value_type,
                              popups_setting: o.popups_setting,
                              global_show_text: o.global_show_text,
                              target_selection: o.target_selection,
                              page: null === (e = window.SHOP_PARAMS) || void 0 === e ? void 0 : e.template_type,
                              product_id: t,
                              plugin_timestamp: Date.now(),
                              show_related_items: p.bundle_sales.length > 1,
                              block: !0,
                              discount_ids: p.bundle_sales.map((t => t.id)).join(","),
                              operation_type: o.operation_type,
                              entitled_product_ids: o.entitled_product_ids
                            };
                          window.sa && (null === (i = window.sa) || void 0 === i || i.track("plugin_bundle_combination_pv", n))
                        }))
                    })),
                    r = t => {
                      var e;
                      if (!document.querySelector("bundle-skeleton") && window.self !== window.top) {
                        const i = document.createElement("bundle-skeleton");
                        null === (e = null == t ? void 0 : t.parentElement) || void 0 === e || e.insertBefore(i, t)
                      }
                    };
                  let l = window.innerWidth;
                  window.addEventListener("resize", Ht((() => {
                    window.innerWidth !== l && window.top !== window.self && window.location.reload()
                  }), 500));
                  let a = 0;
                  const d = document.querySelector('[data-section-id="1539149753700"] .bundle-main'),
                    c = d.getAttribute("pid") || "",
                    p = yield Bt.get(`/api/bundle-sales?product_id=${c}`);
                  yield e(void 0, void 0, void 0, (function*() {
                    const t = yield Bt.get("/api/bundle-sales/setting?type=discount_code");
                    d && (d.atcBtnStyle = t.style || 1)
                  })), yield e(void 0, void 0, void 0, (function*() {
                    const t = p.bundle_sales.map((t => t.entitled_product_ids)).flat();
                    o = yield n(t);
                    const e = [];
                    p.bundle_sales.forEach((t => {
                      t.entitled_product_ids.every((t => null == o ? void 0 : o.find((e => e.id === t && e.available)))) && e.push(t)
                    })), p.bundle_sales = e
                  })), yield s(c);
                  const {
                    isInProductInfo: h
                  } = qt();
                  h || null === (i = null === (t = document.querySelector(".bundle-combination-container")) || void 0 === t ? void 0 : t.classList) || void 0 === i || i.add("tw-container", "container", "container-gap", "page-width"),
                    null == d || d.addEventListener("bundle-combination-switch", Ht((() => e(void 0, void 0, void 0, (function*() {
                      var t;
                      if (a = a === p.bundle_sales.length - 1 ? 0 : a + 1, p.bundle_sales[a].isRequested) return void(d.bundleInfo = p.bundle_sales[a]);
                      yield s(c);
                      const e = p.bundle_sales[a];
                      window.sa && (null === (t = window.sa) || void 0 === t || t.track("plugin_bundle_combination_related_item_click", {
                        discount_ids: p.bundle_sales.map((t => t.id)),
                        product_id: c,
                        block: !0,
                        discount_id: e.id,
                        operation_type: e.operation_type,
                        entitled_product_ids: e.entitled_product_ids.join(",")
                      }))
                    }))), 300))
                }))
            }));
          } catch (err) {
            console.log('bundle sales error' + err)
          }
        })()
      } catch (e) {
        console.error(e)
      }
    </script>
    <script async="" crossorigin="anonymous" src="//static.staticdj.com/cuttlefish/v1/spz.min.js"></script>
    <style>
      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .plugin-strengthen-trust-container {
        max-width: var(--general-layout-width, var(--layout-width, var(--page-width, 1140px)));
        padding: 0 var(--general-layout-spacing, var(--page-spacing, 40px));
        margin: 0 auto;
      }

      .plugin-strengthen-trust-1539149753700-wrap {
        padding: 8px 0;
        word-break: break-word;
      }

      .scale-125 {
        transform: scale(1.25);
      }

      .pl4 {
        padding-left: 4px;
      }

      .pb-4 {
        padding-bottom: 16px;
      }

      .opacity-1 {
        opacity: 1;
      }

      .trust-big-title {
        display: none;
        padding-top: 40px;
        font-size: 24px;
        font-weight: 500;
        color: var(--color-body-text, #292929);
        font-family: var(--font-heading-family);
      }

      .store-open-trust-tips {
        display: flex;
        align-items: flex-start;
        padding: 8px 12px;
        border-radius: 4px 4px 0 0;
        border: 1px dashed #ff7979;
        background: #fff;
      }

      .store-open-trust-tips .tips-text {
        flex: 16px;
        margin-left: 4px;
        color: #ff7979;
        font-size: 14px;
        font-weight: 500;
      }

      .plugin-strengthen-trust-1539149753700-wrap .trust-title-block {
        display: flex;
        padding: 16px 12px;
        align-items: center;
        background: rgba(49, 176, 121, 0.2);
        font-size: 16px;
        font-weight: 500;
        border-radius: 4px 4px 0px 0px;
      }

      .plugin-strengthen-trust-1539149753700-wrap.trust-expanded .trust-title-block {
        padding-left: 20px;
      }

      .plugin-strengthen-trust-1539149753700-wrap .trust-title {
        flex: 1;
        margin: 0 4px;
        color: #31B079;
      }

      .plugin-strengthen-trust-1539149753700-wrap .trust-thumbnail-desc {
        display: flex;
        flex-wrap: wrap;
        padding: 12px 12px 0 16px;
        background: rgba(49, 176, 121, 0.05);
      }

      .trust-card-block section[expanded] .trust-thumbnail-desc {
        display: none;
      }

      .trust-card-block section {
        height: auto !important;
      }

      .trust-card-block section[expanded] .icon_arrow_trust {
        transform: rotate(180deg);
      }

      .plugin-strengthen-trust-1539149753700-wrap .trust-card-block .icon_arrow_trust {
        color: #31B079;
      }

      .plugin-strengthen-trust-1539149753700-wrap .trust-card-border {
        border-radius: 0 0 4px 4px;
        border: 1px solid rgba(49, 176, 121, 0.2);
      }

      .trust-thumbnail-desc-item {
        width: 50%;
        display: flex;
        flex-direction: column;
        padding: 0 0 12px 20px;
        box-sizing: border-box;
      }

      .trust-thumbnail-desc-item:nth-child(2n) {
        padding-left: 20px;
      }

      .trust-thumbnail-desc-title {
        padding-top: 4px;
        color: var(--color-body-text, #292929);
        opacity: 0.85;
        font-size: 14px;
        font-weight: 400;
      }

      .trust-card-block .trust-thumbnail-img {
        flex-shrink: 0;
      }

      .trust-card-block .trust-thumbnail-title {
        padding-left: 4px;
      }

      .plugin-strengthen-trust-1539149753700-wrap .trust-open-card {
        padding: 20px 20px 0;
        background: rgba(49, 176, 121, 0.05);
      }

      .trust-card-desc-block {
        padding-bottom: 20px;
        box-sizing: border-box;
      }

      .trust-card-desc-title {
        display: flex;
        align-items: center;
        color: var(--color-body-text, #292929);
        font-size: 14px;
        font-weight: 400;
      }

      .trust-card-desc-text {
        padding: 4px 0;
        font-size: 14px;
        font-weight: 400;
        color: var(--color-body-text, #292929);
        opacity: 0.85;
      }

      .trust-card-desc-text ul {
        padding-left: 20px;
        margin: 0;
      }

      .trust-card-desc-text a {
        color: #4D74ED;
        text-decoration: underline;
      }

      .trust-card-desc-img {
        padding: 8px 0 4px 8px;
        border-radius: 3px;
        background: #f6f6f6;
      }

      .icon-trust-block {
        margin: 0 8px 4px 0;
      }

      .icon-trust-block-custom {
        border-radius: 3px;
      }

      .trust-expanded .trust-title {
        color: #292929;
      }

      .plugin-strengthen-trust-1539149753700-wrap .icon_security_trust {
        color: #31B079;
      }

      .plugin-strengthen-trust-1539149753700-wrap .icon_title_trust {
        color: #31B079;
      }

      .trust-expanded .icon_arrow_trust,
      .trust-expanded .trust-thumbnail-desc {
        display: none;
      }

      .plugin-strengthen-trust-1539149753700-wrap.trust-expanded .trust-card-desc-title {
        color: #31B079;
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4 .trust-thumbnail-desc {
        flex-wrap: nowrap;
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4 .more-than-4 .trust-thumbnail-desc {
        flex-wrap: wrap;
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4 .more-than-4 .trust-thumbnail-desc .trust-thumbnail-desc-item,
      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4 .more-than-4 .trust-card-desc-block {
        width: 25%;
        flex: none;
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4 .trust-open-card {
        display: flex;
        flex-wrap: wrap;
        padding: 0;
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4 ljs-accordion>section[expanded]>:last-child {
        display: flex !important;
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4 .trust-card-desc-block {
        flex: 1;
        padding: 12px;
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4 .store-open-trust-tips {
        padding: 16px 0;
        border: none;
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4.is-card-expanded .trust-open-card {
        display: flex !important;
        border: none;
        background: none;
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4.is-card-expanded .trust-title-block {
        display: none;
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4 .trust-big-title {
        display: block;
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4.is-card-expanded .trust-card-desc-block {
        margin-right: 16px;
        background: rgba(49, 176, 121, 0.05);
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4.is-card-expanded .more-than-4 .trust-card-desc-block {
        width: calc(25% - 18px);
        flex: none;
        margin-bottom: 16px;
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4.is-card-expanded .icon_security_trust {
        color: var(--color-body-text, #292929);
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4.is-card-expanded .icon_title_trust {
        color: var(--color-body-text, #292929);
      }

      [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .expanded-column-4.is-card-expanded .trust-card-desc-block:last-child {
        margin-right: 0;
      }

      @media (min-width: 960px) {
        .lg\:hidden {
          display: none;
        }
      }

      @media (max-width: 959.98px) {
        .md\:hidden {
          display: none;
        }

        [data-section-type="shoplazza://apps/painterb/blocks/strengthen_trust/283166158603952609"] .plugin-strengthen-trust-container {
          padding: 0 var(--general-layout-spacing, var(--page-spacing, 16px));
        }

        .trust-expanded .trust-accordion-header {
          display: none;
        }

        .trust-accordion-header .trust-title-block {
          padding: 8px 12px;
        }

        .trust-accordion-header .trust-thumbnail-desc {
          padding: 12px 12px 0;
        }

        .trust-thumbnail-desc .trust-thumbnail-desc-item {
          flex-direction: row;
          align-items: center;
          width: 100%;
          padding-left: 0;
        }

        .trust-thumbnail-desc .trust-thumbnail-desc-item:nth-child(2n) {
          padding-left: 0;
        }

        .trust-thumbnail-desc-item .trust-thumbnail-desc-title {
          flex: 1;
          padding-top: 0;
          padding-left: 4px;
        }

        .trust-sidebar {
          display: flex;
          flex-direction: column;
          background: #FFF;
        }

        .trust-sidebar-cancel {
          flex-shrink: 0;
          display: flex;
          align-items: center;
          justify-content: flex-end;
          padding-right: 16px;
        }

        .trust-sidebar .trust-open-card {
          border: none;
        }

        .trust-expanded .trust-open-card {
          padding: 8px;
        }

        .trust-card-desc-block {
          padding-bottom: 12px;
        }

        .icon_arrow_right_trust {
          flex-shrink: 0;
          color: var(--color-body-text, #292929);
        }

        .plugin-strengthen-trust-1539149753700-wrap .trust-card-big-title {
          display: flex;
          align-items: center;
          padding: 16px 20px;
          border-radius: 4px 4px 0px 0px;
          background: rgba(49, 176, 121, 0.2);
        }

        .plugin-strengthen-trust-1539149753700-wrap.trust-expanded .trust-card-big-title {
          padding-left: 8px;
        }

        .trust-card-big-title .trust-title {
          font-size: 16px;
          font-weight: 500;
        }

        .sidebar-bottom-content {
          overflow-y: auto;
        }

        /* 兼容nova移动端抽屉购物车 sidebar 样式 */
        #trust-sidebar-cart_drawer {
          width: 100%;
        }
      }

      html[dir="rtl"] .icon_arrow_right_trust {
        transform: rotate(180deg);
      }
    </style>
    <ljs-script layout="logic" type="application/javascript" class="i-spzhtml-layout-logic i-spzhtml-element i-spzhtml-built i-spzhtml-layout" i-spzhtml-layout="logic"> /** @private {string} */ class SpzCustomAnchorScroll extends SPZ.BaseElement {
      static deferredMount() { return false; } constructor(element) { super(element); /** @private {Element} */ this.scrollableContainer_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.viewport_
      = this.getViewport(); this.initActions_(); } setTarget(containerId, targetId) { this.containerId = '#' + containerId; this.targetId = '#' + targetId; } scrollToTarget() { const container = document.querySelector(this.containerId); const target
      = container.querySelector(this.targetId); const {scrollTop} = container; const eleOffsetTop = this.getOffsetTop_(target, container); this.viewport_ .interpolateScrollIntoView_( container, scrollTop, scrollTop + eleOffsetTop ); } initActions_()
      { this.registerAction( 'scrollToTarget', (invocation) =&gt; this.scrollToTarget(invocation?.caller) ); this.registerAction( 'setTarget', (invocation) =&gt; this.setTarget(invocation?.args?.containerId, invocation?.args?.targetId) ); } /** *
      @param {Element} element * @param {Element} container * @return {number} * @private */ getOffsetTop_(element, container) { if (!element./*OK*/ getClientRects().length) { return 0; } const rect = element./*OK*/ getBoundingClientRect(); if
      (rect.width || rect.height) { return rect.top - container./*OK*/ getBoundingClientRect().top; } return rect.top; } } SPZ.defineElement('spz-custom-anchor-scroll', SpzCustomAnchorScroll); </ljs-script>
    <ljs-script layout="logic" type="application/javascript" class="i-spzhtml-layout-logic i-spzhtml-element i-spzhtml-built i-spzhtml-layout" i-spzhtml-layout="logic"> const STRENGTHEN_TRUST_URL = "/api/strengthen_trust/settings"; class
      SpzCustomStrengthenTrust extends SPZ.BaseElement { constructor(element) { super(element); this.renderElement_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.xhr_ =
      SPZServices.xhrFor(this.win); const renderId = this.element.getAttribute('render-id'); SPZCore.Dom.waitForChild( document.body, () =&gt; !!document.getElementById(renderId), () =&gt; { this.renderElement_ = SPZCore.Dom.scopedQuerySelector(
      document.body, `#${renderId}` ); if (this.renderElement_) { this.render_(); } this.registerAction('track', (invocation) =&gt; { this.track_(invocation.args); }); } ); } render_() { this.fetchData_().then((data) =&gt; { if (!data) { return; }
      SPZ.whenApiDefined(this.renderElement_).then((apis) =&gt; { apis?.render(data); document.querySelector('#strengthen-trust-render-1539149753700').addEventListener('click',(event)=&gt;{ if(event.target.nodeName == 'A'){ this.track_({type:
      'trust_content_click'}); } }) }); }); } track_(data = {}) { const track = window.sa &amp;&amp; window.sa.track; if (!track) { return; } track('trust_enhancement_event', data); } parseJSON_(string) { let result = {}; try { result =
      JSON.parse(string); } catch (e) {} return result; } fetchData_() { return this.xhr_ .fetchJson(STRENGTHEN_TRUST_URL) .then((responseData) =&gt; { if (!responseData || !responseData.data) { return null; } const data = responseData.data; const
      moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) =&gt; { return result.concat(Object.assign(moduleSetting, { logos: (moduleSetting.logos || []).map((item) =&gt; { return moduleSetting.logos_type == 'custom' ?
      this.parseJSON_(item) : item; }) })); }, []); return Object.assign(data, { module_settings: moduleSettings, isEditor: window.self !== window.top, }); }); } } SPZ.defineElement('spz-custom-strengthen-trust', SpzCustomStrengthenTrust);
    </ljs-script>
    <spz-custom-strengthen-trust layout="container" render-id="strengthen-trust-render-1539149753700" id="strengthen-trust-render-script-1539149753700" class="i-spzhtml-layout-container i-spzhtml-element i-spzhtml-built i-spzhtml-layout"
      i-spzhtml-layout="container"></spz-custom-strengthen-trust>
    <ljs-render id="strengthen-trust-render-1539149753700" layout="container" manual="" @finish="strengthen-trust-render-script-1539149753700.track(style='icon_title');"
      class="i-spzhtml-layout-container i-spzhtml-element i-spzhtml-built i-spzhtml-layout" i-spzhtml-layout="container">
      <template>
        <div spz-if="${ data.isEditor || data.other_enabled }" class="plugin-strengthen-trust-container">
          <div class="
          plugin-strengthen-trust-1539149753700-wrap md:hidden expanded-column-4
          
        ">
            <div class="trust-big-title type-title-font-family ${data.other_enabled?'pb-4':''}"> ${data.module_title} </div>
            <div spz-if="${!data.other_enabled}" class="store-open-trust-tips">
              <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none">
                <g clip-path="url(#clip0_2160_10007)">
                  <path
                    d="M8.92398 8.53999C8.924 8.66134 8.90011 8.7815 8.85368 8.89362C8.80725 9.00574 8.7392 9.10761 8.6534 9.19342C8.5676 9.27923 8.46573 9.3473 8.35362 9.39375C8.24151 9.44019 8.12135 9.46409 8 9.46409C7.87865 9.46409 7.75849 9.44019 7.64638 9.39375C7.53427 9.3473 7.43241 9.27923 7.3466 9.19342C7.2608 9.10761 7.19275 9.00574 7.14632 8.89362C7.09989 8.7815 7.076 8.66134 7.07602 8.53999V4.23208C7.076 4.11073 7.09989 3.99056 7.14632 3.87845C7.19275 3.76633 7.2608 3.66446 7.3466 3.57865C7.43241 3.49283 7.53427 3.42476 7.64638 3.37832C7.75849 3.33188 7.87865 3.30798 8 3.30798C8.12135 3.30798 8.24151 3.33188 8.35362 3.37832C8.46573 3.42476 8.5676 3.49283 8.6534 3.57865C8.7392 3.66446 8.80725 3.76633 8.85368 3.87845C8.90011 3.99056 8.924 4.11073 8.92398 4.23208V8.53999ZM8 12.5399C7.7872 12.5392 7.58121 12.4648 7.41712 12.3293C7.25303 12.1938 7.141 12.0056 7.10009 11.7968C7.05919 11.5879 7.09195 11.3714 7.1928 11.184C7.29365 10.9966 7.45634 10.8499 7.65317 10.769C7.84999 10.6881 8.06878 10.678 8.27226 10.7403C8.47574 10.8026 8.65133 10.9335 8.76912 11.1107C8.88691 11.2879 8.93962 11.5005 8.91826 11.7123C8.8969 11.924 8.8028 12.1218 8.65199 12.2719C8.56722 12.3585 8.46569 12.427 8.35359 12.4731C8.24149 12.5191 8.12118 12.5419 8 12.5399ZM8 0.000162657C6.92965 -0.00673195 5.86922 0.205626 4.88406 0.62415C2.96107 1.43154 1.43154 2.96107 0.62415 4.88406C0.205626 5.86922 -0.00673195 6.92965 0.000162657 8C-0.00673195 9.07035 0.205626 10.1308 0.62415 11.1159C1.43154 13.0389 2.96107 14.5685 4.88406 15.3759C5.86922 15.7944 6.92965 16.0067 8 15.9998C9.07035 16.0067 10.1308 15.7944 11.1159 15.3759C13.0389 14.5685 14.5685 13.0389 15.3759 11.1159C15.7944 10.1308 16.0067 9.07035 15.9998 8C16.0067 6.92965 15.7944 5.86922 15.3759 4.88406C14.5685 2.96107 13.0389 1.43154 11.1159 0.62415C10.1308 0.205626 9.07035 -0.00673195 8 0.000162657Z"
                    fill="#FF7979"></path>
                </g>
                <defs>
                  <clipPath id="clip0_2160_10007">
                    <rect width="16" height="16" fill="white"></rect>
                  </clipPath>
                </defs>
              </svg>
              <span class="tips-text"> To display this card to customers, you need to go to "Booster &amp; Store Conversion" to turn on the trust enhancement feature. </span>
            </div>
            <ljs-accordion class="trust-card-block" layout="container">
              <section class="${data.module_settings.length>4?'more-than-4':''}" @expand="strengthen-trust-render-script-1539149753700.track(type='trust_expand_click');">
                <div class="trust-accordion-header">
                  <div class="trust-title-block">
                    <svg class="icon_security_trust" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="currentColor">
                      <path fill-rule="evenodd" clip-rule="evenodd"
                        d="M9.99932 0C10.5736 0 11.1307 0.184885 11.5792 0.524258L12.0909 0.911325C13.4831 1.96508 15.0052 2.85514 16.6239 3.56198L17.9248 4.13095C18.3719 4.32298 18.7485 4.63668 19.0065 5.03203C19.2644 5.42739 19.3921 5.88649 19.3732 6.35077C18.9684 14.8758 13.0391 18.7013 11.0849 19.7312C10.4069 20.0896 9.59169 20.0896 8.91232 19.7312C6.95805 18.7 1.03164 14.8731 0.626913 6.32479C0.607503 5.85814 0.736181 5.39668 0.996373 4.99983C1.25657 4.60299 1.63636 4.28894 2.08683 4.09813L3.31114 3.57292C4.97349 2.85777 6.53548 1.94994 7.96121 0.870293L8.41942 0.524258C8.86789 0.184885 9.42506 0 9.99932 0ZM7.19446 9.35226C7.43734 9.34797 7.67239 9.43812 7.85011 9.60372L9.12261 10.875L12.1639 7.83623C12.3416 7.67063 12.5766 7.58047 12.8195 7.58476C13.0624 7.58904 13.2941 7.68743 13.4659 7.8592C13.6377 8.03096 13.736 8.2627 13.7403 8.50557C13.7446 8.74845 13.6545 8.98351 13.4889 9.16123L9.78511 12.8637C9.60933 13.0393 9.37105 13.1379 9.12261 13.1379C8.87418 13.1379 8.63589 13.0393 8.46011 12.8637L6.52511 10.9287C6.35951 10.751 6.26936 10.5159 6.27364 10.2731C6.27793 10.0302 6.37632 9.79846 6.54809 9.6267C6.71985 9.45493 6.95158 9.35654 7.19446 9.35226Z"
                        fill="currentColor"></path>
                    </svg>
                    <span class="trust-title">${data.module_title}</span>
                    <svg class="icon_arrow_trust" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="currentColor">
                      <path
                        d="M7.54264 10.3064C7.77695 10.5407 8.15686 10.5407 8.39117 10.3064L12.8459 5.85165C12.9631 5.73449 12.9631 5.54454 12.8459 5.42738L12.5065 5.08797C12.3894 4.97082 12.1994 4.97082 12.0823 5.08797L7.96696 9.20328L3.85155 5.08787C3.73439 4.97071 3.54444 4.97071 3.42728 5.08787L3.08787 5.42728C2.97071 5.54444 2.97071 5.73439 3.08787 5.85154L7.54264 10.3064Z"
                        fill="currentColor"></path>
                    </svg>
                  </div>
                  <div class="trust-thumbnail-desc trust-card-border">
                    <div class="trust-thumbnail-desc-item" spz-for="item in data.module_settings" key="item.type">
                      <div spz-if="${(item.icon_type === 'default')}">
                        <div spz-if="${(item.type == 'payment_setting')}">
                          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon_title_trust scale-125">
                            <g clip-path="url(#clip0_2533_19421)">
                              <path
                                d="M18.5653 9.98893C18.8533 9.78627 19.3146 9.78359 19.6026 9.98893C19.6026 9.98893 20.3706 10.6023 21.3253 11.0103V3.61827C21.3253 3.26094 21.0399 2.97559 20.6879 2.97559H0.626594C0.274586 2.97559 -0.0107422 3.26359 -0.0107422 3.61827V17.2689C-0.0107422 17.6263 0.274586 17.9116 0.626594 17.9116H14.1626C13.9279 17.5516 13.8533 17.0343 13.8533 16.6209V11.5543C13.8533 11.3169 14.0373 11.1676 14.2666 11.2183C14.2666 11.2183 14.8266 11.3649 15.3466 11.3649C16.8346 11.3649 18.5653 9.98895 18.5653 9.98895V9.98893ZM7.88259 9.80494H2.76259C2.40791 9.80494 2.12259 9.51694 2.12259 9.16494C2.12259 8.81026 2.41059 8.52493 2.76259 8.52493H7.88259C8.23727 8.52493 8.52259 8.81293 8.52259 9.16494C8.52259 9.51694 8.23459 9.80494 7.88259 9.80494ZM2.75992 6.3916C2.40791 6.3916 2.12259 6.1036 2.12259 5.75159C2.12259 5.39691 2.40791 5.11159 2.75992 5.11159H18.5519C18.9039 5.11159 19.1893 5.39959 19.1893 5.75159C19.1893 6.10627 18.9039 6.3916 18.5519 6.3916H2.75992Z"
                                fill="currentColor"></path>
                              <path
                                d="M23.4559 12.0668H22.5412C21.2052 12.0668 19.7092 10.8668 19.7092 10.8668C19.4212 10.6615 18.9572 10.6669 18.6692 10.8668C18.6692 10.8668 17.1732 12.0668 15.8372 12.0668H14.9225C14.6879 12.0668 14.4985 12.2588 14.4985 12.4935V16.7842C14.4985 17.2535 14.7972 17.8722 15.1652 18.1655L18.5225 20.8242C18.8905 21.1149 19.4879 21.1149 19.8586 20.8242L23.2159 18.1655C23.5839 17.8749 23.8826 17.2562 23.8826 16.7842V12.4935C23.8826 12.2588 23.6906 12.0668 23.4559 12.0668ZM21.3386 14.7922L19.3866 17.2748C19.0026 17.7655 18.3199 17.7788 17.9172 17.3068L17.0532 16.2988C16.8986 16.1202 16.9199 15.8508 17.0986 15.6961C17.2772 15.5415 17.5466 15.5628 17.7012 15.7415L18.5652 16.7495C18.6186 16.8135 18.6639 16.8135 18.7172 16.7442L20.6692 14.2615C20.8159 14.0775 21.0826 14.0428 21.2692 14.1895C21.4506 14.3388 21.4826 14.6082 21.3386 14.7922Z"
                                fill="currentColor"></path>
                            </g>
                            <defs>
                              <clipPath id="clip0_2533_19421">
                                <rect width="24" height="24" fill="currentColor"></rect>
                              </clipPath>
                            </defs>
                          </svg>
                        </div>
                        <div spz-if="${(item.type == 'privacy_setting')}">
                          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust scale-125">
                            <path fill="currentColor"
                              d="M19.505 15.49h-3.174a.712.712 0 0 1-.082-.338v-.675c0-.322.199-.584.444-.584h1.05c.243 0 .441.26.441.582 0 .254.157.46.352.46.194 0 .351-.206.351-.46 0-.83-.512-1.504-1.143-1.504h-1.051c-.632 0-1.145.675-1.145 1.506v.675c0 .114.01.227.032.338h-1.138a.674.674 0 0 0-.66.685v4.614c0 .378.295.685.66.685h5.063c.364 0 .66-.307.66-.685v-4.614a.672.672 0 0 0-.66-.685m-2.193 2.994v1.864a.272.272 0 1 1-.543 0v-1.864a.9.9 0 0 1-.6-.86c0-.499.39-.903.872-.903.481 0 .872.404.872.904 0 .4-.252.74-.601.859m3.6-1.075v3.663a.794.794 0 0 1-.329.643h1.097c0-1.546-.127-3.008-.769-4.306">
                            </path>
                            <path fill="currentColor"
                              d="M16.905 7.214a4.863 4.863 0 0 0-5.79-4.773A4.81 4.81 0 0 0 7.26 6.366a4.863 4.863 0 0 0 3.817 5.61.03.03 0 0 1 .016.05.03.03 0 0 1-.02.008c-4.915.477-8.76 4.613-8.775 9.65a.03.03 0 0 0 .03.03h10.978c.027 0-.124-.033-.144-.051-.162-.146-.334-.356-.334-.591l.07-5.33a.825.825 0 0 1 .826-.825h1.203a.03.03 0 0 0 .03-.034c-.047-.281-.07-1.728.574-2.141a.03.03 0 0 0 .014-.029.03.03 0 0 0-.02-.025c-.782-.287-1.645-.534-2.568-.641a.03.03 0 0 1-.002-.06 4.861 4.861 0 0 0 3.95-4.773">
                            </path>
                          </svg>
                        </div>
                        <div spz-if="${(item.type == 'logitics_setting')}">
                          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust scale-125">
                            <path fill="currentColor"
                              d="M10.469 5.344c.094.375.187.75.187 1.125 0 .656-.094 1.218-.375 1.687-.281.563-.562 1.031-.937 1.406-.375.376-.844.75-1.406.938-.563.188-1.125.375-1.688.375-.656 0-1.219-.094-1.687-.375-.563-.187-1.032-.562-1.407-.937-.375-.376-.75-.844-.937-1.407-.281-.562-.375-1.125-.375-1.687V6.28c-.375.282-.469.563-.657.844A3.37 3.37 0 0 0 1 8.156V19.22c0 .281.094.468.188.656.187.188.375.188.562.188h.469c0-.938.187-1.594.656-2.063.469-.469 1.125-.656 1.969-.656.937 0 1.593.281 1.968.75.47.468.657 1.125.657 1.968h5.812c.188 0 .375-.093.563-.187.187-.187.281-.375.281-.562V5.53h-3.656z">
                            </path>
                            <path fill="currentColor"
                              d="M5.031 18.656c-.375 0-.75.094-.937.375-.282.282-.375.563-.375.938s.094.656.375.937c.281.282.562.375.937.375s.75-.093.938-.375c.281-.281.375-.562.375-.937s-.094-.75-.375-.938c-.282-.187-.563-.375-.938-.375m14.532.094c.375 0 .656.094.937.375s.375.563.375.938-.094.75-.375.937c-.281.281-.562.375-.937.375s-.75-.094-.938-.375c-.281-.281-.375-.562-.375-.937s.094-.657.375-.938c.281-.281.563-.375.938-.375">
                            </path>
                            <path fill="currentColor"
                              d="M23.406 15c-.093-.844-.281-1.594-.562-2.437a8 8 0 0 0-1.219-2.344A3.994 3.994 0 0 0 20.5 9.188c-.469-.282-.937-.563-1.406-.75-.469-.188-1.032-.282-1.5-.376-.469-.093-1.032-.093-1.5-.093-.188 0-.282.093-.375.375-.094.187-.188.375-.188.562v10.219c0 .281.094.469.281.656a.851.851 0 0 0 .657.282h.375c0-.375.093-.657.187-1.032.094-.281.282-.562.563-.843.187-.282.468-.47.843-.563.282-.187.657-.187 1.032-.187s.75.093 1.031.187c.375.094.656.281.844.469.281.187.468.468.562.843.188.375.188.75.188 1.22h.843c.094 0 .188 0 .188-.095.094-.093.094-.187.094-.28 0-.095.093-.282.093-.376v-1.968c.282-.844.188-1.594.094-2.438m-1.687-.281h-4.407c-.093 0-.187-.094-.28-.188-.095-.094-.188-.187-.188-.281v-3.844c0-.187.093-.281.187-.469a.716.716 0 0 1 .469-.187h1.031c.282 0 .563.094.938.188.281.093.656.28.937.562.469.469.75 1.031.938 1.688.187.656.375 1.312.468 1.968v.188c.094.281 0 .375-.093.375M6.156 3C4.188 3 2.594 4.594 2.594 6.469c0 1.968 1.594 3.468 3.562 3.468A3.46 3.46 0 0 0 9.625 6.47 3.46 3.46 0 0 0 6.156 3m1.688 3.188-2.25 1.968-1.219-1.125V5.72l1.219 1.125 2.25-2.063z">
                            </path>
                          </svg>
                        </div>
                        <div spz-if="${(item.type == 'customer_setting')}">
                          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust scale-125">
                            <path fill="currentColor"
                              d="M11.966 4.548c-3.109 0-5.628 2.467-5.628 5.51 0 3.044 2.52 5.51 5.628 5.51 3.109 0 5.628-2.466 5.628-5.51 0-3.043-2.52-5.51-5.628-5.51m-6.5 7.626V7.087a2.69 2.69 0 0 0-.21.008c1.153-2.504 3.721-4.247 6.71-4.247 2.99 0 5.559 1.743 6.712 4.247a2.677 2.677 0 0 0-.212-.008v5.087c1.436 0 2.6-1.14 2.6-2.544 0-.954-.537-1.785-1.33-2.22C18.616 4.26 15.565 2 11.965 2c-3.599 0-6.65 2.261-7.768 5.41a2.534 2.534 0 0 0-1.331 2.22c0 1.405 1.163 2.544 2.6 2.544m12.116 2.916a8.3 8.3 0 0 1-5.616 2.167 8.3 8.3 0 0 1-5.608-2.16C3.728 16.424 2 18.783 2 21.987h20c0-3.21-1.76-5.572-4.418-6.896">
                            </path>
                          </svg>
                        </div>
                      </div>
                      <div spz-else="">
                        <ljs-img class="trust-thumbnail-img" width="30" height="30" layout="fixed" src="//img.fantaskycdn.com/${item.icon}" object-fit="contain" alt="trust-img"></ljs-img>
                      </div>
                      <div class="trust-thumbnail-desc-title">${item.title}</div>
                    </div>
                  </div>
                </div>
                <div id="trust-open-card" class="trust-open-card trust-card-border">
                  <div id="trust-card-desc-block-1539149753700-${index}" class="trust-card-desc-block" spz-for="(item,index) in data.originData.module_settings" key="item.type">
                    <div class="trust-card-desc-title">
                      <div spz-if="${item.icon_type === 'default'&amp;&amp;item.type == 'payment_setting'}">
                        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon_title_trust">
                          <g clip-path="url(#clip0_2533_19421)">
                            <path
                              d="M18.5653 9.98893C18.8533 9.78627 19.3146 9.78359 19.6026 9.98893C19.6026 9.98893 20.3706 10.6023 21.3253 11.0103V3.61827C21.3253 3.26094 21.0399 2.97559 20.6879 2.97559H0.626594C0.274586 2.97559 -0.0107422 3.26359 -0.0107422 3.61827V17.2689C-0.0107422 17.6263 0.274586 17.9116 0.626594 17.9116H14.1626C13.9279 17.5516 13.8533 17.0343 13.8533 16.6209V11.5543C13.8533 11.3169 14.0373 11.1676 14.2666 11.2183C14.2666 11.2183 14.8266 11.3649 15.3466 11.3649C16.8346 11.3649 18.5653 9.98895 18.5653 9.98895V9.98893ZM7.88259 9.80494H2.76259C2.40791 9.80494 2.12259 9.51694 2.12259 9.16494C2.12259 8.81026 2.41059 8.52493 2.76259 8.52493H7.88259C8.23727 8.52493 8.52259 8.81293 8.52259 9.16494C8.52259 9.51694 8.23459 9.80494 7.88259 9.80494ZM2.75992 6.3916C2.40791 6.3916 2.12259 6.1036 2.12259 5.75159C2.12259 5.39691 2.40791 5.11159 2.75992 5.11159H18.5519C18.9039 5.11159 19.1893 5.39959 19.1893 5.75159C19.1893 6.10627 18.9039 6.3916 18.5519 6.3916H2.75992Z"
                              fill="currentColor"></path>
                            <path
                              d="M23.4559 12.0668H22.5412C21.2052 12.0668 19.7092 10.8668 19.7092 10.8668C19.4212 10.6615 18.9572 10.6669 18.6692 10.8668C18.6692 10.8668 17.1732 12.0668 15.8372 12.0668H14.9225C14.6879 12.0668 14.4985 12.2588 14.4985 12.4935V16.7842C14.4985 17.2535 14.7972 17.8722 15.1652 18.1655L18.5225 20.8242C18.8905 21.1149 19.4879 21.1149 19.8586 20.8242L23.2159 18.1655C23.5839 17.8749 23.8826 17.2562 23.8826 16.7842V12.4935C23.8826 12.2588 23.6906 12.0668 23.4559 12.0668ZM21.3386 14.7922L19.3866 17.2748C19.0026 17.7655 18.3199 17.7788 17.9172 17.3068L17.0532 16.2988C16.8986 16.1202 16.9199 15.8508 17.0986 15.6961C17.2772 15.5415 17.5466 15.5628 17.7012 15.7415L18.5652 16.7495C18.6186 16.8135 18.6639 16.8135 18.7172 16.7442L20.6692 14.2615C20.8159 14.0775 21.0826 14.0428 21.2692 14.1895C21.4506 14.3388 21.4826 14.6082 21.3386 14.7922Z"
                              fill="currentColor"></path>
                          </g>
                          <defs>
                            <clipPath id="clip0_2533_19421">
                              <rect width="24" height="24" fill="currentColor"></rect>
                            </clipPath>
                          </defs>
                        </svg>
                      </div>
                      <div spz-if="${item.icon_type === 'default'&amp;&amp;item.type == 'privacy_setting'}">
                        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                          <path fill="currentColor"
                            d="M19.505 15.49h-3.174a.712.712 0 0 1-.082-.338v-.675c0-.322.199-.584.444-.584h1.05c.243 0 .441.26.441.582 0 .254.157.46.352.46.194 0 .351-.206.351-.46 0-.83-.512-1.504-1.143-1.504h-1.051c-.632 0-1.145.675-1.145 1.506v.675c0 .114.01.227.032.338h-1.138a.674.674 0 0 0-.66.685v4.614c0 .378.295.685.66.685h5.063c.364 0 .66-.307.66-.685v-4.614a.672.672 0 0 0-.66-.685m-2.193 2.994v1.864a.272.272 0 1 1-.543 0v-1.864a.9.9 0 0 1-.6-.86c0-.499.39-.903.872-.903.481 0 .872.404.872.904 0 .4-.252.74-.601.859m3.6-1.075v3.663a.794.794 0 0 1-.329.643h1.097c0-1.546-.127-3.008-.769-4.306">
                          </path>
                          <path fill="currentColor"
                            d="M16.905 7.214a4.863 4.863 0 0 0-5.79-4.773A4.81 4.81 0 0 0 7.26 6.366a4.863 4.863 0 0 0 3.817 5.61.03.03 0 0 1 .016.05.03.03 0 0 1-.02.008c-4.915.477-8.76 4.613-8.775 9.65a.03.03 0 0 0 .03.03h10.978c.027 0-.124-.033-.144-.051-.162-.146-.334-.356-.334-.591l.07-5.33a.825.825 0 0 1 .826-.825h1.203a.03.03 0 0 0 .03-.034c-.047-.281-.07-1.728.574-2.141a.03.03 0 0 0 .014-.029.03.03 0 0 0-.02-.025c-.782-.287-1.645-.534-2.568-.641a.03.03 0 0 1-.002-.06 4.861 4.861 0 0 0 3.95-4.773">
                          </path>
                        </svg>
                      </div>
                      <div spz-if="${item.icon_type === 'default'&amp;&amp;item.type == 'logitics_setting'}">
                        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                          <path fill="currentColor"
                            d="M10.469 5.344c.094.375.187.75.187 1.125 0 .656-.094 1.218-.375 1.687-.281.563-.562 1.031-.937 1.406-.375.376-.844.75-1.406.938-.563.188-1.125.375-1.688.375-.656 0-1.219-.094-1.687-.375-.563-.187-1.032-.562-1.407-.937-.375-.376-.75-.844-.937-1.407-.281-.562-.375-1.125-.375-1.687V6.28c-.375.282-.469.563-.657.844A3.37 3.37 0 0 0 1 8.156V19.22c0 .281.094.468.188.656.187.188.375.188.562.188h.469c0-.938.187-1.594.656-2.063.469-.469 1.125-.656 1.969-.656.937 0 1.593.281 1.968.75.47.468.657 1.125.657 1.968h5.812c.188 0 .375-.093.563-.187.187-.187.281-.375.281-.562V5.53h-3.656z">
                          </path>
                          <path fill="currentColor"
                            d="M5.031 18.656c-.375 0-.75.094-.937.375-.282.282-.375.563-.375.938s.094.656.375.937c.281.282.562.375.937.375s.75-.093.938-.375c.281-.281.375-.562.375-.937s-.094-.75-.375-.938c-.282-.187-.563-.375-.938-.375m14.532.094c.375 0 .656.094.937.375s.375.563.375.938-.094.75-.375.937c-.281.281-.562.375-.937.375s-.75-.094-.938-.375c-.281-.281-.375-.562-.375-.937s.094-.657.375-.938c.281-.281.563-.375.938-.375">
                          </path>
                          <path fill="currentColor"
                            d="M23.406 15c-.093-.844-.281-1.594-.562-2.437a8 8 0 0 0-1.219-2.344A3.994 3.994 0 0 0 20.5 9.188c-.469-.282-.937-.563-1.406-.75-.469-.188-1.032-.282-1.5-.376-.469-.093-1.032-.093-1.5-.093-.188 0-.282.093-.375.375-.094.187-.188.375-.188.562v10.219c0 .281.094.469.281.656a.851.851 0 0 0 .657.282h.375c0-.375.093-.657.187-1.032.094-.281.282-.562.563-.843.187-.282.468-.47.843-.563.282-.187.657-.187 1.032-.187s.75.093 1.031.187c.375.094.656.281.844.469.281.187.468.468.562.843.188.375.188.75.188 1.22h.843c.094 0 .188 0 .188-.095.094-.093.094-.187.094-.28 0-.095.093-.282.093-.376v-1.968c.282-.844.188-1.594.094-2.438m-1.687-.281h-4.407c-.093 0-.187-.094-.28-.188-.095-.094-.188-.187-.188-.281v-3.844c0-.187.093-.281.187-.469a.716.716 0 0 1 .469-.187h1.031c.282 0 .563.094.938.188.281.093.656.28.937.562.469.469.75 1.031.938 1.688.187.656.375 1.312.468 1.968v.188c.094.281 0 .375-.093.375M6.156 3C4.188 3 2.594 4.594 2.594 6.469c0 1.968 1.594 3.468 3.562 3.468A3.46 3.46 0 0 0 9.625 6.47 3.46 3.46 0 0 0 6.156 3m1.688 3.188-2.25 1.968-1.219-1.125V5.72l1.219 1.125 2.25-2.063z">
                          </path>
                        </svg>
                      </div>
                      <div spz-if="${item.icon_type === 'default'&amp;&amp;item.type == 'customer_setting'}">
                        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                          <path fill="currentColor"
                            d="M11.966 4.548c-3.109 0-5.628 2.467-5.628 5.51 0 3.044 2.52 5.51 5.628 5.51 3.109 0 5.628-2.466 5.628-5.51 0-3.043-2.52-5.51-5.628-5.51m-6.5 7.626V7.087a2.69 2.69 0 0 0-.21.008c1.153-2.504 3.721-4.247 6.71-4.247 2.99 0 5.559 1.743 6.712 4.247a2.677 2.677 0 0 0-.212-.008v5.087c1.436 0 2.6-1.14 2.6-2.544 0-.954-.537-1.785-1.33-2.22C18.616 4.26 15.565 2 11.965 2c-3.599 0-6.65 2.261-7.768 5.41a2.534 2.534 0 0 0-1.331 2.22c0 1.405 1.163 2.544 2.6 2.544m12.116 2.916a8.3 8.3 0 0 1-5.616 2.167 8.3 8.3 0 0 1-5.608-2.16C3.728 16.424 2 18.783 2 21.987h20c0-3.21-1.76-5.572-4.418-6.896">
                          </path>
                        </svg>
                      </div>
                      <div spz-if="${item.icon_type === 'custom'}">
                        <ljs-img class="trust-thumbnail-img" width="24" height="24" layout="fixed" src="//img.fantaskycdn.com/${item.icon}" object-fit="contain" alt="trust-img"></ljs-img>
                      </div>
                      <span class="trust-thumbnail-title">${item.title}</span>
                    </div>
                    <div class="trust-card-desc-text"> ${item.content.replaceAll("{store_name}","NioPets")} </div>
                    <div spz-if="${item.logos.length > 0&amp;&amp;item.logos_type=='default' }" class="trust-card-desc-img">
                      <ljs-img spz-for="(logo,index) in item.logos" key="index" width="55" height="35" class="icon-trust-block" layout="fixed" src="//img.fantaskycdn.com/${logo}" object-fit="contain" alt="trust-img"></ljs-img>
                    </div>
                    <div spz-if="${item.logos.length > 0&amp;&amp;item.logos_type=='custom' }" class="trust-card-desc-img-custom">
                      <ljs-img spz-for="(logo,index) in item.logos" key="index" width="${logo.width}" height="${logo.height}" class="icon-trust-block-custom" layout="responsive" src="//img.fantaskycdn.com/${logo.path}" object-fit="contain"
                        auto-fit="" alt="image"></ljs-img>
                    </div>
                  </div>
                </div>
              </section>
            </ljs-accordion>
          </div>
          <div class="plugin-strengthen-trust-1539149753700-wrap lg:hidden
    
  ">
            <div spz-if="${!data.other_enabled}" class="store-open-trust-tips">
              <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none">
                <g clip-path="url(#clip0_2160_10007)">
                  <path
                    d="M8.92398 8.53999C8.924 8.66134 8.90011 8.7815 8.85368 8.89362C8.80725 9.00574 8.7392 9.10761 8.6534 9.19342C8.5676 9.27923 8.46573 9.3473 8.35362 9.39375C8.24151 9.44019 8.12135 9.46409 8 9.46409C7.87865 9.46409 7.75849 9.44019 7.64638 9.39375C7.53427 9.3473 7.43241 9.27923 7.3466 9.19342C7.2608 9.10761 7.19275 9.00574 7.14632 8.89362C7.09989 8.7815 7.076 8.66134 7.07602 8.53999V4.23208C7.076 4.11073 7.09989 3.99056 7.14632 3.87845C7.19275 3.76633 7.2608 3.66446 7.3466 3.57865C7.43241 3.49283 7.53427 3.42476 7.64638 3.37832C7.75849 3.33188 7.87865 3.30798 8 3.30798C8.12135 3.30798 8.24151 3.33188 8.35362 3.37832C8.46573 3.42476 8.5676 3.49283 8.6534 3.57865C8.7392 3.66446 8.80725 3.76633 8.85368 3.87845C8.90011 3.99056 8.924 4.11073 8.92398 4.23208V8.53999ZM8 12.5399C7.7872 12.5392 7.58121 12.4648 7.41712 12.3293C7.25303 12.1938 7.141 12.0056 7.10009 11.7968C7.05919 11.5879 7.09195 11.3714 7.1928 11.184C7.29365 10.9966 7.45634 10.8499 7.65317 10.769C7.84999 10.6881 8.06878 10.678 8.27226 10.7403C8.47574 10.8026 8.65133 10.9335 8.76912 11.1107C8.88691 11.2879 8.93962 11.5005 8.91826 11.7123C8.8969 11.924 8.8028 12.1218 8.65199 12.2719C8.56722 12.3585 8.46569 12.427 8.35359 12.4731C8.24149 12.5191 8.12118 12.5419 8 12.5399ZM8 0.000162657C6.92965 -0.00673195 5.86922 0.205626 4.88406 0.62415C2.96107 1.43154 1.43154 2.96107 0.62415 4.88406C0.205626 5.86922 -0.00673195 6.92965 0.000162657 8C-0.00673195 9.07035 0.205626 10.1308 0.62415 11.1159C1.43154 13.0389 2.96107 14.5685 4.88406 15.3759C5.86922 15.7944 6.92965 16.0067 8 15.9998C9.07035 16.0067 10.1308 15.7944 11.1159 15.3759C13.0389 14.5685 14.5685 13.0389 15.3759 11.1159C15.7944 10.1308 16.0067 9.07035 15.9998 8C16.0067 6.92965 15.7944 5.86922 15.3759 4.88406C14.5685 2.96107 13.0389 1.43154 11.1159 0.62415C10.1308 0.205626 9.07035 -0.00673195 8 0.000162657Z"
                    fill="#FF7979"></path>
                </g>
                <defs>
                  <clipPath id="clip0_2160_10007">
                    <rect width="16" height="16" fill="white"></rect>
                  </clipPath>
                </defs>
              </svg>
              <span class="tips-text"> To display this card to customers, you need to go to "Booster &amp; Store Conversion" to turn on the trust enhancement feature. </span>
            </div>
            <div class="trust-card-block" layout="container">
              <div class="trust-accordion-header">
                <div class="trust-title-block">
                  <svg class="icon_security_trust" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="currentColor">
                    <path fill-rule="evenodd" clip-rule="evenodd"
                      d="M9.99932 0C10.5736 0 11.1307 0.184885 11.5792 0.524258L12.0909 0.911325C13.4831 1.96508 15.0052 2.85514 16.6239 3.56198L17.9248 4.13095C18.3719 4.32298 18.7485 4.63668 19.0065 5.03203C19.2644 5.42739 19.3921 5.88649 19.3732 6.35077C18.9684 14.8758 13.0391 18.7013 11.0849 19.7312C10.4069 20.0896 9.59169 20.0896 8.91232 19.7312C6.95805 18.7 1.03164 14.8731 0.626913 6.32479C0.607503 5.85814 0.736181 5.39668 0.996373 4.99983C1.25657 4.60299 1.63636 4.28894 2.08683 4.09813L3.31114 3.57292C4.97349 2.85777 6.53548 1.94994 7.96121 0.870293L8.41942 0.524258C8.86789 0.184885 9.42506 0 9.99932 0ZM7.19446 9.35226C7.43734 9.34797 7.67239 9.43812 7.85011 9.60372L9.12261 10.875L12.1639 7.83623C12.3416 7.67063 12.5766 7.58047 12.8195 7.58476C13.0624 7.58904 13.2941 7.68743 13.4659 7.8592C13.6377 8.03096 13.736 8.2627 13.7403 8.50557C13.7446 8.74845 13.6545 8.98351 13.4889 9.16123L9.78511 12.8637C9.60933 13.0393 9.37105 13.1379 9.12261 13.1379C8.87418 13.1379 8.63589 13.0393 8.46011 12.8637L6.52511 10.9287C6.35951 10.751 6.26936 10.5159 6.27364 10.2731C6.27793 10.0302 6.37632 9.79846 6.54809 9.6267C6.71985 9.45493 6.95158 9.35654 7.19446 9.35226Z"
                      fill="currentColor"></path>
                  </svg>
                  <span class="trust-title">${data.module_title}</span>
                </div>
                <div class="trust-thumbnail-desc trust-card-border">
                  <div class="trust-thumbnail-desc-item" spz-for="(item,index) in data.module_settings" key="item.type"
                    @tap="trust-sidebar-1539149753700.open;sidebar-scroll-1539149753700.setTarget(containerId='sidebar-bottom-content-1539149753700', targetId='trust-card-desc-block-1539149753700-${index}');strengthen-trust-render-script-1539149753700.track(type='trust_expand_click');">
                    <div spz-if="${(item.icon_type === 'default')}">
                      <div spz-if="${(item.type == 'payment_setting')}">
                        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon_title_trust">
                          <g clip-path="url(#clip0_2533_19421)">
                            <path
                              d="M18.5653 9.98893C18.8533 9.78627 19.3146 9.78359 19.6026 9.98893C19.6026 9.98893 20.3706 10.6023 21.3253 11.0103V3.61827C21.3253 3.26094 21.0399 2.97559 20.6879 2.97559H0.626594C0.274586 2.97559 -0.0107422 3.26359 -0.0107422 3.61827V17.2689C-0.0107422 17.6263 0.274586 17.9116 0.626594 17.9116H14.1626C13.9279 17.5516 13.8533 17.0343 13.8533 16.6209V11.5543C13.8533 11.3169 14.0373 11.1676 14.2666 11.2183C14.2666 11.2183 14.8266 11.3649 15.3466 11.3649C16.8346 11.3649 18.5653 9.98895 18.5653 9.98895V9.98893ZM7.88259 9.80494H2.76259C2.40791 9.80494 2.12259 9.51694 2.12259 9.16494C2.12259 8.81026 2.41059 8.52493 2.76259 8.52493H7.88259C8.23727 8.52493 8.52259 8.81293 8.52259 9.16494C8.52259 9.51694 8.23459 9.80494 7.88259 9.80494ZM2.75992 6.3916C2.40791 6.3916 2.12259 6.1036 2.12259 5.75159C2.12259 5.39691 2.40791 5.11159 2.75992 5.11159H18.5519C18.9039 5.11159 19.1893 5.39959 19.1893 5.75159C19.1893 6.10627 18.9039 6.3916 18.5519 6.3916H2.75992Z"
                              fill="currentColor"></path>
                            <path
                              d="M23.4559 12.0668H22.5412C21.2052 12.0668 19.7092 10.8668 19.7092 10.8668C19.4212 10.6615 18.9572 10.6669 18.6692 10.8668C18.6692 10.8668 17.1732 12.0668 15.8372 12.0668H14.9225C14.6879 12.0668 14.4985 12.2588 14.4985 12.4935V16.7842C14.4985 17.2535 14.7972 17.8722 15.1652 18.1655L18.5225 20.8242C18.8905 21.1149 19.4879 21.1149 19.8586 20.8242L23.2159 18.1655C23.5839 17.8749 23.8826 17.2562 23.8826 16.7842V12.4935C23.8826 12.2588 23.6906 12.0668 23.4559 12.0668ZM21.3386 14.7922L19.3866 17.2748C19.0026 17.7655 18.3199 17.7788 17.9172 17.3068L17.0532 16.2988C16.8986 16.1202 16.9199 15.8508 17.0986 15.6961C17.2772 15.5415 17.5466 15.5628 17.7012 15.7415L18.5652 16.7495C18.6186 16.8135 18.6639 16.8135 18.7172 16.7442L20.6692 14.2615C20.8159 14.0775 21.0826 14.0428 21.2692 14.1895C21.4506 14.3388 21.4826 14.6082 21.3386 14.7922Z"
                              fill="currentColor"></path>
                          </g>
                          <defs>
                            <clipPath id="clip0_2533_19421">
                              <rect width="24" height="24" fill="currentColor"></rect>
                            </clipPath>
                          </defs>
                        </svg>
                      </div>
                      <div spz-if="${(item.type == 'privacy_setting')}">
                        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                          <path fill="currentColor"
                            d="M19.505 15.49h-3.174a.712.712 0 0 1-.082-.338v-.675c0-.322.199-.584.444-.584h1.05c.243 0 .441.26.441.582 0 .254.157.46.352.46.194 0 .351-.206.351-.46 0-.83-.512-1.504-1.143-1.504h-1.051c-.632 0-1.145.675-1.145 1.506v.675c0 .114.01.227.032.338h-1.138a.674.674 0 0 0-.66.685v4.614c0 .378.295.685.66.685h5.063c.364 0 .66-.307.66-.685v-4.614a.672.672 0 0 0-.66-.685m-2.193 2.994v1.864a.272.272 0 1 1-.543 0v-1.864a.9.9 0 0 1-.6-.86c0-.499.39-.903.872-.903.481 0 .872.404.872.904 0 .4-.252.74-.601.859m3.6-1.075v3.663a.794.794 0 0 1-.329.643h1.097c0-1.546-.127-3.008-.769-4.306">
                          </path>
                          <path fill="currentColor"
                            d="M16.905 7.214a4.863 4.863 0 0 0-5.79-4.773A4.81 4.81 0 0 0 7.26 6.366a4.863 4.863 0 0 0 3.817 5.61.03.03 0 0 1 .016.05.03.03 0 0 1-.02.008c-4.915.477-8.76 4.613-8.775 9.65a.03.03 0 0 0 .03.03h10.978c.027 0-.124-.033-.144-.051-.162-.146-.334-.356-.334-.591l.07-5.33a.825.825 0 0 1 .826-.825h1.203a.03.03 0 0 0 .03-.034c-.047-.281-.07-1.728.574-2.141a.03.03 0 0 0 .014-.029.03.03 0 0 0-.02-.025c-.782-.287-1.645-.534-2.568-.641a.03.03 0 0 1-.002-.06 4.861 4.861 0 0 0 3.95-4.773">
                          </path>
                        </svg>
                      </div>
                      <div spz-if="${(item.type == 'logitics_setting')}">
                        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                          <path fill="currentColor"
                            d="M10.469 5.344c.094.375.187.75.187 1.125 0 .656-.094 1.218-.375 1.687-.281.563-.562 1.031-.937 1.406-.375.376-.844.75-1.406.938-.563.188-1.125.375-1.688.375-.656 0-1.219-.094-1.687-.375-.563-.187-1.032-.562-1.407-.937-.375-.376-.75-.844-.937-1.407-.281-.562-.375-1.125-.375-1.687V6.28c-.375.282-.469.563-.657.844A3.37 3.37 0 0 0 1 8.156V19.22c0 .281.094.468.188.656.187.188.375.188.562.188h.469c0-.938.187-1.594.656-2.063.469-.469 1.125-.656 1.969-.656.937 0 1.593.281 1.968.75.47.468.657 1.125.657 1.968h5.812c.188 0 .375-.093.563-.187.187-.187.281-.375.281-.562V5.53h-3.656z">
                          </path>
                          <path fill="currentColor"
                            d="M5.031 18.656c-.375 0-.75.094-.937.375-.282.282-.375.563-.375.938s.094.656.375.937c.281.282.562.375.937.375s.75-.093.938-.375c.281-.281.375-.562.375-.937s-.094-.75-.375-.938c-.282-.187-.563-.375-.938-.375m14.532.094c.375 0 .656.094.937.375s.375.563.375.938-.094.75-.375.937c-.281.281-.562.375-.937.375s-.75-.094-.938-.375c-.281-.281-.375-.562-.375-.937s.094-.657.375-.938c.281-.281.563-.375.938-.375">
                          </path>
                          <path fill="currentColor"
                            d="M23.406 15c-.093-.844-.281-1.594-.562-2.437a8 8 0 0 0-1.219-2.344A3.994 3.994 0 0 0 20.5 9.188c-.469-.282-.937-.563-1.406-.75-.469-.188-1.032-.282-1.5-.376-.469-.093-1.032-.093-1.5-.093-.188 0-.282.093-.375.375-.094.187-.188.375-.188.562v10.219c0 .281.094.469.281.656a.851.851 0 0 0 .657.282h.375c0-.375.093-.657.187-1.032.094-.281.282-.562.563-.843.187-.282.468-.47.843-.563.282-.187.657-.187 1.032-.187s.75.093 1.031.187c.375.094.656.281.844.469.281.187.468.468.562.843.188.375.188.75.188 1.22h.843c.094 0 .188 0 .188-.095.094-.093.094-.187.094-.28 0-.095.093-.282.093-.376v-1.968c.282-.844.188-1.594.094-2.438m-1.687-.281h-4.407c-.093 0-.187-.094-.28-.188-.095-.094-.188-.187-.188-.281v-3.844c0-.187.093-.281.187-.469a.716.716 0 0 1 .469-.187h1.031c.282 0 .563.094.938.188.281.093.656.28.937.562.469.469.75 1.031.938 1.688.187.656.375 1.312.468 1.968v.188c.094.281 0 .375-.093.375M6.156 3C4.188 3 2.594 4.594 2.594 6.469c0 1.968 1.594 3.468 3.562 3.468A3.46 3.46 0 0 0 9.625 6.47 3.46 3.46 0 0 0 6.156 3m1.688 3.188-2.25 1.968-1.219-1.125V5.72l1.219 1.125 2.25-2.063z">
                          </path>
                        </svg>
                      </div>
                      <div spz-if="${(item.type == 'customer_setting')}">
                        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                          <path fill="currentColor"
                            d="M11.966 4.548c-3.109 0-5.628 2.467-5.628 5.51 0 3.044 2.52 5.51 5.628 5.51 3.109 0 5.628-2.466 5.628-5.51 0-3.043-2.52-5.51-5.628-5.51m-6.5 7.626V7.087a2.69 2.69 0 0 0-.21.008c1.153-2.504 3.721-4.247 6.71-4.247 2.99 0 5.559 1.743 6.712 4.247a2.677 2.677 0 0 0-.212-.008v5.087c1.436 0 2.6-1.14 2.6-2.544 0-.954-.537-1.785-1.33-2.22C18.616 4.26 15.565 2 11.965 2c-3.599 0-6.65 2.261-7.768 5.41a2.534 2.534 0 0 0-1.331 2.22c0 1.405 1.163 2.544 2.6 2.544m12.116 2.916a8.3 8.3 0 0 1-5.616 2.167 8.3 8.3 0 0 1-5.608-2.16C3.728 16.424 2 18.783 2 21.987h20c0-3.21-1.76-5.572-4.418-6.896">
                          </path>
                        </svg>
                      </div>
                    </div>
                    <div spz-else="">
                      <ljs-img class="trust-thumbnail-img" width="24" height="24" layout="fixed" src="//img.fantaskycdn.com/${item.icon}" object-fit="contain" alt="trust-img"></ljs-img>
                    </div>
                    <div class="trust-thumbnail-desc-title">${item.title}</div>
                    <svg xmlns="http://www.w3.org/2000/svg" class="icon_arrow_right_trust" width="12" height="12" viewBox="0 0 12 12" fill="none">
                      <path
                        d="M7.62392 6.4489C7.85824 6.21459 7.85824 5.83468 7.62393 5.60037L4.44195 2.41839C4.3248 2.30124 4.13485 2.30124 4.01769 2.41839L3.8692 2.56689C3.75204 2.68404 3.75204 2.87399 3.8692 2.99115L6.90264 6.0246L3.86912 9.05812C3.75196 9.17528 3.75196 9.36523 3.86912 9.48239L4.01761 9.63088C4.13477 9.74804 4.32472 9.74804 4.44187 9.63088L7.62392 6.4489Z"
                        fill="#292929"></path>
                    </svg>
                  </div>
                </div>
              </div>
              <spz-custom-anchor-scroll id="sidebar-scroll-1539149753700" layout="logic"></spz-custom-anchor-scroll>
              <ljs-sidebar id="trust-sidebar-1539149753700" class="trust-sidebar" layout="nodisplay" side="bottom" disable-unmount="" @open="sidebar-scroll-1539149753700.scrollToTarget">
                <div class="trust-sidebar-cancel trust-card-big-title" @tap="trust-sidebar-1539149753700.close">
                  <svg class="icon_security_trust" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="currentColor">
                    <path fill-rule="evenodd" clip-rule="evenodd"
                      d="M9.99932 0C10.5736 0 11.1307 0.184885 11.5792 0.524258L12.0909 0.911325C13.4831 1.96508 15.0052 2.85514 16.6239 3.56198L17.9248 4.13095C18.3719 4.32298 18.7485 4.63668 19.0065 5.03203C19.2644 5.42739 19.3921 5.88649 19.3732 6.35077C18.9684 14.8758 13.0391 18.7013 11.0849 19.7312C10.4069 20.0896 9.59169 20.0896 8.91232 19.7312C6.95805 18.7 1.03164 14.8731 0.626913 6.32479C0.607503 5.85814 0.736181 5.39668 0.996373 4.99983C1.25657 4.60299 1.63636 4.28894 2.08683 4.09813L3.31114 3.57292C4.97349 2.85777 6.53548 1.94994 7.96121 0.870293L8.41942 0.524258C8.86789 0.184885 9.42506 0 9.99932 0ZM7.19446 9.35226C7.43734 9.34797 7.67239 9.43812 7.85011 9.60372L9.12261 10.875L12.1639 7.83623C12.3416 7.67063 12.5766 7.58047 12.8195 7.58476C13.0624 7.58904 13.2941 7.68743 13.4659 7.8592C13.6377 8.03096 13.736 8.2627 13.7403 8.50557C13.7446 8.74845 13.6545 8.98351 13.4889 9.16123L9.78511 12.8637C9.60933 13.0393 9.37105 13.1379 9.12261 13.1379C8.87418 13.1379 8.63589 13.0393 8.46011 12.8637L6.52511 10.9287C6.35951 10.751 6.26936 10.5159 6.27364 10.2731C6.27793 10.0302 6.37632 9.79846 6.54809 9.6267C6.71985 9.45493 6.95158 9.35654 7.19446 9.35226Z"
                      fill="currentColor"></path>
                  </svg>
                  <span class="trust-title">${data.module_title}</span>
                  <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">
                    <path fill-rule="evenodd" clip-rule="evenodd"
                      d="M1.93064 17.1473C1.81348 17.2644 1.81348 17.4544 1.93064 17.5715L2.83502 18.4759C2.95217 18.5931 3.14212 18.5931 3.25928 18.4759L9.91177 11.8234L16.6153 18.527C16.7325 18.6442 16.9225 18.6442 17.0396 18.527L17.944 17.6226C18.0611 17.5055 18.0611 17.3155 17.944 17.1984L11.2404 10.4948L17.8929 3.84229C18.0101 3.72513 18.0101 3.53518 17.8929 3.41802L16.9885 2.51365C16.8714 2.39649 16.6814 2.39649 16.5643 2.51365L9.91177 9.16616L3.31035 2.56474C3.19319 2.44758 3.00325 2.44758 2.88609 2.56474L1.98171 3.46911C1.86456 3.58627 1.86456 3.77622 1.98171 3.89337L8.58313 10.4948L1.93064 17.1473Z"
                      fill="#707070"></path>
                  </svg>
                </div>
                <div id="sidebar-bottom-content-1539149753700" class="sidebar-bottom-content">
                  <div id="trust-open-card" class="trust-open-card trust-card-border">
                    <div id="trust-card-desc-block-1539149753700-${index}" class="trust-card-desc-block" spz-for="(item,index) in data.originData.module_settings" key="item.type">
                      <div class="trust-card-desc-title">
                        <div spz-if="${item.icon_type === 'default'&amp;&amp;item.type == 'payment_setting'}">
                          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon_title_trust">
                            <g clip-path="url(#clip0_2533_19421)">
                              <path
                                d="M18.5653 9.98893C18.8533 9.78627 19.3146 9.78359 19.6026 9.98893C19.6026 9.98893 20.3706 10.6023 21.3253 11.0103V3.61827C21.3253 3.26094 21.0399 2.97559 20.6879 2.97559H0.626594C0.274586 2.97559 -0.0107422 3.26359 -0.0107422 3.61827V17.2689C-0.0107422 17.6263 0.274586 17.9116 0.626594 17.9116H14.1626C13.9279 17.5516 13.8533 17.0343 13.8533 16.6209V11.5543C13.8533 11.3169 14.0373 11.1676 14.2666 11.2183C14.2666 11.2183 14.8266 11.3649 15.3466 11.3649C16.8346 11.3649 18.5653 9.98895 18.5653 9.98895V9.98893ZM7.88259 9.80494H2.76259C2.40791 9.80494 2.12259 9.51694 2.12259 9.16494C2.12259 8.81026 2.41059 8.52493 2.76259 8.52493H7.88259C8.23727 8.52493 8.52259 8.81293 8.52259 9.16494C8.52259 9.51694 8.23459 9.80494 7.88259 9.80494ZM2.75992 6.3916C2.40791 6.3916 2.12259 6.1036 2.12259 5.75159C2.12259 5.39691 2.40791 5.11159 2.75992 5.11159H18.5519C18.9039 5.11159 19.1893 5.39959 19.1893 5.75159C19.1893 6.10627 18.9039 6.3916 18.5519 6.3916H2.75992Z"
                                fill="currentColor"></path>
                              <path
                                d="M23.4559 12.0668H22.5412C21.2052 12.0668 19.7092 10.8668 19.7092 10.8668C19.4212 10.6615 18.9572 10.6669 18.6692 10.8668C18.6692 10.8668 17.1732 12.0668 15.8372 12.0668H14.9225C14.6879 12.0668 14.4985 12.2588 14.4985 12.4935V16.7842C14.4985 17.2535 14.7972 17.8722 15.1652 18.1655L18.5225 20.8242C18.8905 21.1149 19.4879 21.1149 19.8586 20.8242L23.2159 18.1655C23.5839 17.8749 23.8826 17.2562 23.8826 16.7842V12.4935C23.8826 12.2588 23.6906 12.0668 23.4559 12.0668ZM21.3386 14.7922L19.3866 17.2748C19.0026 17.7655 18.3199 17.7788 17.9172 17.3068L17.0532 16.2988C16.8986 16.1202 16.9199 15.8508 17.0986 15.6961C17.2772 15.5415 17.5466 15.5628 17.7012 15.7415L18.5652 16.7495C18.6186 16.8135 18.6639 16.8135 18.7172 16.7442L20.6692 14.2615C20.8159 14.0775 21.0826 14.0428 21.2692 14.1895C21.4506 14.3388 21.4826 14.6082 21.3386 14.7922Z"
                                fill="currentColor"></path>
                            </g>
                            <defs>
                              <clipPath id="clip0_2533_19421">
                                <rect width="24" height="24" fill="currentColor"></rect>
                              </clipPath>
                            </defs>
                          </svg>
                        </div>
                        <div spz-if="${item.icon_type === 'default'&amp;&amp;item.type == 'privacy_setting'}">
                          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                            <path fill="currentColor"
                              d="M19.505 15.49h-3.174a.712.712 0 0 1-.082-.338v-.675c0-.322.199-.584.444-.584h1.05c.243 0 .441.26.441.582 0 .254.157.46.352.46.194 0 .351-.206.351-.46 0-.83-.512-1.504-1.143-1.504h-1.051c-.632 0-1.145.675-1.145 1.506v.675c0 .114.01.227.032.338h-1.138a.674.674 0 0 0-.66.685v4.614c0 .378.295.685.66.685h5.063c.364 0 .66-.307.66-.685v-4.614a.672.672 0 0 0-.66-.685m-2.193 2.994v1.864a.272.272 0 1 1-.543 0v-1.864a.9.9 0 0 1-.6-.86c0-.499.39-.903.872-.903.481 0 .872.404.872.904 0 .4-.252.74-.601.859m3.6-1.075v3.663a.794.794 0 0 1-.329.643h1.097c0-1.546-.127-3.008-.769-4.306">
                            </path>
                            <path fill="currentColor"
                              d="M16.905 7.214a4.863 4.863 0 0 0-5.79-4.773A4.81 4.81 0 0 0 7.26 6.366a4.863 4.863 0 0 0 3.817 5.61.03.03 0 0 1 .016.05.03.03 0 0 1-.02.008c-4.915.477-8.76 4.613-8.775 9.65a.03.03 0 0 0 .03.03h10.978c.027 0-.124-.033-.144-.051-.162-.146-.334-.356-.334-.591l.07-5.33a.825.825 0 0 1 .826-.825h1.203a.03.03 0 0 0 .03-.034c-.047-.281-.07-1.728.574-2.141a.03.03 0 0 0 .014-.029.03.03 0 0 0-.02-.025c-.782-.287-1.645-.534-2.568-.641a.03.03 0 0 1-.002-.06 4.861 4.861 0 0 0 3.95-4.773">
                            </path>
                          </svg>
                        </div>
                        <div spz-if="${item.icon_type === 'default'&amp;&amp;item.type == 'logitics_setting'}">
                          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                            <path fill="currentColor"
                              d="M10.469 5.344c.094.375.187.75.187 1.125 0 .656-.094 1.218-.375 1.687-.281.563-.562 1.031-.937 1.406-.375.376-.844.75-1.406.938-.563.188-1.125.375-1.688.375-.656 0-1.219-.094-1.687-.375-.563-.187-1.032-.562-1.407-.937-.375-.376-.75-.844-.937-1.407-.281-.562-.375-1.125-.375-1.687V6.28c-.375.282-.469.563-.657.844A3.37 3.37 0 0 0 1 8.156V19.22c0 .281.094.468.188.656.187.188.375.188.562.188h.469c0-.938.187-1.594.656-2.063.469-.469 1.125-.656 1.969-.656.937 0 1.593.281 1.968.75.47.468.657 1.125.657 1.968h5.812c.188 0 .375-.093.563-.187.187-.187.281-.375.281-.562V5.53h-3.656z">
                            </path>
                            <path fill="currentColor"
                              d="M5.031 18.656c-.375 0-.75.094-.937.375-.282.282-.375.563-.375.938s.094.656.375.937c.281.282.562.375.937.375s.75-.093.938-.375c.281-.281.375-.562.375-.937s-.094-.75-.375-.938c-.282-.187-.563-.375-.938-.375m14.532.094c.375 0 .656.094.937.375s.375.563.375.938-.094.75-.375.937c-.281.281-.562.375-.937.375s-.75-.094-.938-.375c-.281-.281-.375-.562-.375-.937s.094-.657.375-.938c.281-.281.563-.375.938-.375">
                            </path>
                            <path fill="currentColor"
                              d="M23.406 15c-.093-.844-.281-1.594-.562-2.437a8 8 0 0 0-1.219-2.344A3.994 3.994 0 0 0 20.5 9.188c-.469-.282-.937-.563-1.406-.75-.469-.188-1.032-.282-1.5-.376-.469-.093-1.032-.093-1.5-.093-.188 0-.282.093-.375.375-.094.187-.188.375-.188.562v10.219c0 .281.094.469.281.656a.851.851 0 0 0 .657.282h.375c0-.375.093-.657.187-1.032.094-.281.282-.562.563-.843.187-.282.468-.47.843-.563.282-.187.657-.187 1.032-.187s.75.093 1.031.187c.375.094.656.281.844.469.281.187.468.468.562.843.188.375.188.75.188 1.22h.843c.094 0 .188 0 .188-.095.094-.093.094-.187.094-.28 0-.095.093-.282.093-.376v-1.968c.282-.844.188-1.594.094-2.438m-1.687-.281h-4.407c-.093 0-.187-.094-.28-.188-.095-.094-.188-.187-.188-.281v-3.844c0-.187.093-.281.187-.469a.716.716 0 0 1 .469-.187h1.031c.282 0 .563.094.938.188.281.093.656.28.937.562.469.469.75 1.031.938 1.688.187.656.375 1.312.468 1.968v.188c.094.281 0 .375-.093.375M6.156 3C4.188 3 2.594 4.594 2.594 6.469c0 1.968 1.594 3.468 3.562 3.468A3.46 3.46 0 0 0 9.625 6.47 3.46 3.46 0 0 0 6.156 3m1.688 3.188-2.25 1.968-1.219-1.125V5.72l1.219 1.125 2.25-2.063z">
                            </path>
                          </svg>
                        </div>
                        <div spz-if="${item.icon_type === 'default'&amp;&amp;item.type == 'customer_setting'}">
                          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                            <path fill="currentColor"
                              d="M11.966 4.548c-3.109 0-5.628 2.467-5.628 5.51 0 3.044 2.52 5.51 5.628 5.51 3.109 0 5.628-2.466 5.628-5.51 0-3.043-2.52-5.51-5.628-5.51m-6.5 7.626V7.087a2.69 2.69 0 0 0-.21.008c1.153-2.504 3.721-4.247 6.71-4.247 2.99 0 5.559 1.743 6.712 4.247a2.677 2.677 0 0 0-.212-.008v5.087c1.436 0 2.6-1.14 2.6-2.544 0-.954-.537-1.785-1.33-2.22C18.616 4.26 15.565 2 11.965 2c-3.599 0-6.65 2.261-7.768 5.41a2.534 2.534 0 0 0-1.331 2.22c0 1.405 1.163 2.544 2.6 2.544m12.116 2.916a8.3 8.3 0 0 1-5.616 2.167 8.3 8.3 0 0 1-5.608-2.16C3.728 16.424 2 18.783 2 21.987h20c0-3.21-1.76-5.572-4.418-6.896">
                            </path>
                          </svg>
                        </div>
                        <div spz-if="${item.icon_type === 'custom'}">
                          <ljs-img class="trust-thumbnail-img" width="24" height="24" layout="fixed" src="//img.fantaskycdn.com/${item.icon}" object-fit="contain" alt="trust-img"></ljs-img>
                        </div>
                        <span class="trust-thumbnail-title">${item.title}</span>
                      </div>
                      <div class="trust-card-desc-text"> ${item.content.replaceAll("{store_name}","NioPets")} </div>
                      <div spz-if="${item.logos.length > 0&amp;&amp;item.logos_type=='default' }" class="trust-card-desc-img">
                        <ljs-img spz-for="(logo,index) in item.logos" key="index" width="55" height="35" class="icon-trust-block" layout="fixed" src="//img.fantaskycdn.com/${logo}" object-fit="contain" alt="trust-img"></ljs-img>
                      </div>
                      <div spz-if="${item.logos.length > 0&amp;&amp;item.logos_type=='custom' }" class="trust-card-desc-img-custom">
                        <ljs-img spz-for="(logo,index) in item.logos" key="index" width="${logo.width}" height="${logo.height}" class="icon-trust-block-custom" layout="responsive" src="//img.fantaskycdn.com/${logo.path}" object-fit="contain"
                          auto-fit="" alt="image"></ljs-img>
                      </div>
                    </div>
                  </div>
                </div>
              </ljs-sidebar>
            </div>
          </div>
        </div>
      </template>
      <div spz-if="true" class="plugin-strengthen-trust-container">
        <div class=" plugin-strengthen-trust-1539149753700-wrap md:hidden expanded-column-4 ">
          <div class="trust-big-title type-title-font-family pb-4"> Security and Service </div> <ljs-accordion class="trust-card-block i-spzhtml-element i-spzhtml-layout-container i-spzhtml-built i-spzhtml-layout" layout="container"
            i-spzhtml-layout="container">
            <section class="" @expand="strengthen-trust-render-script-1539149753700.track(type='trust_expand_click');">
              <div class="trust-accordion-header i-spzhtml-accordion-header" accordion-header="">
                <div class="trust-title-block"> <svg class="icon_security_trust" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="currentColor">
                    <path fill-rule="evenodd" clip-rule="evenodd"
                      d="M9.99932 0C10.5736 0 11.1307 0.184885 11.5792 0.524258L12.0909 0.911325C13.4831 1.96508 15.0052 2.85514 16.6239 3.56198L17.9248 4.13095C18.3719 4.32298 18.7485 4.63668 19.0065 5.03203C19.2644 5.42739 19.3921 5.88649 19.3732 6.35077C18.9684 14.8758 13.0391 18.7013 11.0849 19.7312C10.4069 20.0896 9.59169 20.0896 8.91232 19.7312C6.95805 18.7 1.03164 14.8731 0.626913 6.32479C0.607503 5.85814 0.736181 5.39668 0.996373 4.99983C1.25657 4.60299 1.63636 4.28894 2.08683 4.09813L3.31114 3.57292C4.97349 2.85777 6.53548 1.94994 7.96121 0.870293L8.41942 0.524258C8.86789 0.184885 9.42506 0 9.99932 0ZM7.19446 9.35226C7.43734 9.34797 7.67239 9.43812 7.85011 9.60372L9.12261 10.875L12.1639 7.83623C12.3416 7.67063 12.5766 7.58047 12.8195 7.58476C13.0624 7.58904 13.2941 7.68743 13.4659 7.8592C13.6377 8.03096 13.736 8.2627 13.7403 8.50557C13.7446 8.74845 13.6545 8.98351 13.4889 9.16123L9.78511 12.8637C9.60933 13.0393 9.37105 13.1379 9.12261 13.1379C8.87418 13.1379 8.63589 13.0393 8.46011 12.8637L6.52511 10.9287C6.35951 10.751 6.26936 10.5159 6.27364 10.2731C6.27793 10.0302 6.37632 9.79846 6.54809 9.6267C6.71985 9.45493 6.95158 9.35654 7.19446 9.35226Z"
                      fill="currentColor"></path>
                  </svg> <span class="trust-title">Security and Service</span> <svg class="icon_arrow_trust" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="currentColor">
                    <path
                      d="M7.54264 10.3064C7.77695 10.5407 8.15686 10.5407 8.39117 10.3064L12.8459 5.85165C12.9631 5.73449 12.9631 5.54454 12.8459 5.42738L12.5065 5.08797C12.3894 4.97082 12.1994 4.97082 12.0823 5.08797L7.96696 9.20328L3.85155 5.08787C3.73439 4.97071 3.54444 4.97071 3.42728 5.08787L3.08787 5.42728C2.97071 5.54444 2.97071 5.73439 3.08787 5.85154L7.54264 10.3064Z"
                      fill="currentColor"></path>
                  </svg> </div>
                <div class="trust-thumbnail-desc trust-card-border">
                  <div class="trust-thumbnail-desc-item" key="payment_setting">
                    <div spz-if="true">
                      <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon_title_trust scale-125">
                          <g clip-path="url(#clip0_2533_19421)">
                            <path
                              d="M18.5653 9.98893C18.8533 9.78627 19.3146 9.78359 19.6026 9.98893C19.6026 9.98893 20.3706 10.6023 21.3253 11.0103V3.61827C21.3253 3.26094 21.0399 2.97559 20.6879 2.97559H0.626594C0.274586 2.97559 -0.0107422 3.26359 -0.0107422 3.61827V17.2689C-0.0107422 17.6263 0.274586 17.9116 0.626594 17.9116H14.1626C13.9279 17.5516 13.8533 17.0343 13.8533 16.6209V11.5543C13.8533 11.3169 14.0373 11.1676 14.2666 11.2183C14.2666 11.2183 14.8266 11.3649 15.3466 11.3649C16.8346 11.3649 18.5653 9.98895 18.5653 9.98895V9.98893ZM7.88259 9.80494H2.76259C2.40791 9.80494 2.12259 9.51694 2.12259 9.16494C2.12259 8.81026 2.41059 8.52493 2.76259 8.52493H7.88259C8.23727 8.52493 8.52259 8.81293 8.52259 9.16494C8.52259 9.51694 8.23459 9.80494 7.88259 9.80494ZM2.75992 6.3916C2.40791 6.3916 2.12259 6.1036 2.12259 5.75159C2.12259 5.39691 2.40791 5.11159 2.75992 5.11159H18.5519C18.9039 5.11159 19.1893 5.39959 19.1893 5.75159C19.1893 6.10627 18.9039 6.3916 18.5519 6.3916H2.75992Z"
                              fill="currentColor"></path>
                            <path
                              d="M23.4559 12.0668H22.5412C21.2052 12.0668 19.7092 10.8668 19.7092 10.8668C19.4212 10.6615 18.9572 10.6669 18.6692 10.8668C18.6692 10.8668 17.1732 12.0668 15.8372 12.0668H14.9225C14.6879 12.0668 14.4985 12.2588 14.4985 12.4935V16.7842C14.4985 17.2535 14.7972 17.8722 15.1652 18.1655L18.5225 20.8242C18.8905 21.1149 19.4879 21.1149 19.8586 20.8242L23.2159 18.1655C23.5839 17.8749 23.8826 17.2562 23.8826 16.7842V12.4935C23.8826 12.2588 23.6906 12.0668 23.4559 12.0668ZM21.3386 14.7922L19.3866 17.2748C19.0026 17.7655 18.3199 17.7788 17.9172 17.3068L17.0532 16.2988C16.8986 16.1202 16.9199 15.8508 17.0986 15.6961C17.2772 15.5415 17.5466 15.5628 17.7012 15.7415L18.5652 16.7495C18.6186 16.8135 18.6639 16.8135 18.7172 16.7442L20.6692 14.2615C20.8159 14.0775 21.0826 14.0428 21.2692 14.1895C21.4506 14.3388 21.4826 14.6082 21.3386 14.7922Z"
                              fill="currentColor"></path>
                          </g>
                          <defs>
                            <clipPath id="clip0_2533_19421">
                              <rect width="24" height="24" fill="currentColor"></rect>
                            </clipPath>
                          </defs>
                        </svg> </div>
                    </div>
                    <div class="trust-thumbnail-desc-title">Payment Security</div>
                  </div>
                  <div class="trust-thumbnail-desc-item" key="privacy_setting">
                    <div spz-if="true">
                      <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust scale-125">
                          <path fill="currentColor"
                            d="M19.505 15.49h-3.174a.712.712 0 0 1-.082-.338v-.675c0-.322.199-.584.444-.584h1.05c.243 0 .441.26.441.582 0 .254.157.46.352.46.194 0 .351-.206.351-.46 0-.83-.512-1.504-1.143-1.504h-1.051c-.632 0-1.145.675-1.145 1.506v.675c0 .114.01.227.032.338h-1.138a.674.674 0 0 0-.66.685v4.614c0 .378.295.685.66.685h5.063c.364 0 .66-.307.66-.685v-4.614a.672.672 0 0 0-.66-.685m-2.193 2.994v1.864a.272.272 0 1 1-.543 0v-1.864a.9.9 0 0 1-.6-.86c0-.499.39-.903.872-.903.481 0 .872.404.872.904 0 .4-.252.74-.601.859m3.6-1.075v3.663a.794.794 0 0 1-.329.643h1.097c0-1.546-.127-3.008-.769-4.306">
                          </path>
                          <path fill="currentColor"
                            d="M16.905 7.214a4.863 4.863 0 0 0-5.79-4.773A4.81 4.81 0 0 0 7.26 6.366a4.863 4.863 0 0 0 3.817 5.61.03.03 0 0 1 .016.05.03.03 0 0 1-.02.008c-4.915.477-8.76 4.613-8.775 9.65a.03.03 0 0 0 .03.03h10.978c.027 0-.124-.033-.144-.051-.162-.146-.334-.356-.334-.591l.07-5.33a.825.825 0 0 1 .826-.825h1.203a.03.03 0 0 0 .03-.034c-.047-.281-.07-1.728.574-2.141a.03.03 0 0 0 .014-.029.03.03 0 0 0-.02-.025c-.782-.287-1.645-.534-2.568-.641a.03.03 0 0 1-.002-.06 4.861 4.861 0 0 0 3.95-4.773">
                          </path>
                        </svg> </div>
                    </div>
                    <div class="trust-thumbnail-desc-title">Privacy Protection</div>
                  </div>
                  <div class="trust-thumbnail-desc-item" key="logitics_setting">
                    <div spz-if="true">
                      <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust scale-125">
                          <path fill="currentColor"
                            d="M10.469 5.344c.094.375.187.75.187 1.125 0 .656-.094 1.218-.375 1.687-.281.563-.562 1.031-.937 1.406-.375.376-.844.75-1.406.938-.563.188-1.125.375-1.688.375-.656 0-1.219-.094-1.687-.375-.563-.187-1.032-.562-1.407-.937-.375-.376-.75-.844-.937-1.407-.281-.562-.375-1.125-.375-1.687V6.28c-.375.282-.469.563-.657.844A3.37 3.37 0 0 0 1 8.156V19.22c0 .281.094.468.188.656.187.188.375.188.562.188h.469c0-.938.187-1.594.656-2.063.469-.469 1.125-.656 1.969-.656.937 0 1.593.281 1.968.75.47.468.657 1.125.657 1.968h5.812c.188 0 .375-.093.563-.187.187-.187.281-.375.281-.562V5.53h-3.656z">
                          </path>
                          <path fill="currentColor"
                            d="M5.031 18.656c-.375 0-.75.094-.937.375-.282.282-.375.563-.375.938s.094.656.375.937c.281.282.562.375.937.375s.75-.093.938-.375c.281-.281.375-.562.375-.937s-.094-.75-.375-.938c-.282-.187-.563-.375-.938-.375m14.532.094c.375 0 .656.094.937.375s.375.563.375.938-.094.75-.375.937c-.281.281-.562.375-.937.375s-.75-.094-.938-.375c-.281-.281-.375-.562-.375-.937s.094-.657.375-.938c.281-.281.563-.375.938-.375">
                          </path>
                          <path fill="currentColor"
                            d="M23.406 15c-.093-.844-.281-1.594-.562-2.437a8 8 0 0 0-1.219-2.344A3.994 3.994 0 0 0 20.5 9.188c-.469-.282-.937-.563-1.406-.75-.469-.188-1.032-.282-1.5-.376-.469-.093-1.032-.093-1.5-.093-.188 0-.282.093-.375.375-.094.187-.188.375-.188.562v10.219c0 .281.094.469.281.656a.851.851 0 0 0 .657.282h.375c0-.375.093-.657.187-1.032.094-.281.282-.562.563-.843.187-.282.468-.47.843-.563.282-.187.657-.187 1.032-.187s.75.093 1.031.187c.375.094.656.281.844.469.281.187.468.468.562.843.188.375.188.75.188 1.22h.843c.094 0 .188 0 .188-.095.094-.093.094-.187.094-.28 0-.095.093-.282.093-.376v-1.968c.282-.844.188-1.594.094-2.438m-1.687-.281h-4.407c-.093 0-.187-.094-.28-.188-.095-.094-.188-.187-.188-.281v-3.844c0-.187.093-.281.187-.469a.716.716 0 0 1 .469-.187h1.031c.282 0 .563.094.938.188.281.093.656.28.937.562.469.469.75 1.031.938 1.688.187.656.375 1.312.468 1.968v.188c.094.281 0 .375-.093.375M6.156 3C4.188 3 2.594 4.594 2.594 6.469c0 1.968 1.594 3.468 3.562 3.468A3.46 3.46 0 0 0 9.625 6.47 3.46 3.46 0 0 0 6.156 3m1.688 3.188-2.25 1.968-1.219-1.125V5.72l1.219 1.125 2.25-2.063z">
                          </path>
                        </svg> </div>
                    </div>
                    <div class="trust-thumbnail-desc-title">Efficient and Safe Logitics</div>
                  </div>
                  <div class="trust-thumbnail-desc-item" key="customer_setting">
                    <div spz-if="true">
                      <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust scale-125">
                          <path fill="currentColor"
                            d="M11.966 4.548c-3.109 0-5.628 2.467-5.628 5.51 0 3.044 2.52 5.51 5.628 5.51 3.109 0 5.628-2.466 5.628-5.51 0-3.043-2.52-5.51-5.628-5.51m-6.5 7.626V7.087a2.69 2.69 0 0 0-.21.008c1.153-2.504 3.721-4.247 6.71-4.247 2.99 0 5.559 1.743 6.712 4.247a2.677 2.677 0 0 0-.212-.008v5.087c1.436 0 2.6-1.14 2.6-2.544 0-.954-.537-1.785-1.33-2.22C18.616 4.26 15.565 2 11.965 2c-3.599 0-6.65 2.261-7.768 5.41a2.534 2.534 0 0 0-1.331 2.22c0 1.405 1.163 2.544 2.6 2.544m12.116 2.916a8.3 8.3 0 0 1-5.616 2.167 8.3 8.3 0 0 1-5.608-2.16C3.728 16.424 2 18.783 2 21.987h20c0-3.21-1.76-5.572-4.418-6.896">
                          </path>
                        </svg> </div>
                    </div>
                    <div class="trust-thumbnail-desc-title">Customer Service</div>
                  </div>
                </div>
              </div>
              <div id="trust-open-card" class="trust-open-card trust-card-border i-spzhtml-accordion-content">
                <div id="trust-card-desc-block-1539149753700-0" class="trust-card-desc-block" key="payment_setting">
                  <div class="trust-card-desc-title">
                    <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon_title_trust">
                        <g clip-path="url(#clip0_2533_19421)">
                          <path
                            d="M18.5653 9.98893C18.8533 9.78627 19.3146 9.78359 19.6026 9.98893C19.6026 9.98893 20.3706 10.6023 21.3253 11.0103V3.61827C21.3253 3.26094 21.0399 2.97559 20.6879 2.97559H0.626594C0.274586 2.97559 -0.0107422 3.26359 -0.0107422 3.61827V17.2689C-0.0107422 17.6263 0.274586 17.9116 0.626594 17.9116H14.1626C13.9279 17.5516 13.8533 17.0343 13.8533 16.6209V11.5543C13.8533 11.3169 14.0373 11.1676 14.2666 11.2183C14.2666 11.2183 14.8266 11.3649 15.3466 11.3649C16.8346 11.3649 18.5653 9.98895 18.5653 9.98895V9.98893ZM7.88259 9.80494H2.76259C2.40791 9.80494 2.12259 9.51694 2.12259 9.16494C2.12259 8.81026 2.41059 8.52493 2.76259 8.52493H7.88259C8.23727 8.52493 8.52259 8.81293 8.52259 9.16494C8.52259 9.51694 8.23459 9.80494 7.88259 9.80494ZM2.75992 6.3916C2.40791 6.3916 2.12259 6.1036 2.12259 5.75159C2.12259 5.39691 2.40791 5.11159 2.75992 5.11159H18.5519C18.9039 5.11159 19.1893 5.39959 19.1893 5.75159C19.1893 6.10627 18.9039 6.3916 18.5519 6.3916H2.75992Z"
                            fill="currentColor"></path>
                          <path
                            d="M23.4559 12.0668H22.5412C21.2052 12.0668 19.7092 10.8668 19.7092 10.8668C19.4212 10.6615 18.9572 10.6669 18.6692 10.8668C18.6692 10.8668 17.1732 12.0668 15.8372 12.0668H14.9225C14.6879 12.0668 14.4985 12.2588 14.4985 12.4935V16.7842C14.4985 17.2535 14.7972 17.8722 15.1652 18.1655L18.5225 20.8242C18.8905 21.1149 19.4879 21.1149 19.8586 20.8242L23.2159 18.1655C23.5839 17.8749 23.8826 17.2562 23.8826 16.7842V12.4935C23.8826 12.2588 23.6906 12.0668 23.4559 12.0668ZM21.3386 14.7922L19.3866 17.2748C19.0026 17.7655 18.3199 17.7788 17.9172 17.3068L17.0532 16.2988C16.8986 16.1202 16.9199 15.8508 17.0986 15.6961C17.2772 15.5415 17.5466 15.5628 17.7012 15.7415L18.5652 16.7495C18.6186 16.8135 18.6639 16.8135 18.7172 16.7442L20.6692 14.2615C20.8159 14.0775 21.0826 14.0428 21.2692 14.1895C21.4506 14.3388 21.4826 14.6082 21.3386 14.7922Z"
                            fill="currentColor"></path>
                        </g>
                        <defs>
                          <clipPath id="clip0_2533_19421">
                            <rect width="24" height="24" fill="currentColor"></rect>
                          </clipPath>
                        </defs>
                      </svg> </div> <span class="trust-thumbnail-title">Payment Security</span>
                  </div>
                  <div class="trust-card-desc-text"> NioPets is committed to your secure shopping experience. We offer safe and trusted payment options to protect your transactions. Your payment information is shared only with our certified payment
                    service providers, who are dedicated to maintaining the confidentiality of your details. </div>
                  <div spz-if="true" class="trust-card-desc-img"> <ljs-img key="0" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/329db58ac0f7bf6e446ea93aa338f25d.svg" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="1" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/18345efd4db8552be9c72c41c27ea6e7.svg" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="2" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/50927f9a9805ee57dd3971a24ab13037.svg" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="3" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/b068c5902e07857d5251e11f8198ad80.svg" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="4" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/b823bc7dd65f1a58d949dfb47916e4b2.svg" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="5" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/3cc7bc0c09f7f0fb19581a21abd4cd53.svg" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img> </div>
                </div>
                <div id="trust-card-desc-block-1539149753700-1" class="trust-card-desc-block" key="privacy_setting">
                  <div class="trust-card-desc-title">
                    <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                        <path fill="currentColor"
                          d="M19.505 15.49h-3.174a.712.712 0 0 1-.082-.338v-.675c0-.322.199-.584.444-.584h1.05c.243 0 .441.26.441.582 0 .254.157.46.352.46.194 0 .351-.206.351-.46 0-.83-.512-1.504-1.143-1.504h-1.051c-.632 0-1.145.675-1.145 1.506v.675c0 .114.01.227.032.338h-1.138a.674.674 0 0 0-.66.685v4.614c0 .378.295.685.66.685h5.063c.364 0 .66-.307.66-.685v-4.614a.672.672 0 0 0-.66-.685m-2.193 2.994v1.864a.272.272 0 1 1-.543 0v-1.864a.9.9 0 0 1-.6-.86c0-.499.39-.903.872-.903.481 0 .872.404.872.904 0 .4-.252.74-.601.859m3.6-1.075v3.663a.794.794 0 0 1-.329.643h1.097c0-1.546-.127-3.008-.769-4.306">
                        </path>
                        <path fill="currentColor"
                          d="M16.905 7.214a4.863 4.863 0 0 0-5.79-4.773A4.81 4.81 0 0 0 7.26 6.366a4.863 4.863 0 0 0 3.817 5.61.03.03 0 0 1 .016.05.03.03 0 0 1-.02.008c-4.915.477-8.76 4.613-8.775 9.65a.03.03 0 0 0 .03.03h10.978c.027 0-.124-.033-.144-.051-.162-.146-.334-.356-.334-.591l.07-5.33a.825.825 0 0 1 .826-.825h1.203a.03.03 0 0 0 .03-.034c-.047-.281-.07-1.728.574-2.141a.03.03 0 0 0 .014-.029.03.03 0 0 0-.02-.025c-.782-.287-1.645-.534-2.568-.641a.03.03 0 0 1-.002-.06 4.861 4.861 0 0 0 3.95-4.773">
                        </path>
                      </svg> </div> <span class="trust-thumbnail-title">Privacy Protection</span>
                  </div>
                  <div class="trust-card-desc-text"> At NioPets, your privacy is our priority. We employ internationally recognized encryption methods for all network transmissions, ensuring the utmost security for your private data during your
                    shopping journey. This includes the protection of your shipping address, credit card information, shopping details, and more. Shop with confidence, knowing your privacy is safeguarded with us. </div>
                  <div spz-if="true" class="trust-card-desc-img"> <ljs-img key="0" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/56795daf3e1b2e526fabf1590368afa9.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="1" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/9ddfdb73309f0a625d407a0f6afb9bbd.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="2" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/9050730bedd367f8c8e0a42138be79d2.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="3" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/aaa433c827216a6bb95fb68b5de4aeea.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="4" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/42fd2cf01ff65e2e4100dbade836fd55.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="5" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/02f47fad8c079ca26451786572a3b8f7.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="6" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/6214e504e3a39e338cbacbad95cc91a6.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="7" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/93631da9d6bb8df3f15abd313a7dbe52.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="8" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/558fc0b3261edf2e60803e08a0653681.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="9" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/200dbfe3761c90a067dd54a58e0bb43e.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="10" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/9211bbdc27660ab7dafeed6b7cebe42b.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img> </div>
                </div>
                <div id="trust-card-desc-block-1539149753700-2" class="trust-card-desc-block" key="logitics_setting">
                  <div class="trust-card-desc-title">
                    <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                        <path fill="currentColor"
                          d="M10.469 5.344c.094.375.187.75.187 1.125 0 .656-.094 1.218-.375 1.687-.281.563-.562 1.031-.937 1.406-.375.376-.844.75-1.406.938-.563.188-1.125.375-1.688.375-.656 0-1.219-.094-1.687-.375-.563-.187-1.032-.562-1.407-.937-.375-.376-.75-.844-.937-1.407-.281-.562-.375-1.125-.375-1.687V6.28c-.375.282-.469.563-.657.844A3.37 3.37 0 0 0 1 8.156V19.22c0 .281.094.468.188.656.187.188.375.188.562.188h.469c0-.938.187-1.594.656-2.063.469-.469 1.125-.656 1.969-.656.937 0 1.593.281 1.968.75.47.468.657 1.125.657 1.968h5.812c.188 0 .375-.093.563-.187.187-.187.281-.375.281-.562V5.53h-3.656z">
                        </path>
                        <path fill="currentColor"
                          d="M5.031 18.656c-.375 0-.75.094-.937.375-.282.282-.375.563-.375.938s.094.656.375.937c.281.282.562.375.937.375s.75-.093.938-.375c.281-.281.375-.562.375-.937s-.094-.75-.375-.938c-.282-.187-.563-.375-.938-.375m14.532.094c.375 0 .656.094.937.375s.375.563.375.938-.094.75-.375.937c-.281.281-.562.375-.937.375s-.75-.094-.938-.375c-.281-.281-.375-.562-.375-.937s.094-.657.375-.938c.281-.281.563-.375.938-.375">
                        </path>
                        <path fill="currentColor"
                          d="M23.406 15c-.093-.844-.281-1.594-.562-2.437a8 8 0 0 0-1.219-2.344A3.994 3.994 0 0 0 20.5 9.188c-.469-.282-.937-.563-1.406-.75-.469-.188-1.032-.282-1.5-.376-.469-.093-1.032-.093-1.5-.093-.188 0-.282.093-.375.375-.094.187-.188.375-.188.562v10.219c0 .281.094.469.281.656a.851.851 0 0 0 .657.282h.375c0-.375.093-.657.187-1.032.094-.281.282-.562.563-.843.187-.282.468-.47.843-.563.282-.187.657-.187 1.032-.187s.75.093 1.031.187c.375.094.656.281.844.469.281.187.468.468.562.843.188.375.188.75.188 1.22h.843c.094 0 .188 0 .188-.095.094-.093.094-.187.094-.28 0-.095.093-.282.093-.376v-1.968c.282-.844.188-1.594.094-2.438m-1.687-.281h-4.407c-.093 0-.187-.094-.28-.188-.095-.094-.188-.187-.188-.281v-3.844c0-.187.093-.281.187-.469a.716.716 0 0 1 .469-.187h1.031c.282 0 .563.094.938.188.281.093.656.28.937.562.469.469.75 1.031.938 1.688.187.656.375 1.312.468 1.968v.188c.094.281 0 .375-.093.375M6.156 3C4.188 3 2.594 4.594 2.594 6.469c0 1.968 1.594 3.468 3.562 3.468A3.46 3.46 0 0 0 9.625 6.47 3.46 3.46 0 0 0 6.156 3m1.688 3.188-2.25 1.968-1.219-1.125V5.72l1.219 1.125 2.25-2.063z">
                        </path>
                      </svg> </div> <span class="trust-thumbnail-title">Efficient and Safe Logitics</span>
                  </div>
                  <div class="trust-card-desc-text"> At NioPets, we ensure secure and efficient logistics. Track your order in real-time right from the order page. For added security, consider our optional "Shipping Protection" service. If your
                    purchase encounters any delays, damage, or loss during delivery, rest assured, our insurance will cover your losses.
                    <a target="_blank" rel="noreferrer" href="https://www.seel.com/terms/shipping-protection-for-customer">learn more</a> </div>
                  <div spz-if="true" class="trust-card-desc-img"> <ljs-img key="0" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/4e628a598fd199505f3299e1184bb0c9.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="1" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/ed09bd56b0a33c981a6bbdbcf97e348f.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="2" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/a1b992c66e86603a67a5fe1b1a4b0570.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="3" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/2cb1039ea5e997169f3d8f72ec5ebec9.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="4" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/11e0aef019c2bad92cd867abff3e72ad.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="5" width="55" height="35"
                      class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                      src="//img.fantaskycdn.com/oss/operation/1d4ed10d4d6da3dffe658be5b52df89f.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img> </div>
                </div>
                <div id="trust-card-desc-block-1539149753700-3" class="trust-card-desc-block" key="customer_setting">
                  <div class="trust-card-desc-title">
                    <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                        <path fill="currentColor"
                          d="M11.966 4.548c-3.109 0-5.628 2.467-5.628 5.51 0 3.044 2.52 5.51 5.628 5.51 3.109 0 5.628-2.466 5.628-5.51 0-3.043-2.52-5.51-5.628-5.51m-6.5 7.626V7.087a2.69 2.69 0 0 0-.21.008c1.153-2.504 3.721-4.247 6.71-4.247 2.99 0 5.559 1.743 6.712 4.247a2.677 2.677 0 0 0-.212-.008v5.087c1.436 0 2.6-1.14 2.6-2.544 0-.954-.537-1.785-1.33-2.22C18.616 4.26 15.565 2 11.965 2c-3.599 0-6.65 2.261-7.768 5.41a2.534 2.534 0 0 0-1.331 2.22c0 1.405 1.163 2.544 2.6 2.544m12.116 2.916a8.3 8.3 0 0 1-5.616 2.167 8.3 8.3 0 0 1-5.608-2.16C3.728 16.424 2 18.783 2 21.987h20c0-3.21-1.76-5.572-4.418-6.896">
                        </path>
                      </svg> </div> <span class="trust-thumbnail-title">Customer Service</span>
                  </div>
                  <div class="trust-card-desc-text"> If you encounter problems during or after shopping, don't hesitate to reach out. NioPets's customer service team is here to assist you. <a target="_blank" rel="noreferrer" href="/">learn more</a>
                  </div>
                </div>
              </div>
            </section>
          </ljs-accordion>
        </div>
        <div class="plugin-strengthen-trust-1539149753700-wrap lg:hidden ">
          <div class="trust-card-block" layout="container">
            <div class="trust-accordion-header">
              <div class="trust-title-block"> <svg class="icon_security_trust" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="currentColor">
                  <path fill-rule="evenodd" clip-rule="evenodd"
                    d="M9.99932 0C10.5736 0 11.1307 0.184885 11.5792 0.524258L12.0909 0.911325C13.4831 1.96508 15.0052 2.85514 16.6239 3.56198L17.9248 4.13095C18.3719 4.32298 18.7485 4.63668 19.0065 5.03203C19.2644 5.42739 19.3921 5.88649 19.3732 6.35077C18.9684 14.8758 13.0391 18.7013 11.0849 19.7312C10.4069 20.0896 9.59169 20.0896 8.91232 19.7312C6.95805 18.7 1.03164 14.8731 0.626913 6.32479C0.607503 5.85814 0.736181 5.39668 0.996373 4.99983C1.25657 4.60299 1.63636 4.28894 2.08683 4.09813L3.31114 3.57292C4.97349 2.85777 6.53548 1.94994 7.96121 0.870293L8.41942 0.524258C8.86789 0.184885 9.42506 0 9.99932 0ZM7.19446 9.35226C7.43734 9.34797 7.67239 9.43812 7.85011 9.60372L9.12261 10.875L12.1639 7.83623C12.3416 7.67063 12.5766 7.58047 12.8195 7.58476C13.0624 7.58904 13.2941 7.68743 13.4659 7.8592C13.6377 8.03096 13.736 8.2627 13.7403 8.50557C13.7446 8.74845 13.6545 8.98351 13.4889 9.16123L9.78511 12.8637C9.60933 13.0393 9.37105 13.1379 9.12261 13.1379C8.87418 13.1379 8.63589 13.0393 8.46011 12.8637L6.52511 10.9287C6.35951 10.751 6.26936 10.5159 6.27364 10.2731C6.27793 10.0302 6.37632 9.79846 6.54809 9.6267C6.71985 9.45493 6.95158 9.35654 7.19446 9.35226Z"
                    fill="currentColor"></path>
                </svg> <span class="trust-title">Security and Service</span> </div>
              <div class="trust-thumbnail-desc trust-card-border">
                <div class="trust-thumbnail-desc-item" key="payment_setting"
                  @tap="trust-sidebar-1539149753700.open;sidebar-scroll-1539149753700.setTarget(containerId='sidebar-bottom-content-1539149753700', targetId='trust-card-desc-block-1539149753700-0');strengthen-trust-render-script-1539149753700.track(type='trust_expand_click');">
                  <div spz-if="true">
                    <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon_title_trust">
                        <g clip-path="url(#clip0_2533_19421)">
                          <path
                            d="M18.5653 9.98893C18.8533 9.78627 19.3146 9.78359 19.6026 9.98893C19.6026 9.98893 20.3706 10.6023 21.3253 11.0103V3.61827C21.3253 3.26094 21.0399 2.97559 20.6879 2.97559H0.626594C0.274586 2.97559 -0.0107422 3.26359 -0.0107422 3.61827V17.2689C-0.0107422 17.6263 0.274586 17.9116 0.626594 17.9116H14.1626C13.9279 17.5516 13.8533 17.0343 13.8533 16.6209V11.5543C13.8533 11.3169 14.0373 11.1676 14.2666 11.2183C14.2666 11.2183 14.8266 11.3649 15.3466 11.3649C16.8346 11.3649 18.5653 9.98895 18.5653 9.98895V9.98893ZM7.88259 9.80494H2.76259C2.40791 9.80494 2.12259 9.51694 2.12259 9.16494C2.12259 8.81026 2.41059 8.52493 2.76259 8.52493H7.88259C8.23727 8.52493 8.52259 8.81293 8.52259 9.16494C8.52259 9.51694 8.23459 9.80494 7.88259 9.80494ZM2.75992 6.3916C2.40791 6.3916 2.12259 6.1036 2.12259 5.75159C2.12259 5.39691 2.40791 5.11159 2.75992 5.11159H18.5519C18.9039 5.11159 19.1893 5.39959 19.1893 5.75159C19.1893 6.10627 18.9039 6.3916 18.5519 6.3916H2.75992Z"
                            fill="currentColor"></path>
                          <path
                            d="M23.4559 12.0668H22.5412C21.2052 12.0668 19.7092 10.8668 19.7092 10.8668C19.4212 10.6615 18.9572 10.6669 18.6692 10.8668C18.6692 10.8668 17.1732 12.0668 15.8372 12.0668H14.9225C14.6879 12.0668 14.4985 12.2588 14.4985 12.4935V16.7842C14.4985 17.2535 14.7972 17.8722 15.1652 18.1655L18.5225 20.8242C18.8905 21.1149 19.4879 21.1149 19.8586 20.8242L23.2159 18.1655C23.5839 17.8749 23.8826 17.2562 23.8826 16.7842V12.4935C23.8826 12.2588 23.6906 12.0668 23.4559 12.0668ZM21.3386 14.7922L19.3866 17.2748C19.0026 17.7655 18.3199 17.7788 17.9172 17.3068L17.0532 16.2988C16.8986 16.1202 16.9199 15.8508 17.0986 15.6961C17.2772 15.5415 17.5466 15.5628 17.7012 15.7415L18.5652 16.7495C18.6186 16.8135 18.6639 16.8135 18.7172 16.7442L20.6692 14.2615C20.8159 14.0775 21.0826 14.0428 21.2692 14.1895C21.4506 14.3388 21.4826 14.6082 21.3386 14.7922Z"
                            fill="currentColor"></path>
                        </g>
                        <defs>
                          <clipPath id="clip0_2533_19421">
                            <rect width="24" height="24" fill="currentColor"></rect>
                          </clipPath>
                        </defs>
                      </svg> </div>
                  </div>
                  <div class="trust-thumbnail-desc-title">Payment Security</div> <svg xmlns="http://www.w3.org/2000/svg" class="icon_arrow_right_trust" width="12" height="12" viewBox="0 0 12 12" fill="none">
                    <path
                      d="M7.62392 6.4489C7.85824 6.21459 7.85824 5.83468 7.62393 5.60037L4.44195 2.41839C4.3248 2.30124 4.13485 2.30124 4.01769 2.41839L3.8692 2.56689C3.75204 2.68404 3.75204 2.87399 3.8692 2.99115L6.90264 6.0246L3.86912 9.05812C3.75196 9.17528 3.75196 9.36523 3.86912 9.48239L4.01761 9.63088C4.13477 9.74804 4.32472 9.74804 4.44187 9.63088L7.62392 6.4489Z"
                      fill="#292929"></path>
                  </svg>
                </div>
                <div class="trust-thumbnail-desc-item" key="privacy_setting"
                  @tap="trust-sidebar-1539149753700.open;sidebar-scroll-1539149753700.setTarget(containerId='sidebar-bottom-content-1539149753700', targetId='trust-card-desc-block-1539149753700-1');strengthen-trust-render-script-1539149753700.track(type='trust_expand_click');">
                  <div spz-if="true">
                    <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                        <path fill="currentColor"
                          d="M19.505 15.49h-3.174a.712.712 0 0 1-.082-.338v-.675c0-.322.199-.584.444-.584h1.05c.243 0 .441.26.441.582 0 .254.157.46.352.46.194 0 .351-.206.351-.46 0-.83-.512-1.504-1.143-1.504h-1.051c-.632 0-1.145.675-1.145 1.506v.675c0 .114.01.227.032.338h-1.138a.674.674 0 0 0-.66.685v4.614c0 .378.295.685.66.685h5.063c.364 0 .66-.307.66-.685v-4.614a.672.672 0 0 0-.66-.685m-2.193 2.994v1.864a.272.272 0 1 1-.543 0v-1.864a.9.9 0 0 1-.6-.86c0-.499.39-.903.872-.903.481 0 .872.404.872.904 0 .4-.252.74-.601.859m3.6-1.075v3.663a.794.794 0 0 1-.329.643h1.097c0-1.546-.127-3.008-.769-4.306">
                        </path>
                        <path fill="currentColor"
                          d="M16.905 7.214a4.863 4.863 0 0 0-5.79-4.773A4.81 4.81 0 0 0 7.26 6.366a4.863 4.863 0 0 0 3.817 5.61.03.03 0 0 1 .016.05.03.03 0 0 1-.02.008c-4.915.477-8.76 4.613-8.775 9.65a.03.03 0 0 0 .03.03h10.978c.027 0-.124-.033-.144-.051-.162-.146-.334-.356-.334-.591l.07-5.33a.825.825 0 0 1 .826-.825h1.203a.03.03 0 0 0 .03-.034c-.047-.281-.07-1.728.574-2.141a.03.03 0 0 0 .014-.029.03.03 0 0 0-.02-.025c-.782-.287-1.645-.534-2.568-.641a.03.03 0 0 1-.002-.06 4.861 4.861 0 0 0 3.95-4.773">
                        </path>
                      </svg> </div>
                  </div>
                  <div class="trust-thumbnail-desc-title">Privacy Protection</div> <svg xmlns="http://www.w3.org/2000/svg" class="icon_arrow_right_trust" width="12" height="12" viewBox="0 0 12 12" fill="none">
                    <path
                      d="M7.62392 6.4489C7.85824 6.21459 7.85824 5.83468 7.62393 5.60037L4.44195 2.41839C4.3248 2.30124 4.13485 2.30124 4.01769 2.41839L3.8692 2.56689C3.75204 2.68404 3.75204 2.87399 3.8692 2.99115L6.90264 6.0246L3.86912 9.05812C3.75196 9.17528 3.75196 9.36523 3.86912 9.48239L4.01761 9.63088C4.13477 9.74804 4.32472 9.74804 4.44187 9.63088L7.62392 6.4489Z"
                      fill="#292929"></path>
                  </svg>
                </div>
                <div class="trust-thumbnail-desc-item" key="logitics_setting"
                  @tap="trust-sidebar-1539149753700.open;sidebar-scroll-1539149753700.setTarget(containerId='sidebar-bottom-content-1539149753700', targetId='trust-card-desc-block-1539149753700-2');strengthen-trust-render-script-1539149753700.track(type='trust_expand_click');">
                  <div spz-if="true">
                    <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                        <path fill="currentColor"
                          d="M10.469 5.344c.094.375.187.75.187 1.125 0 .656-.094 1.218-.375 1.687-.281.563-.562 1.031-.937 1.406-.375.376-.844.75-1.406.938-.563.188-1.125.375-1.688.375-.656 0-1.219-.094-1.687-.375-.563-.187-1.032-.562-1.407-.937-.375-.376-.75-.844-.937-1.407-.281-.562-.375-1.125-.375-1.687V6.28c-.375.282-.469.563-.657.844A3.37 3.37 0 0 0 1 8.156V19.22c0 .281.094.468.188.656.187.188.375.188.562.188h.469c0-.938.187-1.594.656-2.063.469-.469 1.125-.656 1.969-.656.937 0 1.593.281 1.968.75.47.468.657 1.125.657 1.968h5.812c.188 0 .375-.093.563-.187.187-.187.281-.375.281-.562V5.53h-3.656z">
                        </path>
                        <path fill="currentColor"
                          d="M5.031 18.656c-.375 0-.75.094-.937.375-.282.282-.375.563-.375.938s.094.656.375.937c.281.282.562.375.937.375s.75-.093.938-.375c.281-.281.375-.562.375-.937s-.094-.75-.375-.938c-.282-.187-.563-.375-.938-.375m14.532.094c.375 0 .656.094.937.375s.375.563.375.938-.094.75-.375.937c-.281.281-.562.375-.937.375s-.75-.094-.938-.375c-.281-.281-.375-.562-.375-.937s.094-.657.375-.938c.281-.281.563-.375.938-.375">
                        </path>
                        <path fill="currentColor"
                          d="M23.406 15c-.093-.844-.281-1.594-.562-2.437a8 8 0 0 0-1.219-2.344A3.994 3.994 0 0 0 20.5 9.188c-.469-.282-.937-.563-1.406-.75-.469-.188-1.032-.282-1.5-.376-.469-.093-1.032-.093-1.5-.093-.188 0-.282.093-.375.375-.094.187-.188.375-.188.562v10.219c0 .281.094.469.281.656a.851.851 0 0 0 .657.282h.375c0-.375.093-.657.187-1.032.094-.281.282-.562.563-.843.187-.282.468-.47.843-.563.282-.187.657-.187 1.032-.187s.75.093 1.031.187c.375.094.656.281.844.469.281.187.468.468.562.843.188.375.188.75.188 1.22h.843c.094 0 .188 0 .188-.095.094-.093.094-.187.094-.28 0-.095.093-.282.093-.376v-1.968c.282-.844.188-1.594.094-2.438m-1.687-.281h-4.407c-.093 0-.187-.094-.28-.188-.095-.094-.188-.187-.188-.281v-3.844c0-.187.093-.281.187-.469a.716.716 0 0 1 .469-.187h1.031c.282 0 .563.094.938.188.281.093.656.28.937.562.469.469.75 1.031.938 1.688.187.656.375 1.312.468 1.968v.188c.094.281 0 .375-.093.375M6.156 3C4.188 3 2.594 4.594 2.594 6.469c0 1.968 1.594 3.468 3.562 3.468A3.46 3.46 0 0 0 9.625 6.47 3.46 3.46 0 0 0 6.156 3m1.688 3.188-2.25 1.968-1.219-1.125V5.72l1.219 1.125 2.25-2.063z">
                        </path>
                      </svg> </div>
                  </div>
                  <div class="trust-thumbnail-desc-title">Efficient and Safe Logitics</div> <svg xmlns="http://www.w3.org/2000/svg" class="icon_arrow_right_trust" width="12" height="12" viewBox="0 0 12 12" fill="none">
                    <path
                      d="M7.62392 6.4489C7.85824 6.21459 7.85824 5.83468 7.62393 5.60037L4.44195 2.41839C4.3248 2.30124 4.13485 2.30124 4.01769 2.41839L3.8692 2.56689C3.75204 2.68404 3.75204 2.87399 3.8692 2.99115L6.90264 6.0246L3.86912 9.05812C3.75196 9.17528 3.75196 9.36523 3.86912 9.48239L4.01761 9.63088C4.13477 9.74804 4.32472 9.74804 4.44187 9.63088L7.62392 6.4489Z"
                      fill="#292929"></path>
                  </svg>
                </div>
                <div class="trust-thumbnail-desc-item" key="customer_setting"
                  @tap="trust-sidebar-1539149753700.open;sidebar-scroll-1539149753700.setTarget(containerId='sidebar-bottom-content-1539149753700', targetId='trust-card-desc-block-1539149753700-3');strengthen-trust-render-script-1539149753700.track(type='trust_expand_click');">
                  <div spz-if="true">
                    <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                        <path fill="currentColor"
                          d="M11.966 4.548c-3.109 0-5.628 2.467-5.628 5.51 0 3.044 2.52 5.51 5.628 5.51 3.109 0 5.628-2.466 5.628-5.51 0-3.043-2.52-5.51-5.628-5.51m-6.5 7.626V7.087a2.69 2.69 0 0 0-.21.008c1.153-2.504 3.721-4.247 6.71-4.247 2.99 0 5.559 1.743 6.712 4.247a2.677 2.677 0 0 0-.212-.008v5.087c1.436 0 2.6-1.14 2.6-2.544 0-.954-.537-1.785-1.33-2.22C18.616 4.26 15.565 2 11.965 2c-3.599 0-6.65 2.261-7.768 5.41a2.534 2.534 0 0 0-1.331 2.22c0 1.405 1.163 2.544 2.6 2.544m12.116 2.916a8.3 8.3 0 0 1-5.616 2.167 8.3 8.3 0 0 1-5.608-2.16C3.728 16.424 2 18.783 2 21.987h20c0-3.21-1.76-5.572-4.418-6.896">
                        </path>
                      </svg> </div>
                  </div>
                  <div class="trust-thumbnail-desc-title">Customer Service</div> <svg xmlns="http://www.w3.org/2000/svg" class="icon_arrow_right_trust" width="12" height="12" viewBox="0 0 12 12" fill="none">
                    <path
                      d="M7.62392 6.4489C7.85824 6.21459 7.85824 5.83468 7.62393 5.60037L4.44195 2.41839C4.3248 2.30124 4.13485 2.30124 4.01769 2.41839L3.8692 2.56689C3.75204 2.68404 3.75204 2.87399 3.8692 2.99115L6.90264 6.0246L3.86912 9.05812C3.75196 9.17528 3.75196 9.36523 3.86912 9.48239L4.01761 9.63088C4.13477 9.74804 4.32472 9.74804 4.44187 9.63088L7.62392 6.4489Z"
                      fill="#292929"></path>
                  </svg>
                </div>
              </div>
            </div> <spz-custom-anchor-scroll id="sidebar-scroll-1539149753700" layout="logic" class="i-spzhtml-element i-spzhtml-layout-logic i-spzhtml-built i-spzhtml-layout" i-spzhtml-layout="logic"></spz-custom-anchor-scroll> <ljs-sidebar
              id="trust-sidebar-1539149753700" class="trust-sidebar" layout="nodisplay" side="bottom" disable-unmount="" @open="sidebar-scroll-1539149753700.scrollToTarget">
              <div class="trust-sidebar-cancel trust-card-big-title" @tap="trust-sidebar-1539149753700.close"> <svg class="icon_security_trust" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="currentColor">
                  <path fill-rule="evenodd" clip-rule="evenodd"
                    d="M9.99932 0C10.5736 0 11.1307 0.184885 11.5792 0.524258L12.0909 0.911325C13.4831 1.96508 15.0052 2.85514 16.6239 3.56198L17.9248 4.13095C18.3719 4.32298 18.7485 4.63668 19.0065 5.03203C19.2644 5.42739 19.3921 5.88649 19.3732 6.35077C18.9684 14.8758 13.0391 18.7013 11.0849 19.7312C10.4069 20.0896 9.59169 20.0896 8.91232 19.7312C6.95805 18.7 1.03164 14.8731 0.626913 6.32479C0.607503 5.85814 0.736181 5.39668 0.996373 4.99983C1.25657 4.60299 1.63636 4.28894 2.08683 4.09813L3.31114 3.57292C4.97349 2.85777 6.53548 1.94994 7.96121 0.870293L8.41942 0.524258C8.86789 0.184885 9.42506 0 9.99932 0ZM7.19446 9.35226C7.43734 9.34797 7.67239 9.43812 7.85011 9.60372L9.12261 10.875L12.1639 7.83623C12.3416 7.67063 12.5766 7.58047 12.8195 7.58476C13.0624 7.58904 13.2941 7.68743 13.4659 7.8592C13.6377 8.03096 13.736 8.2627 13.7403 8.50557C13.7446 8.74845 13.6545 8.98351 13.4889 9.16123L9.78511 12.8637C9.60933 13.0393 9.37105 13.1379 9.12261 13.1379C8.87418 13.1379 8.63589 13.0393 8.46011 12.8637L6.52511 10.9287C6.35951 10.751 6.26936 10.5159 6.27364 10.2731C6.27793 10.0302 6.37632 9.79846 6.54809 9.6267C6.71985 9.45493 6.95158 9.35654 7.19446 9.35226Z"
                    fill="currentColor"></path>
                </svg> <span class="trust-title">Security and Service</span> <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">
                  <path fill-rule="evenodd" clip-rule="evenodd"
                    d="M1.93064 17.1473C1.81348 17.2644 1.81348 17.4544 1.93064 17.5715L2.83502 18.4759C2.95217 18.5931 3.14212 18.5931 3.25928 18.4759L9.91177 11.8234L16.6153 18.527C16.7325 18.6442 16.9225 18.6442 17.0396 18.527L17.944 17.6226C18.0611 17.5055 18.0611 17.3155 17.944 17.1984L11.2404 10.4948L17.8929 3.84229C18.0101 3.72513 18.0101 3.53518 17.8929 3.41802L16.9885 2.51365C16.8714 2.39649 16.6814 2.39649 16.5643 2.51365L9.91177 9.16616L3.31035 2.56474C3.19319 2.44758 3.00325 2.44758 2.88609 2.56474L1.98171 3.46911C1.86456 3.58627 1.86456 3.77622 1.98171 3.89337L8.58313 10.4948L1.93064 17.1473Z"
                    fill="#707070"></path>
                </svg> </div>
              <div id="sidebar-bottom-content-1539149753700" class="sidebar-bottom-content">
                <div id="trust-open-card" class="trust-open-card trust-card-border">
                  <div id="trust-card-desc-block-1539149753700-0" class="trust-card-desc-block" key="payment_setting">
                    <div class="trust-card-desc-title">
                      <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon_title_trust">
                          <g clip-path="url(#clip0_2533_19421)">
                            <path
                              d="M18.5653 9.98893C18.8533 9.78627 19.3146 9.78359 19.6026 9.98893C19.6026 9.98893 20.3706 10.6023 21.3253 11.0103V3.61827C21.3253 3.26094 21.0399 2.97559 20.6879 2.97559H0.626594C0.274586 2.97559 -0.0107422 3.26359 -0.0107422 3.61827V17.2689C-0.0107422 17.6263 0.274586 17.9116 0.626594 17.9116H14.1626C13.9279 17.5516 13.8533 17.0343 13.8533 16.6209V11.5543C13.8533 11.3169 14.0373 11.1676 14.2666 11.2183C14.2666 11.2183 14.8266 11.3649 15.3466 11.3649C16.8346 11.3649 18.5653 9.98895 18.5653 9.98895V9.98893ZM7.88259 9.80494H2.76259C2.40791 9.80494 2.12259 9.51694 2.12259 9.16494C2.12259 8.81026 2.41059 8.52493 2.76259 8.52493H7.88259C8.23727 8.52493 8.52259 8.81293 8.52259 9.16494C8.52259 9.51694 8.23459 9.80494 7.88259 9.80494ZM2.75992 6.3916C2.40791 6.3916 2.12259 6.1036 2.12259 5.75159C2.12259 5.39691 2.40791 5.11159 2.75992 5.11159H18.5519C18.9039 5.11159 19.1893 5.39959 19.1893 5.75159C19.1893 6.10627 18.9039 6.3916 18.5519 6.3916H2.75992Z"
                              fill="currentColor"></path>
                            <path
                              d="M23.4559 12.0668H22.5412C21.2052 12.0668 19.7092 10.8668 19.7092 10.8668C19.4212 10.6615 18.9572 10.6669 18.6692 10.8668C18.6692 10.8668 17.1732 12.0668 15.8372 12.0668H14.9225C14.6879 12.0668 14.4985 12.2588 14.4985 12.4935V16.7842C14.4985 17.2535 14.7972 17.8722 15.1652 18.1655L18.5225 20.8242C18.8905 21.1149 19.4879 21.1149 19.8586 20.8242L23.2159 18.1655C23.5839 17.8749 23.8826 17.2562 23.8826 16.7842V12.4935C23.8826 12.2588 23.6906 12.0668 23.4559 12.0668ZM21.3386 14.7922L19.3866 17.2748C19.0026 17.7655 18.3199 17.7788 17.9172 17.3068L17.0532 16.2988C16.8986 16.1202 16.9199 15.8508 17.0986 15.6961C17.2772 15.5415 17.5466 15.5628 17.7012 15.7415L18.5652 16.7495C18.6186 16.8135 18.6639 16.8135 18.7172 16.7442L20.6692 14.2615C20.8159 14.0775 21.0826 14.0428 21.2692 14.1895C21.4506 14.3388 21.4826 14.6082 21.3386 14.7922Z"
                              fill="currentColor"></path>
                          </g>
                          <defs>
                            <clipPath id="clip0_2533_19421">
                              <rect width="24" height="24" fill="currentColor"></rect>
                            </clipPath>
                          </defs>
                        </svg> </div> <span class="trust-thumbnail-title">Payment Security</span>
                    </div>
                    <div class="trust-card-desc-text"> NioPets is committed to your secure shopping experience. We offer safe and trusted payment options to protect your transactions. Your payment information is shared only with our certified payment
                      service providers, who are dedicated to maintaining the confidentiality of your details. </div>
                    <div spz-if="true" class="trust-card-desc-img"> <ljs-img key="0" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/329db58ac0f7bf6e446ea93aa338f25d.svg" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="1" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/18345efd4db8552be9c72c41c27ea6e7.svg" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="2" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/50927f9a9805ee57dd3971a24ab13037.svg" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="3" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/b068c5902e07857d5251e11f8198ad80.svg" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="4" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/b823bc7dd65f1a58d949dfb47916e4b2.svg" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="5" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/3cc7bc0c09f7f0fb19581a21abd4cd53.svg" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img> </div>
                  </div>
                  <div id="trust-card-desc-block-1539149753700-1" class="trust-card-desc-block" key="privacy_setting">
                    <div class="trust-card-desc-title">
                      <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                          <path fill="currentColor"
                            d="M19.505 15.49h-3.174a.712.712 0 0 1-.082-.338v-.675c0-.322.199-.584.444-.584h1.05c.243 0 .441.26.441.582 0 .254.157.46.352.46.194 0 .351-.206.351-.46 0-.83-.512-1.504-1.143-1.504h-1.051c-.632 0-1.145.675-1.145 1.506v.675c0 .114.01.227.032.338h-1.138a.674.674 0 0 0-.66.685v4.614c0 .378.295.685.66.685h5.063c.364 0 .66-.307.66-.685v-4.614a.672.672 0 0 0-.66-.685m-2.193 2.994v1.864a.272.272 0 1 1-.543 0v-1.864a.9.9 0 0 1-.6-.86c0-.499.39-.903.872-.903.481 0 .872.404.872.904 0 .4-.252.74-.601.859m3.6-1.075v3.663a.794.794 0 0 1-.329.643h1.097c0-1.546-.127-3.008-.769-4.306">
                          </path>
                          <path fill="currentColor"
                            d="M16.905 7.214a4.863 4.863 0 0 0-5.79-4.773A4.81 4.81 0 0 0 7.26 6.366a4.863 4.863 0 0 0 3.817 5.61.03.03 0 0 1 .016.05.03.03 0 0 1-.02.008c-4.915.477-8.76 4.613-8.775 9.65a.03.03 0 0 0 .03.03h10.978c.027 0-.124-.033-.144-.051-.162-.146-.334-.356-.334-.591l.07-5.33a.825.825 0 0 1 .826-.825h1.203a.03.03 0 0 0 .03-.034c-.047-.281-.07-1.728.574-2.141a.03.03 0 0 0 .014-.029.03.03 0 0 0-.02-.025c-.782-.287-1.645-.534-2.568-.641a.03.03 0 0 1-.002-.06 4.861 4.861 0 0 0 3.95-4.773">
                          </path>
                        </svg> </div> <span class="trust-thumbnail-title">Privacy Protection</span>
                    </div>
                    <div class="trust-card-desc-text"> At NioPets, your privacy is our priority. We employ internationally recognized encryption methods for all network transmissions, ensuring the utmost security for your private data during your
                      shopping journey. This includes the protection of your shipping address, credit card information, shopping details, and more. Shop with confidence, knowing your privacy is safeguarded with us. </div>
                    <div spz-if="true" class="trust-card-desc-img"> <ljs-img key="0" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/56795daf3e1b2e526fabf1590368afa9.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="1" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/9ddfdb73309f0a625d407a0f6afb9bbd.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="2" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/9050730bedd367f8c8e0a42138be79d2.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="3" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/aaa433c827216a6bb95fb68b5de4aeea.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="4" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/42fd2cf01ff65e2e4100dbade836fd55.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="5" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/02f47fad8c079ca26451786572a3b8f7.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="6" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/6214e504e3a39e338cbacbad95cc91a6.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="7" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/93631da9d6bb8df3f15abd313a7dbe52.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="8" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/558fc0b3261edf2e60803e08a0653681.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="9" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/200dbfe3761c90a067dd54a58e0bb43e.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="10" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/9211bbdc27660ab7dafeed6b7cebe42b.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img> </div>
                  </div>
                  <div id="trust-card-desc-block-1539149753700-2" class="trust-card-desc-block" key="logitics_setting">
                    <div class="trust-card-desc-title">
                      <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                          <path fill="currentColor"
                            d="M10.469 5.344c.094.375.187.75.187 1.125 0 .656-.094 1.218-.375 1.687-.281.563-.562 1.031-.937 1.406-.375.376-.844.75-1.406.938-.563.188-1.125.375-1.688.375-.656 0-1.219-.094-1.687-.375-.563-.187-1.032-.562-1.407-.937-.375-.376-.75-.844-.937-1.407-.281-.562-.375-1.125-.375-1.687V6.28c-.375.282-.469.563-.657.844A3.37 3.37 0 0 0 1 8.156V19.22c0 .281.094.468.188.656.187.188.375.188.562.188h.469c0-.938.187-1.594.656-2.063.469-.469 1.125-.656 1.969-.656.937 0 1.593.281 1.968.75.47.468.657 1.125.657 1.968h5.812c.188 0 .375-.093.563-.187.187-.187.281-.375.281-.562V5.53h-3.656z">
                          </path>
                          <path fill="currentColor"
                            d="M5.031 18.656c-.375 0-.75.094-.937.375-.282.282-.375.563-.375.938s.094.656.375.937c.281.282.562.375.937.375s.75-.093.938-.375c.281-.281.375-.562.375-.937s-.094-.75-.375-.938c-.282-.187-.563-.375-.938-.375m14.532.094c.375 0 .656.094.937.375s.375.563.375.938-.094.75-.375.937c-.281.281-.562.375-.937.375s-.75-.094-.938-.375c-.281-.281-.375-.562-.375-.937s.094-.657.375-.938c.281-.281.563-.375.938-.375">
                          </path>
                          <path fill="currentColor"
                            d="M23.406 15c-.093-.844-.281-1.594-.562-2.437a8 8 0 0 0-1.219-2.344A3.994 3.994 0 0 0 20.5 9.188c-.469-.282-.937-.563-1.406-.75-.469-.188-1.032-.282-1.5-.376-.469-.093-1.032-.093-1.5-.093-.188 0-.282.093-.375.375-.094.187-.188.375-.188.562v10.219c0 .281.094.469.281.656a.851.851 0 0 0 .657.282h.375c0-.375.093-.657.187-1.032.094-.281.282-.562.563-.843.187-.282.468-.47.843-.563.282-.187.657-.187 1.032-.187s.75.093 1.031.187c.375.094.656.281.844.469.281.187.468.468.562.843.188.375.188.75.188 1.22h.843c.094 0 .188 0 .188-.095.094-.093.094-.187.094-.28 0-.095.093-.282.093-.376v-1.968c.282-.844.188-1.594.094-2.438m-1.687-.281h-4.407c-.093 0-.187-.094-.28-.188-.095-.094-.188-.187-.188-.281v-3.844c0-.187.093-.281.187-.469a.716.716 0 0 1 .469-.187h1.031c.282 0 .563.094.938.188.281.093.656.28.937.562.469.469.75 1.031.938 1.688.187.656.375 1.312.468 1.968v.188c.094.281 0 .375-.093.375M6.156 3C4.188 3 2.594 4.594 2.594 6.469c0 1.968 1.594 3.468 3.562 3.468A3.46 3.46 0 0 0 9.625 6.47 3.46 3.46 0 0 0 6.156 3m1.688 3.188-2.25 1.968-1.219-1.125V5.72l1.219 1.125 2.25-2.063z">
                          </path>
                        </svg> </div> <span class="trust-thumbnail-title">Efficient and Safe Logitics</span>
                    </div>
                    <div class="trust-card-desc-text"> At NioPets, we ensure secure and efficient logistics. Track your order in real-time right from the order page. For added security, consider our optional "Shipping Protection" service. If your
                      purchase encounters any delays, damage, or loss during delivery, rest assured, our insurance will cover your losses.
                      <a target="_blank" rel="noreferrer" href="https://www.seel.com/terms/shipping-protection-for-customer">learn more</a> </div>
                    <div spz-if="true" class="trust-card-desc-img"> <ljs-img key="0" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/4e628a598fd199505f3299e1184bb0c9.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="1" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/ed09bd56b0a33c981a6bbdbcf97e348f.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="2" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/a1b992c66e86603a67a5fe1b1a4b0570.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="3" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/2cb1039ea5e997169f3d8f72ec5ebec9.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="4" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/11e0aef019c2bad92cd867abff3e72ad.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img><ljs-img key="5" width="55" height="35"
                        class="icon-trust-block i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt i-spzhtml-layout-fixed i-spzhtml-layout-size-defined spz-unresolved i-spzhtml-unresolved" layout="fixed"
                        src="//img.fantaskycdn.com/oss/operation/1d4ed10d4d6da3dffe658be5b52df89f.png" object-fit="contain" alt="trust-img" i-spzhtml-layout="fixed" style="width: 55px; height: 35px;"></ljs-img> </div>
                  </div>
                  <div id="trust-card-desc-block-1539149753700-3" class="trust-card-desc-block" key="customer_setting">
                    <div class="trust-card-desc-title">
                      <div spz-if="true"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="icon_title_trust">
                          <path fill="currentColor"
                            d="M11.966 4.548c-3.109 0-5.628 2.467-5.628 5.51 0 3.044 2.52 5.51 5.628 5.51 3.109 0 5.628-2.466 5.628-5.51 0-3.043-2.52-5.51-5.628-5.51m-6.5 7.626V7.087a2.69 2.69 0 0 0-.21.008c1.153-2.504 3.721-4.247 6.71-4.247 2.99 0 5.559 1.743 6.712 4.247a2.677 2.677 0 0 0-.212-.008v5.087c1.436 0 2.6-1.14 2.6-2.544 0-.954-.537-1.785-1.33-2.22C18.616 4.26 15.565 2 11.965 2c-3.599 0-6.65 2.261-7.768 5.41a2.534 2.534 0 0 0-1.331 2.22c0 1.405 1.163 2.544 2.6 2.544m12.116 2.916a8.3 8.3 0 0 1-5.616 2.167 8.3 8.3 0 0 1-5.608-2.16C3.728 16.424 2 18.783 2 21.987h20c0-3.21-1.76-5.572-4.418-6.896">
                          </path>
                        </svg> </div> <span class="trust-thumbnail-title">Customer Service</span>
                    </div>
                    <div class="trust-card-desc-text"> If you encounter problems during or after shopping, don't hesitate to reach out. NioPets's customer service team is here to assist you. <a target="_blank" rel="noreferrer" href="/">learn more</a>
                    </div>
                  </div>
                </div>
              </div>
            </ljs-sidebar>
          </div>
        </div>
      </div>
    </ljs-render>
  </div>
  <div class="plugin__buy_on_others empty-hidden"></div>
  <input name="product_id" type="hidden" value="a8a8d0d2-d32d-4a50-a0fc-ad86cc8b51d2"><input name="variant_id" type="hidden" value="20219a12-55fa-46a3-ab7a-a375e3885a8d"><input name="note" type="hidden">
</form>

POST

<form id="footer__newsletter__form" class="footer__newsletter__form type-text-font-family relative flex items-center md:w-full text-base" action-xhr="/api/customers/newsletters" method="POST" custom-validation="show-first-on-submit"
  @submiterror="footer__newsletter__error-ajax.rerender(data=event);footer__newsletter__error-ajax.toggleClass(class='hidden', force=false);">
  <input class="footer__newsletter__input clear flex-1 block lg:w-full px-4 lg:px-3" id="footer__newsletter__input" type="text" name="email" placeholder="Enter your email" required="" pattern="([A-Za-z0-9_\-.])+@([A-Za-z0-9_\-.])+\.([A-Za-z]{2,4})"
    @input-debounced="footer__newsletter__error-ajax.toggleClass(class='hidden', force=true);">
  <button class="footer__newsletter__btn type-text-font-family m-0 flex items-center border-none leading-none" type="submit">
    <span class="md:hidden">Subscribe</span>
    <svg class="lg:hidden" width="20" height="6" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
      <path opacity=".01" fill="currentColor" d="M0 0h20v6H0z"></path>
      <path fill="currentColor" d="M0 2h14v2H0z"></path>
      <path fill-rule="evenodd" clip-rule="evenodd" d="m20 3-6 3V0l6 3Z" fill="currentColor"></path>
    </svg>
  </button>
  <div class="footer__newsletter__error-tip" validation-for="footer__newsletter__input" visible-when-invalid="patternMismatch" hidden=""> Please enter a valid email address. </div>
  <div class="footer__newsletter__error-tip" validation-for="footer__newsletter__input" visible-when-invalid="valueMissing" hidden=""> Please enter your email address. </div>
  <spz-render id="footer__newsletter__error-ajax" class="footer__newsletter__error-tip hidden i-spzhtml-layout-container i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt spz-unresolved i-spzhtml-unresolved" layout="container" manual=""
    i-spzhtml-layout="container">
    <template>
      <div spz-if="${data.errors &amp;&amp; data.errors.length > 0}"> ${data.errors &amp;&amp; data.errors[0]} </div>
    </template>
  </spz-render>
  <div class="footer__newsletter__success-tip flex-shrink-0 body-plus-2"> Thanks for subscribing </div>
</form>

<form>
  <div class="quick-shop-content rounded-global-small">
    <div class="quick-shop-inner-content">
      <spz-variants name="quick-shop-variant" id="quick-shop-variants" class="pointer-events-none" layout="container" template="quick-shop-variant-template" spz-if="${product_options &amp;&amp; product_options.length > 0}"
        @mouseout="${mouse_out_event}" interact="hover" interference="" ${mouse_over_event}=""></spz-variants>
      <button class="relative mt-5 lg:mt-6 button-primary flex items-center justify-center body-plus-2  type-text-font-family rounded-btn quick-shop_atc_btn" type="button" role="addToCart" data-track="click" data-track-content="add_to_cart"
        data-track-source="add_to_cart">
        <span role="content">${statusLan}</span>
        <spz-render id="quick-shop-btn-price" layout="container" template="quick-shop-button-price-template" manual=""></spz-render>
        <div class="loading items-center justify-center absolute inset-0" role="loading" show="">
          <div class="loading-bounce"></div>
        </div>
      </button>
    </div>
  </div>
</form>

<form class="">
  <div class="zb-flex">
    <a href="${product.url}?${toQuery({ aid: 'smart_recommend.2.' + data.id, ifb: product.ifb || '', cfb: product.cfb || '', scm: product.scm || data.scm || '', ssp: data.ssp || '' })}" impr="1" imprevt="1" class="zb-w-[132px] zb-mr-4 rtl:zb-ml-4 rtl:zb-mr-0" data-prdct="${product.id}" data-ifb="${product.ifb || ''}" data-cfb="${product.cfb || ''}" data-scm="${product.scm || data.scm || ''}" data-spm="${productIndex}"> <ljs-render layout="container" id="smart_cart_pop_image_${product.id}" template="smart_cart_pop_image_template" manual=""></ljs-render> </a>
    <div class="zb-flex zb-flex-col zb-flex-grow zb-justify-between">
      <div>
        <div class="zb-line-clamp-2 zb-text-sm zb-mb-2">${product.title}</div> <ljs-render layout="container" id="smart_cart_pop_price_${product.id}" template="smart_cart_pop_price_template" manual=""></ljs-render>
      </div>
      <div>
        <div class="zb-relative zb-w-full zb-cursor-pointer">
          <div class="zb-border zb-border-solid zb-border-[#eee] zb-px-3 zb-py-[10px] zb-flex zb-items-center zb-justify-between zb-font-semibold zb-text-sm zb-rounded-sm"
            @tap="smart_pop_variant-select-${product.id}.toggleClass(class=zb-rotate-180);smart_cart_pop_variant_${product.id}_mobile.toggleClass(class=zb-hidden);smart_cart_pop_variant_${product.id}_pc.toggleClass(class=smart_cart_pop_variant_pc_show,force=true);smart_cart_pop_variant_modal_${product.id}.open"
            spz-if="${!!(product.options &amp;&amp; product.options.length &amp;&amp; product.options.length > 0) &amp;&amp; data.config.variant_select_visible}"> <ljs-render manual="" layout="container" id="smart_cart_pop_variant_text_${product.id}"
              template="smart_cart_pop_variant_text_template"></ljs-render> <svg id="smart_pop_variant-select-${product.id}" width="12" height="8" class="zb-ml-2" viewBox="0 0 12 8" fill="none" xmlns="http://www.w3.org/2000/svg">
              <path
                d="M6.00002 7.06738C6.19244 7.06775 6.38498 6.99453 6.5318 6.84772C6.54504 6.83447 6.55769 6.82086 6.56973 6.8069L11.1251 2.25152C11.418 1.95863 11.418 1.48375 11.1251 1.19086C10.8322 0.897968 10.3573 0.897968 10.0645 1.19086L6.00003 5.25529L1.9356 1.19086C1.64271 0.897968 1.16784 0.897968 0.874943 1.19086C0.58205 1.48375 0.58205 1.95863 0.874943 2.25152L5.43033 6.8069C5.44237 6.82086 5.45502 6.83447 5.46826 6.84772C5.61507 6.99453 5.8076 7.06775 6.00002 7.06738Z"
                fill="#0A1533"></path>
            </svg> </div> <ljs-lightbox layout="nodisplay" disable-unmount="" class="smart_cart_pop_lightbox_pc" id="smart_cart_pop_variant_modal_${product.id}" @close="smart_pop_variant-select-${product.id}.toggleClass(class=zb-rotate-180);">
            <div id="smart_cart_pop_variant_${product.id}_pc" class="zb-hidden"><ljs-variants id="smart_cart_pop_variants_${product.id}"
                class="md:!zb-absolute md:zb-top-[50px] md:zb-w-full md:zb-left-0 md:zb-z-30 md:zb-bg-white zb-max-h-[280px] zb-overflow-y-auto md:zb-shadow-pop" layout="container" template="smart_cart_pop_variant_template"
                onclick="event.stopPropagation()" disabled-dj-event="" interference=""> </ljs-variants></div>
          </ljs-lightbox>
        </div>
        <div class="zb-mt-3"> <button product-id="${product.id}" id="smart_cart_pop_atc_btn_${product.id}"
            class="zb-flex zb-items-center zb-justify-center zb-w-full zb-text-white zb-py-[10px] zb-h-9 zb-text-xs zb-font-normal zb-border-none zb-rounded-[4px] smart_cart_pop_atc_btn_bg" type="button" role="addToCart"
            @tap="smart_cart_pop_loading_${product.id}.toggleClass(class=zb-hidden);smart_cart_pop_atc_${product.id}.toggleClass(class=zb-hidden);smart_cart_pop_atc_btn_${product.id}.toggleClass(class=zb-pointer-events-none);custom-func.addATCHook(activity_id='${data.id}',ifb='${product.ifb}',cfb='${product.cfb}',scm='${product.scm || data.scm}',ssp='${data.ssp}',spm='${data.spmBase}.${productIndex}')">
            <ljs-render layout="container" id="smart_cart_pop_atc_${product.id}" template="smart_cart_pop_atc_template" mamual="" class="notranslate"> </ljs-render>
            <div id="smart_cart_pop_added_${product.id}" class="zb-hidden"><span class="zb-flex zb-justify-center zb-gap-1"><svg width="14" height="15" viewBox="0 0 16 17" fill="none" xmlns="http://www.w3.org/2000/svg">
                  <path
                    d="M8 16.5006C3.58171 16.5006 0 12.9183 0 8.5C0 4.08171 3.58171 0.5 8 0.5C12.4183 0.5 16 4.08171 16 8.5C16 12.9183 12.4183 16.5006 8 16.5006ZM8 2.04344C4.21314 2.04344 1.54287 4.71371 1.54287 8.50057C1.54287 12.2874 4.21314 14.9577 8 14.9577C11.7869 14.9577 14.4571 12.2874 14.4571 8.50057C14.4571 4.71371 11.7869 2.04344 8 2.04344ZM7.26057 11.1909L7.12229 11.3286L7.09543 11.3017C7.02286 11.336 6.94286 11.3577 6.85714 11.3577C6.73543 11.3577 6.62857 11.3109 6.536 11.2463L6.52229 11.2594L6.45371 11.1909C6.45314 11.1903 6.45314 11.1903 6.45257 11.1897L4.09771 8.83486L4.90629 8.02686L6.85714 9.97771L11.1629 5.67143L11.9714 6.48L7.26171 11.1897C7.26114 11.1903 7.26114 11.1903 7.26057 11.1909Z"
                    fill="white"></path>
                </svg>Added</span></div>
            <div id="smart_cart_pop_loading_${product.id}" class="zb-hidden">
              <div class="smart_cart_pop_loading"></div>
            </div>
          </button> </div>
      </div>
    </div>
  </div>
  <div id="smart_cart_pop_variant_${product.id}_mobile" class="zb-hidden md:zb-hidden"><ljs-variants id="smart_cart_pop_variants_${product.id}"
      class="md:!zb-absolute md:zb-top-[50px] md:zb-w-full md:zb-left-0 md:zb-z-30 md:zb-bg-white zb-max-h-[280px] zb-overflow-y-auto md:zb-shadow-pop" layout="container" template="smart_cart_pop_variant_template" onclick="event.stopPropagation()"
      disabled-dj-event="" interference=""> </ljs-variants></div>
</form>

POST //translate.googleapis.com/translate_voting?client=te

<form id="goog-gt-votingForm" action="//translate.googleapis.com/translate_voting?client=te" method="post" target="votingFrame" class="VIpgJd-yAWNEb-hvhgNd-aXYTce"><input type="text" name="sl" id="goog-gt-votingInputSrcLang"><input type="text"
    name="tl" id="goog-gt-votingInputTrgLang"><input type="text" name="query" id="goog-gt-votingInputSrcText"><input type="text" name="gtrans" id="goog-gt-votingInputTrgText"><input type="text" name="vote" id="goog-gt-votingInputVote"></form>

Text Content

${(function(){ const get_random_six_digits = () => { return
Math.random().toString().slice(-6) }; const wholesale_enabled = false; const
setting_product_image_display = "100%"; const product_image = data.image; const
secondary_image = data.secondImage; const image_width = product_image.width; let
image_height = product_image.height; if(setting_product_image_display ==
'100%'){ image_height = image_width }else if(setting_product_image_display ==
'133.33%'){ image_height = image_width * 1.3333; }; const product_image_hover_on
= true && !!secondary_image.src; const has_save_label = true &&
((+data.compare_at_price) > (+data.price)); const is_single_variant =
data.variants.length == 1; const min_price_variant_href =
(data.min_price_variant && data.min_price_variant.available) ?
data.min_price_variant.withinUrl : data.withinUrl; const retail_price_max =
data.retail_price_max || data.compare_at_price_max; const THUMBNAILS_MAX_SIZE =
3; const thumbnails = data.thumbVariants.slice(0, THUMBNAILS_MAX_SIZE); const
image_wrap_id = 'image_wrap_' + get_random_six_digits(); const image_carousel_id
= 'image_carousel_' + get_random_six_digits(); const thumbnails_selector_id =
'thumbnails_selector_' + get_random_six_digits(); const form_id = 'form_' +
get_random_six_digits(); const mixed_wholesale = data.mixed_wholesale; return `

${ data.available ? `${ (+data.compare_at_price > +data.price) ? `Save ` : '' }`
: "Sold out" }
Mixed Lot


${DATA.TITLE}

${ data.price_min != data.price_max ? `from ` : ` ` }
+${data.remainInvisibleThumbCount} ` })()}

由 翻译强力驱动
English,한국어,简体中文,日本語,Português,العربية,Русский,Español,Français,Italiano,Deutsch,Polski,Nederlands,svenska,norsk,čeština,Suomalainen,Ελληνικά,Magyar,Український,Türkçe,Hrvatski
jezik

GBP
 * United States Dollars (USD)
 * Euro (EUR)
 * United Kingdom Pounds (GBP)
 * Canadian Dollars (CAD)
 * Croatian Kuna (HRK)
 * Danish Kroner (DKK)
 * Czech Koruny (CZK)
 * Egyptian Pound (EGP)
 * Hong Kong Dollars (HKD)
 * Israeli New Shekel (NIS)
 * Japanese Yen (JPY)
 * Kuwaiti Dinar (KWD)
 * Mexican Pesos (MXN)
 * New Zealand Dollars (NZD)
 * Netherlands Antillean Guilder (ANG)
 * Norwegian Kroner (NOK)
 * Polish Zlotych (PLN)
 * Romanian Lei (RON)
 * Singapore Dollars (SGD)
 * South Korean Won (KRW)
 * Swedish Kronor (SEK)
 * Swiss Francs (CHF)
 * Turkish Lira (TRY)
 * United Arab Emirates Dirham (AED)
 * Australian Dollars (AUD)
 * Colombian Peso (COP)

 * Log in
 * Create an account

${data.data && data.data.count}

 * Home
 * For Cat
   All Products
   Cat Bed
   Hair Cleaner
   Pet Toy
   Water Fountain
   Bowl
   Can Opener
   
   
   SPACE CAPSULE CAT BED TRANSPARNT CAT HOUSE
   
   from £39.00
 * For Dog
 * Tracking Order
 * More links
   ${(function(){ const formatLinks = (links) => { return links.map(link => {
   link.tag = tags[link.title.toUpperCase()] || {}; link.target_attr =
   link.target == '_blank' ? 'target="_blank"' : ''; link.href_attr = link.url ?
   `href="${link.url}"` : ''; if(link.children && link.children.length){
   link.children = formatLinks(link.children); } return link; }) }; const tags =
   "{}"; let linkList = [ { id: 62437695, title: "Home", url: "\/", target: "",
   levels: 0, product0: { id: (null) }, children: [ ] }, { id: 62437697, title:
   "For Cat", url: "\/collections\/pet-supplies", target: "", levels: 1,
   product0: { id: ("47cc8ff4-59d2-4e63-9f00-7be431ec923c") }, children: [ {
   title: "All Products", url: "\/collections\/pet-supplies", target: "",
   levels: 0, children: [ ] }, { title: "Cat Bed", url:
   "\/collections\/cat-bed", target: "", levels: 0, children: [ ] }, { title:
   "Hair Cleaner", url: "\/collections\/pet-hair-cleaner", target: "", levels:
   0, children: [ ] }, { title: "Pet Toy", url: "\/collections\/pet-toy",
   target: "", levels: 0, children: [ ] }, { title: "Water Fountain", url:
   "\/collections\/pet-water-fountain", target: "", levels: 0, children: [ ] },
   { title: "Bowl", url: "\/collections\/bowl", target: "", levels: 0, children:
   [ ] }, { title: "Can Opener ", url: "\/collections\/opener-lid", target: "",
   levels: 0, children: [ ] }, ] }, { id: 62437713, title: "For Dog", url:
   "\/collections\/for-dog", target: "", levels: 0, product0: { id: (null) },
   children: [ ] }, { id: 62437715, title: "Tracking Order", url:
   "\/pages\/tracking-order", target: "", levels: 0, product0: { id: (null) },
   children: [ ] }, ].slice(offset); linkList = formatLinks(linkList); const
   hasChild = linkList.some(link => !!(link.children && link.children.length ||
   link.product0.id)); return `
    * ${link.title} ${link.tag.label}
   
    * ${second_link.title} ${second_link.tag.label} ${third_links.title}
      ${third_links.tag.label}
   
   
    * ${link.title} ${link.tag.label}
   
   ` })()}

 * Home
 * For Cat
   All Products
   Cat Bed
   Hair Cleaner
   Pet Toy
   Water Fountain
   Bowl
   Can Opener
   
   
   SPACE CAPSULE CAT BED TRANSPARNT CAT HOUSE
   
   from £39.00
 * For Dog
 * Tracking Order
 * More links
   ${(function(){ const formatLinks = (links) => { return links.map(link => {
   link.tag = tags[link.title.toUpperCase()] || {}; link.target_attr =
   link.target == '_blank' ? 'target="_blank"' : ''; link.href_attr = link.url ?
   `href="${link.url}"` : ''; if(link.children && link.children.length){
   link.children = formatLinks(link.children); } return link; }) }; const tags =
   "{}"; let linkList = [ { id: 62437695, title: "Home", url: "\/", target: "",
   levels: 0, product0: { id: (null) }, children: [ ] }, { id: 62437697, title:
   "For Cat", url: "\/collections\/pet-supplies", target: "", levels: 1,
   product0: { id: ("47cc8ff4-59d2-4e63-9f00-7be431ec923c") }, children: [ {
   title: "All Products", url: "\/collections\/pet-supplies", target: "",
   levels: 0, children: [ ] }, { title: "Cat Bed", url:
   "\/collections\/cat-bed", target: "", levels: 0, children: [ ] }, { title:
   "Hair Cleaner", url: "\/collections\/pet-hair-cleaner", target: "", levels:
   0, children: [ ] }, { title: "Pet Toy", url: "\/collections\/pet-toy",
   target: "", levels: 0, children: [ ] }, { title: "Water Fountain", url:
   "\/collections\/pet-water-fountain", target: "", levels: 0, children: [ ] },
   { title: "Bowl", url: "\/collections\/bowl", target: "", levels: 0, children:
   [ ] }, { title: "Can Opener ", url: "\/collections\/opener-lid", target: "",
   levels: 0, children: [ ] }, ] }, { id: 62437713, title: "For Dog", url:
   "\/collections\/for-dog", target: "", levels: 0, product0: { id: (null) },
   children: [ ] }, { id: 62437715, title: "Tracking Order", url:
   "\/pages\/tracking-order", target: "", levels: 0, product0: { id: (null) },
   children: [ ] }, ].slice(offset); linkList = formatLinks(linkList); const
   hasChild = linkList.some(link => !!(link.children && link.children.length ||
   link.product0.id)); return `
    * ${link.title} ${link.tag.label}
   
    * ${second_link.title} ${second_link.tag.label} ${third_links.title}
      ${third_links.tag.label}
   
   
    * ${link.title} ${link.tag.label}
   
   ` })()}



English,한국어,简体中文,日本語,Português,العربية,Русский,Español,Français,Italiano,Deutsch,Polski,Nederlands,svenska,norsk,čeština,Suomalainen,Ελληνικά,Magyar,Український,Türkçe,Hrvatski
jezik

GBP
 * United States Dollars (USD)
 * Euro (EUR)
 * United Kingdom Pounds (GBP)
 * Canadian Dollars (CAD)
 * Croatian Kuna (HRK)
 * Danish Kroner (DKK)
 * Czech Koruny (CZK)
 * Egyptian Pound (EGP)
 * Hong Kong Dollars (HKD)
 * Israeli New Shekel (NIS)
 * Japanese Yen (JPY)
 * Kuwaiti Dinar (KWD)
 * Mexican Pesos (MXN)
 * New Zealand Dollars (NZD)
 * Netherlands Antillean Guilder (ANG)
 * Norwegian Kroner (NOK)
 * Polish Zlotych (PLN)
 * Romanian Lei (RON)
 * Singapore Dollars (SGD)
 * South Korean Won (KRW)
 * Swedish Kronor (SEK)
 * Swiss Francs (CHF)
 * Turkish Lira (TRY)
 * United Arab Emirates Dirham (AED)
 * Australian Dollars (AUD)
 * Colombian Peso (COP)

 * Log in
 * Create an account

${data.data && data.data.count}


${(function(){ if (data === undefined || typeof data !== 'string' || data == '')
return ''; const keyword = encodeURIComponent(data); return `
View more
Your search for '${data}' did not yield any results.

` })()}

 * Home
 * For Cat
   * For Cat
   * All Products
   * Cat Bed
   * Hair Cleaner
   * Pet Toy
   * Water Fountain
   * Bowl
   * Can Opener
 * For Dog
 * Tracking Order
   
   English,한국어,简体中文,日本語,Português,العربية,Русский,Español,Français,Italiano,Deutsch,Polski,Nederlands,svenska,norsk,čeština,Suomalainen,Ελληνικά,Magyar,Український,Türkçe,Hrvatski
   jezik
   
   GBP
    * United States Dollars (USD)
    * Euro (EUR)
    * United Kingdom Pounds (GBP)
    * Canadian Dollars (CAD)
    * Croatian Kuna (HRK)
    * Danish Kroner (DKK)
    * Czech Koruny (CZK)
    * Egyptian Pound (EGP)
    * Hong Kong Dollars (HKD)
    * Israeli New Shekel (NIS)
    * Japanese Yen (JPY)
    * Kuwaiti Dinar (KWD)
    * Mexican Pesos (MXN)
    * New Zealand Dollars (NZD)
    * Netherlands Antillean Guilder (ANG)
    * Norwegian Kroner (NOK)
    * Polish Zlotych (PLN)
    * Romanian Lei (RON)
    * Singapore Dollars (SGD)
    * South Korean Won (KRW)
    * Swedish Kronor (SEK)
    * Swiss Francs (CHF)
    * Turkish Lira (TRY)
    * United Arab Emirates Dirham (AED)
    * Australian Dollars (AUD)
    * Colombian Peso (COP)

Log in
(function(){ let w = window.innerWidth; function setHeaderCssVar() { const
headerEle = document.getElementById('shoplaza-section-header'); if(!headerEle){
return }; document.body.style.setProperty('--window-height',
`${window.innerHeight}px`); document.body.style.setProperty('--header-height',
`${headerEle.clientHeight}px`); const mdScorllHideEle =
headerEle.querySelector('.header__mobile .header__scroll_hide'); if
(mdScorllHideEle) {
document.body.style.setProperty('--header-scroll-hide-height-md',
`${mdScorllHideEle.clientHeight}px`); } const pcScorllHideEle =
headerEle.querySelector('.header__desktop .header__scroll_hide'); if
(pcScorllHideEle) {
document.body.style.setProperty('--header-scroll-hide-height-pc',
`${pcScorllHideEle.clientHeight}px`); } } function handlResize() { if(w ==
window.innerWidth){return}; w = window.innerWidth; setHeaderCssVar(); };
function init(){ setHeaderCssVar(); window.removeEventListener('resize',
window._theme_header_listener) window._theme_header_listener = handlResize;
window.addEventListener('resize', window._theme_header_listener); } init();
})();

7/14
${data.index + 1}/${data.total}
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 

   ${Array(data.total).fill(0).map((num, index) => `
 * 
   `).join('')}




CAT SELF GROOMER CORNER SCRATCHER

${function() { const variantData = data.variant ||
{"id":"20219a12-55fa-46a3-ab7a-a375e3885a8d","product_id":"a8a8d0d2-d32d-4a50-a0fc-ad86cc8b51d2","title":"White+Green","weight_unit":"kg","inventory_quantity":981,"sku":"","barcode":"","position":3,"option1":"White+Green","option2":"","option3":"","note":"","image":{"src":"\/\/img.fantaskycdn.com\/7f7f91a1fe01f17f1867e16825eb18c2.jpeg","path":"7f7f91a1fe01f17f1867e16825eb18c2.jpeg","width":1170,"height":1170,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":24,"min_quantity":1}],"weight":"0.04","compare_at_price":"8","price":"24","retail_price":"8","available":true,"url":"\/products\/cat-self-groomer-corner-scratcher?variant=20219a12-55fa-46a3-ab7a-a375e3885a8d","available_quantity":999999999,"options":[{"name":"color","value":"White+Green"}],"off_ratio":0,"flashsale_info":[],"sales":47};
const saveType = "amount"; const productLabelDiscountOn = true; return `
-
${saveType == 'percentage' ? `-${variantData.off_ratio}%` : `-` }
`; }()}
£24.00
Choose 2 piece(s) to enjoy bundle sales price for £38.7

Color:  ${function(){ const optName = "color"; const optionValue =
data.originData.selectData ? data.originData.selectData[optName].value :
data.originData.value; const optionValueText = optionValue ? (optionValue) : '';
return `${optionValueText}`; }()} White+Green
White(2 Pcs)
Green(2 Pcs)
White+Green
Blue
Pink
${function(){ const tipText = "Please select a {{ name
}}".replace(/\{\{\s+name\s+\}\}/g, data); return `
${tipText}
` }()}
Quantity

Add to cart
£24.00
${function(){ const wholesale_enabled = false; const qty = data.quantity || 1;
const currentSelectVariant = data.variant; const defaultVariant = (data.product
&& data.product.variants && data.product.variants[0]); const productVariant =
{"id":"20219a12-55fa-46a3-ab7a-a375e3885a8d","product_id":"a8a8d0d2-d32d-4a50-a0fc-ad86cc8b51d2","title":"White+Green","weight_unit":"kg","inventory_quantity":981,"sku":"","barcode":"","position":3,"option1":"White+Green","option2":"","option3":"","note":"","image":{"src":"\/\/img.fantaskycdn.com\/7f7f91a1fe01f17f1867e16825eb18c2.jpeg","path":"7f7f91a1fe01f17f1867e16825eb18c2.jpeg","width":1170,"height":1170,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":24,"min_quantity":1}],"weight":"0.04","compare_at_price":"8","price":"24","retail_price":"8","available":true,"url":"\/products\/cat-self-groomer-corner-scratcher?variant=20219a12-55fa-46a3-ab7a-a375e3885a8d","available_quantity":999999999,"options":[{"name":"color","value":"White+Green"}],"off_ratio":0,"flashsale_info":[],"sales":47};
const variantData = currentSelectVariant || defaultVariant || productVariant;
const wholesale_price = variantData.wholesale_price || []; if(wholesale_enabled
&& wholesale_price.length > 0) { let wholesaleIndex =
wholesale_price.findIndex(item => { return item.min_quantity > qty; });
if(wholesaleIndex < 0){ wholesaleIndex = wholesale_price.length - 1; }else
if(wholesaleIndex > 0){ wholesaleIndex = wholesaleIndex - 1; } const
wholesalePrice = wholesale_price[wholesaleIndex] || ''; return `

` }else { const price = variantData && variantData.price; return price !=
undefined ? `

` : ''; } }()}

Buy now

Product was out of stock.
Product is unavailable.
${function(){ const variantData = data.variant ||
{"id":"20219a12-55fa-46a3-ab7a-a375e3885a8d","product_id":"a8a8d0d2-d32d-4a50-a0fc-ad86cc8b51d2","title":"White+Green","weight_unit":"kg","inventory_quantity":981,"sku":"","barcode":"","position":3,"option1":"White+Green","option2":"","option3":"","note":"","image":{"src":"\/\/img.fantaskycdn.com\/7f7f91a1fe01f17f1867e16825eb18c2.jpeg","path":"7f7f91a1fe01f17f1867e16825eb18c2.jpeg","width":1170,"height":1170,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":24,"min_quantity":1}],"weight":"0.04","compare_at_price":"8","price":"24","retail_price":"8","available":true,"url":"\/products\/cat-self-groomer-corner-scratcher?variant=20219a12-55fa-46a3-ab7a-a375e3885a8d","available_quantity":999999999,"options":[{"name":"color","value":"White+Green"}],"off_ratio":0,"flashsale_info":[],"sales":47};
return `
Sku : ${variantData && variantData.sku}
Weight : ${variantData && variantData.weight}${variantData &&
variantData.weight_unit}
Barcode : ${variantData && variantData.barcode}
` }()}
Weight : 0.04kg

/** @private {string} */ class SpzCustomAnchorScroll extends SPZ.BaseElement {
static deferredMount() { return false; } constructor(element) { super(element);
/** @private {Element} */ this.scrollableContainer_ = null; }
isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; }
buildCallback() { this.viewport_ = this.getViewport(); this.initActions_(); }
setTarget(containerId, targetId) { this.containerId = '#' + containerId;
this.targetId = '#' + targetId; } scrollToTarget() { const container =
document.querySelector(this.containerId); const target =
container.querySelector(this.targetId); const {scrollTop} = container; const
eleOffsetTop = this.getOffsetTop_(target, container); this.viewport_
.interpolateScrollIntoView_( container, scrollTop, scrollTop + eleOffsetTop ); }
initActions_() { this.registerAction( 'scrollToTarget', (invocation) =>
this.scrollToTarget(invocation?.caller) ); this.registerAction( 'setTarget',
(invocation) => this.setTarget(invocation?.args?.containerId,
invocation?.args?.targetId) ); } /** * @param {Element} element * @param
{Element} container * @return {number} * @private */ getOffsetTop_(element,
container) { if (!element./*OK*/ getClientRects().length) { return 0; } const
rect = element./*OK*/ getBoundingClientRect(); if (rect.width || rect.height) {
return rect.top - container./*OK*/ getBoundingClientRect().top; } return
rect.top; } } SPZ.defineElement('spz-custom-anchor-scroll',
SpzCustomAnchorScroll); const STRENGTHEN_TRUST_URL =
"/api/strengthen_trust/settings"; class SpzCustomStrengthenTrust extends
SPZ.BaseElement { constructor(element) { super(element); this.renderElement_ =
null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; }
buildCallback() { this.xhr_ = SPZServices.xhrFor(this.win); const renderId =
this.element.getAttribute('render-id'); SPZCore.Dom.waitForChild( document.body,
() => !!document.getElementById(renderId), () => { this.renderElement_ =
SPZCore.Dom.scopedQuerySelector( document.body, `#${renderId}` ); if
(this.renderElement_) { this.render_(); } this.registerAction('track',
(invocation) => { this.track_(invocation.args); }); } ); } render_() {
this.fetchData_().then((data) => { if (!data) { return; }
SPZ.whenApiDefined(this.renderElement_).then((apis) => { apis?.render(data);
document.querySelector('#strengthen-trust-render-1539149753700').addEventListener('click',(event)=>{
if(event.target.nodeName == 'A'){ this.track_({type: 'trust_content_click'}); }
}) }); }); } track_(data = {}) { const track = window.sa && window.sa.track; if
(!track) { return; } track('trust_enhancement_event', data); }
parseJSON_(string) { let result = {}; try { result = JSON.parse(string); } catch
(e) {} return result; } fetchData_() { return this.xhr_
.fetchJson(STRENGTHEN_TRUST_URL) .then((responseData) => { if (!responseData ||
!responseData.data) { return null; } const data = responseData.data; const
moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) =>
{ return result.concat(Object.assign(moduleSetting, { logos:
(moduleSetting.logos || []).map((item) => { return moduleSetting.logos_type ==
'custom' ? this.parseJSON_(item) : item; }) })); }, []); return
Object.assign(data, { module_settings: moduleSettings, isEditor: window.self !==
window.top, }); }); } } SPZ.defineElement('spz-custom-strengthen-trust',
SpzCustomStrengthenTrust);
${data.module_title}
To display this card to customers, you need to go to "Booster & Store
Conversion" to turn on the trust enhancement feature.
${data.module_title}
${item.title}

${item.title}
${item.content.replaceAll("{store_name}","NioPets")}


To display this card to customers, you need to go to "Booster & Store
Conversion" to turn on the trust enhancement feature.
${data.module_title}
${item.title}
${data.module_title}

${item.title}
${item.content.replaceAll("{store_name}","NioPets")}


Security and Service
Security and Service
Payment Security
Privacy Protection
Efficient and Safe Logitics
Customer Service

Payment Security
NioPets is committed to your secure shopping experience. We offer safe and
trusted payment options to protect your transactions. Your payment information
is shared only with our certified payment service providers, who are dedicated
to maintaining the confidentiality of your details.


Privacy Protection
At NioPets, your privacy is our priority. We employ internationally recognized
encryption methods for all network transmissions, ensuring the utmost security
for your private data during your shopping journey. This includes the protection
of your shipping address, credit card information, shopping details, and more.
Shop with confidence, knowing your privacy is safeguarded with us.


Efficient and Safe Logitics
At NioPets, we ensure secure and efficient logistics. Track your order in
real-time right from the order page. For added security, consider our optional
"Shipping Protection" service. If your purchase encounters any delays, damage,
or loss during delivery, rest assured, our insurance will cover your losses.
learn more


Customer Service
If you encounter problems during or after shopping, don't hesitate to reach out.
NioPets's customer service team is here to assist you. learn more
Security and Service
Payment Security
Privacy Protection
Efficient and Safe Logitics
Customer Service
Security and Service

Payment Security
NioPets is committed to your secure shopping experience. We offer safe and
trusted payment options to protect your transactions. Your payment information
is shared only with our certified payment service providers, who are dedicated
to maintaining the confidentiality of your details.


Privacy Protection
At NioPets, your privacy is our priority. We employ internationally recognized
encryption methods for all network transmissions, ensuring the utmost security
for your private data during your shopping journey. This includes the protection
of your shipping address, credit card information, shopping details, and more.
Shop with confidence, knowing your privacy is safeguarded with us.


Efficient and Safe Logitics
At NioPets, we ensure secure and efficient logistics. Track your order in
real-time right from the order page. For added security, consider our optional
"Shipping Protection" service. If your purchase encounters any delays, damage,
or loss during delivery, rest assured, our insurance will cover your losses.
learn more


Customer Service
If you encounter problems during or after shopping, don't hesitate to reach out.
NioPets's customer service team is here to assist you. learn more

FREQUENTLY BOUGHT TOGETHER
x1
x1

Total price £38.00
£38.00
ADD SELECTED TO CART
1. Cat Wall Corner Scratcher
Color/Green;
£14.00
£14.00
2. Cat Self Groomer Corner Scratcher
color/White(2 Pcs);
£24.00
£24.00
Total price £38.00
£38.00
ADD SELECTED TO CART


DESCRIPTION

The supple silicone, nylon material is safe and comfortable to avoid scratching
the cat.
Multi- function: can be used as table corner rubs itch device, rub the cat and
dog, protect the furniture when the cat scratch board.
Environmentally friendly material, very comfortable and supple, mint fragrance.
Multifunctional massage brush head for pets, wet and dry combing hair
not a rubbing board, but also a massage comb, which is comfortable to open knots
and remove hair.


Description

Multi- function: can be used as table corner rubs itch device, rub the cat and
dog, protect the furniture when the cat scratch board. Cats can enjoy the
pleasure of massage without worrying about being scratched, even for cats who
chewing, it' s also safe.

Features

- Material: Silicone, Nylon
- Multifunctional massage brush head for pets, wet and dry combing hair
- not a rubbing board, but also a massage comb, which is comfortable to open
knots and remove hair.
- The supple silicone, nylon material is safe and comfortable to avoid
scratching the cat.
- Multi- function: can be used as table corner rubs itch device, rub the cat and
dog, protect the furniture when the cat scratch board.
- Environmentally friendly material, very comfortable and supple, mint
fragrance.
- Color: Pink
- Size: 27X13. 5cm

Package Including
1 x Cat Massage Toy


Description

Multi- function: can be used as table corner rubs itch device, rub the cat and
dog, protect the furniture when the cat scratch board. Cats can enjoy the
pleasure of massage without worrying about being scratched, even for cats who
chewing, it' s also safe.

Features

- Material: Silicone, Nylon
- Multifunctional massage brush head for pets, wet and dry combing hair
- not a rubbing board, but also a massage comb, which is comfortable to open
knots and remove hair.
- The supple silicone, nylon material is safe and comfortable to avoid
scratching the cat.
- Multi- function: can be used as table corner rubs itch device, rub the cat and
dog, protect the furniture when the cat scratch board.
- Environmentally friendly material, very comfortable and supple, mint
fragrance.
- Color: Pink
- Size: 27X13. 5cm

Package Including
1 x Cat Massage Toy

Customer Reviews

Here are what our customers say.

Write a Review
Write a Review
Reviews With Photos

Newest
Newest

Most liked
Highest ratings
Lowest ratings

No reviews yet, why don't you leave the first review?
Write a Review
Customer Reviews
Reviews With Photos


Newest

Most liked
Highest ratings
Lowest ratings

×





${function(){ const limit = typeof data === 'number' ? data : 0; return `
Pictures/Videos (${limit || 0}/5)
` }()}
${(function(){ const closeIcon = ' '; if (item.type === 'image') { return `
${closeIcon}
` } return `
${closeIcon}
` })()}
Submit Comments Anonymously
class SpzCustomFileUpload extends SPZ.BaseElement { constructor(element) {
super(element); this.uploadCount_ = 0; this.fileList_ = []; } buildCallback() {
this.action = SPZServices.actionServiceForDoc(this.element);
this.registerAction('upload', (data) => {
this.handleFileUpload_(data.event?.detail?.data || []); });
this.registerAction('delete', (data) => {
this.handleFileDelete_(data?.args?.data); }); this.registerAction('preview',
(data) => { this.handleFilePreview_(data?.args?.data); });
this.registerAction('limit', (data) => { this.handleFileLimit_(); });
this.registerAction('sizeLimit', (data) => { this.handleFileSizeLimit_(); }); }
isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; }
setData_(count, file) { this.uploadCount_ = count; this.fileList_ = file; }
handleFileUpload_(data) { data.forEach(i => { if(this.fileList_.some(j => j.url
=== i.url)) return; this.fileList_.push(i); }) this.uploadCount_++;
sessionStorage.setItem('fileList', JSON.stringify(this.fileList_));
this.triggerEvent_("handleFileUpload", { count: this.uploadCount_, files:
this.fileList_}); if(this.fileList_.length >= 5){
document.querySelector('#review_upload').style.display = 'none'; }
if(this.fileList_.length > 0){
document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop =
'8px'; } } handleFileDelete_(index) { this.fileList_.splice(index, 1);
this.uploadCount_--; sessionStorage.setItem('fileList',
JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileDelete", { count:
this.uploadCount_, files: this.fileList_});
document.querySelector('#review_upload').style.display = 'block';
if(this.fileList_?.length === 0){
document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop =
'132px'; } } handleFilePreview_(index) { const finalPreviewData =
this.fileList_[index]; const filePreviewModal =
document.getElementById('filePreviewModal'); const fullScreenVideo =
document.getElementById('fullScreenVideo'); const fullScreenImage =
document.getElementById('fullScreenImage'); const previewModalClose =
document.getElementById('previewModalClose'); const previewLoading =
document.getElementById('previewLoading'); filePreviewModal.style.display =
'block'; previewLoading.style.display = 'flex'; if(finalPreviewData?.type ===
'video'){ const media = this.mediaParse_(this.fileList_[index]?.url);
fullScreenVideo.addEventListener('canplaythrough', function() {
previewLoading.style.display = 'none'; }); fullScreenImage.src = '';
fullScreenImage.style.display = 'none'; fullScreenVideo.style.display = 'block';
fullScreenVideo.src = media.mp4 || ''; } else { fullScreenImage.onload =
function() { previewLoading.style.display = 'none'; }; fullScreenVideo.src = '';
fullScreenVideo.style.display = 'none'; fullScreenImage.style.display = 'block';
fullScreenImage.src = finalPreviewData.url; }
previewModalClose.addEventListener('click', function() {
filePreviewModal.style.display = 'none'; }); } handleFileLimit_() {
alert(window.AppReviewsLocale.comment_file_limit || 'please do not upload files
more than 5'); this.triggerEvent_("handleFileLimit"); } handleFileSizeLimit_() {
alert(window.AppReviewsLocale.comment_file_size_limit || 'File size does not
exceed 10M'); } clear(){ this.fileList_ = []; this.uploadCount_ = 0;
sessionStorage.setItem('fileList', JSON.stringify(this.fileList_));
this.triggerEvent_("handleClear", { count: this.uploadCount_, files:
this.fileList_}); document.querySelector('#review_upload').style.display =
'block'; } mediaParse_(url) { var result = {}; try {
url.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (str, key, value) { try {
result[key] = decodeURIComponent(value); } catch (e) { result[key] = value; }
}); result.preview_image = url.split('?')[0]; } catch (e) {}; return result; }
triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, name,
data); this.action.trigger(this.element, name, event); } }
SPZ.defineElement('spz-custom-file-upload', SpzCustomFileUpload);
The review would not show in product details on storefront since it does not
support to.


YOU MAY ALSO LIKE




RECENTLY VIEWED



Subscribe today to hear first about our sales

Subscribe
Please enter a valid email address.
Please enter your email address.
${data.errors && data.errors[0]}
Thanks for subscribing

Footer menu

 * Our Story
 * Shipping Policy
 * Return Policy
 * Contact Us
 * Tracking Order

Footer menu

 * Our Story
 * Shipping Policy
 * Return Policy
 * Contact Us
 * Tracking Order

We accept

 * American Express
 * Apple Pay
 * Mastercard
 * PayPal
 * Visa

We accept

 * American Express
 * Apple Pay
 * Mastercard
 * PayPal
 * Visa

Contact Us

 * Email: service@niospet.com
   
   Whatsapp:+8618566239751
   
   Phone:+19714685804

Contact Us

 * Email: service@niospet.com
   
   Whatsapp:+8618566239751
   
   Phone:+19714685804

Follow us

 * 
 * 
 * 
 * 

Follow us

 * 
 * 
 * 
 * 


English,한국어,简体中文,日本語,Português,العربية,Русский,Español,Français,Italiano,Deutsch,Polski,Nederlands,svenska,norsk,čeština,Suomalainen,Ελληνικά,Magyar,Український,Türkçe,Hrvatski
jezik
© 2024 NioPets

CART



Your shopping bag is empty
Continue shopping
 * ${item.product_title}
    * ${item.options.map(option => option.value).join('/')}
    * ${propertie.name}/${propertie.isImage ? `View image` : propertie.value}
   
   Free gift
   Mixed Lot
   *${item.quantity}
   ${item.item_text}
   
   ${discount_item.title}
   (-)

Total:

${function() { const textArray = ("Save
{{save_amount}}").split(/\{\{\s*save_amount\}\}/); if (textArray.length > 0 &&
textArray.length < 2) { textArray.push(''); } return textArray.map((text, index)
=> { if (index == 0) { return `${text}`; } return ` ${text} `; }).join(''); }()}
${function() { const textArray = ("Save
{{save_amount}}").split(/\{\{\s*save_amount\}\}/); if (textArray.length > 0 &&
textArray.length < 2) { textArray.push(''); } return textArray.map((text, index)
=> { if (index == 0) { return `${text}`; } return ` ${text} `; }).join(''); }()}
 * ${discount_application.title}: -

${data.invalid_msg}
Check out

Taxes and shipping calculated at checkout

${data.invalid_msg}
Total: 

${function() { const textArray = ("Save
{{save_amount}}").split(/\{\{\s*save_amount\}\}/); if (textArray.length > 0 &&
textArray.length < 2) { textArray.push(''); } return textArray.map((text, index)
=> { if (index == 0) { return `${text}`; } return ` ${text} `; }).join(''); }()}
${function() { const textArray = ("Save
{{save_amount}}").split(/\{\{\s*save_amount\}\}/); if (textArray.length > 0 &&
textArray.length < 2) { textArray.push(''); } return textArray.map((text, index)
=> { if (index == 0) { return `${text}`; } return ` ${text} `; }).join(''); }()}
${function() { const textArray = ("Save
{{save_amount}}").split(/\{\{\s*save_amount\}\}/); if (textArray.length > 0 &&
textArray.length < 2) { textArray.push(''); } return textArray.map((text, index)
=> { if (index == 0) { return `${text}`; } return ` ${text} `; }).join(''); }()}
 * ${discount_application.title}: -

Check out

${data.invalid_msg}
Check out

Taxes and shipping calculated at checkout
 * Subtotal:
 * ${discount_application.title}: -

Total:

Check out

Taxes and shipping calculated at checkout
const summaryStickyRender =
document.querySelector('#cart-drawer-summary-sticky-render'); if
(summaryStickyRender) {
document.body.style.setProperty('--cart-drawer-summary-sticky-height',
summaryStickyRender.clientHeight + 'px'); }

View Cart
${function(){ const productData = data.product; let product_change_event = '',
mouse_over_event = ' '; mouse_out_event = ''; const product_options =
productData.options.filter(Boolean) || []; for (let opt of product_options) {
product_change_event = product_change_event +
`quick-shop-selected-variant-${opt.name}.rerender(data=event.selectedValues.${opt.name});`;
mouse_out_event = mouse_out_event +
`quick-shop-selected-variant-${opt.name}.rerender(data=event.selectData.${opt.name});`;
mouse_over_event = mouse_over_event +
`@${opt.name}Mouseover="quick-shop-selected-variant-${opt.name}.rerender(data=event);"`;
} const selectedVariant = productData.variants.find(v => v.available) ||
productData.variants[0]; const statusLan = ((selectedVariant &&
!selectedVariant.available) || (!selectedVariant && !productData.available)) ?
"Sold out" : "Add to cart"; return `
${statusLan}

` }()}

${function(){ const currentSelectVariant = data.variant; const defaultVariant =
(data.product && data.product.variants && data.product.variants[0]); const
variantData = currentSelectVariant || defaultVariant || data; const retail_price
= variantData.retail_price || 0; return `
Retail
` }()} ${function(){ const wholesale_enabled = false; const qty = data.quantity
|| 1; const currentSelectVariant = data.variant; const defaultVariant =
(data.product && data.product.variants && data.product.variants[0]); const
productVariant =
{"id":"20219a12-55fa-46a3-ab7a-a375e3885a8d","product_id":"a8a8d0d2-d32d-4a50-a0fc-ad86cc8b51d2","title":"White+Green","weight_unit":"kg","inventory_quantity":981,"sku":"","barcode":"","position":3,"option1":"White+Green","option2":"","option3":"","note":"","image":{"src":"\/\/img.fantaskycdn.com\/7f7f91a1fe01f17f1867e16825eb18c2.jpeg","path":"7f7f91a1fe01f17f1867e16825eb18c2.jpeg","width":1170,"height":1170,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":24,"min_quantity":1}],"weight":"0.04","compare_at_price":"8","price":"24","retail_price":"8","available":true,"url":"\/products\/cat-self-groomer-corner-scratcher?variant=20219a12-55fa-46a3-ab7a-a375e3885a8d","available_quantity":999999999,"options":[{"name":"color","value":"White+Green"}],"off_ratio":0,"flashsale_info":[],"sales":47};
const variantData = currentSelectVariant || defaultVariant || productVariant;
const wholesale_price = variantData.wholesale_price || []; if(wholesale_enabled
&& wholesale_price.length > 0) { let wholesaleIndex =
wholesale_price.findIndex(item => { return item.min_quantity > qty; });
if(wholesaleIndex < 0){ wholesaleIndex = wholesale_price.length - 1; }else
if(wholesaleIndex > 0){ wholesaleIndex = wholesaleIndex - 1; } const
wholesalePrice = wholesale_price[wholesaleIndex] || ''; return `

` }else { const price = variantData && variantData.price; return price !=
undefined ? `

` : ''; } }()}
${function() { let variantImageShowed = false; const currentProduct =
data.product; return (currentProduct.options || []).map((option, index) => {
const optionName = option.name || ''; const position = `option${index + 1}`; let
isThumbImage = false; if (currentProduct.need_variant_image &&
!variantImageShowed) { const variantNames = ["color"] || []; for (let i = 0, len
= variantNames.length; i < len; i++) { const name =
variantNames[i].toLowerCase(); if (name === optionName.toLowerCase()) {
isThumbImage = true; variantImageShowed = true; } } } const variantType =
"button"; const thumbStyle = "image_with_text"; return ` ${optionName}: 
${option.values.map((value, idx) => { const selected =
data.selectedValues[optionName] == value ? 'checked' : ''; let thumbImage =
null; if (isThumbImage) { const variants = currentProduct.variants; for (let i =
0, len = variants.length; i < len; i++) { const variant = variants[i]; if
(variant[position] == value && thumbImage == null) { thumbImage = variant.image;
break; } } } return `
${value}
` }).join('')}
${optionName}
${option.values.map(value => { const selected = data.selectedValues[optionName]
== value ? 'selected' : ''; return `${value}` }).join('')}
` }).join(''); }()}
${data.originData && data.originData.value || data.value}

const TAG = 'spz-custom-painter-button-animation'; const MAX_ITERATION_COUNT =
99999999; const SITE = (window.C_SETTINGS && window.C_SETTINGS.routes &&
window.C_SETTINGS.routes.root) || ''; const ADD_TO_CART_ANIMATION_SETTING =
`${SITE}/api/marketing_atmosphere_app/add_to_cart_btn_animation/setting`; class
SpzCustomPainterButtonAnimation extends SPZ.BaseElement { /**@override */ static
deferredMount() { return false; } /** @param {!SpzElement} element */
constructor(element) { super(element); /** @private
{!../../src/service/xhr-impl.Xhr} */ this.xhr_ = SPZServices.xhrFor(this.win);
/** @private {Object} */ this.data_ = null; /** @private {Element} */
this.addToCartButton_ = null; /** @private {boolean} */ this.productAvailable_ =
true; /** @private {number} */ this.timerId_ = null; /** @private {number} */
this.animationExecutionCount_ = 0; /** @private {boolean} */
this.selectedVariantAvailable_ = true; /** @private {number} */ this.delay_ =
5000; /** @private {number} */ this.iterationCount_ = 5; /** @private {string}
*/ this.animationClass_ = ''; } /** @override */ isLayoutSupported(layout) {
return layout == SPZCore.Layout.LOGIC; } /** @override */ buildCallback() {
this.productAvailable_ = this.element.hasAttribute('product-available');
this.selectedVariantAvailable_ =
this.element.hasAttribute('selected-variant-available'); } /** @override */
mountCallback() { this.render_(); } /** @private */ render_() { if
(!this.productAvailable_) { return; } this.fetch_().then((data) => { if (!data)
{ return; } this.data_ = data; this.animationClass_ =
`painter-${data.animation_name}-animation`; this.iterationCount_ =
data.animation_iteration_count === 'infinite' ? MAX_ITERATION_COUNT :
data.animation_iteration_count; const animationDuration = 1; const
animationDelay = data.animation_delay || 5; this.delay_ = (animationDuration +
animationDelay) * 1000; this.handleButtonEffect_(); }); } /** * @param
{JsonObject} data * @return {(null|Object)} * @private */ parseJson_(data) { try
{ return JSON.parse(data); } catch (e) { return null; } } /** * @return
{Promise} * @private */ fetch_() { return
this.xhr_.fetchJson(ADD_TO_CART_ANIMATION_SETTING).then((data) => { if (!data ||
!data.enabled) { return null; } return this.parseJson_(data.detail); }); } /**
@private */ getAddToCartButton_() { this.addToCartButton_ =
SPZCore.Dom.scopedQuerySelector( document.body, '[data-section-type="product"]
[role="addToCart"], [data-section-type="product_detail"] [role="addToCart"],
[data-section-type="product_detail"] [data-click="addToCart"],
[data-section-type="product"] [data-click="addToCart"]' ); } /** @private */
restartAnimation_() {
this.addToCartButton_.classList.remove(this.animationClass_);
this.addToCartButton_./* OK */ offsetWidth;
this.addToCartButton_.classList.add(this.animationClass_);
this.animationExecutionCount_++; } /** @private */ clearTimer_() {
this.win.clearInterval(this.timerId_); this.timerId_ = null; } /** @private */
setupTimer_() { this.timerId_ = this.win.setInterval(() => {
this.restartAnimation_(); if (this.animationExecutionCount_ >=
this.iterationCount_) { this.removeAnimationClass_(); this.clearTimer_(); } },
this.delay_); } /** @private */ restartTimer_() { if
(this.animationExecutionCount_ >= this.iterationCount_) {
this.removeAnimationClass_(); return; } this.setupTimer_(); } /** @private */
listenVariantChange_() { SPZUtils.Event.listen(self.document,
'dj.variantChange', (e) => { const selectedVariant = e.detail &&
e.detail.selected; if (!selectedVariant) { return; } const {available} =
selectedVariant; if (this.selectedVariantAvailable_ !== available) {
this.selectedVariantAvailable_ = available; this.clearTimer_(); if (available) {
this.restartTimer_(); } } }); } /** @private */ removeAnimationClass_() {
this.win.setTimeout(() => {
this.addToCartButton_.classList.remove(this.animationClass_); }, 1000); } /**
@private */ handleButtonEffect_() { this.getAddToCartButton_(); if
(!this.addToCartButton_) { return; } if (this.selectedVariantAvailable_) {
++this.animationExecutionCount_;
this.addToCartButton_.classList.add(this.animationClass_); if
(this.iterationCount_ === 1) { this.removeAnimationClass_(); return; }
this.setupTimer_(); } this.listenVariantChange_(); } } SPZ.defineElement(TAG,
SpzCustomPainterButtonAnimation);


111

Item has been added
${(function(){ const products = data.products; const getDefaultVariant =
function(product){ if (product.min_price_variant.available){ return
product.min_price_variant; }else { const avail_variants =
product.variants.filter(function(variant){ return variant.available; }); if
(avail_variants.length) { return avail_variants[0]; } } }; const toQuery = obj
=> Object.keys(obj) .map(k => Array.isArray(obj[k]) ? obj[k].map(v =>
`${k}[]=${encodeURIComponent(v)}`).join('&') :
`${k}=${encodeURIComponent(obj[k])}` ) .join('&'); const getDefaultTrackParams =
function(product, index){ const variant = getDefaultVariant(product); const
params = { aid: 'smart_recommend.2.' + data.id, scm: product.scm || data.scm ||
'', spm: data.spmBase + '.' + index, ssp: data.ssp || '', }; const trackParams =
Object.keys(params).map(function(key){ return params[key]; }).join('__'); return
trackParams; }; const hasMore = (data.products.length -
data.target_top_product_num - data.page * data.limit) === 0; return `
${(function(){ return `
${data.config.pop_title}

${data.rebate_tips || ''}
`; })()}
${product.title}
Added




`; })()}

class SpzCustomComponent extends SPZ.BaseElement { constructor(element) {
super(element); this.templates_ = null; this.container_ = null;
this._atcLineItem = {}; this.cart_ = {}; this.top_product_ids_ = [];
this.products_ = []; this.activityId_ = null; this.rendered_ = false;
this.myInterceptor_ = null; this.i18n_ = {}; this.config_ = {}; this.page_ = 1;
this.limit_ = 10; this.loading_ = false; } static deferredMount() { return
false; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER;
} buildCallback() { this.templates_ = SPZServices.templatesForDoc(this.element);
this.setAction_(); } mountCallback() { console.log('pop mounted'); this.i18n_ =
window.smartRecommendI18n &&
window.smartRecommendI18n[document.documentElement.lang || 'en-US'] || {}; const
cartPopRenderEl = document.getElementById("smart_cart_pop_render"); const
modalEl = document.getElementById("smart_cart_pop_modal"); const spmBase =
`smart_recommend_2`; const extra = { spmBase: spmBase, i18n: this.i18n_, };
const that = this; document.addEventListener('dj.addToCart', (event) => { try {
const e = event.detail; if (e.source === 'buy_now' || window.__upsell_block ||
this.rendered_) return; that.fetchActivityData({product_id: e.product_id,
variant_id: e.variant_id}).then(data => { if (!data || !data.products ||
!data.products.length) return; that.config_ = data.config; const recommendStyle
= document.createElement('style'); recommendStyle.innerHTML = `
#plugin_recommend_atc_pop { display: none !important; } `;
document.head.appendChild(recommendStyle); if (data.config.pop_frequency ===
'once' && window.sessionStorage.getItem('smart_pop_times') > 0) return;
SPZ.whenApiDefined(cartPopRenderEl).then(function(api){
api.render(Object.assign({}, data, extra), true).then(function() {
that.rendered_ = true; if (data.products.length) { const headEl =
document.getElementById("smart_cart_pop_head_render"); if (headEl) {
SPZ.whenApiDefined(headEl).then(function(head){ head.render({ data: data }); });
} SPZ.whenApiDefined(modalEl).then(function(api){
that.impressListen('#smart_cart_pop_activity', function(){
that.trackPluginImpression_(data); }); api.open(); const intersectionObserver =
new IntersectionObserver( function (entries) { if (entries[0].intersectionRatio
> 0){ !that.loading_ && (that.products_.length - that.target_top_product_num_)
=== that.page_ * that.limit_ && that.viewMore(); } }, { threshold: [0.1] } );
intersectionObserver.observe(
document.querySelector('#smart_cart_pop_view_more_text') ); }); } }) }); }) }
catch (e) { console.error(e); } }); } unmountCallback() { } viewMore () { const
cartPopRenderEl = document.getElementById("smart_cart_pop_render"); const that =
this; const data = {}; SPZ.whenApiDefined(cartPopRenderEl).then(function(api){
that.fetchActivityData({ page: that.page_ + 1, limit: that.limit_
}).then(function(data) { data.products = that.products_;
data.target_top_product_num = that.target_top_product_num_; data.i18n =
that.i18n_; data.spmBase = `smart_recommend_2`; api.render(data); }) }) }
fetchActivityData(data) { const that = this; if (data.product_id) {
that._atcLineItem = data; } that.loading_ = true; return
that.getCart().then(cart => { that.cart_ = cart.cart; return
fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_activities", {
method: "POST", headers: { "Content-Type": "application/json", "store-id":
window.SHOPLAZZA.shop.shop_id, }, body: JSON.stringify({ "show_type": 2,
"line_item": { "product_id": that._atcLineItem.product_id, "variant_id":
that._atcLineItem.variant_id, }, line_items: cart.cart.line_items, "page":
data.page || 1, "limit": data.limit || 10, }) }).then(function(res){ if(res.ok){
return res.json(); } }).then(function(data){ data.cart = cart.cart; if
(data.page === 1) { that.target_top_product_num_ = data.target_top_product_num
|| 0; } that.products_ = that.products_.concat(data.products || []); that.page_
= data.page || 1; that.limit_ = data.limit || 10; return data;
}).catch(function(e){ console.log(e); }).finally(function(){ that.loading_ =
false; }) }); }; setAction_() { this.registerAction('changeBannerColor', (data)
=> { if (!data.args.data || !data.args.data.data || !data.args.data.data.data)
return false; const config = data.args.data.data.data.config; const bannerBgEl =
document.querySelector('.smart_cart_pop_banner_bg'); if (bannerBgEl && config) {
bannerBgEl.style.background = config.banner_bg_color; bannerBgEl.style.color =
config.banner_text_color; } }); this.registerAction('handleProductChange',
(data) => { const that = this; const imageEl =
document.getElementById(`smart_cart_pop_image_${data.args.data.product_id}`);
SPZ.whenApiDefined(imageEl).then(function(api){ api.render({ data:
data.args.data, config: that.config_ }); }); const atcTextEl =
document.getElementById(`smart_cart_pop_atc_${data.args.data.product_id}`);
SPZ.whenApiDefined(atcTextEl).then(function(api){ api.render({ data:
data.args.data, defaultText: data.args.defaultText, soldOutText:
that.i18n_.sold_out }); }); if (data.args.data.variant.available) {
document.getElementById(`smart_cart_pop_atc_btn_${data.args.data.product_id}`).classList.remove('zb-pointer-events-none');
} else {
document.getElementById(`smart_cart_pop_atc_btn_${data.args.data.product_id}`).classList.add('zb-pointer-events-none');
} }); this.registerAction('handleProduct', (detail) => { const that = this;
this.renderProductsForm_(detail.args.data.data); });
this.registerAction('addATCHook', (data) => { const params = data.args;
this.myInterceptor_ = window.djInterceptors && window.djInterceptors.track.use({
event: 'dj.addToCart', params: { aid: 'smart_recommend.2.' + params.activity_id,
ssp: params.ssp, scm: params.scm, cfb: params.cfb, spm:
`..${window.SHOPLAZZA.meta.page.template_name}.${params.spm}`, }, once: true });
}); this.registerAction('handleAtcSuccess', (detail) => {
detail.args.data.product = detail.args.data.product || {};
detail.args.data.variant = detail.args.data.variant || {}; const defParams =
detail.args.product.split('__'); const product_id = detail.args.data.product.id;
const product_title = detail.args.data.product.title; const variant_id =
detail.args.data.variant.id; const price = detail.args.data.variant.price; const
aid = defParams[0]; const ifb = detail.args.data.product.ifb; const cfb =
detail.args.data.product.cfb; const scm = defParams[1]; const spm =
defParams[2]; const ssp = defParams[3]; const params = { id: product_id,
product_id: product_id, number: 1, name: product_title, variant_id: variant_id,
childrenId: variant_id, item_price: price, source: 'add_to_cart', _extra: { aid:
aid, ifb: ifb, cfb: cfb, scm: scm, spm:
`..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, ssp: ssp, } }; const
activity_id = `${detail.args.activity_id}`; const target_drive_way =
detail.args.target_drive_way;
document.getElementById(`smart_cart_pop_loading_${product_id}`).classList.add('zb-hidden');
document.getElementById(`smart_cart_pop_added_${product_id}`).classList.remove('zb-hidden');
setTimeout(() => {
document.getElementById(`smart_cart_pop_added_${product_id}`).classList.add('zb-hidden');
document.getElementById(`smart_cart_pop_atc_${product_id}`).classList.remove('zb-hidden');
document.getElementById(`smart_cart_pop_atc_btn_${product_id}`).classList.remove('zb-pointer-events-none');
}, 1000); this.tranckAddToCart(params); if (target_drive_way === 'rebate') {
const bannerEl = document.getElementById(`smart_cart_pop_banner`);
this.getRecommendInfo(activity_id).then(res => { if (res && res.rebate_tips) {
bannerEl.innerHTML = res.rebate_tips; } }) } });
this.registerAction('handleCartSummary', (event) => { const that = this; const
checkoutButtonEle = document.getElementById("smart_cart_pop_checkout_button");
if (checkoutButtonEle) {
SPZ.whenApiDefined(checkoutButtonEle).then(function(api){ api.render({ i18n:
that.i18n_ }, false); }); } const tipEl =
document.getElementById("smart_cart_pop_tip_info"); const cart = event &&
event.args && event.args.data && event.args.data.data; if (!tipEl || !cart)
return; let total_price = cart.total_price; if (!total_price) {
SPZ.whenApiDefined(tipEl).then(function(api){ api.render({ total_price:
total_price, i18n: that.i18n_ }, false); }); } else {
this.getBindDiscount_(cart.line_items).then(res => { if (res &&
res.discount_code){ const total = cart.line_price - cart.total_discount -
res.bundle_discount_value; if (total > 0) { total_price = total; } else {
total_price = 0; } } SPZ.whenApiDefined(tipEl).then(function(api){ api.render({
total_price: total_price, i18n: that.i18n_ }, false); }); }) } });
this.registerAction('open', () => {
window.sessionStorage.setItem('smart_pop_times',
Number(window.sessionStorage.getItem('smart_pop_times')) + 1); });
this.registerAction('close', () => { this.rendered_ = false; this.products_ =
[]; window.djInterceptors &&
window.djInterceptors.track.eject(this.myInterceptor_); }); } getCart() { return
fetch(`${window.SHOPLAZZA.routes.root || ''}/api/cart`, { method: 'GET',
headers: { 'Content-Type': 'application/json; charset=UTF-8', }, }).then(res =>
res.json()) } getRecommendInfo (activity_id) { return this.getCart().then(cart
=> { this.cart_ = cart.cart; return fetch(`${window.SHOPLAZZA.routes.root ||
''}/api/possum/recommend_info`, { method: 'POST', headers: { 'Content-Type':
'application/json; charset=UTF-8', }, body: JSON.stringify({ show_type: 2,
rule_id: `${activity_id}`, line_items: cart.cart.line_items, line_item:
this._atcLineItem, }) }).then(res => res.json()) }) } renderProductsForm_(data)
{ const products = data.products; const listPopRenderEl =
document.getElementById("smart_cart_pop_render"); if (!listPopRenderEl) return;
listPopRenderEl.querySelectorAll('.smart_cart_pop_atc_btn_bg').forEach(function(el){
el.style.background = data.config.add_to_cart_button_color; });
products.forEach(function(product){ const productId = product.id; const
productFormEls =
listPopRenderEl.querySelectorAll(`ljs-product-form[product-id="${productId}"]`);
let variantsEl =
listPopRenderEl.querySelectorAll(`ljs-product-form[product-id="${productId}"]
#smart_cart_pop_variant_${productId}_mobile ljs-variants`); if
(window.innerWidth > 768) { variantsEl =
listPopRenderEl.querySelectorAll(`ljs-product-form[product-id="${productId}"]
#smart_cart_pop_variant_${productId}_pc ljs-variants`); }
productFormEls.forEach(function(el){ SPZ.whenApiDefined(el).then(function(api){
api.setProduct(product); }); }); variantsEl.forEach(function(el){
SPZ.whenApiDefined(el).then(function(api){ api.handleRender(product); }); }) });
} tranckAddToCart(detail) { if (window.$) {
window.$(document.body).trigger('dj.addToCart', detail); } }
trackPluginImpression_(rule){ if (window.sa && window.sa.track) {
window.sa.track("module_impressions", { aid: `smart_recommend.2.${rule.id}` });
} } getBindDiscount_(carts) { let bundle_sale_ids = []; try { bundle_sale_ids =
sessionStorage['bundle_sale_ids'] &&
JSON.parse(sessionStorage['bundle_sale_ids']).filter((item, index, arr) =>
arr.indexOf(item, 0) === index).slice(-5); } catch (err) { console.error(err); }
if (!carts.length) { Promise.resolve(); } return
fetch(`${window.SHOPLAZZA.routes.root || ''}/api/bundle-sales/cart`, { method:
'POST', headers: { 'Content-Type': 'application/json; charset=UTF-8',
'store-id': window.SHOPLAZZA.shop.shop_id, }, body: JSON.stringify({ cart:
carts, action_type: 'cart', bundle_sale_ids }) }).then(res => res.json()) }
impressListen(selector, cb) { const el = document.querySelector(selector); const
onImpress = (e) => { if (e) { e.stopPropagation(); } cb(); }; if (el &&
!el.getAttribute('imprsd')) { el.addEventListener('impress', onImpress) } else
if (el) { onImpress(); } } } SPZ.defineElement('spz-custom-smart',
SpzCustomComponent); ${function(){ return `
${data.data.rebate_tips || ''}
`; }()} ${function(){ const getImageHeight = function(image){ const width =
image.width || 500; const height = image.height || 500; const image_size =
data.config.image_size || 0; let ratio = 0; if(image_size == 0){ ratio = (height
/ width).toFixed(2); }else if(image_size == 1){ ratio = 1.5; } return 132 *
ratio; }; const image = data.data.variant.image || data.data.product.image;
return ` `; }()}
${(function(){ const product = data.product; const avail_variants =
product.variants.filter(function(variant){ return variant.available; }); const
selected_variant = product.min_price_variant.available ?
product.min_price_variant : avail_variants.length && avail_variants[0]; return `
${option.name}
${ option.values.map(function(value, index){ const checked =
selected_variant["option"+option.position] == value ? "checked": ""; return `
${value}
` }).join("") }
` })()}
${(function(){ const variant = data.variant; return `

`; })()} ${(function(){ const variant = data.variant; return `
${ variant.options.map(function(option){ return option.value; }).join("/") ||
'Not exist' }
`; })()} ${(function(){ const variant = data.data && data.data.variant; const
defaultText = data.defaultText || 'Add To Cart'; const text = (!variant ||
variant.available) ? defaultText: data.soldOutText; return `
${text}
`; })()} ${(function(){ let cart = data; if(data.data) { cart = data.data; }
return `
${cart.item_count >=0 ? cart.item_count : '..'}
`; })()} ${(function(){ return `
${data.i18n.checkout}
`; })()}
GIFTS

POINTS


We care about your privacy
This website uses cookies to ensure you get the best experience on our website.
Privacy Policy
DECLINE ACCEPT
原文

请对此翻译评分
您的反馈将用于改进谷歌翻译