/** Shopify CDN: Minification failed

Line 64:0 Unexpected "{"
Line 64:1 Expected identifier but found "%"
Line 69:0 Unexpected "{"
Line 69:1 Expected identifier but found "%"

**/


/* CSS from section stylesheet tags */
.dropdown-megamenu .menu-item-title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dropdown-megamenu.megamenu-flat .menu-item-title {
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
}

.megamenu-banner-image-wrapper {
    position: relative;
    width: 100%;
    padding-top: 75%; /* 4:3 Aspect Ratio */
}

.megamenu-banner-image-wrapper img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.dropdown-menu:not(.dropdown-megamenu) {
    min-width: max-content;
}

.navbar-desktop.menu-desktop-hover .nav-item.dropdown:hover > .dropdown-menu,
.navbar-desktop.menu-desktop-hover .dropdown-menu .dropend:hover > .dropdown-menu {
    display: block;
}

.scrollable-menu {
    height: auto !important;
    max-height: 80vh !important;
}

.dropdown-item .menu-item-image {
    width: 25px;
    height: 25px;
    object-fit: cover;
}

.payment-icon {
    width: 24px !important;
    height: 24px !important;
}

{% if section.settings.menu_text_color != blank %}
    #navbar-mobile .nav-link,
    #navbar-desktop .nav-icons .nav-link {
        color: var(--menu-text-color) !important;
    }
{% endif %}

.dropdown-menu .dropend .dropdown-toggle::after {
    margin-left: auto;
}

.submenu-toggle {
    text-decoration: none;
    color: var(--bs-dropdown-link-color);
}
.submenu-toggle:hover {
    color: var(--bs-dropdown-link-hover-color);
    background-color: var(--bs-dropdown-link-hover-bg);
}

.dropend .dropdown-menu {
    top: 0;
    left: 100%;
}

.dropdown-menu .dropend .dropdown-toggle::after {
    margin-left: auto;
}

.dropdown-megamenu.megamenu-flat {
    min-width: max-content;
}

.dropdown-megamenu.megamenu-flat .megamenu-col .menu-item-title {
    white-space: nowrap;
}
.ks-sticky-atc {
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 10;
    left: 0;
    right: 0;
    background: var(--color-base-background-1);
    border-top: 1px solid rgba(var(--color-foreground), var(--border-opacity));
    transform: translateY(100%);
    transition: transform 0.3s ease;
    visibility: hidden;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
  }
  
  .ks-sticky-atc.show {
    transform: translateY(0);
    visibility: visible;
  }
  
  /* 通用按钮样式 */
  .ks-sticky-atc .quick-add__submit {
    background-color: var(--color-button);
    color: var(--color-button-text);
    border: none;
    height: 40px;
    padding: 0 20px;
    font-weight: bold;
    border-radius: 4px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  /* 通用数量选择器样式 */
  .quantity-wrapper {
    display: flex;
    align-items: center;
    height: 40px;
    border: 1px solid #ddd;
    border-radius: 4px;
    overflow: hidden;
  }
  
  .quantity-button {
    width: 30px;
    height: 100%;
    border: none;
    background: #f5f5f5;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    user-select: none;
  }
  
  .quantity-input {
    width: 40px;
    height: 100%;
    border: none;
    text-align: center;
    -moz-appearance: textfield;
    appearance: textfield;
  }
  
  .quantity-input::-webkit-outer-spin-button,
  .quantity-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }
  
  /* 标签样式 */
  .control-label {
    font-weight: 600;
    white-space: nowrap;
  }
  
  /* 布局通用样式 */
  .ks-sticky-atc-inner {
    display: flex;
    align-items: center;
    width: 100%;
  }
  
  /* 产品图片容器 */
  .ks-sticky-atc-left {
    flex: 0 0 auto;
    margin-right: 15px;
  }
  
  .ks-sticky-atc-left img {
    object-fit: cover;
    border-radius: 4px;
  }
  
  /* 右侧内容容器 */
  .ks-sticky-atc-right {
    flex: 1;
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0; /* 确保flex子项可以缩小到比其内容更小的宽度 */
  }
  
  /* 价格容器 */
  .price-container {
    display: flex;
    align-items: center;
    font-weight: bold;
  }
  
  /* 变体选择器样式 */
  .select {
    position: relative;
  }
  
  .select__select {
    min-width: 120px;
    height: 40px;
    padding: 0 30px 0 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    background-color: #fff;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
  }
  
  .svg-wrapper {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    width: 12px;
    height: 12px;
  }
  
  .svg-wrapper svg {
    width: 100%;
    height: 100%;
  }
  
  /* 默认样式和工具类 */
  .d-none {
    display: none;
  }
  
  .mb-2 {
    margin-bottom: 0.5rem;
  }
  
  /* 移动端样式 */
  @media (max-width: 749px) {
    .ks-sticky-atc {
      padding: 0.75rem 0;
    }
    
    /* 根据后台设置显示不同布局 */
    .mobile-layout--original .mobile-layout-circle-plus,
    .mobile-layout--circle_plus .mobile-layout-original {
      display: none;
    }

    .mobile-layout--circle_plus .mobile-layout-circle-plus {
      display: block;
    }

    /* Circle Plus 样式 */
    .mobile-layout--circle_plus .ks-sticky-atc-left img {
      width: 90px;
      height: 90px;
    }
    .mobile-layout--circle_plus .ks-sticky-atc-left {
      width: 90px;
    }
    .mobile-layout--circle_plus .product-title {
      min-height: initial;
      -webkit-line-clamp: 1;
      margin-bottom: 4px;
    }
    .mobile-layout--circle_plus .variant-row {
      margin-bottom: 8px;
    }
    .mobile-layout--circle_plus .variant-selector {
      position: relative;
    }
    .mobile-layout--circle_plus .variant-selector .select__select {
       height: 36px;
       padding-right: 30px;
    }
    .mobile-layout--circle_plus .price-quantity-add-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
    }
    .mobile-layout--circle_plus .price-container {
      flex-shrink: 1;
      font-size: 14px;
    }
    .mobile-layout--circle_plus .quantity-wrapper {
      height: 36px;
    }
    .mobile-layout--circle_plus .quick-add__submit.button--circle-plus {
      width: 44px;
      height: 44px;
      min-width: 44px;
      border-radius: 50%;
      padding: 0;
      font-size: 24px;
      line-height: 1;
      flex-shrink: 0;
      background-color: var(--circle-btn-bg-color) !important;
      color: var(--circle-btn-text-color) !important;
    }
     .mobile-layout--circle_plus .quick-add__submit.button--circle-plus:hover {
        background-color: var(--circle-btn-hover-bg-color) !important;
        color: var(--circle-btn-hover-text-color) !important;
     }

    /* 原始布局样式 */
    .mobile-layout--original .mobile-layout-original {
      display: block;
    }

    /* 移动端特定边距 */
    .ks-sticky-atc .page-width {
      padding-left: 15px;
      padding-right: 15px;
    }
    
    /* 移动端隐藏桌面元素 */
    .ks-sticky-atc .desktop-only,
    .ks-sticky-atc-inner .desktop-only,
    .desktop-only {
      display: none !important;
      opacity: 0 !important;
      visibility: hidden !important;
      pointer-events: none !important;
    }
    
    /* 移动端显示移动专用元素 */
    .ks-sticky-atc .mobile-only,
    .ks-sticky-atc-inner .mobile-only,
    .mobile-only {
      display: block !important;
      opacity: 1 !important;
      visibility: visible !important;
      pointer-events: auto !important;
    }
    
    /* 移动端布局：左右两栏，左图右内容 */
    .ks-sticky-atc-inner {
      align-items: flex-start;
      gap: 15px;
    }
    
    /* 左侧产品图片 */
    .ks-sticky-atc-left {
      width: 80px;
      margin-right: 0; /* 使用gap替代 */
    }
    
    .ks-sticky-atc-left img {
      width: 80px;
      height: 80px;
    }
    
    /* 右侧内容区域 */
    .ks-sticky-atc-right {
      flex: 1;
      min-width: 0;
    }
    
    /* 产品标题 */
    .product-title {
      font-size: 14px;
      font-weight: 600;
      margin: 0 0 8px 0;
      white-space: normal;
      overflow: hidden;
      text-overflow: ellipsis;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      min-height: 38px;
    }
    
    /* 价格和数量选择器在同一行 */
    .price-quantity-row {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      margin-bottom: 8px;
      gap: 15px;
    }
    
    /* 价格容器不要太宽 */
    .price-container {
      max-width: 50%;
      flex-shrink: 1;
    }
    
    /* 变体选择器和加入购物车按钮在同一行 */
    .variant-cart-row {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      width: 100%;
      gap: 8px;
    }
    
    /* 移动端变体选择器 */
    .variant-selector {
      flex: 1;
      margin-right: 0; /* 使用gap替代 */
    }
    
    /* 移动端加入购物车按钮 */
    .quick-add__submit.button {
      flex-shrink: 0;
    }
    
    /* 移动端选择器内部样式 */
    .mobile-only .quantity-selector {
      display: flex;
      align-items: center;
      gap: 5px;
    }
    
    .mobile-only .control-label {
      font-size: 12px;
      margin-bottom: 2px;
    }
    
    .mobile-only .quantity-wrapper {
      height: 32px;
      width: 90px;
    }
    
    .mobile-only .quantity-button {
      width: 25px;
    }
    
    .mobile-only .quantity-input {
      width: 30px;
      font-size: 12px;
    }
  }
  
  /* 桌面端样式 */
  @media (min-width: 750px) {
    .ks-sticky-atc {
      padding: 1rem 0;
    }
    
    /* 桌面端特定边距 */
    .ks-sticky-atc .page-width {
      padding-left: 30px;
      padding-right: 30px;
      max-width: 1200px;
      margin: 0 auto;
    }
    
    /* 整体布局 */
    .ks-sticky-atc-inner {
      align-items: center;
      justify-content: space-between;
      margin: 0 auto;
      max-width: 1100px;
    }
    
    /* 左侧区域：图片和产品信息 */
    .ks-sticky-atc-left-section {
      display: flex;
      align-items: center;
      flex: 0 0 auto;
      margin-right: 20px;
    }
    
    /* 第一栏：产品图片 */
    .ks-sticky-atc-left {
      width: 60px;
      margin-right: 15px;
    }
    
    .ks-sticky-atc-left img {
      width: 60px;
      height: 60px;
    }
    
    /* 第二栏：产品标题和价格 */
    .ks-sticky-atc-product-info {
      flex: 0 0 auto;
      min-width: 180px;
      max-width: 300px;
    }
    
    /* 让产品标题尽量在一行显示 */
    .ks-sticky-atc-product-info h3 {
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      display: block;
      font-size: calc(var(--font-heading-scale) * 1.3rem);
      margin: 0 0 0.5rem 0;
      line-height: 1.2;
    }
    
    /* 移动端元素在桌面端隐藏 */
    .ks-sticky-atc .mobile-only,
    .ks-sticky-atc-inner .mobile-only,
    .mobile-only {
      display: none !important;
      opacity: 0 !important;
      visibility: hidden !important;
      pointer-events: none !important;
    }
    
    /* 桌面端元素显示 */
    .ks-sticky-atc .desktop-only,
    .ks-sticky-atc-inner .desktop-only,
    .desktop-only {
      display: flex !important;
      opacity: 1 !important;
      visibility: visible !important;
      pointer-events: auto !important;
    }
    
    /* 桌面控件容器 */
    .desktop-controls-wrapper {
      display: flex;
      align-items: center;
      justify-content: space-between;
      flex-wrap: nowrap;
      gap: 1.5rem;
      flex: 1;
      min-width: 0;
    }
    
    /* 桌面控件分组 */
    .desktop-controls-group {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 1.5rem;
      flex: 1;
    }
    
    /* 控件容器样式 */
    product-form {
      flex: 1;
      display: flex;
      justify-content: flex-end;
      min-width: 0;
      width: 100%;
    }
    
    /* 使桌面端标签更整齐 */
    .desktop-controls-wrapper .label-control-group {
      display: flex;
      align-items: center;
      height: 40px;
    }
    
    /* 标签和控件横向排列 */
    .label-control-group {
      display: flex;
      align-items: center;
    }
    
    /* 控件样式 */
    .desktop-controls-wrapper .quantity-selector {
      flex: 0 0 auto;
      display: flex;
      align-items: center;
    }
    
    .desktop-controls-wrapper .select {
      flex: 0 0 auto;
      display: flex;
      align-items: center;
      margin-right: 0;
      position: relative;
    }
    
    .desktop-controls-wrapper .quick-add__submit {
      flex: 0 0 auto;
      min-width: 150px;
    }
    
    /* 调整桌面端标签位置和样式 */
    .desktop-controls-wrapper .control-label {
      min-width: 70px;
      font-weight: 600;
      margin-right: 8px;
    }
  }

  .loading-spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: none; /* 默认隐藏 */
  }
  
  .loading-spinner.show {
    display: block;
  }

  .spinner {
    animation: rotator 1.4s linear infinite;
    width: 20px;
    height: 20px;
  }

  @keyframes rotator {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(270deg); }
  }

  .path {
    stroke-dasharray: 187;
    stroke-dashoffset: 0;
    transform-origin: center;
    stroke: currentColor;
    animation: dash 1.4s ease-in-out infinite;
  }

  @keyframes dash {
    0% { stroke-dashoffset: 187; }
    50% {
      stroke-dashoffset: 46.75;
      transform: rotate(135deg);
    }
    100% {
      stroke-dashoffset: 187;
      transform: rotate(450deg);
    }
  }

  /* 标签样式 */
  .control-label {
    font-size: 0.9rem;
    font-weight: 500;
    margin-right: 0.5rem;
    white-space: nowrap;
  }

  /* 数量选择器样式 */
  .quantity-selector {
    margin-bottom: 0;
  }

  .label-control-group {
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }

  .quantity-label {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 500;
  }

  .quantity-wrapper {
    display: flex;
    align-items: center;
    border: 1px solid rgba(var(--color-foreground), 0.3);
    border-radius: 4px;
    height: 40px;
  }

  .quantity-button {
    background: transparent;
    border: none;
    width: 2.5rem;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    cursor: pointer;
  }

  .quantity-input {
    width: 3rem;
    text-align: center;
    border: none;
    -moz-appearance: textfield;
    background: transparent;
    height: 100%;
  }

  .quantity-input::-webkit-outer-spin-button,
  .quantity-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }

  /* 控件包装器样式 */
  .form-controls-wrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 1rem;
    width: 100%;
  }
  
  .select {
    position: relative;
  }
  
  .select__select {
    width: 100%;
    padding: 0.5rem;
    border: 1px solid rgba(var(--color-foreground), 0.3);
    border-radius: 4px;
    background-color: transparent;
    height: 40px;
    -webkit-appearance: none;
    appearance: none;
  }
  
  /* 变体选择器边框样式 */
  .desktop-controls-wrapper .select {
    border: 1px solid rgba(var(--color-foreground), 0.3);
    border-radius: 4px;
    padding: 0 0.5rem;
  }
  
  .desktop-controls-wrapper .select .select__select {
    border: none;
  }
  
  /* 价格样式 */
  .price__sale .price-item--regular {
    text-decoration: line-through;
    color: rgba(var(--color-foreground), 0.75);
    font-size: 0.9em;
  }

  .price__sale .price-item--sale {
    color: #4CAF50;
    font-weight: bold;
  }

  .price__regular .price-item--regular {
    font-weight: bold;
  }
  
  .ks-sticky-atc-inner {
    position: relative;
  }

  /* 添加到购物车按钮样式 */
  .quick-add__submit {
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    border: none;
    transition: background-color 0.3s, color 0.3s;
    background-color: var(--btn-bg-color, #1A1A1A) !important;
    color: var(--btn-text-color, #FFFFFF) !important;
  }

  .quick-add__submit:hover {
    background-color: var(--btn-hover-bg-color, #333333) !important;
    color: var(--btn-hover-text-color, #FFFFFF) !important;
  }