.sw-fly-cart-badge{
        position:fixed;
        left:0;
        top:0;
        width:var(--sw-fly-size-desktop,46px);
        height:var(--sw-fly-size-desktop,46px);
        border-radius:999px;
        display:flex;
        align-items:center;
        justify-content:center;
        background:var(--sw-fly-color, var(--sw-primary, #e7a3b7));
        box-shadow:0 10px 26px rgba(0,0,0,.18);
        z-index:999999;
        pointer-events:none;
        opacity:1;
        will-change:transform,opacity;
      }
      .sw-fly-cart-badge svg{
        width:20px;
        height:20px;
        display:block;
        fill:var(--sw-fly-on,var(--sw-on-primary,#ffffff));
      }
      .sw-fly-cart-bump{
        animation:swFlyCartBump .35s ease;
        transform-origin:center center;
      }
      @keyframes swFlyCartBump{
        0%{transform:scale(1);}
        50%{transform:scale(1.12);}
        100%{transform:scale(1);}
      }

      /* Do not reset body padding or scroll locks: Shoptimizer owns drawer state. */

      /*
       * 只精准处理桌面端 drawer-open:before 这种伪元素遮罩。
       * 不再隐藏整个 mini cart / drawer 容器，也不再强改 overlay 元素，
       * 避免“面板被隐藏但遮罩还在”或过度状态清洗导致的卡顿。
       */
      @media (min-width: 768px){
        html.sw-hide-auto-cart.drawer-open:before,
        body.sw-hide-auto-cart.drawer-open:before,
        html.sw-hide-auto-cart.sidebar-cart-open:before,
        body.sw-hide-auto-cart.sidebar-cart-open:before,
        html.sw-hide-auto-cart.cart-open:before,
        body.sw-hide-auto-cart.cart-open:before,
        html.sw-hide-auto-cart.shoptimizer-cart-open:before,
        body.sw-hide-auto-cart.shoptimizer-cart-open:before,
        html.sw-hide-auto-cart.off-canvas-cart-open:before,
        body.sw-hide-auto-cart.off-canvas-cart-open:before,
        html.sw-hide-auto-cart.cart-drawer-open:before,
        body.sw-hide-auto-cart.cart-drawer-open:before,
        html.sw-hide-auto-cart.active-cart:before,
        body.sw-hide-auto-cart.active-cart:before{
          display:none !important;
          opacity:0 !important;
          visibility:hidden !important;
          pointer-events:none !important;
          transition:none !important;
          background:transparent !important;
          content:none !important;
        }
      }

      @media (max-width: 767px){
        .sw-fly-cart-badge{ width:var(--sw-fly-size-mobile,40px); height:var(--sw-fly-size-mobile,40px); }
        .sw-fly-cart-badge svg{ width:18px; height:18px; }

        /*
         * 移动端不要自动打开 mini cart：
         * 只在自动 Ajax 加购的短时间窗口里，临时压掉常见 drawer / overlay 容器；
         * 手动点购物车图标时不会带 sw-hide-auto-cart，因此不影响正常打开。
         */
        html.sw-hide-auto-cart .cart-drawer,
        body.sw-hide-auto-cart .cart-drawer,
        html.sw-hide-auto-cart .site-header-cart-drawer,
        body.sw-hide-auto-cart .site-header-cart-drawer,
        html.sw-hide-auto-cart .off-canvas-cart,
        body.sw-hide-auto-cart .off-canvas-cart,
        html.sw-hide-auto-cart .header-cart-drawer,
        body.sw-hide-auto-cart .header-cart-drawer{
          opacity:0 !important;
          visibility:hidden !important;
          pointer-events:none !important;
          transition:none !important;
          animation:none !important;
          transform:translate3d(100%,0,0) !important;
        }

        html.sw-hide-auto-cart .drawer-overlay,
        body.sw-hide-auto-cart .drawer-overlay,
        html.sw-hide-auto-cart .cart-overlay,
        body.sw-hide-auto-cart .cart-overlay,
        html.sw-hide-auto-cart .mini-cart-overlay,
        body.sw-hide-auto-cart .mini-cart-overlay,
        html.sw-hide-auto-cart .site-overlay,
        body.sw-hide-auto-cart .site-overlay,
        html.sw-hide-auto-cart .off-canvas-overlay,
        body.sw-hide-auto-cart .off-canvas-overlay{
          display:none !important;
          opacity:0 !important;
          visibility:hidden !important;
          pointer-events:none !important;
          transition:none !important;
          animation:none !important;
          background:transparent !important;
        }
      }

@media (prefers-reduced-motion:reduce){.sw-fly-cart-bump{animation:none!important}}
