/* qiyueyun cart theme
   独立购物车样式层：所有新样式均使用 qy-cart 前缀，避免污染用户中心/官网其他页面
*/

:where(.qy-cart-page, .qy-cart-v10-shell) {
  --qy-cart-primary: #1263ff;
  --qy-cart-sky: #20b8ff;
  --qy-cart-title: #0f172a;
  --qy-cart-text: #475569;
  --qy-cart-muted: #64748b;
  --qy-cart-line: #e2e8f0;
  --qy-cart-soft-line: #eef3f8;
  --qy-cart-soft: #f8fbff;
  --qy-cart-blue-soft: #edf4ff;
  --qy-cart-white: #ffffff;
  --qy-cart-danger: #ef4444;
  --qy-cart-shadow-sm: 0 10px 24px rgba(15, 23, 42, 0.06);
  --qy-cart-shadow: 0 22px 62px rgba(15, 23, 42, 0.08);
  color: var(--qy-cart-title);
  font-family: "Source Han Serif SC", "Noto Serif CJK SC", "Microsoft YaHei", Arial, sans-serif;
}

.qy-cart-page {
  position: relative;
  overflow: hidden;
  padding: 6px 0 34px;
}

.qy-cart-page::before {
  content: "";
  position: absolute;
  right: -240px;
  top: -240px;
  width: 460px;
  height: 460px;
  border-radius: 999px;
  background: rgba(18, 99, 255, 0.08);
  pointer-events: none;
}

.qy-cart-page .row,
.qy-cart-page .card,
.qy-cart-page form {
  position: relative;
  z-index: 1;
}

/* viewcart 删除确认弹窗必须保持 Bootstrap 的 fixed 定位并位于 backdrop 上方 */
.qy-cart-page #customModal {
  position: fixed !important;
  z-index: 1055 !important;
}

body > .modal-backdrop {
  z-index: 1050 !important;
}

.qy-cart-page .card {
  border: 1px solid rgba(226, 232, 240, 0.92) !important;
  border-radius: 24px !important;
  background: var(--qy-cart-white) !important;
  box-shadow: var(--qy-cart-shadow) !important;
}

.qy-cart-page .card-header {
  border-bottom: 1px solid var(--qy-cart-soft-line) !important;
  background: transparent !important;
}

.qy-cart-page .card-header h5,
.qy-cart-page h5,
.qy-cart-page h4,
.qy-cart-page h3 {
  color: var(--qy-cart-title);
  font-weight: 900;
}

.qy-cart-page .card-body {
  border-radius: inherit;
}

.qy-cart-page .btn-primary,
.qy-cart-page .btn-success {
  color: #000000 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--qy-cart-primary) !important;
  box-shadow: 0 14px 30px rgba(18, 99, 255, 0.22);
  font-weight: 900;
}

.qy-cart-page .btn-primary:hover,
.qy-cart-page .btn-success:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 42px rgba(18, 99, 255, 0.28);
}

.qy-cart-page .btn-outline-primary {
  color: var(--qy-cart-primary) !important;
  border-color: #cfe0ff !important;
  border-radius: 999px !important;
  background: var(--qy-cart-white) !important;
  font-weight: 900;
}

.qy-cart-page .btn-outline-primary:hover {
  color: #000000 !important;
  background: var(--qy-cart-primary) !important;
}

.qy-cart-page .form-control,
.qy-cart-page .custom-select,
.qy-cart-page .bootstrap-select > .dropdown-toggle {
  min-height: 42px;
  border-color: var(--qy-cart-line) !important;
  border-radius: 14px !important;
  background-color: var(--qy-cart-white) !important;
  box-shadow: none !important;
}

.qy-cart-page .form-control:focus,
.qy-cart-page .custom-select:focus,
.qy-cart-page .bootstrap-select > .dropdown-toggle:focus {
  border-color: #93c5fd !important;
  box-shadow: 0 0 0 4px rgba(18, 99, 255, 0.08) !important;
}

.qy-cart-page .table {
  overflow: hidden;
  border-radius: 18px;
}

.qy-cart-page .table th {
  color: var(--qy-cart-title);
  border-color: var(--qy-cart-soft-line) !important;
  background: var(--qy-cart-soft);
  font-weight: 900;
}

.qy-cart-page .table td {
  border-color: var(--qy-cart-soft-line) !important;
}

.qy-cart-page .pagination .page-link {
  min-width: 34px;
  min-height: 34px;
  margin: 0 3px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--qy-cart-primary);
  border-color: #dbeafe;
  border-radius: 999px !important;
  background: #ffffff;
  font-weight: 900;
}

.qy-cart-page .pagination .active .page-link,
.qy-cart-page .pagination .page-link:hover {
  color: #000000 !important;
  background: var(--qy-cart-primary);
}

/* 产品列表 */
.qy-cart-product-page > .row {
  align-items: stretch;
}

.qy-cart-product-page .prolist .card.bg-primary {
  color: #000000 !important;
  overflow: hidden;
  border: 0 !important;
  border-radius: 26px !important;
  background: #1263ff !important;
  box-shadow: 0 24px 64px rgba(18, 99, 255, 0.20) !important;
}

.qy-cart-product-page .pro-search-box .form-control {
  color: #000000 !important;
  border-color: rgba(255, 255, 255, 0.28) !important;
  background: rgba(255, 255, 255, 0.13) !important;
}

.qy-cart-product-page .pro-search-box .form-control::placeholder {
  color: #000000 !important;
}

.qy-cart-product-page .firstbox,
.qy-cart-product-page .secondbox {
  border-radius: 20px;
}

.qy-cart-product-page .firstbox li a,
.qy-cart-product-page .secondbox li a {
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 4px 0;
  padding: 0 10px;
  border-radius: 13px;
  color: var(--qy-cart-text) !important;
  font-weight: 900;
}

.qy-cart-product-page .firstbox .active a,
.qy-cart-product-page .secondbox .active a,
.qy-cart-product-page .firstbox li a:hover,
.qy-cart-product-page .secondbox li a:hover {
  color: var(--qy-cart-primary) !important;
  background: var(--qy-cart-blue-soft) !important;
}

.qy-cart-product-page .card .card .card-header {
  padding: 18px 18px 0;
}

.qy-cart-product-page .card .card .card-body {
  padding: 18px;
}

.qy-cart-product-page .card pre {
  color: var(--qy-cart-muted);
  font-size: 13px;
  line-height: 1.75;
}

.qy-cart-product-page .card .text-right[style*="#e64a19"] {
  color: var(--qy-cart-primary) !important;
  font-size: 16px;
  font-weight: 900;
}

/* 购物车结算 */
.qy-cart-view-page .goods_info {
  border: 1px solid var(--qy-cart-soft-line);
  border-radius: 16px;
  background: var(--qy-cart-soft);
}

.qy-cart-view-page .goods_info .title {
  color: var(--qy-cart-primary) !important;
  font-weight: 900;
}

.qy-cart-view-page .goods_info .info {
  color: var(--qy-cart-text);
}

.qy-cart-view-page .addfunds-payment,
.qy-cart-view-page .payType,
.qy-cart-view-page .checkboxDiv {
  border: 1px solid var(--qy-cart-line) !important;
  border-radius: 16px !important;
  background: #ffffff;
  transition: 0.18s ease;
}

.qy-cart-view-page .addfunds-payment:hover,
.qy-cart-view-page .addfunds-payment.active,
.qy-cart-view-page .payType.active,
.qy-cart-view-page .payType:hover,
.qy-cart-view-page .checkboxSelect {
  border-color: var(--qy-cart-primary) !important;
  background: var(--qy-cart-blue-soft) !important;
  box-shadow: 0 12px 26px rgba(18, 99, 255, 0.10);
}

.qy-cart-view-page .mobile-bottom-total {
  border-top: 1px solid var(--qy-cart-soft-line);
  box-shadow: 0 -14px 36px rgba(15, 23, 42, 0.10);
}

/* 配置页 */
.qy-cart-configure-page .cycle-select-discount {
  background: #ef4444 !important;
}

.qy-cart-configure-page .error-tip {
  color: var(--qy-cart-danger) !important;
  font-weight: 800;
}

.qy-cart-configure-page .configoption_range {
  accent-color: var(--qy-cart-primary);
}

.qy-cart-configure-page .range_none {
  background: rgba(239, 68, 68, 0.15);
}

/* 订单汇总 */
.qy-cart-summary-page,
.qy-cart-page .ordersummary {
  color: var(--qy-cart-title);
}

.qy-cart-summary-page .ordersummary,
.qy-cart-page .ordersummary {
  overflow: hidden;
  border: 1px solid var(--qy-cart-soft-line);
  border-radius: 18px;
  background: var(--qy-cart-white);
}

.qy-cart-summary-page .ordersummary td,
.qy-cart-page .ordersummary td {
  padding: 10px 12px !important;
}

/* 完成页 */
.qy-cart-complete-page .twitter-bs-wizard {
  padding: 10px;
}

.qy-cart-complete-page .mdi-check-circle-outline {
  color: #16a34a !important;
  filter: drop-shadow(0 12px 22px rgba(22, 163, 74, 0.18));
}

/* V10 产品配置页 */
.qy-cart-v10-shell {
  min-height: 100vh;
  background: #ffffff;
}

.qy-cart-v10-shell .main-card {
  border-radius: 28px;
  background: #ffffff;
  box-shadow: var(--qy-cart-shadow);
}

.qy-cart-v10-shell .com-tit,
.qy-cart-v10-shell .config-tit,
.qy-cart-v10-shell .pro-tit {
  color: var(--qy-cart-title) !important;
  font-weight: 900 !important;
}

.qy-cart-v10-shell .el-button--primary,
.qy-cart-v10-shell .el-radio-button__orig-radio:checked + .el-radio-button__inner {
  color: #000000 !important;
  border-color: var(--qy-cart-primary) !important;
  background: var(--qy-cart-primary) !important;
  box-shadow: 0 10px 22px rgba(18, 99, 255, 0.16) !important;
}

.qy-cart-v10-shell .el-input__inner,
.qy-cart-v10-shell .el-textarea__inner {
  border-color: var(--qy-cart-line) !important;
  border-radius: 14px !important;
}

.qy-cart-v10-shell .el-input__inner:focus,
.qy-cart-v10-shell .el-textarea__inner:focus {
  border-color: var(--qy-cart-primary) !important;
}

@media (max-width: 768px) {
  .qy-cart-page {
    padding-bottom: 76px;
  }

  .qy-cart-page .card {
    border-radius: 20px !important;
  }

  .qy-cart-product-page .firstbox,
  .qy-cart-product-page .secondbox {
    min-height: auto !important;
  }

  .qy-cart-page .btn {
    width: 100%;
  }
}


/* ===============================
   qy-cart：隐藏用户中心侧边栏
   仅在购物车模板主动给 body 添加 qy-cart-mode 后生效
   =============================== */
body.qy-cart-mode .vertical-menu {
  display: none !important;
}

body.qy-cart-mode .main-content {
  margin-left: 0 !important;
}

body.qy-cart-mode .page-content {
  padding-left: 0 !important;
}

body.qy-cart-mode #page-topbar {
  left: 0 !important;
}

body.qy-cart-mode .navbar-brand-box {
  border-right: 1px solid rgba(226, 232, 240, 0.86);
}

/* ===============================
   qy-cart：左侧产品分类 accordion
   =============================== */
.qy-cart-page .qy-cart-sidebar {
  align-items: flex-start;
}

.qy-cart-product-main {
  min-width: 0;
}

.qy-cart-category-card {
  position: sticky;
  top: 92px;
  overflow: hidden;
  border: 1px solid rgba(226, 232, 240, 0.94);
  border-radius: 26px;
  background: #ffffff;
  box-shadow: 0 20px 56px rgba(15, 23, 42, 0.08);
}

.qy-cart-category-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 22px 22px 18px;
  border-bottom: 1px solid #eef3f8;
}

.qy-cart-category-head span {
  display: block;
  color: #1263ff;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.10em;
}

.qy-cart-category-head h3 {
  margin: 6px 0 0;
  color: #0f172a;
  font-size: 22px;
  line-height: 1.25;
  font-weight: 900;
}

.qy-cart-category-head > i {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  color: #1263ff;
  border-radius: 16px;
  background: #edf4ff;
  font-size: 22px;
}

.qy-cart-category-search {
  position: relative;
  margin: 18px 18px 12px;
}

.qy-cart-category-search input {
  width: 100%;
  min-height: 46px;
  padding: 0 46px 0 16px;
  color: #0f172a;
  border: 1px solid #dbe3ec;
  border-radius: 999px;
  outline: none;
  background: #f8fbff;
  font-size: 14px;
  font-weight: 800;
  transition: 0.18s ease;
}

.qy-cart-category-search input:focus {
  border-color: #93c5fd;
  background: #ffffff;
  box-shadow: 0 0 0 5px rgba(18, 99, 255, 0.08);
}

.qy-cart-category-search button {
  position: absolute;
  right: 5px;
  top: 5px;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  color: #000000 !important;
  border: 0;
  border-radius: 50%;
  background: #1263ff;
  box-shadow: 0 10px 22px rgba(18, 99, 255, 0.18);
}

.qy-cart-category-desc {
  display: grid;
  gap: 6px;
  margin: 0 18px 16px;
  padding: 14px;
  border: 1px solid #eef3f8;
  border-radius: 18px;
  background: #f8fbff;
}

.qy-cart-category-desc strong {
  color: #0f172a;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 900;
}

.qy-cart-category-desc span {
  color: #64748b;
  font-size: 12px;
  line-height: 1.6;
}

.qy-cart-category-list {
  display: grid;
  gap: 8px;
  padding: 0 14px 18px;
}

.qy-cart-category-group {
  border: 1px solid transparent;
  border-radius: 18px;
  background: transparent;
  transition: 0.18s ease;
}

.qy-cart-category-group.is-open {
  border-color: #dbeafe;
  background: #f8fbff;
}

.qy-cart-category-first {
  width: 100%;
  min-height: 46px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 14px;
  color: #334155;
  border: 0;
  border-radius: 17px;
  background: transparent;
  font-size: 14px;
  font-weight: 900;
  text-align: left;
  transition: 0.18s ease;
}

.qy-cart-category-first:hover,
.qy-cart-category-group.is-open .qy-cart-category-first {
  color: #1263ff;
  background: #edf4ff;
}

.qy-cart-category-first i {
  position: relative;
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: rgba(18, 99, 255, 0.10);
}

.qy-cart-category-first i::before,
.qy-cart-category-first i::after {
  content: "";
  position: absolute;
  left: 5px;
  right: 5px;
  top: 8px;
  height: 2px;
  border-radius: 999px;
  background: #1263ff;
}

.qy-cart-category-first i::after {
  transform: rotate(90deg);
  transition: 0.18s ease;
}

.qy-cart-category-group.is-open .qy-cart-category-first i::after {
  transform: rotate(0deg);
}

.qy-cart-category-second {
  display: none;
  padding: 6px 8px 10px;
}

.qy-cart-category-group.is-open .qy-cart-category-second {
  display: grid;
  gap: 6px;
}

.qy-cart-category-second a {
  min-height: 38px;
  display: flex;
  align-items: center;
  padding: 0 12px 0 16px;
  color: #64748b;
  border-radius: 14px;
  font-size: 13px;
  font-weight: 850;
  text-decoration: none;
  transition: 0.18s ease;
}

.qy-cart-category-second a:hover,
.qy-cart-category-second a.is-active {
  color: #1263ff;
  background: #ffffff;
  box-shadow: 0 10px 22px rgba(18, 99, 255, 0.08);
  text-decoration: none;
}

.qy-cart-category-second a span {
  position: relative;
  padding-left: 14px;
}

.qy-cart-category-second a span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #93c5fd;
  transform: translateY(-50%);
}

.qy-cart-category-empty {
  min-height: 180px;
  display: grid;
  place-items: center;
  margin: 0 18px 18px;
  color: #64748b;
  border: 1px dashed #dbeafe;
  border-radius: 18px;
  background: #f8fbff;
  font-size: 14px;
  font-weight: 900;
}

@media (max-width: 991px) {
  .qy-cart-category-card {
    position: relative;
    top: auto;
    margin-bottom: 18px;
  }

  .qy-cart-product-main {
    width: 100%;
  }
}

@media (max-width: 768px) {
  body.qy-cart-mode .main-content {
    margin-left: 0 !important;
  }

  .qy-cart-category-head {
    padding: 18px;
  }

  .qy-cart-category-list {
    padding: 0 12px 14px;
  }
}


/* =========================================================
   qy-cart polish v2：购物车产品页精修版
   目标：隐藏用户中心菜单，左侧产品目录，右侧产品卡片更企业化
   ========================================================= */

body.qy-cart-mode .vertical-menu {
  display: none !important;
}

body.qy-cart-mode .main-content {
  margin-left: 0 !important;
}

body.qy-cart-mode #page-topbar {
  left: 0 !important;
}

.qy-cart-shop-page {
  padding: 18px 0 42px;
}

.qy-cart-shop-page::before {
  display: none;
}

.qy-cart-shop-hero {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  margin-bottom: 22px;
  padding: 30px 34px;
  border: 1px solid rgba(219, 234, 254, 0.95);
  border-radius: 30px;
  background: #1263ff;
  box-shadow: 0 24px 68px rgba(18, 99, 255, 0.22);
}

.qy-cart-shop-hero::before,
.qy-cart-shop-hero::after {
  content: "";
  position: absolute;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.13);
  pointer-events: none;
}

.qy-cart-shop-hero::before {
  width: 240px;
  height: 240px;
  right: -86px;
  top: -96px;
}

.qy-cart-shop-hero::after {
  width: 160px;
  height: 160px;
  left: 48%;
  bottom: -90px;
}

.qy-cart-shop-label {
  position: relative;
  z-index: 1;
  width: fit-content;
  min-height: 30px;
  display: inline-flex;
  align-items: center;
  padding: 0 12px;
  color: #000000 !important;
  border: 1px solid rgba(255, 255, 255, 0.36);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.13);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.08em;
}

.qy-cart-shop-hero h1 {
  position: relative;
  z-index: 1;
  margin: 14px 0 0;
  color: #000000 !important;
  font-size: clamp(26px, 3vw, 42px);
  line-height: 1.18;
  font-weight: 900;
  letter-spacing: -0.8px;
}

.qy-cart-shop-hero p {
  position: relative;
  z-index: 1;
  max-width: 720px;
  margin: 12px 0 0;
  color: #000000 !important;
  font-size: 15px;
  line-height: 1.8;
}

.qy-cart-shop-stats {
  position: relative;
  z-index: 1;
  min-width: 132px;
  padding: 18px 20px;
  border: 1px solid rgba(255, 255, 255, 0.26);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.14);
  text-align: center;
  backdrop-filter: blur(12px);
}

.qy-cart-shop-stats strong {
  display: block;
  color: #000000 !important;
  font-size: 34px;
  line-height: 1;
  font-weight: 900;
}

.qy-cart-shop-stats span {
  display: block;
  margin-top: 8px;
  color: #000000 !important;
  font-size: 13px;
  font-weight: 900;
}

.qy-cart-shop-layout {
  align-items: flex-start;
}

.qy-cart-sidebar-col {
  padding-right: 10px;
}

.qy-cart-product-main {
  min-width: 0;
  padding-left: 10px;
}

.qy-cart-category-card {
  position: sticky;
  top: 92px;
  overflow: hidden;
  border: 1px solid rgba(226, 232, 240, 0.94);
  border-radius: 28px;
  background: #ffffff;
  box-shadow: 0 22px 62px rgba(15, 23, 42, 0.08);
}

.qy-cart-category-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 24px 22px 18px;
  border-bottom: 1px solid #eef3f8;
}

.qy-cart-category-head span {
  display: block;
  color: #1263ff;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.10em;
}

.qy-cart-category-head h3 {
  margin: 7px 0 0;
  color: #0f172a;
  font-size: 23px;
  line-height: 1.25;
  font-weight: 900;
}

.qy-cart-category-badge {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  color: #1263ff;
  border-radius: 18px;
  background: #edf4ff;
  font-size: 13px;
  font-weight: 900;
}

.qy-cart-category-search {
  position: relative;
  margin: 18px 18px 14px;
}

.qy-cart-category-search input {
  width: 100%;
  height: 48px;
  padding: 0 48px 0 17px;
  color: #0f172a;
  border: 1px solid #dbe3ec;
  border-radius: 999px;
  outline: none;
  background: #f8fbff;
  font-size: 14px;
  font-weight: 800;
  transition: 0.18s ease;
}

.qy-cart-category-search input:focus {
  border-color: #93c5fd;
  background: #ffffff;
  box-shadow: 0 0 0 5px rgba(18, 99, 255, 0.08);
}

.qy-cart-category-search button {
  position: absolute;
  right: 5px;
  top: 5px;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  color: #000000 !important;
  border: 0;
  border-radius: 50%;
  background: #1263ff;
  box-shadow: 0 10px 22px rgba(18, 99, 255, 0.18);
}

.qy-cart-category-list {
  display: grid;
  gap: 9px;
  padding: 0 14px 18px;
}

.qy-cart-category-group {
  border: 1px solid transparent;
  border-radius: 20px;
  background: transparent;
  transition: 0.18s ease;
}

.qy-cart-category-group.is-open {
  border-color: #dbeafe;
  background: #f8fbff;
}

.qy-cart-category-first {
  width: 100%;
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 15px;
  color: #334155;
  border: 0;
  border-radius: 19px;
  background: transparent;
  font-size: 15px;
  font-weight: 900;
  text-align: left;
  transition: 0.18s ease;
}

.qy-cart-category-first:hover,
.qy-cart-category-group.is-open .qy-cart-category-first {
  color: #1263ff;
  background: #edf4ff;
}

.qy-cart-category-first i {
  position: relative;
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: rgba(18, 99, 255, 0.10);
}

.qy-cart-category-first i::before,
.qy-cart-category-first i::after {
  content: "";
  position: absolute;
  left: 6px;
  right: 6px;
  top: 9px;
  height: 2px;
  border-radius: 999px;
  background: #1263ff;
}

.qy-cart-category-first i::after {
  transform: rotate(90deg);
  transition: 0.18s ease;
}

.qy-cart-category-group.is-open .qy-cart-category-first i::after {
  transform: rotate(0deg);
}

.qy-cart-category-second {
  display: none;
  padding: 6px 8px 11px;
}

.qy-cart-category-group.is-open .qy-cart-category-second {
  display: grid;
  gap: 7px;
}

.qy-cart-category-second a {
  min-height: 40px;
  display: flex;
  align-items: center;
  padding: 0 12px;
  color: #64748b;
  border-radius: 15px;
  font-size: 13.5px;
  font-weight: 850;
  text-decoration: none;
  transition: 0.18s ease;
}

.qy-cart-category-second a:hover,
.qy-cart-category-second a.is-active {
  color: #1263ff;
  background: #ffffff;
  box-shadow: 0 10px 22px rgba(18, 99, 255, 0.08);
  text-decoration: none;
}

.qy-cart-category-second a span {
  position: relative;
  padding-left: 16px;
}

.qy-cart-category-second a span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #93c5fd;
  transform: translateY(-50%);
}

.qy-cart-category-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 18px 18px;
  padding: 13px 14px;
  border: 1px solid #eef3f8;
  border-radius: 18px;
  background: #f8fbff;
}

.qy-cart-category-footer span {
  color: #64748b;
  font-size: 13px;
  font-weight: 800;
}

.qy-cart-category-footer a {
  color: #1263ff;
  font-size: 13px;
  font-weight: 900;
  text-decoration: none;
}

.qy-cart-product-panel {
  overflow: hidden;
  border: 1px solid rgba(226, 232, 240, 0.94);
  border-radius: 28px;
  background: #ffffff;
  box-shadow: 0 22px 62px rgba(15, 23, 42, 0.08);
}

.qy-cart-product-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 24px 26px 20px;
  border-bottom: 1px solid #eef3f8;
}

.qy-cart-product-panel-head h2 {
  margin: 0;
  color: #0f172a;
  font-size: 24px;
  line-height: 1.25;
  font-weight: 900;
}

.qy-cart-product-panel-head p {
  margin: 0;
  color: #64748b;
  font-size: 14px;
  line-height: 1.7;
}

.qy-cart-product-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  padding: 22px;
}

.qy-cart-product-card {
  position: relative;
  overflow: hidden;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  border: 1px solid #eef3f8;
  border-radius: 24px;
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.05);
  transition: 0.18s ease;
}

.qy-cart-product-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: #1263ff;
  opacity: 0;
  transition: 0.18s ease;
}

.qy-cart-product-card:hover {
  transform: translateY(-4px);
  border-color: #cfe0ff;
  box-shadow: 0 22px 48px rgba(18, 99, 255, 0.12);
}

.qy-cart-product-card:hover::before {
  opacity: 1;
}

.qy-cart-product-card-head {
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 20px 18px 14px;
}

.qy-cart-product-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  color: #000000 !important;
  border-radius: 18px;
  background: #1263ff;
  box-shadow: 0 14px 30px rgba(18, 99, 255, 0.18);
  font-size: 17px;
  font-weight: 900;
}

.qy-cart-product-card h3 {
  margin: 0;
  color: #0f172a;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 900;
}

.qy-cart-stock {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  margin-top: 6px;
  padding: 0 8px;
  color: #1263ff;
  border-radius: 999px;
  background: #edf4ff;
  font-size: 12px;
  font-weight: 900;
}

.qy-cart-product-desc {
  flex: 1;
  padding: 0 18px;
}

.qy-cart-product-desc pre {
  max-height: 112px;
  overflow: hidden;
  margin: 0;
  color: #64748b;
  font-family: inherit;
  font-size: 13px;
  line-height: 1.75;
  white-space: pre-wrap;
}

.qy-cart-product-price {
  display: grid;
  gap: 7px;
  margin: 18px;
  padding: 16px;
  border-radius: 18px;
  background: #f8fbff;
}

.qy-cart-product-price > div {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px;
}

.qy-cart-product-price span {
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
}

.qy-cart-product-price strong {
  color: #1263ff;
  font-size: 24px;
  line-height: 1;
  font-weight: 900;
}

.qy-cart-product-price em {
  color: #64748b;
  font-style: normal;
  font-size: 13px;
  font-weight: 800;
}

.qy-cart-product-price small {
  color: #94a3b8;
  font-size: 12px;
  line-height: 1.5;
}

.qy-cart-buy-btn {
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 18px 18px;
  padding: 0 18px;
  color: #000000 !important;
  border-radius: 999px;
  background: #1263ff;
  box-shadow: none;
  font-size: 14px;
  font-weight: 900;
  text-decoration: none !important;
  transition: 0.18s ease;
}

.qy-cart-buy-btn:hover {
  transform: translateY(-2px);
  box-shadow: none;
}

.qy-cart-buy-btn i {
  font-style: normal;
  font-size: 18px;
}

.qy-cart-empty-products {
  min-height: 320px;
  display: grid;
  place-items: center;
  padding: 40px;
  text-align: center;
}

.qy-cart-empty-products div {
  color: #0f172a;
  font-size: 24px;
  font-weight: 900;
}

.qy-cart-empty-products p {
  margin: 10px 0 0;
  color: #64748b;
}

@media (max-width: 1380px) {
  .qy-cart-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991px) {
  .qy-cart-shop-hero {
    grid-template-columns: 1fr;
    padding: 26px;
  }

  .qy-cart-sidebar-col,
  .qy-cart-product-main {
    padding-left: 15px;
    padding-right: 15px;
  }

  .qy-cart-category-card {
    position: relative;
    top: auto;
    margin-bottom: 18px;
  }
}

@media (max-width: 640px) {
  .qy-cart-shop-hero {
    border-radius: 24px;
    padding: 22px;
  }

  .qy-cart-shop-stats {
    display: none;
  }

  .qy-cart-product-panel,
  .qy-cart-category-card {
    border-radius: 22px;
  }

  .qy-cart-product-grid {
    grid-template-columns: 1fr;
    padding: 16px;
  }

  .qy-cart-product-panel-head {
    padding: 20px;
  }
}


/* =========================================================
   qy-cart luansui-like v3：参考峦穗云产品页的选购布局
   ========================================================= */

body.qy-cart-mode .vertical-menu {
  display: none !important;
}

body.qy-cart-mode .main-content {
  margin-left: 0 !important;
}

body.qy-cart-mode #page-topbar {
  left: 0 !important;
}

.qy-cart-ls-page {
  padding: 10px 0 46px;
  background: #ffffff;
}

.qy-cart-ls-page::before {
  display: none;
}

.qy-cart-ls-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 18px;
  align-items: flex-start;
  margin-bottom: 22px;
  padding: 26px 30px;
  border: 1px solid #e2e8f0;
  border-radius: 26px;
  background: #ffffff;
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.06);
}

.qy-cart-ls-back {
  min-width: 62px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #1263ff;
  border: 1px solid #dbeafe;
  border-radius: 999px;
  background: #edf4ff;
  font-size: 13px;
  font-weight: 900;
  text-decoration: none !important;
}

.qy-cart-ls-head h1 {
  margin: 0;
  color: #0f172a;
  font-size: clamp(26px, 3vw, 38px);
  line-height: 1.18;
  font-weight: 900;
  letter-spacing: -0.6px;
}

.qy-cart-ls-head p {
  max-width: 820px;
  margin: 12px 0 0;
  color: #64748b;
  font-size: 15px;
  line-height: 1.8;
}

.qy-cart-ls-layout {
  align-items: flex-start;
}

.qy-cart-ls-sidebar-col {
  padding-right: 10px;
}

.qy-cart-ls-main {
  padding-left: 10px;
}

.qy-cart-ls-category {
  position: sticky;
  top: 92px;
  overflow: hidden;
  border: 1px solid #e2e8f0;
  border-radius: 24px;
  background: #ffffff;
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.06);
}

.qy-cart-ls-category-title {
  padding: 22px 20px 16px;
  border-bottom: 1px solid #eef3f8;
}

.qy-cart-ls-category-title h3 {
  margin: 0;
  color: #0f172a;
  font-size: 22px;
  line-height: 1.25;
  font-weight: 900;
}

.qy-cart-ls-category-title span {
  display: block;
  margin-top: 8px;
  color: #94a3b8;
  font-size: 12px;
  font-weight: 800;
}

.qy-cart-ls-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 58px;
  gap: 8px;
  padding: 16px;
  border-bottom: 1px solid #eef3f8;
}

.qy-cart-ls-search input {
  min-width: 0;
  height: 42px;
  padding: 0 13px;
  color: #0f172a;
  border: 1px solid #dbe3ec;
  border-radius: 12px;
  outline: none;
  background: #f8fbff;
  font-size: 13px;
  font-weight: 800;
}

.qy-cart-ls-search input:focus {
  border-color: #93c5fd;
  background: #ffffff;
  box-shadow: 0 0 0 4px rgba(18, 99, 255, 0.08);
}

.qy-cart-ls-search button {
  height: 42px;
  color: #000000 !important;
  border: 0;
  border-radius: 12px;
  background: #1263ff;
  font-size: 13px;
  font-weight: 900;
}

.qy-cart-ls-category-list {
  display: grid;
  gap: 0;
  padding: 10px;
}

.qy-cart-ls-category-group {
  border-radius: 16px;
}

.qy-cart-ls-first {
  width: 100%;
  min-height: 46px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 14px;
  color: #334155;
  border: 0;
  border-radius: 14px;
  background: transparent;
  font-size: 14px;
  font-weight: 900;
  text-align: left;
}

.qy-cart-ls-first:hover,
.qy-cart-ls-category-group.is-open .qy-cart-ls-first {
  color: #1263ff;
  background: #edf4ff;
}

.qy-cart-ls-first i {
  position: relative;
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
}

.qy-cart-ls-first i::before,
.qy-cart-ls-first i::after {
  content: "";
  position: absolute;
  left: 4px;
  right: 4px;
  top: 8px;
  height: 2px;
  border-radius: 999px;
  background: #1263ff;
}

.qy-cart-ls-first i::after {
  transform: rotate(90deg);
  transition: 0.18s ease;
}

.qy-cart-ls-category-group.is-open .qy-cart-ls-first i::after {
  transform: rotate(0deg);
}

.qy-cart-ls-second {
  display: none;
  padding: 4px 8px 10px;
}

.qy-cart-ls-category-group.is-open .qy-cart-ls-second {
  display: grid;
  gap: 4px;
}

.qy-cart-ls-second a {
  min-height: 38px;
  display: flex;
  align-items: center;
  padding: 0 12px 0 24px;
  color: #64748b;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 850;
  text-decoration: none !important;
}

.qy-cart-ls-second a:hover,
.qy-cart-ls-second a.is-active {
  color: #1263ff;
  background: #f8fbff;
}

.qy-cart-ls-category-empty {
  min-height: 160px;
  display: grid;
  place-items: center;
  margin: 14px;
  color: #64748b;
  border: 1px dashed #dbeafe;
  border-radius: 16px;
  background: #f8fbff;
  font-weight: 900;
}

.qy-cart-ls-notice {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
  padding: 18px 20px;
  border: 1px solid #dbeafe;
  border-radius: 22px;
  background: #ffffff;
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.05);
}

.qy-cart-ls-notice strong {
  display: block;
  color: #0f172a;
  font-size: 16px;
  font-weight: 900;
}

.qy-cart-ls-notice span {
  display: block;
  margin-top: 6px;
  color: #64748b;
  font-size: 13px;
  line-height: 1.7;
}

.qy-cart-ls-notice a {
  min-width: 100px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #1263ff;
  border: 1px solid #dbeafe;
  border-radius: 999px;
  background: #edf4ff;
  font-size: 13px;
  font-weight: 900;
  text-decoration: none !important;
}

.qy-cart-ls-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.qy-cart-ls-card {
  position: relative;
  overflow: hidden;
  display: flex;
  min-height: 100%;
  flex-direction: column;
  border: 1px solid #e2e8f0;
  border-radius: 22px;
  background: #ffffff;
  box-shadow: 0 16px 42px rgba(15, 23, 42, 0.055);
  transition: 0.18s ease;
}

.qy-cart-ls-card::before {
  content: none !important;
  display: none !important;
}

.qy-cart-ls-card:hover {
  transform: translateY(-4px);
  border-color: #cfe0ff;
  box-shadow: 0 24px 54px rgba(18, 99, 255, 0.12);
}

.qy-cart-ls-card:hover::before {
  content: none !important;
  display: none !important;
}

.qy-cart-ls-card-top {
  min-height: 92px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 22px 20px 14px;
}

.qy-cart-ls-card h5 {
  margin: 0;
  color: #0f172a;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 900;
}

.qy-cart-ls-card-top span {
  display: block;
  margin-top: 8px;
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
}

.qy-cart-ls-tag {
  min-width: 42px;
  height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #1263ff;
  border-radius: 999px;
  background: #edf4ff;
  font-size: 12px;
  font-weight: 900;
}

.qy-cart-ls-spec {
  flex: 1;
  margin: 0 20px;
  padding: 15px 16px;
  border-radius: 16px;
  background: #ffffff;
}

.qy-cart-ls-spec pre {
  min-height: 104px;
  max-height: 150px;
  overflow: hidden;
  margin: 0;
  color: #475569;
  font-family: inherit;
  font-size: 13px;
  line-height: 1.8;
  white-space: pre-wrap;
}

.qy-cart-ls-line {
  height: 1px;
  margin: 18px 20px 0;
  background: #eef3f8;
}

.qy-cart-ls-service {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 20px;
  padding: 14px 0;
}

.qy-cart-ls-service span {
  color: #64748b;
  font-size: 13px;
  font-weight: 850;
}

.qy-cart-ls-service strong {
  color: #0f172a;
  font-size: 13px;
  font-weight: 900;
}

.qy-cart-ls-bottom {
  display: grid;
  gap: 14px;
  margin-top: auto;
  padding: 0 20px 20px;
}

.qy-cart-ls-price {
  display: grid;
  gap: 4px;
}

.qy-cart-ls-price strong {
  color: #1263ff;
  font-size: 26px;
  line-height: 1;
  font-weight: 900;
}

.qy-cart-ls-price em {
  color: #64748b;
  font-style: normal;
  font-size: 13px;
  font-weight: 850;
}

.qy-cart-ls-price small {
  color: #94a3b8;
  font-size: 12px;
  line-height: 1.6;
}

.qy-cart-ls-buy {
  width: calc(100% + 40px);
  height: 46px;
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  align-items: center;
  justify-content: center;
  margin-left: -20px;
  box-sizing: border-box;
  color: #ffffff !important;
  border-radius: 999px;
  background: rgba(74, 104, 255, 1);
  box-shadow: none;
  font-size: 14px;
  font-weight: 900;
  text-decoration: none !important;
  transition: 0.18s ease;
}

.qy-cart-ls-buy:hover {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #ffffff !important;
  background: rgba(74, 104, 255, 1);
  transform: none;
  box-shadow: none;
}

.qy-cart-ls-empty {
  min-height: 320px;
  display: grid;
  place-items: center;
  padding: 40px;
  border: 1px dashed #dbeafe;
  border-radius: 22px;
  background: #ffffff;
  text-align: center;
}

.qy-cart-ls-empty strong {
  color: #0f172a;
  font-size: 24px;
  font-weight: 900;
}

.qy-cart-ls-empty span {
  margin-top: 8px;
  color: #64748b;
}

@media (max-width: 1380px) {
  .qy-cart-ls-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991px) {
  .qy-cart-ls-head {
    grid-template-columns: 1fr;
  }

  .qy-cart-ls-sidebar-col,
  .qy-cart-ls-main {
    padding-left: 15px;
    padding-right: 15px;
  }

  .qy-cart-ls-category {
    position: relative;
    top: auto;
    margin-bottom: 18px;
  }
}

@media (max-width: 640px) {
  .qy-cart-ls-head {
    padding: 22px;
    border-radius: 22px;
  }

  .qy-cart-ls-notice {
    display: block;
  }

  .qy-cart-ls-notice a {
    width: 100%;
    margin-top: 14px;
  }

  .qy-cart-ls-grid {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   qy-cart final：web common header + 商品描述基础适配
   ========================================================= */

/* 不要用户中心默认顶部和左侧菜单，购物车使用 qiyueyun web header */
body.qy-cart-mode .vertical-menu,
body.qy-cart-mode #page-topbar {
  display: none !important;
}

body.qy-cart-mode .main-content {
  margin-left: 0 !important;
}

body.qy-cart-mode .page-content {
  padding-top: 0 !important;
}

body.qy-cart-mode .container-fluid {
  max-width: 1440px;
}

/* web header 放到购物车顶部时，避免被后台布局压缩 */








/* 同一行卡片高度统一 */
.qy-cart-ls-grid,
.qy-cart-product-grid {
  align-items: stretch;
}

.qy-cart-ls-card,
.qy-cart-product-card {
  height: 100%;
}

.qy-cart-ls-bottom,
.qy-cart-product-price {
  margin-top: auto;
}

/* 商品描述区基础适配；table / .tftable 样式交由购物车自定义 CSS 管理 */
.qy-cart-ls-spec,
.qy-cart-product-desc {
  overflow: visible;
}

.qy-cart-ls-spec pre,
.qy-cart-product-desc pre {
  max-height: none !important;
  min-height: 0 !important;
  overflow: visible !important;
  margin: 0 !important;
  color: #475569;
  font-family: inherit !important;
  font-size: 13px;
  line-height: 1.75;
  white-space: normal !important;
  word-break: break-word;
}




/* =========================================================
   qy-cart final：隐藏用户中心默认面包屑/页面标题
   对应：购物车 / 用户中心 > 购物车 这一块
   ========================================================= */
body.qy-cart-mode .page-content > .container-fluid:first-child,
body.qy-cart-mode .page-title-box,
body.qy-cart-mode .page-title-right,
body.qy-cart-mode .breadcrumb {
  display: none !important;
}

body.qy-cart-mode .page-content {
  padding-top: 0 !important;
}

body.qy-cart-mode .page-content > .container-fluid {
  padding-top: 0 !important;
}


/* =========================================================
   qy-cart configure v4：产品配置页选配按钮精修
   作用范围：.qy-cart-configure-page
   ========================================================= */

.qy-cart-configure-page {
  padding-bottom: 48px;
}

.qy-cart-configure-page > form > .row {
  align-items: flex-start;
}

.qy-cart-configure-page .col-xl-8 > .card:first-child {
  overflow: hidden;
  border: 1px solid #dbeafe !important;
  border-radius: 28px 28px 0 0 !important;
  background: #ffffff !important;
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.06) !important;
}

.qy-cart-configure-page .col-xl-8 > .card:first-child .card-body {
  padding: 26px 28px !important;
}

.qy-cart-configure-page .col-xl-8 > .card:first-child .card-title {
  margin: 0 !important;
  color: #0f172a !important;
  font-size: 28px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  letter-spacing: -0.4px;
}

.qy-cart-configure-page .col-xl-8 > .card:nth-child(2) {
  overflow: hidden;
  border: 1px solid #e2e8f0 !important;
  border-top: 0 !important;
  border-radius: 0 0 28px 28px !important;
  background: #ffffff !important;
  box-shadow: 0 22px 62px rgba(15, 23, 42, 0.08) !important;
}

.qy-cart-configure-page .col-xl-8 > .card:nth-child(2) > .card-body {
  padding: 8px 28px 30px !important;
}

.qy-cart-configure-page .configureproduct,
.qy-cart-configure-page .form-group.row {
  position: relative;
  align-items: flex-start !important;
  margin: 0 !important;
  padding: 22px 0 !important;
  border-bottom: 1px solid #eef3f8;
}

.qy-cart-configure-page .configureproduct:last-child,
.qy-cart-configure-page .form-group.row:last-child {
  border-bottom: 0;
}

.qy-cart-configure-page .col-form-label {
  min-height: 40px;
  display: flex !important;
  align-items: center;
  color: #0f172a !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.4 !important;
}

.qy-cart-configure-page .col-form-label::before {
  content: "";
  width: 7px;
  height: 18px;
  flex: 0 0 auto;
  margin-right: 10px;
  border-radius: 999px;
  background: #1263ff;
}

.qy-cart-configure-page .bx.bxs-help-circle {
  margin-left: 6px;
  color: #1263ff !important;
}

.qy-cart-configure-page .btn-group-toggle,
.qy-cart-configure-page .btn-custom-group,
.qy-cart-configure-page .cycle,
.qy-cart-configure-page .justify-content-start {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  align-items: stretch !important;
  width: 100% !important;
}

.qy-cart-configure-page .btn-group,
.qy-cart-configure-page .btn-group-toggle {
  vertical-align: top !important;
}

.qy-cart-configure-page .btn-group-toggle > .btn,
.qy-cart-configure-page .btn-group-toggle label.btn,
.qy-cart-configure-page .btn-custom,
.qy-cart-configure-page label.btn.btn-primary,
.qy-cart-configure-page label.btn.btn-sm,
.qy-cart-configure-page .cycle label.btn {
  position: relative !important;
  min-width: 94px !important;
  min-height: 42px !important;
  height: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  margin: 0 !important;
  padding: 10px 16px !important;
  color: #334155 !important;
  border: 1px solid #dbe3ec !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.035) !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  transition: 0.18s ease !important;
}

.qy-cart-configure-page .btn-group-toggle > .btn:hover,
.qy-cart-configure-page .btn-group-toggle label.btn:hover,
.qy-cart-configure-page .btn-custom:hover,
.qy-cart-configure-page label.btn.btn-primary:hover,
.qy-cart-configure-page label.btn.btn-sm:hover,
.qy-cart-configure-page .cycle label.btn:hover {
  color: #1263ff !important;
  border-color: #bfdbfe !important;
  background: #f8fbff !important;
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(18, 99, 255, 0.10) !important;
}

.qy-cart-configure-page .btn-group-toggle > .btn.active,
.qy-cart-configure-page .btn-group-toggle label.btn.active,
.qy-cart-configure-page .btn-custom-group .active,
.qy-cart-configure-page .cycle label.btn.active,
.qy-cart-configure-page label.btn.btn-primary.active,
.qy-cart-configure-page label.btn.btn-sm.active {
  color: #1263ff !important;
  border-color: #1263ff !important;
  background: #edf4ff !important;
  box-shadow: 0 16px 32px rgba(18, 99, 255, 0.14) !important;
}

.qy-cart-configure-page .btn-group-toggle > .btn.active::after,
.qy-cart-configure-page .btn-group-toggle label.btn.active::after,
.qy-cart-configure-page .btn-custom-group .active::after,
.qy-cart-configure-page .cycle label.btn.active::after,
.qy-cart-configure-page label.btn.btn-primary.active::after,
.qy-cart-configure-page label.btn.btn-sm.active::after {
  content: "✓";
  position: absolute;
  right: -1px;
  top: -1px;
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  color: #000000 !important;
  border-radius: 0 15px 0 12px;
  background: #1263ff;
  font-size: 12px;
  font-weight: 900;
}

.qy-cart-configure-page .btn-group-toggle input[type="radio"],
.qy-cart-configure-page .btn-group-toggle input[type="checkbox"],
.qy-cart-configure-page label.btn input {
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.qy-cart-configure-page .cycle label.btn,
.qy-cart-configure-page .cycle .btn-custom {
  min-width: 122px !important;
  min-height: 48px !important;
  padding: 13px 18px !important;
  border-radius: 18px !important;
}

.qy-cart-configure-page .cycle-select-discount {
  top: -9px !important;
  right: 10px !important;
  height: 22px !important;
  display: inline-flex !important;
  align-items: center;
  padding: 0 8px !important;
  color: #000000 !important;
  border-radius: 999px !important;
  background: #ef4444 !important;
  box-shadow: 0 8px 18px rgba(239, 68, 68, 0.18);
  font-size: 12px !important;
  line-height: 22px !important;
  font-weight: 900 !important;
}

.qy-cart-configure-page .form-check {
  margin: 0 10px 10px 0 !important;
  padding-left: 0 !important;
}

.qy-cart-configure-page .form-check-input {
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.qy-cart-configure-page .form-check-label {
  min-height: 42px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  color: #334155;
  border: 1px solid #dbe3ec;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.035);
  font-size: 14px;
  font-weight: 900;
  cursor: pointer;
  transition: 0.18s ease;
}

.qy-cart-configure-page .form-check-input:checked + .form-check-label,
.qy-cart-configure-page .form-check-label:hover {
  color: #1263ff;
  border-color: #1263ff;
  background: #edf4ff;
}

.qy-cart-configure-page .custom-control {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  margin: 0 10px 10px 0 !important;
  padding-left: 0 !important;
}

.qy-cart-configure-page .custom-control-label {
  min-height: 42px;
  display: inline-flex !important;
  align-items: center;
  padding: 10px 16px 10px 42px;
  color: #334155;
  border: 1px solid #dbe3ec;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.035);
  font-size: 14px;
  font-weight: 900;
  cursor: pointer;
}

.qy-cart-configure-page .custom-control-label::before {
  left: 14px !important;
  top: 50% !important;
  width: 18px !important;
  height: 18px !important;
  border-color: #bfdbfe !important;
  border-radius: 6px !important;
  background: #edf4ff !important;
  transform: translateY(-50%);
}

.qy-cart-configure-page .custom-control-label::after {
  left: 14px !important;
  top: 50% !important;
  width: 18px !important;
  height: 18px !important;
  transform: translateY(-50%);
}

.qy-cart-configure-page .custom-control-input:checked ~ .custom-control-label {
  color: #1263ff;
  border-color: #1263ff;
  background: #edf4ff;
}

.qy-cart-configure-page .custom-control-input:checked ~ .custom-control-label::before {
  border-color: #1263ff !important;
  background: #1263ff !important;
}

.qy-cart-configure-page .bootstrap-select {
  width: 100% !important;
}

.qy-cart-configure-page .bootstrap-select > .dropdown-toggle,
.qy-cart-configure-page .selectpicker + .dropdown-toggle {
  min-height: 46px !important;
  padding: 0 16px !important;
  color: #334155 !important;
  border: 1px solid #dbe3ec !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.035) !important;
  font-size: 14px !important;
  font-weight: 900 !important;
}

.qy-cart-configure-page .bootstrap-select > .dropdown-toggle:hover,
.qy-cart-configure-page .bootstrap-select.show > .dropdown-toggle {
  color: #1263ff !important;
  border-color: #1263ff !important;
  background: #edf4ff !important;
}

.qy-cart-configure-page .dropdown-menu {
  overflow: hidden;
  border: 1px solid #dbeafe !important;
  border-radius: 18px !important;
  box-shadow: 0 22px 54px rgba(15, 23, 42, 0.14) !important;
}

.qy-cart-configure-page .dropdown-item {
  min-height: 38px;
  color: #334155 !important;
  font-weight: 850 !important;
}

.qy-cart-configure-page .dropdown-item:hover,
.qy-cart-configure-page .dropdown-item.active,
.qy-cart-configure-page .dropdown-item:active {
  color: #1263ff !important;
  background: #edf4ff !important;
}

.qy-cart-configure-page .form-control {
  min-height: 46px !important;
  border: 1px solid #dbe3ec !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: none !important;
  color: #0f172a !important;
  font-size: 14px !important;
  font-weight: 850 !important;
}

.qy-cart-configure-page .form-control:focus {
  border-color: #1263ff !important;
  box-shadow: 0 0 0 5px rgba(18, 99, 255, 0.08) !important;
}

.qy-cart-configure-page input[type="range"],
.qy-cart-configure-page .configoption_range {
  height: 8px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #1263ff, #20b8ff) !important;
}

.qy-cart-configure-page input[type="range"]::-webkit-slider-thumb {
  width: 22px !important;
  height: 22px !important;
  border: 5px solid #ffffff !important;
  border-radius: 50% !important;
  background: #1263ff !important;
  box-shadow: 0 8px 18px rgba(18, 99, 255, 0.25) !important;
}

.qy-cart-configure-page input[type="range"]::-moz-range-thumb {
  width: 22px !important;
  height: 22px !important;
  border: 5px solid #ffffff !important;
  border-radius: 50% !important;
  background: #1263ff !important;
  box-shadow: 0 8px 18px rgba(18, 99, 255, 0.25) !important;
}

.qy-cart-configure-page .configoption_range_val {
  max-width: 92px !important;
  min-width: 72px !important;
  margin-left: 14px !important;
  text-align: center;
}

.qy-cart-configure-page .col-xl-4 {
  position: sticky;
  top: 92px;
}

.qy-cart-configure-page .col-xl-4 .card {
  overflow: hidden;
  border: 1px solid #dbeafe !important;
  border-radius: 28px !important;
  background: #ffffff !important;
  box-shadow: 0 22px 62px rgba(15, 23, 42, 0.08) !important;
}

.qy-cart-configure-page .col-xl-4 .card-title {
  margin-bottom: 18px !important;
  color: #0f172a !important;
  font-size: 20px !important;
  font-weight: 900 !important;
}

.qy-cart-configure-page .configoption_total {
  color: #475569;
}

.qy-cart-configure-page button[type="submit"],
.qy-cart-configure-page .btn-block,
.qy-cart-configure-page .btn-primary:not(label) {
  min-height: 46px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #1263ff !important;
  box-shadow: 0 16px 34px rgba(18, 99, 255, 0.22) !important;
  color: #000000 !important;
  font-weight: 900 !important;
}

@media (max-width: 1199px) {
  .qy-cart-configure-page .col-xl-4 {
    position: relative;
    top: auto;
    margin-top: 18px;
  }
}

@media (max-width: 768px) {
  .qy-cart-configure-page .col-xl-8 > .card:first-child .card-title {
    font-size: 23px !important;
  }

  .qy-cart-configure-page .col-xl-8 > .card:first-child .card-body,
  .qy-cart-configure-page .col-xl-8 > .card:nth-child(2) > .card-body {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .qy-cart-configure-page .configureproduct,
  .qy-cart-configure-page .form-group.row {
    padding: 18px 0 !important;
  }

  .qy-cart-configure-page .col-form-label {
    margin-bottom: 10px;
  }

  .qy-cart-configure-page .btn-group-toggle > .btn,
  .qy-cart-configure-page .btn-group-toggle label.btn,
  .qy-cart-configure-page .btn-custom,
  .qy-cart-configure-page label.btn.btn-primary,
  .qy-cart-configure-page label.btn.btn-sm,
  .qy-cart-configure-page .cycle label.btn {
    min-width: calc(50% - 5px) !important;
    flex: 1 1 calc(50% - 5px) !important;
  }

  .qy-cart-configure-page .configoption_range_val {
    max-width: 78px !important;
  }
}

@media (max-width: 420px) {
  .qy-cart-configure-page .btn-group-toggle > .btn,
  .qy-cart-configure-page .btn-group-toggle label.btn,
  .qy-cart-configure-page .btn-custom,
  .qy-cart-configure-page label.btn.btn-primary,
  .qy-cart-configure-page label.btn.btn-sm,
  .qy-cart-configure-page .cycle label.btn {
    min-width: 100% !important;
    flex-basis: 100% !important;
  }
}


/* =========================================================
   qy-cart configure v5：修复选配按钮尺寸、镜像下拉错位
   ========================================================= */

/* 配置项左标题 + 右内容，保持一行结构，不让控件乱撑 */
.qy-cart-configure-page .configureproduct,
.qy-cart-configure-page .form-group.row {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 18px !important;
  padding: 22px 0 !important;
}

.qy-cart-configure-page .configureproduct > label.col-form-label,
.qy-cart-configure-page .form-group.row > label.col-form-label {
  flex: 0 0 128px !important;
  width: 128px !important;
  max-width: 128px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin: 0 !important;
}

/* 右侧内容区统一，不继承 Bootstrap 的 col 宽度导致挤压 */
.qy-cart-configure-page .configureproduct > .col-md-10,
.qy-cart-configure-page .form-group.row > .col-md-10 {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.qy-cart-configure-page .configureproduct > .col-md-3,
.qy-cart-configure-page .form-group.row > .col-md-3,
.qy-cart-configure-page .configureproduct > .col-md-2,
.qy-cart-configure-page .form-group.row > .col-md-2,
.qy-cart-configure-page .configureproduct > .col-8,
.qy-cart-configure-page .form-group.row > .col-8 {
  flex: 0 0 220px !important;
  width: 220px !important;
  max-width: 220px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 操作系统这种两个下拉框并排，保持统一宽度 */
.qy-cart-configure-page .configureproduct > .col-md-2 + .col-md-3,
.qy-cart-configure-page .form-group.row > .col-md-2 + .col-md-3 {
  margin-left: 10px !important;
}

/* 按钮区域：只换行，不拉伸，大小统一 */
.qy-cart-configure-page .btn-group-toggle,
.qy-cart-configure-page .btn-custom-group,
.qy-cart-configure-page .cycle,
.qy-cart-configure-page .justify-content-start {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  width: 100% !important;
}

/* 普通选配按钮统一尺寸：CPU/内存/系统盘/数据盘/DDOS/内网IP等 */
.qy-cart-configure-page .btn-group-toggle > label.btn,
.qy-cart-configure-page .btn-group-toggle > .btn,
.qy-cart-configure-page label.btn.btn-primary,
.qy-cart-configure-page label.btn.btn-sm,
.qy-cart-configure-page .btn-custom {
  flex: 0 0 118px !important;
  width: 118px !important;
  min-width: 118px !important;
  max-width: 118px !important;
  min-height: 44px !important;
  height: 44px !important;
  padding: 0 12px !important;
  overflow: visible !important;
  white-space: nowrap !important;
  text-align: center !important;
}

/* 周期按钮单独略宽，但也统一 */
.qy-cart-configure-page .cycle > label.btn,
.qy-cart-configure-page .cycle .btn-custom {
  flex: 0 0 130px !important;
  width: 130px !important;
  min-width: 130px !important;
  max-width: 130px !important;
  min-height: 48px !important;
  height: 48px !important;
}

/* 否/是 这种二选一不要撑满一整行 */
.qy-cart-configure-page .btn-group-toggle > label.btn:only-child {
  flex: 0 0 118px !important;
  width: 118px !important;
}

/* 防止图标和文字挤爆按钮 */
.qy-cart-configure-page label.btn img {
  width: 20px !important;
  height: 20px !important;
  object-fit: contain !important;
  flex: 0 0 20px !important;
}

/* selectpicker 和普通 select 尺寸统一 */
.qy-cart-configure-page .bootstrap-select,
.qy-cart-configure-page select.form-control,
.qy-cart-configure-page .selectpicker {
  width: 220px !important;
  max-width: 220px !important;
}

.qy-cart-configure-page .bootstrap-select > .dropdown-toggle,
.qy-cart-configure-page .selectpicker + .dropdown-toggle {
  width: 220px !important;
  min-height: 46px !important;
  height: 46px !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 36px 0 14px !important;
  overflow: hidden !important;
}

.qy-cart-configure-page .bootstrap-select .filter-option {
  display: flex !important;
  align-items: center !important;
  min-width: 0 !important;
}

.qy-cart-configure-page .bootstrap-select .filter-option-inner,
.qy-cart-configure-page .bootstrap-select .filter-option-inner-inner {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

/* 下拉菜单不遮挡成一大片，宽度跟按钮一致 */
.qy-cart-configure-page .bootstrap-select .dropdown-menu {
  width: 220px !important;
  min-width: 220px !important;
  max-width: 260px !important;
  border-radius: 16px !important;
}

.qy-cart-configure-page .bootstrap-select .dropdown-menu.inner {
  max-height: 260px !important;
  overflow-y: auto !important;
}

.qy-cart-configure-page .bootstrap-select .dropdown-item {
  min-height: 38px !important;
  padding: 8px 12px !important;
  font-size: 13px !important;
}

.qy-cart-configure-page .bootstrap-select .dropdown-item img {
  width: 20px !important;
  height: 20px !important;
  object-fit: contain !important;
}

/* 滑块行恢复正常，不被固定按钮宽度影响 */
.qy-cart-configure-page .configoption_range {
  flex: 1 1 auto !important;
  min-width: 260px !important;
  max-width: none !important;
  width: auto !important;
}

.qy-cart-configure-page .configoption_range_val {
  flex: 0 0 86px !important;
  width: 86px !important;
  max-width: 86px !important;
  min-width: 86px !important;
  margin-left: 14px !important;
}

/* 主机名/密码输入框宽度统一 */
.qy-cart-configure-page input[name="host"],
.qy-cart-configure-page #password,
.qy-cart-configure-page .getPassword {
  width: 220px !important;
  max-width: 220px !important;
}

/* 覆盖上一版移动端把按钮强制 50% 的规则，桌面绝对不拉伸 */
@media (min-width: 769px) {
  .qy-cart-configure-page .btn-group-toggle > .btn,
  .qy-cart-configure-page .btn-group-toggle label.btn,
  .qy-cart-configure-page .btn-custom,
  .qy-cart-configure-page label.btn.btn-primary,
  .qy-cart-configure-page label.btn.btn-sm,
  .qy-cart-configure-page .cycle label.btn {
    flex-grow: 0 !important;
    flex-shrink: 0 !important;
  }
}

@media (max-width: 768px) {
  .qy-cart-configure-page .configureproduct,
  .qy-cart-configure-page .form-group.row {
    display: block !important;
  }

  .qy-cart-configure-page .configureproduct > label.col-form-label,
  .qy-cart-configure-page .form-group.row > label.col-form-label {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 10px !important;
  }

  .qy-cart-configure-page .configureproduct > .col-md-10,
  .qy-cart-configure-page .form-group.row > .col-md-10,
  .qy-cart-configure-page .configureproduct > .col-md-3,
  .qy-cart-configure-page .form-group.row > .col-md-3,
  .qy-cart-configure-page .configureproduct > .col-md-2,
  .qy-cart-configure-page .form-group.row > .col-md-2,
  .qy-cart-configure-page .configureproduct > .col-8,
  .qy-cart-configure-page .form-group.row > .col-8 {
    width: 100% !important;
    max-width: 100% !important;
  }

  .qy-cart-configure-page .btn-group-toggle > label.btn,
  .qy-cart-configure-page .btn-group-toggle > .btn,
  .qy-cart-configure-page label.btn.btn-primary,
  .qy-cart-configure-page label.btn.btn-sm,
  .qy-cart-configure-page .btn-custom,
  .qy-cart-configure-page .cycle > label.btn,
  .qy-cart-configure-page .cycle .btn-custom {
    flex: 0 0 calc(50% - 5px) !important;
    width: calc(50% - 5px) !important;
    max-width: calc(50% - 5px) !important;
  }

  .qy-cart-configure-page .bootstrap-select,
  .qy-cart-configure-page select.form-control,
  .qy-cart-configure-page .selectpicker,
  .qy-cart-configure-page .bootstrap-select > .dropdown-toggle,
  .qy-cart-configure-page .selectpicker + .dropdown-toggle,
  .qy-cart-configure-page input[name="host"],
  .qy-cart-configure-page #password,
  .qy-cart-configure-page .getPassword {
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 420px) {
  .qy-cart-configure-page .btn-group-toggle > label.btn,
  .qy-cart-configure-page .btn-group-toggle > .btn,
  .qy-cart-configure-page label.btn.btn-primary,
  .qy-cart-configure-page label.btn.btn-sm,
  .qy-cart-configure-page .btn-custom,
  .qy-cart-configure-page .cycle > label.btn,
  .qy-cart-configure-page .cycle .btn-custom {
    flex-basis: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* =========================================================
   qy-cart configure v6：区域/机型自适应 + 镜像不换行 + 不影响导航/页脚
   ========================================================= */

/* 确保购物车配置页样式只作用在配置页容器里的表单，不碰 web header 与 footer */


/* 区域、数据中心、机型、镜像这些长文本项自动宽度 */
.qy-cart-configure-page #addCartForm .qy-cart-adaptive-option .btn-group-toggle > label.btn,
.qy-cart-configure-page #addCartForm .qy-cart-adaptive-option .btn-group-toggle > .btn,
.qy-cart-configure-page #addCartForm .qy-cart-adaptive-option label.btn.btn-primary,
.qy-cart-configure-page #addCartForm .qy-cart-adaptive-option label.btn.btn-sm,
.qy-cart-configure-page #addCartForm .qy-cart-adaptive-option .btn-custom {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 148px !important;
  max-width: 100% !important;
  padding-left: 18px !important;
  padding-right: 18px !important;
}

/* 区域/机型类可以更宽，避免文字挤 */
.qy-cart-configure-page #addCartForm .qy-cart-wide-option .btn-group-toggle > label.btn,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option .btn-group-toggle > .btn,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option label.btn.btn-primary,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option label.btn.btn-sm,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option .btn-custom {
  min-width: 176px !important;
}

/* 镜像/系统下拉：图标和文字必须一行显示 */
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select,
.qy-cart-configure-page #addCartForm .qy-cart-os-option select.form-control,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .selectpicker,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select > .dropdown-toggle,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .selectpicker + .dropdown-toggle {
  width: auto !important;
  min-width: 220px !important;
  max-width: 360px !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .filter-option,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .filter-option-inner,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .filter-option-inner-inner,
.qy-cart-configure-page #addCartForm .bootstrap-select .filter-option-inner-inner {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select .filter-option-inner-inner img,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item img,
.qy-cart-configure-page #addCartForm label.btn img {
  display: inline-block !important;
  flex: 0 0 20px !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  object-fit: contain !important;
  margin-right: 7px !important;
  vertical-align: middle !important;
}

/* 下拉选项内部也不换行 */
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item span,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item .text {
  white-space: nowrap !important;
  word-break: keep-all !important;
}

/* 区域/机型下拉自适应宽度 */
.qy-cart-configure-page #addCartForm .qy-cart-wide-option .bootstrap-select,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option select.form-control,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option .selectpicker,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option .bootstrap-select > .dropdown-toggle,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option .selectpicker + .dropdown-toggle {
  width: auto !important;
  min-width: 220px !important;
  max-width: 520px !important;
}

/* 修复操作系统两列下拉间距 */
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-2,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-3 {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > div.col-md-2 + div.col-md-3 {
  margin-left: 12px !important;
}

/* 2核、2G、30G 这类普通数字配置继续统一尺寸，不被 adaptive 影响 */
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) .btn-group-toggle > label.btn,
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) .btn-group-toggle > .btn,
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) label.btn.btn-primary,
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) label.btn.btn-sm,
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) .btn-custom {
  flex: 0 0 118px !important;
  width: 118px !important;
  min-width: 118px !important;
  max-width: 118px !important;
}

/* 不再全局隐藏 footer，避免影响页脚 */
body.qy-cart-mode .footer {
  display: block;
}

@media (max-width: 768px) {
  .qy-cart-configure-page #addCartForm .qy-cart-adaptive-option .btn-group-toggle > label.btn,
  .qy-cart-configure-page #addCartForm .qy-cart-adaptive-option .btn-group-toggle > .btn,
  .qy-cart-configure-page #addCartForm .qy-cart-adaptive-option label.btn.btn-primary,
  .qy-cart-configure-page #addCartForm .qy-cart-adaptive-option label.btn.btn-sm,
  .qy-cart-configure-page #addCartForm .qy-cart-adaptive-option .btn-custom,
  .qy-cart-configure-page #addCartForm .qy-cart-wide-option .btn-group-toggle > label.btn,
  .qy-cart-configure-page #addCartForm .qy-cart-wide-option .btn-group-toggle > .btn,
  .qy-cart-configure-page #addCartForm .qy-cart-wide-option label.btn.btn-primary,
  .qy-cart-configure-page #addCartForm .qy-cart-wide-option label.btn.btn-sm,
  .qy-cart-configure-page #addCartForm .qy-cart-wide-option .btn-custom {
    flex: 1 1 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select,
  .qy-cart-configure-page #addCartForm .qy-cart-os-option select.form-control,
  .qy-cart-configure-page #addCartForm .qy-cart-os-option .selectpicker,
  .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select > .dropdown-toggle,
  .qy-cart-configure-page #addCartForm .qy-cart-os-option .selectpicker + .dropdown-toggle,
  .qy-cart-configure-page #addCartForm .qy-cart-wide-option .bootstrap-select,
  .qy-cart-configure-page #addCartForm .qy-cart-wide-option select.form-control,
  .qy-cart-configure-page #addCartForm .qy-cart-wide-option .selectpicker,
  .qy-cart-configure-page #addCartForm .qy-cart-wide-option .bootstrap-select > .dropdown-toggle,
  .qy-cart-configure-page #addCartForm .qy-cart-wide-option .selectpicker + .dropdown-toggle {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-os-option > div.col-md-2 + div.col-md-3 {
    margin-left: 0 !important;
    margin-top: 10px !important;
  }
}


/* =========================================================
   qy-cart configure v7：选配模块对齐 + 网络类型长按钮
   ========================================================= */

/* 配置项统一采用：左标题固定、右内容统一起点 */
.qy-cart-configure-page #addCartForm .configureproduct,
.qy-cart-configure-page #addCartForm .form-group.row {
  display: grid !important;
  grid-template-columns: 126px minmax(0, 1fr) !important;
  column-gap: 18px !important;
  row-gap: 10px !important;
  align-items: center !important;
  padding: 22px 0 !important;
}

/* 左侧标题统一宽度，防止“网络类型”等把内容挤偏 */
.qy-cart-configure-page #addCartForm .configureproduct > label.col-form-label,
.qy-cart-configure-page #addCartForm .form-group.row > label.col-form-label {
  grid-column: 1 !important;
  width: 126px !important;
  max-width: 126px !important;
  min-width: 126px !important;
  flex: none !important;
  padding: 0 !important;
  margin: 0 !important;
  word-break: keep-all !important;
}

/* 右侧所有内容统一从第二列开始 */
.qy-cart-configure-page #addCartForm .configureproduct > .col-md-10,
.qy-cart-configure-page #addCartForm .form-group.row > .col-md-10,
.qy-cart-configure-page #addCartForm .configureproduct > .col-md-3,
.qy-cart-configure-page #addCartForm .form-group.row > .col-md-3,
.qy-cart-configure-page #addCartForm .configureproduct > .col-md-2,
.qy-cart-configure-page #addCartForm .form-group.row > .col-md-2,
.qy-cart-configure-page #addCartForm .configureproduct > .col-8,
.qy-cart-configure-page #addCartForm .form-group.row > .col-8,
.qy-cart-configure-page #addCartForm .configureproduct > .d-inline-flex,
.qy-cart-configure-page #addCartForm .form-group.row > .d-inline-flex,
.qy-cart-configure-page #addCartForm .configureproduct > .col-1,
.qy-cart-configure-page #addCartForm .form-group.row > .col-1 {
  grid-column: 2 !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 密码显示按钮和随机按钮跟密码输入框在同一行 */
.qy-cart-configure-page #addCartForm .form-group.row > .d-inline-flex,
.qy-cart-configure-page #addCartForm .form-group.row > .col-1 {
  display: inline-flex !important;
  width: auto !important;
  margin-left: 12px !important;
}

/* 右侧按钮区域固定从同一条线开始 */
.qy-cart-configure-page #addCartForm .btn-group-toggle,
.qy-cart-configure-page #addCartForm .btn-custom-group,
.qy-cart-configure-page #addCartForm .cycle,
.qy-cart-configure-page #addCartForm .justify-content-start {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  padding-top: 0 !important;
}

/* 普通配置按钮：2核、2G、30G 等统一尺寸 */
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) .btn-group-toggle > label.btn,
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) .btn-group-toggle > .btn,
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) label.btn.btn-primary,
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) label.btn.btn-sm,
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) .btn-custom {
  flex: 0 0 104px !important;
  width: 104px !important;
  min-width: 104px !important;
  max-width: 104px !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 10px !important;
}

/* 宽配置按钮：机型、区域、网络类型更长，自适应但有最低宽度 */
.qy-cart-configure-page #addCartForm .qy-cart-wide-option .btn-group-toggle > label.btn,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option .btn-group-toggle > .btn,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option label.btn.btn-primary,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option label.btn.btn-sm,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option .btn-custom {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 230px !important;
  max-width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 18px !important;
}

/* 网络类型一般文字最长，再给宽一点 */
.qy-cart-configure-page #addCartForm .qy-cart-wide-option label.btn,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option .btn {
  white-space: nowrap !important;
}

/* 是/否这类普通项继续保持小按钮，不要被拉长 */
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-wide-option) .btn-group-toggle > label.btn,
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-wide-option) .btn-group-toggle > .btn {
  flex-grow: 0 !important;
}

/* 周期按钮统一但不占满 */
.qy-cart-configure-page #addCartForm .cycle > label.btn,
.qy-cart-configure-page #addCartForm .cycle .btn-custom {
  flex: 0 0 116px !important;
  width: 116px !important;
  min-width: 116px !important;
  max-width: 116px !important;
}

/* 镜像/系统两个下拉框同一行，图标和名称不换行 */
.qy-cart-configure-page #addCartForm .qy-cart-os-option {
  align-items: center !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-2,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-3 {
  grid-column: 2 !important;
  display: inline-block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > div.col-md-2 + div.col-md-3 {
  margin-left: 14px !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select {
  width: 182px !important;
  min-width: 182px !important;
  max-width: 220px !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-3 .bootstrap-select {
  width: 220px !important;
  min-width: 220px !important;
  max-width: 260px !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select > .dropdown-toggle {
  width: 100% !important;
  height: 46px !important;
  min-height: 46px !important;
}

/* 镜像当前值：图标 + CentOS 必须同行 */
.qy-cart-configure-page #addCartForm .bootstrap-select .filter-option,
.qy-cart-configure-page #addCartForm .bootstrap-select .filter-option-inner,
.qy-cart-configure-page #addCartForm .bootstrap-select .filter-option-inner-inner {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 7px !important;
  min-width: 0 !important;
  width: 100% !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  text-overflow: ellipsis !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select .filter-option-inner-inner img,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item img {
  display: inline-block !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  flex: 0 0 20px !important;
  object-fit: contain !important;
  margin-right: 6px !important;
  vertical-align: middle !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-menu {
  min-width: 220px !important;
  width: max-content !important;
  max-width: 320px !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item span,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item .text {
  white-space: nowrap !important;
  word-break: keep-all !important;
}

/* 独享带宽滑块对齐 */
.qy-cart-configure-page #addCartForm .configoption_range {
  width: auto !important;
  min-width: 320px !important;
  flex: 1 1 auto !important;
}

.qy-cart-configure-page #addCartForm .configoption_range_val {
  flex: 0 0 86px !important;
  width: 86px !important;
  min-width: 86px !important;
  max-width: 86px !important;
}

/* 主机名/密码输入框和上面选框起点一致 */
.qy-cart-configure-page #addCartForm input[name="host"],
.qy-cart-configure-page #addCartForm #password,
.qy-cart-configure-page #addCartForm .getPassword {
  width: 220px !important;
  min-width: 220px !important;
  max-width: 220px !important;
}

/* 页面右侧汇总不压到左侧内容 */
.qy-cart-configure-page > form > .row {
  column-gap: 24px !important;
}

.qy-cart-configure-page .col-xl-8 {
  flex: 0 0 calc(100% - 380px) !important;
  max-width: calc(100% - 380px) !important;
}

.qy-cart-configure-page .col-xl-4 {
  flex: 0 0 356px !important;
  max-width: 356px !important;
}

/* 不影响导航栏和页脚：只隐藏用户中心那套，不动 qy-cart-web-header 和 footer */


body.qy-cart-mode .footer {
  display: block !important;
}

@media (max-width: 1199px) {
  .qy-cart-configure-page .col-xl-8,
  .qy-cart-configure-page .col-xl-4 {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 768px) {
  .qy-cart-configure-page #addCartForm .configureproduct,
  .qy-cart-configure-page #addCartForm .form-group.row {
    display: block !important;
  }

  .qy-cart-configure-page #addCartForm .configureproduct > label.col-form-label,
  .qy-cart-configure-page #addCartForm .form-group.row > label.col-form-label {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 10px !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-wide-option .btn-group-toggle > label.btn,
  .qy-cart-configure-page #addCartForm .qy-cart-wide-option .btn-group-toggle > .btn,
  .qy-cart-configure-page #addCartForm .qy-cart-wide-option label.btn.btn-primary,
  .qy-cart-configure-page #addCartForm .qy-cart-wide-option label.btn.btn-sm,
  .qy-cart-configure-page #addCartForm .qy-cart-wide-option .btn-custom,
  .qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) .btn-group-toggle > label.btn,
  .qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) .btn-group-toggle > .btn,
  .qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) label.btn.btn-primary,
  .qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) label.btn.btn-sm,
  .qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) .btn-custom,
  .qy-cart-configure-page #addCartForm .cycle > label.btn,
  .qy-cart-configure-page #addCartForm .cycle .btn-custom {
    flex: 0 0 calc(50% - 5px) !important;
    width: calc(50% - 5px) !important;
    min-width: calc(50% - 5px) !important;
    max-width: calc(50% - 5px) !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-2,
  .qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-3 {
    display: block !important;
    width: 100% !important;
    margin-left: 0 !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-os-option > div.col-md-2 + div.col-md-3 {
    margin-top: 10px !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select,
  .qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-3 .bootstrap-select,
  .qy-cart-configure-page #addCartForm input[name="host"],
  .qy-cart-configure-page #addCartForm #password,
  .qy-cart-configure-page #addCartForm .getPassword {
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* =========================================================
   qy-cart configure v8：修复镜像双下拉同一行与下拉层错位
   ========================================================= */

/* 所有配置行改回弹性布局：左标题固定，右侧控件自然横向排列 */
.qy-cart-configure-page #addCartForm .configureproduct,
.qy-cart-configure-page #addCartForm .form-group.row {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 18px !important;
  padding: 22px 0 !important;
}

.qy-cart-configure-page #addCartForm .configureproduct > label.col-form-label,
.qy-cart-configure-page #addCartForm .form-group.row > label.col-form-label {
  flex: 0 0 126px !important;
  width: 126px !important;
  max-width: 126px !important;
  min-width: 126px !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* 右侧通用内容区 */
.qy-cart-configure-page #addCartForm .configureproduct > .col-md-10,
.qy-cart-configure-page #addCartForm .form-group.row > .col-md-10 {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 普通输入/下拉的基础宽度 */
.qy-cart-configure-page #addCartForm .configureproduct > .col-md-3,
.qy-cart-configure-page #addCartForm .form-group.row > .col-md-3,
.qy-cart-configure-page #addCartForm .configureproduct > .col-md-2,
.qy-cart-configure-page #addCartForm .form-group.row > .col-md-2,
.qy-cart-configure-page #addCartForm .configureproduct > .col-8,
.qy-cart-configure-page #addCartForm .form-group.row > .col-8 {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 镜像/操作系统：两个选择框必须在同一行 */
.qy-cart-configure-page #addCartForm .qy-cart-os-option {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > label.col-form-label {
  flex: 0 0 126px !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-2,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-3 {
  display: block !important;
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > div.col-md-2 + div.col-md-3 {
  margin-left: 14px !important;
}

/* 第一个镜像分类框，如 CentOS/Debian */
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-2 .bootstrap-select,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-2 select.form-control {
  width: 176px !important;
  min-width: 176px !important;
  max-width: 176px !important;
}

/* 第二个镜像版本框，如 CentOS_7.4_x64 */
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-3 .bootstrap-select,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-3 select.form-control {
  width: 230px !important;
  min-width: 230px !important;
  max-width: 230px !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select > .dropdown-toggle {
  width: 100% !important;
  height: 46px !important;
  min-height: 46px !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 34px 0 14px !important;
  overflow: hidden !important;
}

/* 图标与文字同一行 */
.qy-cart-configure-page #addCartForm .qy-cart-os-option .filter-option,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .filter-option-inner,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .filter-option-inner-inner,
.qy-cart-configure-page #addCartForm .bootstrap-select .filter-option-inner-inner {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  min-width: 0 !important;
  width: 100% !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  text-overflow: ellipsis !important;
  line-height: 1 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option .filter-option-inner-inner img,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item img {
  display: inline-block !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  object-fit: contain !important;
  margin: 0 7px 0 0 !important;
  vertical-align: middle !important;
}

/* 下拉菜单只比按钮略宽，不再盖出一大片 */
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu {
  width: 100% !important;
  min-width: 176px !important;
  max-width: 260px !important;
  border-radius: 16px !important;
  z-index: 1060 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-3 .bootstrap-select .dropdown-menu {
  min-width: 230px !important;
  max-width: 280px !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-menu.inner {
  max-height: 220px !important;
  overflow-y: auto !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item span,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item .text {
  display: flex !important;
  align-items: center !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  line-height: 1.4 !important;
}

/* 修复之前 grid 布局留下的同列覆盖问题 */
.qy-cart-configure-page #addCartForm .qy-cart-os-option > * {
  grid-column: auto !important;
}

/* 普通配置按钮仍保持对齐 */
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) .btn-group-toggle > label.btn,
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) .btn-group-toggle > .btn,
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) label.btn.btn-primary,
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) label.btn.btn-sm,
.qy-cart-configure-page #addCartForm .configureproduct:not(.qy-cart-adaptive-option) .btn-custom {
  flex: 0 0 104px !important;
  width: 104px !important;
  min-width: 104px !important;
  max-width: 104px !important;
}

/* 网络类型等长按钮保持长一些 */
.qy-cart-configure-page #addCartForm .qy-cart-wide-option:not(.qy-cart-os-option) .btn-group-toggle > label.btn,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option:not(.qy-cart-os-option) .btn-group-toggle > .btn,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option:not(.qy-cart-os-option) label.btn.btn-primary,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option:not(.qy-cart-os-option) label.btn.btn-sm,
.qy-cart-configure-page #addCartForm .qy-cart-wide-option:not(.qy-cart-os-option) .btn-custom {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 230px !important;
  max-width: 100% !important;
}

/* 移动端镜像两框上下排列 */
@media (max-width: 768px) {
  .qy-cart-configure-page #addCartForm .configureproduct,
  .qy-cart-configure-page #addCartForm .form-group.row,
  .qy-cart-configure-page #addCartForm .qy-cart-os-option {
    display: block !important;
  }

  .qy-cart-configure-page #addCartForm .configureproduct > label.col-form-label,
  .qy-cart-configure-page #addCartForm .form-group.row > label.col-form-label {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 10px !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-2,
  .qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-3 {
    width: 100% !important;
    max-width: 100% !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-os-option > div.col-md-2 + div.col-md-3 {
    margin-left: 0 !important;
    margin-top: 10px !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-2 .bootstrap-select,
  .qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-3 .bootstrap-select,
  .qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-2 select.form-control,
  .qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-3 select.form-control {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
  }
}

/* =========================================================
   qy-cart v8：精简购物车产品页 + 法务提示 + 隐藏购物车页脚
   ========================================================= */
body.qy-cart-mode .footer,
body.qy-cart-mode #footer,
body.qy-cart-mode .site-footer,
body.qy-cart-mode .page-footer {
  display: none !important;
}

/* 购物车头部不再额外撑出距离，位置跟官网头部对齐 */


.qy-cart-ls-page {
  padding-top: 24px !important;
}

.qy-cart-ls-category-title {
  padding: 20px 20px 14px !important;
}

.qy-cart-ls-category-title span,
.qy-cart-ls-back,
.qy-cart-ls-head,
.qy-cart-ls-notice,
.qy-cart-ls-tag,
.qy-cart-ls-service {
  display: none !important;
}

.qy-cart-ls-card-top {
  min-height: auto !important;
  align-items: center !important;
  padding: 22px 20px 14px !important;
}

.qy-cart-ls-card-top > h5,
.qy-cart-ls-card-top h5 {
  margin: 0 !important;
}

.qy-cart-ls-line {
  margin-top: 16px !important;
}

.qy-cart-ls-bottom {
  padding-top: 18px !important;
}

.qy-cart-ls-legal {
  margin-top: 20px;
  padding: 16px 18px;
  color: #64748b;
  border: 1px solid #dbeafe;
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.045);
  font-size: 13px;
  line-height: 1.9;
  font-weight: 800;
}

.qy-cart-ls-legal a {
  color: #1263ff;
  font-weight: 900;
  text-decoration: none;
}

.qy-cart-ls-legal a:hover {
  text-decoration: underline;
}

@media (max-width: 991px) {
  .qy-cart-ls-page {
    padding-top: 18px !important;
  }
}

/* =========================================================
   qy-cart v9：商品组标题 + 商品组标语
   ========================================================= */
.qy-cart-ls-main-title {
  min-height: 74px;
  display: flex;
  align-items: center;
  margin-bottom: 18px;
  padding: 20px 24px;
  border: 1px solid #e2e8f0;
  border-radius: 24px;
  background: #ffffff;
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.06);
}


.qy-cart-ls-main-title h1 {
  margin: 0;
  color: #0f172a;
  font-size: clamp(22px, 2.3vw, 30px);
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: -0.4px;
}

.qy-cart-ls-category-title span {
  display: block !important;
  margin-top: 9px;
  color: #64748b;
  font-size: 13px;
  line-height: 1.65;
  font-weight: 800;
}

.qy-cart-ls-category-title span:empty {
  display: none !important;
}

@media (max-width: 991px) {
  .qy-cart-ls-main-title {
    min-height: auto;
    margin-bottom: 16px;
    padding: 18px 20px;
    border-radius: 22px;
  }
}

/* =========================================================
   qy-cart v10：商品组标题放入右侧产品卡顶部
   ========================================================= */
.qy-cart-ls-main-title {
  display: none !important;
}

.qy-cart-ls-card-group {
  width: fit-content;
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  max-width: calc(100% - 40px);
  margin: 18px 20px 0;
  padding: 0 10px;
  color: #1263ff;
  border: 1px solid #dbeafe;
  border-radius: 999px;
  background: #edf4ff;
  font-size: 12px;
  line-height: 1;
  font-weight: 900;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.qy-cart-ls-card-group:empty {
  display: none !important;
}

.qy-cart-ls-card-group + .qy-cart-ls-card-top {
  min-height: 70px;
  padding-top: 12px;
}

@media (max-width: 640px) {
  .qy-cart-ls-card-group {
    max-width: calc(100% - 32px);
    margin: 16px 16px 0;
  }

  .qy-cart-ls-card-group + .qy-cart-ls-card-top {
    min-height: auto;
    padding-top: 10px;
  }
}

/* =========================================================
   qy-cart v11：商品组标题回到右侧产品列表上方；商品组标语放在左侧当前分类项右侧
   ========================================================= */
.qy-cart-ls-main-title {
  min-height: 64px;
  display: flex !important;
  align-items: center;
  margin: 0 0 18px;
  padding: 18px 22px;
  border: 1px solid #e2e8f0;
  border-radius: 22px;
  background: #ffffff;
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.06);
}

.qy-cart-ls-main-title h1 {
  margin: 0;
  color: #0f172a;
  font-size: clamp(22px, 2.2vw, 30px);
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: -0.4px;
}

.qy-cart-ls-card-group {
  display: none !important;
}

.qy-cart-ls-second a {
  justify-content: space-between;
  gap: 10px;
  padding: 0 10px 0 18px;
}

.qy-cart-ls-second-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.qy-cart-ls-second-slogan {
  max-width: 52%;
  min-height: 22px;
  display: none;
  align-items: center;
  padding: 0 8px;
  color: #1263ff;
  border: 1px solid #dbeafe;
  border-radius: 999px;
  background: #edf4ff;
  font-size: 11px;
  line-height: 1;
  font-style: normal;
  font-weight: 900;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.qy-cart-ls-second a.is-active .qy-cart-ls-second-slogan {
  display: inline-flex;
}

.qy-cart-ls-category-title {
  min-height: 64px;
  display: flex;
  align-items: center;
}

.qy-cart-ls-category-title h3 {
  width: 100%;
}

@media (max-width: 991px) {
  .qy-cart-ls-main-title {
    min-height: auto;
    margin-bottom: 16px;
    padding: 18px 20px;
    border-radius: 20px;
  }
}

@media (max-width: 640px) {
  .qy-cart-ls-second a {
    min-height: 42px;
    padding-left: 14px;
  }

  .qy-cart-ls-second-slogan {
    max-width: 48%;
    font-size: 10px;
  }
}

/* =========================================================
   qy-cart v12：商品组标题取当前选中组；隐藏智简魔方悬浮版权
   ========================================================= */
.qy-cart-ls-main-title {
  display: flex !important;
}

.qy-cart-ls-card-group {
  display: none !important;
}

body.qy-cart-mode a[href*="idcsmart.com"] {
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  max-width: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  font-size: 0 !important;
  line-height: 0 !important;
  pointer-events: none !important;
  clip-path: inset(50%) !important;
}


/* =========================================================
   qy-cart v13：商品组标语放入右侧商品组标题栏
   ========================================================= */
.qy-cart-ls-main-title {
  gap: 14px;
  justify-content: space-between;
}

.qy-cart-ls-main-slogan {
  max-width: 58%;
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 12px;
  border: 1px solid #dbeafe;
  border-radius: 999px;
  background: #edf4ff;
  color: #1263ff;
  font-size: 12px;
  line-height: 1;
  font-style: normal;
  font-weight: 900;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.qy-cart-ls-main-slogan:empty,
.qy-cart-ls-second-slogan {
  display: none !important;
}

.qy-cart-ls-second a {
  justify-content: flex-start;
}

@media (max-width: 991px) {
  .qy-cart-ls-main-title {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }

  .qy-cart-ls-main-slogan {
    max-width: 100%;
    white-space: normal;
    line-height: 1.5;
    padding: 7px 12px;
  }
}

/* =========================================================
   qy-cart v14：商品组标语跟随标题左侧排列，间隔 23px
   ========================================================= */
.qy-cart-ls-main-title {
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 23px !important;
}

.qy-cart-ls-main-title h1 {
  flex: 0 0 auto;
}

.qy-cart-ls-main-slogan {
  margin-left: 0 !important;
  max-width: min(620px, calc(100% - 260px));
}

@media (max-width: 991px) {
  .qy-cart-ls-main-title {
    align-items: flex-start !important;
    flex-direction: column;
    gap: 10px !important;
  }

  .qy-cart-ls-main-slogan {
    max-width: 100%;
  }
}

/* =========================================================
   qy-cart v15：左侧一二级产品分组与右侧商品组标题顶部对齐
   ========================================================= */
.qy-cart-ls-layout {
  align-items: flex-start !important;
}

.qy-cart-ls-sidebar-col,
.qy-cart-ls-main {
  padding-top: 0 !important;
}

/* 左侧只保留一二级产品分组，和右侧标题栏同一层次开始 */
.qy-cart-ls-category-title,
.qy-cart-ls-search {
  display: none !important;
}

.qy-cart-ls-category {
  padding: 12px !important;
}

.qy-cart-ls-category-list {
  padding: 0 !important;
}

.qy-cart-ls-category-group:first-child .qy-cart-ls-first,
.qy-cart-ls-main-title {
  margin-top: 0 !important;
}

.qy-cart-ls-main-title {
  min-height: 62px;
}

@media (max-width: 991px) {
  .qy-cart-ls-category {
    position: relative;
    top: auto;
    margin-bottom: 16px;
  }

  .qy-cart-ls-category-title,
  .qy-cart-ls-search {
    display: none !important;
  }
}

/* =========================================================
   qy-cart v16：恢复左侧产品分类与搜索，并保持左右顶部对齐
   ========================================================= */
.qy-cart-ls-layout {
  align-items: flex-start !important;
}

.qy-cart-ls-sidebar-col,
.qy-cart-ls-main {
  padding-top: 0 !important;
}

/* 左侧标题和搜索保留，不再隐藏 */
.qy-cart-ls-category-title {
  min-height: 64px !important;
  display: flex !important;
  align-items: center !important;
  padding: 18px 20px !important;
  border-bottom: 1px solid #eef3f8 !important;
}

.qy-cart-ls-category-title h3 {
  width: auto !important;
  margin: 0 !important;
}

.qy-cart-ls-search {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 58px !important;
  gap: 8px !important;
  padding: 16px !important;
  border-bottom: 1px solid #eef3f8 !important;
}

.qy-cart-ls-category {
  padding: 0 !important;
}

.qy-cart-ls-category-list {
  padding: 10px !important;
}

.qy-cart-ls-main-title {
  min-height: 64px !important;
  margin-top: 0 !important;
}

@media (max-width: 991px) {
  .qy-cart-ls-category-title {
    min-height: auto !important;
    display: flex !important;
    padding: 18px 20px !important;
  }

  .qy-cart-ls-search {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 58px !important;
    padding: 16px !important;
  }
}


/* =========================================================
   qy-cart configure v8：拉开镜像主系统与系统版本间距
   ========================================================= */
.qy-cart-configure-page #addCartForm .qy-cart-os-option > div.col-md-2 + div.col-md-3 {
  margin-left: 24px !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-2,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .col-md-3 {
  vertical-align: top !important;
}

@media (max-width: 768px) {
  .qy-cart-configure-page #addCartForm .qy-cart-os-option > div.col-md-2 + div.col-md-3 {
    margin-left: 0 !important;
    margin-top: 12px !important;
  }
}

/* =========================================================
   qy-cart configure v9：准确拉开镜像主系统与系统版本两个框
   目标结构：div.col-md-2.qy-cart-os-group-col + div.col-md-3.qy-cart-os-version-col
   ========================================================= */
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col {
  margin-right: 30px !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-version-col {
  margin-left: 0 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col + .qy-cart-os-version-col {
  margin-left: 0 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > div.col-md-2 + div.col-md-3 {
  margin-left: 0 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col .bootstrap-select,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col select.form-control {
  width: 176px !important;
  min-width: 176px !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-version-col .bootstrap-select,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-version-col select.form-control {
  width: 250px !important;
  min-width: 250px !important;
}

@media (max-width: 768px) {
  .qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col {
    margin-right: 0 !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-version-col {
    margin-top: 12px !important;
  }
}

/* =========================================================
   qy-cart configure v10：修复系统版本框右侧空白
   原因：上一版用 margin-right 和固定宽度拉间距，会破坏 Bootstrap 栅格，导致右侧留白/错位。
   这版改为列内 padding 间距，控件自身保持 100% 自适应。
   ========================================================= */
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-version-col {
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col {
  padding-right: 18px !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-version-col {
  padding-left: 18px !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > div.col-md-2 + div.col-md-3 {
  margin-left: 0 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col .bootstrap-select,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-version-col .bootstrap-select,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col select.form-control,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-version-col select.form-control {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col .bootstrap-select > .dropdown-toggle,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-version-col .bootstrap-select > .dropdown-toggle {
  width: 100% !important;
}

@media (max-width: 768px) {
  .qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col,
  .qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-version-col {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-version-col {
    margin-top: 12px !important;
  }
}


/* =========================================================
   qy-cart configure v11：系统下拉固定向下展开并置顶
   主系统/系统版本使用 bootstrap-select 时，禁止自动 dropup，避免被下面配置项遮挡。
   ========================================================= */
.qy-cart-configure-page,
.qy-cart-configure-page #addCartForm,
.qy-cart-configure-page #addCartForm .qy-cart-os-option,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > div,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select {
  overflow: visible !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.show,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.open,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.qy-cart-os-picker-fixed {
  position: relative !important;
  z-index: 999998 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.dropup {
  /* bootstrap-select 会根据空间自动加 dropup，这里强制取消向上展开的视觉结果 */
  z-index: 999998 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.dropup .dropdown-menu,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.show .dropdown-menu {
  top: 100% !important;
  bottom: auto !important;
  z-index: 999999 !important;
}

.qy-cart-os-dropdown-menu,
body > .qy-cart-os-dropdown-menu {
  z-index: 999999 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.show,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.open {
  display: block !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.inner {
  top: auto !important;
  bottom: auto !important;
}


/* =========================================================
   qy-cart configure v12：主系统/系统版本固定向下展开
   不使用 data-container="body"，避免 bootstrap-select/Popper 再次计算成 dropup。
   ========================================================= */
.qy-cart-configure-page,
.qy-cart-configure-page .container,
.qy-cart-configure-page .row,
.qy-cart-configure-page .col,
.qy-cart-configure-page .card,
.qy-cart-configure-page .card-body,
.qy-cart-configure-page #addCartForm,
.qy-cart-configure-page #addCartForm .configureproduct,
.qy-cart-configure-page #addCartForm .form-group,
.qy-cart-configure-page #addCartForm .qy-cart-os-option,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > div,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select {
  overflow: visible !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option,
.qy-cart-configure-page #addCartForm .qy-cart-os-option > div,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.dropdown,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.dropup,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.show,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.open {
  position: relative !important;
  z-index: 2147482000 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.dropup {
  /* 即使插件又加回 dropup，也按 dropdown 的方式显示 */
  direction: ltr !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select > .dropdown-menu,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.dropup > .dropdown-menu,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.show > .dropdown-menu,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.open > .dropdown-menu,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.show,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.open,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu[x-placement^="top"],
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu[x-placement^="bottom"] {
  top: calc(100% + 8px) !important;
  bottom: auto !important;
  left: 0 !important;
  right: auto !important;
  transform: none !important;
  z-index: 2147483000 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.inner {
  position: static !important;
  top: auto !important;
  bottom: auto !important;
  transform: none !important;
  z-index: auto !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.show > .dropdown-menu,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.open > .dropdown-menu {
  display: block !important;
}

.qy-cart-os-dropdown-menu {
  z-index: 2147483000 !important;
}

/* 20260626：滑动配置条进度区分
   已选择部分显示蓝色，未选择部分显示灰色，方便区分当前值和剩余区间。 */
.qy-cart-configure-page input[type="range"].configoption_range,
.qy-cart-configure-page #addCartForm input[type="range"].configoption_range {
  height: 8px !important;
  border-radius: 999px !important;
  outline: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  background: linear-gradient(
    to right,
    #1263ff 0%,
    #1263ff var(--qy-cart-range-fill, 0%),
    #eef2f7 var(--qy-cart-range-fill, 0%),
    #eef2f7 100%
  ) !important;
}

.qy-cart-configure-page input[type="range"].configoption_range::-webkit-slider-runnable-track {
  height: 8px !important;
  border-radius: 999px !important;
  background: transparent !important;
}

.qy-cart-configure-page input[type="range"].configoption_range::-webkit-slider-thumb {
  -webkit-appearance: none !important;
  appearance: none !important;
  width: 22px !important;
  height: 22px !important;
  margin-top: -7px !important;
  border: 5px solid #ffffff !important;
  border-radius: 50% !important;
  background: #1263ff !important;
  box-shadow: 0 8px 18px rgba(18, 99, 255, 0.25) !important;
  cursor: pointer !important;
}

.qy-cart-configure-page input[type="range"].configoption_range::-moz-range-track {
  height: 8px !important;
  border-radius: 999px !important;
  background: #eef2f7 !important;
}

.qy-cart-configure-page input[type="range"].configoption_range::-moz-range-progress {
  height: 8px !important;
  border-radius: 999px !important;
  background: #1263ff !important;
}

.qy-cart-configure-page input[type="range"].configoption_range::-moz-range-thumb {
  width: 14px !important;
  height: 14px !important;
  border: 5px solid #ffffff !important;
  border-radius: 50% !important;
  background: #1263ff !important;
  box-shadow: 0 8px 18px rgba(18, 99, 255, 0.25) !important;
  cursor: pointer !important;
}

/* =========================================================
   qy-cart configure v12：手机端磁盘三列 + 滑块不溢出
   ========================================================= */
@media (max-width: 768px) {
  /* 系统盘、数据盘、硬盘这类容量按钮：手机下一行三个 */
  .qy-cart-configure-page #addCartForm .qy-cart-disk-option .btn-group-toggle,
  .qy-cart-configure-page #addCartForm .qy-cart-disk-option .btn-custom-group,
  .qy-cart-configure-page #addCartForm .qy-cart-disk-option .justify-content-start {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    width: 100% !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-disk-option .btn-group-toggle > label.btn,
  .qy-cart-configure-page #addCartForm .qy-cart-disk-option .btn-group-toggle > .btn,
  .qy-cart-configure-page #addCartForm .qy-cart-disk-option label.btn.btn-primary,
  .qy-cart-configure-page #addCartForm .qy-cart-disk-option label.btn.btn-sm,
  .qy-cart-configure-page #addCartForm .qy-cart-disk-option .btn-custom {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    flex: none !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 0 6px !important;
    font-size: 13px !important;
    border-radius: 14px !important;
    white-space: nowrap !important;
  }

  /* 滑动配置项：避免 input range + 数值框横向溢出 */
  .qy-cart-configure-page #addCartForm .qy-cart-range-option > .col-md-10 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 72px auto !important;
    column-gap: 8px !important;
    row-gap: 8px !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: relative !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-range-option .configoption_range {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    flex: none !important;
    margin: 0 !important;
    grid-column: 1 !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-range-option .configoption_range_val {
    width: 72px !important;
    min-width: 72px !important;
    max-width: 72px !important;
    flex: none !important;
    margin: 0 !important;
    grid-column: 2 !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-range-option .configoption_range_val + span {
    grid-column: 3 !important;
    white-space: nowrap !important;
    color: #475569 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-range-option .range_none {
    display: none !important;
  }
}

@media (max-width: 360px) {
  .qy-cart-configure-page #addCartForm .qy-cart-disk-option .btn-group-toggle,
  .qy-cart-configure-page #addCartForm .qy-cart-disk-option .btn-custom-group,
  .qy-cart-configure-page #addCartForm .qy-cart-disk-option .justify-content-start {
    gap: 6px !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-disk-option .btn-group-toggle > label.btn,
  .qy-cart-configure-page #addCartForm .qy-cart-disk-option .btn-group-toggle > .btn,
  .qy-cart-configure-page #addCartForm .qy-cart-disk-option label.btn.btn-primary,
  .qy-cart-configure-page #addCartForm .qy-cart-disk-option label.btn.btn-sm,
  .qy-cart-configure-page #addCartForm .qy-cart-disk-option .btn-custom {
    font-size: 12px !important;
    padding: 0 4px !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-range-option > .col-md-10 {
    grid-template-columns: minmax(0, 1fr) 66px auto !important;
    column-gap: 6px !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-range-option .configoption_range_val {
    width: 66px !important;
    min-width: 66px !important;
    max-width: 66px !important;
  }
}

/* ===============================
   配置页：底部锁定费用明细 + 总价 + 加入购物车
   =============================== */
.qy-cart-configure-page {
  padding-bottom: 128px !important;
}

.qy-cart-configure-page .qy-cart-config-main {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

.qy-cart-configure-page .qy-cart-summary-render {
  display: contents;
}

.qy-cart-configure-page .configoption_total {
  overflow: visible !important;
}

.qy-cart-bottom-summary {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 99990;
  display: grid;
  grid-template-columns: minmax(240px, 1fr) auto auto;
  align-items: center;
  gap: 18px;
  min-height: 78px;
  padding: 14px max(24px, calc((100vw - 1200px) / 2 + 18px));
  border-top: 1px solid rgba(205, 218, 239, 0.9);
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(16px);
  box-shadow: 0 -18px 44px rgba(15, 23, 42, 0.12);
}

.qy-cart-bottom-detail {
  position: relative;
  min-width: 0;
}

.qy-cart-fee-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-width: 150px;
  height: 46px;
  padding: 0 18px;
  border: 1px solid rgba(18, 99, 255, 0.18);
  border-radius: 999px;
  background: #f6f9ff;
  color: #17233c;
  font-size: 14px;
  font-weight: 900;
  cursor: pointer;
  transition: .18s ease;
}

.qy-cart-fee-toggle span {
  white-space: nowrap;
}

.qy-cart-fee-toggle em {
  color: #7b8ca8;
  font-style: normal;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.qy-cart-fee-toggle:hover,
.qy-cart-bottom-detail:hover .qy-cart-fee-toggle,
.qy-cart-bottom-summary.is-fee-open .qy-cart-fee-toggle {
  border-color: rgba(18, 99, 255, 0.42);
  background: #eef5ff;
  color: #1263ff;
}

.qy-cart-fee-panel {
  position: absolute;
  left: 0;
  bottom: calc(100% + 14px);
  width: min(560px, calc(100vw - 36px));
  max-height: min(58vh, 520px);
  overflow: auto;
  padding: 16px;
  border: 1px solid rgba(205, 218, 239, 0.9);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.18);
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  pointer-events: none;
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}

.qy-cart-bottom-detail:hover .qy-cart-fee-panel,
.qy-cart-bottom-summary.is-fee-open .qy-cart-fee-panel {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

.qy-cart-fee-panel__head {
  margin-bottom: 10px;
  color: #0f172a;
  font-size: 16px;
  font-weight: 900;
}

.qy-cart-fee-table {
  width: 100%;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  overflow: visible !important;
}

.qy-cart-fee-table td {
  padding: 9px 0 !important;
  border: 0 !important;
  border-bottom: 1px dashed rgba(205, 218, 239, 0.78) !important;
  color: #334155;
  font-size: 13px;
  line-height: 1.5;
  vertical-align: top;
}

.qy-cart-fee-table tr:last-child td {
  border-bottom: 0 !important;
}

.qy-cart-fee-table .text-right {
  color: #111827;
  font-weight: 800;
  white-space: nowrap;
}

.qy-cart-fee-name {
  word-break: break-all;
  white-space: normal;
}

.qy-cart-bottom-total {
  display: inline-flex;
  align-items: baseline;
  justify-content: flex-end;
  gap: 4px;
  white-space: nowrap;
  color: #64748b;
  font-size: 14px;
  font-weight: 800;
}

.qy-cart-bottom-total strong {
  color: #ef1f1f;
  font-size: 26px;
  font-weight: 950;
  letter-spacing: -0.02em;
}

.qy-cart-bottom-submit {
  min-width: 150px;
  height: 48px;
  border: 0 !important;
  border-radius: 999px !important;
  background: #1263ff !important;
  box-shadow: 0 14px 30px rgba(18, 99, 255, 0.22) !important;
  color: #000000 !important;
  font-size: 15px !important;
  font-weight: 900 !important;
}

@media (max-width: 768px) {
  .qy-cart-configure-page {
    padding-bottom: 148px !important;
  }

  .qy-cart-bottom-summary {
    grid-template-columns: 1fr auto;
    grid-template-areas:
      "detail detail"
      "total submit";
    gap: 10px 12px;
    min-height: 112px;
    padding: 12px 14px calc(12px + env(safe-area-inset-bottom));
  }

  .qy-cart-bottom-detail { grid-area: detail; }
  .qy-cart-bottom-total { grid-area: total; justify-content: flex-start; }
  .qy-cart-bottom-submit { grid-area: submit; }

  .qy-cart-fee-toggle {
    width: 100%;
    justify-content: space-between;
    height: 42px;
    min-width: 0;
    padding: 0 14px;
  }

  .qy-cart-fee-panel {
    left: 0;
    width: calc(100vw - 28px);
    max-height: 56vh;
    padding: 14px;
    border-radius: 18px;
  }

  .qy-cart-bottom-total strong {
    font-size: 22px;
  }

  .qy-cart-bottom-submit {
    min-width: 118px;
    width: auto !important;
    height: 44px;
    padding: 0 18px !important;
  }
}


/* =========================================================
   20260627：产品列表价格保持同一行 + 日均价格红色小字
   ========================================================= */
.qy-cart-product-page .qy-cart-ls-price {
  display: block !important;
  min-width: 0 !important;
}

.qy-cart-product-page .qy-cart-ls-price-main {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: baseline !important;
  gap: 6px !important;
  line-height: 1.15 !important;
}

.qy-cart-product-page .qy-cart-ls-price-main strong {
  display: inline-flex !important;
  align-items: baseline !important;
  color: #1263ff !important;
  font-size: 26px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

.qy-cart-product-page .qy-cart-ls-price-main em {
  display: inline-flex !important;
  color: #64748b !important;
  font-style: normal !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  white-space: nowrap !important;
}

.qy-cart-product-page .qy-cart-ls-price-main span {
  display: inline-flex !important;
  color: #ef4444 !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.qy-cart-product-page .qy-cart-ls-price small {
  display: block !important;
  margin-top: 6px !important;
}

@media (max-width: 575.98px) {
  .qy-cart-product-page .qy-cart-ls-price-main {
    gap: 5px !important;
  }

  .qy-cart-product-page .qy-cart-ls-price-main strong {
    font-size: 23px !important;
  }

  .qy-cart-product-page .qy-cart-ls-price-main span {
    font-size: 11px !important;
  }
}

/* =========================================================
   20260704：购物车圆角统一、选配页显示左侧分类、购买提示可配置
   ========================================================= */
.qy-cart-page,
.qy-cart-page .card,
.qy-cart-page .card-body,
.qy-cart-page .qy-cart-ls-category,
.qy-cart-page .qy-cart-ls-card,
.qy-cart-page .qy-cart-ls-legal,
.qy-cart-page .qy-cart-ls-empty,
.qy-cart-page .qy-cart-fee-panel,
.qy-cart-page .qy-cart-bottom-summary,
.qy-cart-v10-shell .main-card,
.qy-cart-v10-shell .cloud-item,
.qy-cart-v10-shell .common-box,
.qy-cart-v10-shell .order-right,
.qy-cart-v10-shell .el-input__inner,
.qy-cart-v10-shell .el-button,
.qy-cart-v10-shell .el-radio-button__inner {
  border-radius: 12px !important;
}

.qy-cart-page input,
.qy-cart-page select,
.qy-cart-page textarea,
.qy-cart-page .form-control,
.qy-cart-page .bootstrap-select > .dropdown-toggle,
.qy-cart-page .btn,
.qy-cart-page .dropdown-menu,
.qy-cart-page .qy-cart-ls-buy,
.qy-cart-page .qy-cart-bottom-submit,
.qy-cart-page .qy-cart-fee-toggle,
.qy-cart-page .qy-cart-ls-search input,
.qy-cart-page .qy-cart-ls-search button,
.qy-cart-page .qy-cart-ls-first,
.qy-cart-page .qy-cart-ls-second a {
  border-radius: 12px !important;
}

.qy-cart-configure-page .qy-cart-config-layout {
  align-items: flex-start !important;
}

.qy-cart-configure-page .qy-cart-ls-sidebar-col {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  flex: 0 0 25% !important;
  max-width: 25% !important;
}

.qy-cart-configure-page .qy-cart-config-main {
  flex: 0 0 75% !important;
  max-width: 75% !important;
  width: 75% !important;
}

.qy-cart-configure-page .qy-cart-ls-category {
  position: sticky !important;
  top: 96px !important;
}

.qy-cart-ls-legal {
  color: #475569 !important;
  font-size: 13px !important;
  line-height: 1.9 !important;
}

.qy-cart-ls-legal a {
  color: #1263ff !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.qy-cart-ls-legal a:hover {
  color: #0f4cd7 !important;
  text-decoration: underline !important;
}

@media (max-width: 991.98px) {
  .qy-cart-configure-page .qy-cart-ls-sidebar-col,
  .qy-cart-configure-page .qy-cart-config-main {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  .qy-cart-configure-page .qy-cart-ls-category {
    position: relative !important;
    top: auto !important;
    margin-bottom: 16px !important;
  }
}


/* =========================================================
   20260704 V19：购物车产品页改为顶部一级分类 + 中部二级分类 + 下方产品卡片
   ========================================================= */
.qy-cart-new-product-page {
  padding: 18px 0 46px !important;
}

.qy-cart-product-shell {
  width: min(1440px, calc(100% - 40px));
  margin: 0 auto;
}

.qy-cart-product-topbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
  gap: 22px;
  align-items: end;
  margin-bottom: 18px;
  padding: 24px 26px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.055);
}

.qy-cart-product-eyebrow {
  display: block;
  margin-bottom: 8px;
  color: #1263ff;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .12em;
}

.qy-cart-product-topbar h1 {
  margin: 0;
  color: #0f172a;
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.16;
  font-weight: 900;
}

.qy-cart-product-topbar p {
  max-width: 760px;
  margin: 10px 0 0;
  color: #64748b;
  font-size: 14px;
  line-height: 1.75;
}

.qy-cart-product-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 78px;
  gap: 10px;
}

.qy-cart-product-search input,
.qy-cart-product-search button {
  height: 44px;
  border-radius: 12px !important;
  font-size: 14px;
  font-weight: 850;
}

.qy-cart-product-search input {
  min-width: 0;
  padding: 0 15px;
  color: #0f172a;
  border: 1px solid #dbe3ec;
  outline: none;
  background: #f8fbff;
}

.qy-cart-product-search input:focus {
  border-color: #93c5fd;
  background: #ffffff;
  box-shadow: 0 0 0 4px rgba(18, 99, 255, 0.08);
}

.qy-cart-product-search button {
  color: #000000 !important;
  border: 0;
  background: #1263ff;
  box-shadow: 0 14px 28px rgba(18, 99, 255, 0.18);
}

.qy-cart-category-horizontal {
  margin-bottom: 20px;
  padding: 16px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 16px 42px rgba(15, 23, 42, 0.05);
}

.qy-cart-first-tabs,
.qy-cart-second-tabs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.qy-cart-first-tabs {
  padding-bottom: 14px;
  border-bottom: 1px solid #eef3f8;
}

.qy-cart-second-tabs {
  padding-top: 14px;
}

.qy-cart-first-tabs a,
.qy-cart-second-tabs a {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 18px;
  color: #334155;
  border: 1px solid #dbeafe;
  border-radius: 12px;
  background: #ffffff;
  font-size: 14px;
  font-weight: 900;
  text-decoration: none !important;
  transition: .18s ease;
}

.qy-cart-first-tabs a {
  min-height: 44px;
  padding: 0 22px;
  font-size: 15px;
}

.qy-cart-first-tabs a:hover,
.qy-cart-first-tabs a.is-active,
.qy-cart-second-tabs a:hover,
.qy-cart-second-tabs a.is-active {
  color: #1263ff;
  border-color: #bfdbfe;
  background: #edf4ff;
  box-shadow: 0 12px 24px rgba(18, 99, 255, 0.08);
}

.qy-cart-product-current-title {
  margin: 0 0 18px !important;
  padding: 0 !important;
}

.qy-cart-product-current-title h2 {
  margin: 0;
  color: #0f172a;
  font-size: 22px;
  font-weight: 900;
}

.qy-cart-product-current-title em {
  display: block;
  margin-top: 8px;
  color: #64748b;
  font-style: normal;
  font-size: 14px;
  line-height: 1.7;
}

.qy-cart-new-product-page .qy-cart-ls-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.qy-cart-new-product-page .qy-cart-ls-card,
.qy-cart-new-product-page .qy-cart-ls-empty,
.qy-cart-new-product-page .qy-cart-ls-legal {
  border-radius: 12px !important;
}

.qy-cart-new-product-page .qy-cart-ls-buy {
  border-radius: 12px !important;
}

.qy-cart-new-product-page .qy-cart-ls-card:hover {
  transform: translateY(-5px);
}

.qy-cart-configure-page .qy-cart-config-layout--full {
  display: block !important;
}

.qy-cart-configure-page .qy-cart-config-layout--full .qy-cart-config-main {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 15px !important;
  padding-right: 15px !important;
}

/* 选配页不再强制挂左侧固定分类栏，避免配置内容被挤压 */
.qy-cart-configure-page .qy-cart-config-layout--full .qy-cart-ls-sidebar-col {
  display: none !important;
}

@media (max-width: 1180px) {
  .qy-cart-new-product-page .qy-cart-ls-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 820px) {
  .qy-cart-product-shell {
    width: min(100% - 28px, 1440px);
  }

  .qy-cart-product-topbar {
    grid-template-columns: 1fr;
    padding: 20px;
  }

  .qy-cart-new-product-page .qy-cart-ls-grid {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   qy-cart v20：当前二级分类标题模块修复 + 自定义描述展示
   ========================================================= */
.qy-cart-new-product-page .qy-cart-product-current-title {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
  margin: 0 0 18px !important;
  padding: 18px 20px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, .92) !important;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .05) !important;
}

.qy-cart-new-product-page .qy-cart-product-current-title h2 {
  max-width: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #0f172a !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
}

.qy-cart-new-product-page .qy-cart-product-current-title .qy-cart-ls-main-slogan {
  display: block !important;
  max-width: 100% !important;
  margin-top: 8px !important;
  color: #64748b !important;
  font-style: normal !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

@media (max-width: 760px) {
  .qy-cart-new-product-page .qy-cart-product-current-title {
    padding: 15px 16px !important;
  }
  .qy-cart-new-product-page .qy-cart-product-current-title h2 {
    white-space: normal !important;
    font-size: 20px !important;
  }
}

/* V21：购物车当前二级分类展示模块，支持插件自定义标题/描述，防止文字外露 */
.qy-cart-ls-main-title.qy-cart-product-current-title {
  overflow: hidden !important;
  border-radius: 12px !important;
}
.qy-cart-ls-main-title.qy-cart-product-current-title .qy-cart-category-title-inner {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  min-width: 0 !important;
}
.qy-cart-ls-main-title.qy-cart-product-current-title .qy-cart-category-flag {
  width: 42px !important;
  height: 28px !important;
  flex: 0 0 42px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.10) !important;
}
.qy-cart-ls-main-title.qy-cart-product-current-title .qy-cart-category-copy {
  min-width: 0 !important;
  flex: 1 1 auto !important;
}
.qy-cart-ls-main-title.qy-cart-product-current-title h2 {
  max-width: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.qy-cart-ls-main-title.qy-cart-product-current-title .qy-cart-category-desc,
.qy-cart-ls-main-title.qy-cart-product-current-title .qy-cart-ls-main-slogan {
  display: block !important;
  margin: 8px 0 0 !important;
  max-width: 920px !important;
  color: #64748b !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
@media (max-width: 760px) {
  .qy-cart-ls-main-title.qy-cart-product-current-title .qy-cart-category-title-inner {
    align-items: flex-start !important;
  }
  .qy-cart-ls-main-title.qy-cart-product-current-title h2 {
    white-space: normal !important;
  }
}


/* V22: 购物车二级分类展示强制兜底，防止标题模块外露 */
.qy-cart-product-current-title,
.qy-cart-new-product-page .qy-cart-product-current-title {
  overflow: hidden !important;
}
.qy-cart-product-current-title .qy-cart-category-title-inner {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  min-width: 0 !important;
}
.qy-cart-product-current-title .qy-cart-category-copy {
  min-width: 0 !important;
  flex: 1 1 auto !important;
}
.qy-cart-product-current-title .qy-cart-category-copy h2 {
  display: block !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.qy-cart-product-current-title .qy-cart-category-desc {
  margin: 8px 0 0 !important;
  color: #64748b !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  word-break: break-word !important;
}
.qy-cart-product-current-title .qy-cart-category-flag {
  width: 42px !important;
  height: 28px !important;
  border-radius: 7px !important;
  object-fit: cover !important;
  flex: 0 0 auto !important;
  box-shadow: 0 8px 18px rgba(15,23,42,.08) !important;
}


/* V23：购物车二级分类标题只显示一行文字，禁止国旗/描述/多层结构进入标题区 */
.qy-cart-ls-main-title.qy-cart-product-current-title,
.qy-cart-product-current-title {
  display: block !important;
  overflow: hidden !important;
}
.qy-cart-ls-main-title.qy-cart-product-current-title h2,
.qy-cart-product-current-title h2 {
  display: block !important;
  width: 100% !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.qy-cart-product-current-title .qy-cart-category-title-inner,
.qy-cart-product-current-title .qy-cart-category-copy {
  display: block !important;
  width: 100% !important;
}
.qy-cart-product-current-title .qy-cart-category-flag,
.qy-cart-product-current-title .qy-cart-category-desc,
.qy-cart-product-current-title .qy-cart-ls-main-slogan,
.qy-cart-product-current-title p {
  display: none !important;
}

/* =========================================================
   V26：购物车产品分类回到左侧手风琴
   - 左侧：一级分类上下折叠
   - 只允许一个一级分类展开
   - 右侧：当前二级分类标题 + 产品卡片
   ========================================================= */
.qy-cart-left-accordion-page .qy-cart-category-horizontal,
.qy-cart-left-accordion-page .qy-cart-first-tabs,
.qy-cart-left-accordion-page .qy-cart-second-tabs {
  display: none !important;
}

.qy-cart-left-accordion-layout {
  align-items: flex-start !important;
  margin-left: -10px !important;
  margin-right: -10px !important;
}

.qy-cart-left-accordion-layout > [class*="col-"] {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

.qy-cart-left-category-col {
  position: relative;
  z-index: 2;
}

.qy-cart-left-product-main {
  min-width: 0 !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-category,
.qy-cart-left-accordion-page .qy-cart-left-category {
  position: sticky !important;
  top: 92px !important;
  overflow: hidden !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.06) !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-category-title {
  padding: 20px 18px 15px !important;
  border-bottom: 1px solid #eef3f8 !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-category-title h3 {
  margin: 0 !important;
  color: #0f172a !important;
  font-size: 20px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-category-title span {
  display: block !important;
  margin-top: 7px !important;
  color: #64748b !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
  font-weight: 800 !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-category-list {
  display: grid !important;
  gap: 8px !important;
  padding: 12px !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-category-group {
  overflow: hidden !important;
  border: 1px solid transparent !important;
  border-radius: 12px !important;
  background: transparent !important;
  transition: border-color .22s ease, background .22s ease, box-shadow .22s ease !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-category-group.is-open {
  border-color: #dbeafe !important;
  background: #f8fbff !important;
  box-shadow: 0 10px 24px rgba(18, 99, 255, 0.05) !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-first {
  width: 100% !important;
  min-height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  padding: 0 13px !important;
  color: #334155 !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  text-align: left !important;
  cursor: pointer !important;
  transition: color .18s ease, background .18s ease !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-first:hover,
.qy-cart-left-accordion-page .qy-cart-ls-category-group.is-open .qy-cart-ls-first {
  color: #1263ff !important;
  background: #edf4ff !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-first span {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-first i {
  position: relative !important;
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
  border-radius: 50% !important;
  background: rgba(18, 99, 255, .10) !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-first i::before,
.qy-cart-left-accordion-page .qy-cart-ls-first i::after {
  content: "" !important;
  position: absolute !important;
  left: 5px !important;
  right: 5px !important;
  top: 8px !important;
  height: 2px !important;
  border-radius: 999px !important;
  background: #1263ff !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-first i::after {
  transform: rotate(90deg) !important;
  transition: transform .18s ease !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-category-group.is-open .qy-cart-ls-first i::after {
  transform: rotate(0deg) !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-second {
  display: none !important;
  padding: 6px 7px 10px !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-category-group.is-open .qy-cart-ls-second {
  display: grid !important;
  gap: 6px !important;
  animation: qyCartAccordionIn .22s ease both !important;
}

@keyframes qyCartAccordionIn {
  from { opacity: 0; transform: translateY(-6px); }
  to { opacity: 1; transform: translateY(0); }
}

.qy-cart-left-accordion-page .qy-cart-ls-second a {
  min-height: 38px !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 12px 0 16px !important;
  color: #64748b !important;
  border-radius: 10px !important;
  background: transparent !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  text-decoration: none !important;
  transition: color .18s ease, background .18s ease, box-shadow .18s ease !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-second a:hover,
.qy-cart-left-accordion-page .qy-cart-ls-second a.is-active {
  color: #1263ff !important;
  background: #ffffff !important;
  box-shadow: 0 10px 22px rgba(18, 99, 255, 0.08) !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-second a span {
  position: relative !important;
  min-width: 0 !important;
  padding-left: 14px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-second a span::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  width: 5px !important;
  height: 5px !important;
  border-radius: 50% !important;
  background: #93c5fd !important;
  transform: translateY(-50%) !important;
}

.qy-cart-left-accordion-page .qy-cart-product-current-title {
  display: block !important;
  margin: 0 0 18px !important;
  padding: 16px 18px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .045) !important;
}

.qy-cart-left-accordion-page .qy-cart-product-current-title h2 {
  margin: 0 !important;
  color: #0f172a !important;
  font-size: 22px !important;
  line-height: 1.5 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.qy-cart-left-accordion-page .qy-cart-ls-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

@media (max-width: 1280px) {
  .qy-cart-left-accordion-page .qy-cart-ls-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 991px) {
  .qy-cart-left-accordion-page .qy-cart-ls-category,
  .qy-cart-left-accordion-page .qy-cart-left-category {
    position: relative !important;
    top: auto !important;
    margin-bottom: 18px !important;
  }

  .qy-cart-left-product-main,
  .qy-cart-left-category-col {
    width: 100% !important;
  }
}

@media (max-width: 640px) {
  .qy-cart-left-accordion-page .qy-cart-product-shell {
    width: min(100% - 28px, 1440px) !important;
  }

  .qy-cart-left-accordion-page .qy-cart-ls-grid {
    grid-template-columns: 1fr !important;
  }

  .qy-cart-left-accordion-page .qy-cart-product-current-title h2 {
    white-space: normal !important;
    font-size: 20px !important;
  }
}

/* =========================================================
   V28：购物车国旗按 100×67 原图比例显示
   ========================================================= */
.qy-cart-page .qy-plus-flag,
.qy-cart-mode .qy-plus-flag,
.qy-cart-ls-page .qy-plus-flag,
.qy-cart-left-accordion-page .qy-plus-flag{
  width: 45px !important;
  height: 30px !important;
  min-width: 45px !important;
  flex: 0 0 45px !important;
  aspect-ratio: 100 / 67 !important;
  margin-right: 10px !important;
  line-height: 0 !important;
  overflow: hidden !important;
}
.qy-cart-page .qy-plus-flag img,
.qy-cart-mode .qy-plus-flag img,
.qy-cart-ls-page .qy-plus-flag img,
.qy-cart-left-accordion-page .qy-plus-flag img{
  width: 45px !important;
  height: 30px !important;
  aspect-ratio: 100 / 67 !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 7px !important;
}
.qy-cart-product-current-title .qy-cart-category-flag{
  width: 45px !important;
  height: 30px !important;
  aspect-ratio: 100 / 67 !important;
  object-fit: cover !important;
}
@media (max-width: 760px){
  .qy-cart-page .qy-plus-flag,
  .qy-cart-mode .qy-plus-flag,
  .qy-cart-ls-page .qy-plus-flag,
  .qy-cart-left-accordion-page .qy-plus-flag,
  .qy-cart-page .qy-plus-flag img,
  .qy-cart-mode .qy-plus-flag img,
  .qy-cart-ls-page .qy-plus-flag img,
  .qy-cart-left-accordion-page .qy-plus-flag img{
    width: 39px !important;
    height: 26px !important;
    min-width: 39px !important;
    flex-basis: 39px !important;
  }
}


/* =========================================================
   qy-cart V29：选配页左右布局修复
   目标：/cart?action=configureproduct&pid=1 左侧分类常驻，右侧选配内容稳定展示
   ========================================================= */

body.qy-cart-mode {
  background: #ffffff !important;
}

body.qy-cart-mode .main-content,
body.qy-cart-mode .page-content,
body.qy-cart-mode .container,
body.qy-cart-mode .container-fluid {
  max-width: none !important;
}

.qy-cart-page,
.qy-cart-ls-page,
.qy-cart-configure-page {
  width: 100% !important;
  max-width: none !important;
}

.qy-cart-product-shell,
.qy-cart-configure-page > form {
  width: calc(100vw - 48px) !important;
  max-width: 1760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.qy-cart-config-layout--with-sidebar {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  gap: 0 !important;
  margin-left: -12px !important;
  margin-right: -12px !important;
}

.qy-cart-config-layout--with-sidebar > .qy-cart-ls-sidebar-col {
  flex: 0 0 300px !important;
  width: 300px !important;
  max-width: 300px !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  display: block !important;
}

.qy-cart-config-layout--with-sidebar > .qy-cart-config-main-col {
  flex: 1 1 auto !important;
  width: calc(100% - 300px) !important;
  max-width: calc(100% - 300px) !important;
  min-width: 0 !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

.qy-cart-config-layout--with-sidebar .qy-cart-ls-category {
  position: sticky !important;
  top: 96px !important;
  width: 100% !important;
  max-height: calc(100vh - 118px) !important;
  overflow-y: auto !important;
  border-radius: 12px !important;
}

.qy-cart-configure-page .qy-cart-config-main-col > .card {
  width: 100% !important;
  max-width: none !important;
  border-radius: 12px !important;
}

.qy-cart-configure-page .qy-cart-config-main-col > .card:first-child {
  border-radius: 12px 12px 0 0 !important;
}

.qy-cart-configure-page .qy-cart-config-main-col > .card:nth-child(2) {
  border-radius: 0 0 12px 12px !important;
}

.qy-cart-configure-page .qy-cart-config-main-col > .card:first-child .card-title {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

.qy-cart-configure-page .qy-cart-summary-render {
  width: 100% !important;
  max-width: 100% !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

.qy-cart-config-layout--with-sidebar .qy-cart-ls-first,
.qy-cart-config-layout--with-sidebar .qy-cart-ls-second a,
.qy-cart-config-layout--with-sidebar .qy-cart-ls-search input,
.qy-cart-config-layout--with-sidebar .qy-cart-ls-search button {
  border-radius: 12px !important;
}

.qy-cart-config-layout--with-sidebar .qy-cart-ls-category-group.is-open .qy-cart-ls-second {
  display: grid !important;
}

.qy-cart-config-layout--with-sidebar .qy-cart-ls-category-group:not(.is-open) .qy-cart-ls-second {
  display: none !important;
}

/* 防止选配页左侧栏被旧版 full 布局或 Bootstrap col-12 规则挤乱 */
.qy-cart-configure-page .qy-cart-config-layout--full .qy-cart-ls-sidebar-col {
  display: none !important;
}

@media (max-width: 1199px) {
  .qy-cart-product-shell,
  .qy-cart-configure-page > form {
    width: calc(100vw - 32px) !important;
  }

  .qy-cart-config-layout--with-sidebar > .qy-cart-ls-sidebar-col {
    flex-basis: 272px !important;
    width: 272px !important;
    max-width: 272px !important;
  }

  .qy-cart-config-layout--with-sidebar > .qy-cart-config-main-col {
    width: calc(100% - 272px) !important;
    max-width: calc(100% - 272px) !important;
  }
}

@media (max-width: 991px) {
  .qy-cart-config-layout--with-sidebar {
    display: block !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .qy-cart-config-layout--with-sidebar > .qy-cart-ls-sidebar-col,
  .qy-cart-config-layout--with-sidebar > .qy-cart-config-main-col {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .qy-cart-config-layout--with-sidebar .qy-cart-ls-category {
    position: relative !important;
    top: auto !important;
    max-height: none !important;
    margin-bottom: 18px !important;
  }
}

@media (max-width: 640px) {
  .qy-cart-product-shell,
  .qy-cart-configure-page > form {
    width: calc(100vw - 22px) !important;
  }
}


/* =========================================================
   qy-cart V30：国旗只显示在产品分类项，标题模块不显示国旗；分类项去掉圆点
   ========================================================= */
.qy-cart-product-current-title .qy-plus-flag,
.qy-cart-product-current-title .qy-cart-category-flag {
  display: none !important;
}

.qy-cart-ls-second a .qy-cart-ls-second-name::before,
.qy-cart-ls-second a .qy-plus-flag::before,
.qy-cart-ls-second a span::before {
  content: none !important;
  display: none !important;
}

.qy-cart-ls-second a .qy-cart-ls-second-name {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.qy-cart-ls-second a .qy-plus-flag {
  margin-right: 0 !important;
}

.qy-cart-ls-second a {
  list-style: none !important;
}

.qy-cart-ls-second a::before,
.qy-cart-ls-second a::after {
  content: none !important;
  display: none !important;
}


/* =========================================================
   qy-cart V31：分类侧栏数据兜底 + 标题模块简化
   ========================================================= */
.qy-cart-product-topbar {
  display: none !important;
}

.qy-cart-ls-main-title.qy-cart-product-current-title,
.qy-cart-left-accordion-page .qy-cart-product-current-title {
  display: block !important;
  margin: 0 0 18px !important;
  padding: 14px 18px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .04) !important;
  overflow: hidden !important;
}

.qy-cart-ls-main-title.qy-cart-product-current-title h2,
.qy-cart-left-accordion-page .qy-cart-product-current-title h2 {
  margin: 0 !important;
  color: #0f172a !important;
  font-size: 20px !important;
  line-height: 1.45 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* 标题模块只显示文字，不允许国旗或描述混入 */
.qy-cart-product-current-title .qy-plus-flag,
.qy-cart-product-current-title .qy-cart-category-flag,
.qy-cart-product-current-title p,
.qy-cart-product-current-title em,
.qy-cart-product-current-title .qy-cart-category-desc,
.qy-cart-product-current-title .qy-cart-ls-main-slogan {
  display: none !important;
}

/* 分类项有国旗时不再显示小圆点；没有国旗也去掉旧圆点，避免出现两个点 */
.qy-cart-ls-second-name::before,
.qy-cart-ls-second a span::before,
.qy-cart-category-second a span::before,
.qy-cart-page .qy-plus-flag::before,
.qy-cart-page .qy-plus-flag::after,
.qy-cart-mode .qy-plus-flag::before,
.qy-cart-mode .qy-plus-flag::after {
  display: none !important;
  content: none !important;
}

.qy-cart-ls-second a,
.qy-cart-category-second a {
  padding-left: 12px !important;
}

.qy-cart-ls-second a .qy-plus-flag,
.qy-cart-category-second a .qy-plus-flag {
  margin-right: 10px !important;
}

@media (max-width: 640px) {
  .qy-cart-ls-main-title.qy-cart-product-current-title h2,
  .qy-cart-left-accordion-page .qy-cart-product-current-title h2 {
    white-space: normal !important;
    font-size: 18px !important;
  }
}


/* V32: cart sidebar accordion click fix */
.qy-cart-ls-category-list[data-qy-cart-accordion] .qy-cart-ls-second{
  display:grid !important;
  max-height:0 !important;
  overflow:hidden !important;
  opacity:0 !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  transition:max-height .28s cubic-bezier(.22,.61,.36,1),opacity .2s ease,padding .2s ease !important;
}
.qy-cart-ls-category-list[data-qy-cart-accordion] .qy-cart-ls-category-group.is-open .qy-cart-ls-second{
  max-height:720px !important;
  opacity:1 !important;
  padding-top:4px !important;
  padding-bottom:10px !important;
}
.qy-cart-ls-first{
  cursor:pointer !important;
  user-select:none !important;
}
.qy-cart-ls-second-name::before,
.qy-cart-ls-second a span::before{
  display:none !important;
  content:none !important;
}

/* =========================================================
   qy-cart V34：左侧分类参考样式 + 选配页左右间距统一
   ========================================================= */
body.qy-cart-mode .container-fluid {
  max-width: none !important;
  width: 100% !important;
}

.qy-cart-page .qy-cart-product-shell,
.qy-cart-configure-page > form {
  width: min(1880px, calc(100vw - 56px)) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.qy-cart-left-accordion-layout,
.qy-cart-config-layout,
.qy-cart-ls-layout {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  margin-left: -10px !important;
  margin-right: -10px !important;
}

.qy-cart-left-accordion-layout > .qy-cart-ls-sidebar-col,
.qy-cart-config-layout > .qy-cart-ls-sidebar-col,
.qy-cart-ls-layout > .qy-cart-ls-sidebar-col {
  flex: 0 0 320px !important;
  max-width: 320px !important;
  width: 320px !important;
  padding-left: 10px !important;
  padding-right: 10px !important;
}

.qy-cart-left-accordion-layout > .qy-cart-left-product-main,
.qy-cart-config-layout > .qy-cart-config-main-col,
.qy-cart-ls-layout > .qy-cart-ls-main {
  flex: 1 1 0 !important;
  max-width: calc(100% - 320px) !important;
  width: calc(100% - 320px) !important;
  padding-left: 10px !important;
  padding-right: 10px !important;
}

/* 左侧分类：参考用户提供的整洁铺满背景，禁止额外文案 */
.qy-cart-ls-category {
  position: sticky !important;
  top: 92px !important;
  overflow: hidden !important;
  border: 1px solid #edf1f7 !important;
  border-radius: 12px !important;
  background: #f6f8fb !important;
  box-shadow: none !important;
}

.qy-cart-ls-category-title {
  display: none !important;
}

.qy-cart-ls-search {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 0 !important;
  padding: 14px !important;
  border-bottom: 1px solid #eef2f7 !important;
  background: #f6f8fb !important;
}

.qy-cart-ls-search input {
  height: 42px !important;
  border-radius: 4px !important;
  background: #ffffff !important;
  border-color: #d6dde8 !important;
  font-weight: 700 !important;
}

.qy-cart-ls-search button {
  display: none !important;
}

.qy-cart-ls-category-list {
  display: block !important;
  padding: 8px 0 14px !important;
  background: #f6f8fb !important;
}

.qy-cart-ls-category-group {
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

.qy-cart-ls-first {
  width: 100% !important;
  min-height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 0 18px !important;
  color: #111827 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  text-align: left !important;
  box-shadow: none !important;
}

.qy-cart-ls-first:hover,
.qy-cart-ls-category-group.is-open .qy-cart-ls-first {
  color: #111827 !important;
  background: #f6f8fb !important;
}

.qy-cart-ls-first i {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 auto !important;
  border-radius: 0 !important;
  background: transparent !important;
}

.qy-cart-ls-first i::before,
.qy-cart-ls-first i::after {
  left: 5px !important;
  right: 5px !important;
  top: 8px !important;
  height: 2px !important;
  background: #9ca3af !important;
}

.qy-cart-ls-category-group.is-open .qy-cart-ls-first i::before,
.qy-cart-ls-category-group.is-open .qy-cart-ls-first i::after {
  background: #1263ff !important;
}

.qy-cart-ls-second {
  display: none;
  padding: 0 6px 8px !important;
}

.qy-cart-ls-category-group.is-open .qy-cart-ls-second {
  display: block !important;
}

.qy-cart-ls-second a {
  position: relative !important;
  width: 100% !important;
  min-height: 40px !important;
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 12px 0 28px !important;
  color: #111827 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.qy-cart-ls-second a::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 3px !important;
  background: transparent !important;
}

.qy-cart-ls-second a:hover,
.qy-cart-ls-second a.is-active {
  color: #0f172a !important;
  background: #e8f1ff !important;
}

.qy-cart-ls-second a:hover::before,
.qy-cart-ls-second a.is-active::before {
  background: #1263ff !important;
}

.qy-cart-ls-second a span,
.qy-cart-ls-second a .qy-cart-ls-second-name {
  position: static !important;
  width: 100% !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-width: 0 !important;
  padding-left: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.qy-cart-ls-second a span::before,
.qy-cart-ls-second a .qy-cart-ls-second-name::before {
  display: none !important;
  content: none !important;
}

.qy-cart-ls-second .qy-plus-flag,
.qy-cart-ls-second .qy-plus-flag img {
  width: 30px !important;
  height: 20px !important;
  min-width: 30px !important;
  flex: 0 0 30px !important;
  object-fit: cover !important;
  border-radius: 2px !important;
}

/* 选配页顶部产品型号/产品类型 */
.qy-cart-config-product-type {
  display: grid !important;
  gap: 8px !important;
  padding: 2px 0 !important;
}

.qy-cart-config-product-type span {
  width: fit-content !important;
  min-height: 26px !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 0 10px !important;
  color: #1263ff !important;
  border: 1px solid #dbeafe !important;
  border-radius: 999px !important;
  background: #edf4ff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

.qy-cart-config-product-type strong {
  color: #0f172a !important;
  font-size: clamp(22px, 2vw, 30px) !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  letter-spacing: -0.4px !important;
}

.qy-cart-config-main-col > .card:first-child,
.qy-cart-config-main-col > .card:nth-child(2) {
  width: 100% !important;
}

@media (max-width: 991px) {
  .qy-cart-page .qy-cart-product-shell,
  .qy-cart-configure-page > form {
    width: min(100% - 24px, 100%) !important;
  }

  .qy-cart-left-accordion-layout > .qy-cart-ls-sidebar-col,
  .qy-cart-config-layout > .qy-cart-ls-sidebar-col,
  .qy-cart-ls-layout > .qy-cart-ls-sidebar-col,
  .qy-cart-left-accordion-layout > .qy-cart-left-product-main,
  .qy-cart-config-layout > .qy-cart-config-main-col,
  .qy-cart-ls-layout > .qy-cart-ls-main {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .qy-cart-ls-category {
    position: relative !important;
    top: auto !important;
    margin-bottom: 18px !important;
  }
}


/* =========================================================
   qy-cart V35：选配页真正左右布局修复
   说明：上一版用 Bootstrap row/col 叠加 flex，配置区和汇总区容易错位。
   本版把 configureproduct 页面固定为：左侧分类栏 + 右侧选配内容。
   ========================================================= */
.qy-cart-configure-page > form {
  width: min(1880px, calc(100vw - 56px)) !important;
  max-width: none !important;
  margin: 0 auto !important;
}

.qy-cart-configure-page .qy-cart-config-layout,
.qy-cart-configure-page .qy-cart-config-layout--with-sidebar {
  display: grid !important;
  grid-template-columns: 320px minmax(0, 1fr) !important;
  gap: 20px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

.qy-cart-configure-page .qy-cart-config-layout > .qy-cart-ls-sidebar-col,
.qy-cart-configure-page .qy-cart-config-layout--with-sidebar > .qy-cart-ls-sidebar-col {
  grid-column: 1 !important;
  width: 320px !important;
  min-width: 320px !important;
  max-width: 320px !important;
  flex: none !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
}

.qy-cart-configure-page .qy-cart-config-layout > .qy-cart-config-main-col,
.qy-cart-configure-page .qy-cart-config-layout--with-sidebar > .qy-cart-config-main-col {
  grid-column: 2 !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  flex: none !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
}

.qy-cart-configure-page .qy-cart-config-main-col > .card,
.qy-cart-configure-page .qy-cart-config-main-col > .qy-cart-summary-render {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.qy-cart-configure-page .qy-cart-summary-render {
  display: block !important;
  padding: 0 !important;
  margin-top: 18px !important;
  clear: both !important;
}

.qy-cart-configure-page .configoption_total {
  width: 100% !important;
  max-width: none !important;
}

.qy-cart-configure-page .qy-cart-ls-category {
  width: 100% !important;
  max-width: 100% !important;
}

.qy-cart-configure-page .qy-cart-config-product-type {
  width: 100% !important;
  max-width: 100% !important;
}

/* 禁止旧版 offset/col 规则继续把汇总区推偏 */
.qy-cart-configure-page .qy-cart-summary-render[class*="offset-"],
.qy-cart-configure-page .qy-cart-summary-render[class*="col-"] {
  flex: none !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
}

@media (max-width: 991px) {
  .qy-cart-configure-page > form {
    width: calc(100vw - 24px) !important;
  }

  .qy-cart-configure-page .qy-cart-config-layout,
  .qy-cart-configure-page .qy-cart-config-layout--with-sidebar {
    display: block !important;
  }

  .qy-cart-configure-page .qy-cart-config-layout > .qy-cart-ls-sidebar-col,
  .qy-cart-configure-page .qy-cart-config-layout--with-sidebar > .qy-cart-ls-sidebar-col,
  .qy-cart-configure-page .qy-cart-config-layout > .qy-cart-config-main-col,
  .qy-cart-configure-page .qy-cart-config-layout--with-sidebar > .qy-cart-config-main-col {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .qy-cart-configure-page .qy-cart-config-layout > .qy-cart-ls-sidebar-col,
  .qy-cart-configure-page .qy-cart-config-layout--with-sidebar > .qy-cart-ls-sidebar-col {
    margin-bottom: 18px !important;
  }

  .qy-cart-configure-page .qy-cart-ls-category {
    position: relative !important;
    top: auto !important;
    max-height: none !important;
  }
}

/* =========================================================
   qy-cart v36：产品列表页/购买详细页统一左侧产品分类侧边栏
   要求：/cart 与 /cart?action=configureproduct&pid= 同一侧栏样式、同一间距、侧栏100%高度并内部滚动
   ========================================================= */
.qy-cart-product-shell,
.qy-cart-page > form,
.qy-cart-configure-page > form {
  width: min(100%, 100vw) !important;
  max-width: none !important;
}

.qy-cart-ls-layout,
.qy-cart-config-layout--with-sidebar {
  display: grid !important;
  grid-template-columns: 320px minmax(0, 1fr) !important;
  gap: 24px !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

.qy-cart-ls-layout::before,
.qy-cart-ls-layout::after,
.qy-cart-config-layout--with-sidebar::before,
.qy-cart-config-layout--with-sidebar::after {
  display: none !important;
  content: none !important;
}

.qy-cart-ls-sidebar-col,
.qy-cart-config-layout--with-sidebar > .qy-cart-ls-sidebar-col {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: none !important;
  padding: 0 !important;
  display: flex !important;
  align-self: stretch !important;
}

.qy-cart-ls-main,
.qy-cart-left-product-main,
.qy-cart-config-main,
.qy-cart-config-main-col,
.qy-cart-config-layout--with-sidebar > .qy-cart-config-main-col {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: none !important;
  padding: 0 !important;
}

.qy-cart-ls-category {
  width: 100% !important;
  min-height: calc(100vh - 128px) !important;
  height: calc(100vh - 128px) !important;
  max-height: calc(100vh - 128px) !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  position: sticky !important;
  top: 92px !important;
  border-radius: 12px !important;
  background: #f8fafc !important;
}

.qy-cart-ls-category-title,
.qy-cart-ls-search {
  flex: 0 0 auto !important;
}

.qy-cart-ls-category-list {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 8px !important;
  scrollbar-width: thin;
  scrollbar-color: rgba(18, 99, 255, 0.35) transparent;
}

.qy-cart-ls-category-list::-webkit-scrollbar {
  width: 6px;
}

.qy-cart-ls-category-list::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(18, 99, 255, 0.28);
}

.qy-cart-ls-category-group {
  width: 100% !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}

.qy-cart-ls-first {
  width: 100% !important;
  border-radius: 10px !important;
  min-height: 46px !important;
  padding: 0 14px !important;
  background: transparent !important;
}

.qy-cart-ls-category-group.is-open .qy-cart-ls-first,
.qy-cart-ls-first:hover {
  background: #edf4ff !important;
}

.qy-cart-ls-second {
  width: 100% !important;
  padding: 4px 0 8px !important;
}

.qy-cart-ls-category-group.is-open .qy-cart-ls-second {
  display: grid !important;
  gap: 2px !important;
}

.qy-cart-ls-second a {
  width: 100% !important;
  min-height: 40px !important;
  border-radius: 8px !important;
  padding: 0 12px !important;
  background: transparent !important;
}

.qy-cart-ls-second a:hover,
.qy-cart-ls-second a.is-active {
  background: #eaf2ff !important;
  box-shadow: inset 3px 0 0 #1263ff !important;
}

.qy-cart-ls-second a::before,
.qy-cart-ls-second-name::before,
.qy-plus-flag::before,
.qy-plus-flag::after {
  content: none !important;
  display: none !important;
}

.qy-cart-ls-second-name {
  width: 100% !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

.qy-cart-ls-second-name .qy-plus-flag {
  flex: 0 0 42px !important;
  width: 42px !important;
  height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  background: transparent !important;
}

.qy-cart-ls-second-name .qy-plus-flag img {
  width: 42px !important;
  height: 28px !important;
  object-fit: cover !important;
  display: block !important;
}

/* 购买详细页：右侧配置区域不再继承 Bootstrap col 宽度造成错位 */
.qy-cart-config-layout--with-sidebar .qy-cart-config-main-col > .card,
.qy-cart-configure-page .qy-cart-config-main-col > .card {
  width: 100% !important;
  max-width: none !important;
}

.qy-cart-configure-page .qy-cart-config-main-col .card {
  border-radius: 12px !important;
}

.qy-cart-configure-page .qy-cart-summary-render {
  border-radius: 12px !important;
}

@media (max-width: 991px) {
  .qy-cart-ls-layout,
  .qy-cart-config-layout--with-sidebar {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .qy-cart-ls-category {
    position: relative !important;
    top: auto !important;
    min-height: auto !important;
    height: auto !important;
    max-height: none !important;
  }

  .qy-cart-ls-category-list {
    max-height: 460px !important;
  }
}

/* =========================================================
   qy-cart V37：修复左侧分类折叠后空隙过大
   - 保留侧边栏 100% 高度和内部滚动
   - 分类项紧凑排列，不再在一级分类之间撑出大空白
   - 展开项只占真实内容高度
   ========================================================= */
.qy-cart-ls-category {
  height: calc(100vh - 128px) !important;
  min-height: calc(100vh - 128px) !important;
  max-height: calc(100vh - 128px) !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
}

.qy-cart-ls-category-list {
  display: block !important;
  flex: 0 1 auto !important;
  min-height: 0 !important;
  max-height: calc(100vh - 210px) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 8px 0 12px !important;
  background: #f6f8fb !important;
}

.qy-cart-ls-category-group {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  overflow: hidden !important;
}

.qy-cart-ls-category-group + .qy-cart-ls-category-group {
  margin-top: 2px !important;
}

.qy-cart-ls-first {
  width: 100% !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

.qy-cart-ls-category-list[data-qy-cart-accordion] .qy-cart-ls-second,
.qy-cart-ls-category-group:not(.is-open) .qy-cart-ls-second {
  display: none !important;
  height: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
}

.qy-cart-ls-category-list[data-qy-cart-accordion] .qy-cart-ls-category-group.is-open .qy-cart-ls-second {
  display: block !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 6px 8px !important;
  opacity: 1 !important;
  overflow: visible !important;
}

.qy-cart-ls-second a {
  width: 100% !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

.qy-cart-ls-second a + a {
  margin-top: 2px !important;
}

@media (max-width: 991px) {
  .qy-cart-ls-category {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  .qy-cart-ls-category-list {
    max-height: 460px !important;
  }
}

/* =========================================================
   V38：/cart 与购买详细页左侧分类对齐 + 右侧产品卡片全宽
   - 左侧分类模块与右侧当前分类标题顶部平齐
   - 产品卡片区域在任何宽度下占满右侧可用空间
   - 左侧分类保持 100% 视口高度，内部滚动
   - 收起分类不再占空隙
   ========================================================= */
.qy-cart-product-shell,
.qy-cart-configure-page > form {
  width: calc(100vw - 40px) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.qy-cart-ls-layout,
.qy-cart-left-accordion-layout,
.qy-cart-config-layout--with-sidebar {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  gap: 24px !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.qy-cart-ls-layout > [class*="col-"],
.qy-cart-left-accordion-layout > [class*="col-"],
.qy-cart-config-layout--with-sidebar > [class*="col-"] {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.qy-cart-ls-sidebar-col,
.qy-cart-left-category-col,
.qy-cart-config-layout--with-sidebar > .qy-cart-ls-sidebar-col {
  flex: 0 0 320px !important;
  width: 320px !important;
  max-width: 320px !important;
  min-width: 320px !important;
  display: block !important;
}

.qy-cart-ls-main,
.qy-cart-left-product-main,
.qy-cart-config-layout--with-sidebar > .qy-cart-config-main-col {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.qy-cart-ls-category,
.qy-cart-left-accordion-page .qy-cart-ls-category,
.qy-cart-left-accordion-page .qy-cart-left-category,
.qy-cart-config-layout--with-sidebar .qy-cart-ls-category {
  position: sticky !important;
  top: 96px !important;
  width: 100% !important;
  height: calc(100vh - 112px) !important;
  max-height: calc(100vh - 112px) !important;
  min-height: 520px !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  margin-top: 0 !important;
  border-radius: 12px !important;
}

.qy-cart-ls-category-title,
.qy-cart-ls-search {
  flex: 0 0 auto !important;
}

.qy-cart-ls-category-list {
  flex: 1 1 auto !important;
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 10px !important;
  gap: 0 !important;
}

.qy-cart-ls-category-group {
  display: block !important;
  width: 100% !important;
  margin: 0 0 8px !important;
  overflow: hidden !important;
}

.qy-cart-ls-category-group:last-child {
  margin-bottom: 0 !important;
}

.qy-cart-ls-first {
  width: 100% !important;
}

.qy-cart-ls-second {
  display: block !important;
  max-height: 0 !important;
  overflow: hidden !important;
  padding: 0 8px !important;
  transition: max-height .24s ease, padding .24s ease !important;
}

.qy-cart-ls-category-group.is-open .qy-cart-ls-second {
  max-height: 720px !important;
  padding: 4px 8px 10px !important;
}

.qy-cart-ls-second a,
.qy-cart-ls-second-name {
  width: 100% !important;
  min-width: 0 !important;
}

.qy-cart-ls-main-title,
.qy-cart-product-current-title,
.qy-cart-left-accordion-page .qy-cart-product-current-title,
.qy-cart-new-product-page .qy-cart-product-current-title {
  width: 100% !important;
  max-width: none !important;
  margin-top: 0 !important;
  margin-bottom: 18px !important;
}

.qy-cart-ls-grid {
  width: 100% !important;
  max-width: none !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)) !important;
  gap: 20px !important;
  align-items: stretch !important;
}

.qy-cart-ls-card {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

.qy-cart-configure-page .qy-cart-config-main-col,
.qy-cart-configure-page .qy-cart-config-main-col > *,
.qy-cart-configure-page .qy-cart-config-main-col > .card,
.qy-cart-configure-page .qy-cart-config-main-col .card {
  max-width: none !important;
}

@media (min-width: 1600px) {
  .qy-cart-ls-grid {
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)) !important;
  }
}

@media (max-width: 991px) {
  .qy-cart-product-shell,
  .qy-cart-configure-page > form {
    width: calc(100vw - 28px) !important;
  }

  .qy-cart-ls-layout,
  .qy-cart-left-accordion-layout,
  .qy-cart-config-layout--with-sidebar {
    display: block !important;
  }

  .qy-cart-ls-sidebar-col,
  .qy-cart-left-category-col,
  .qy-cart-config-layout--with-sidebar > .qy-cart-ls-sidebar-col,
  .qy-cart-ls-main,
  .qy-cart-left-product-main,
  .qy-cart-config-layout--with-sidebar > .qy-cart-config-main-col {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
  }

  .qy-cart-ls-category,
  .qy-cart-left-accordion-page .qy-cart-ls-category,
  .qy-cart-left-accordion-page .qy-cart-left-category,
  .qy-cart-config-layout--with-sidebar .qy-cart-ls-category {
    position: relative !important;
    top: auto !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    margin-bottom: 18px !important;
  }

  .qy-cart-ls-category-list {
    max-height: 52vh !important;
  }

  .qy-cart-ls-grid {
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
  }
}

@media (max-width: 560px) {
  .qy-cart-ls-grid {
    grid-template-columns: 1fr !important;
  }
}

/* =========================================================
   20260704 V39：只调整左侧分类模块顶部对齐 + 缩小一级分类间隔
   ========================================================= */
.qy-cart-product-page .qy-cart-ls-layout,
.qy-cart-configure-page .qy-cart-config-layout--with-sidebar {
  align-items: flex-start !important;
}

.qy-cart-product-page .qy-cart-ls-sidebar-col,
.qy-cart-configure-page .qy-cart-ls-sidebar-col,
.qy-cart-config-layout--with-sidebar > .qy-cart-ls-sidebar-col {
  margin-top: 0 !important;
  padding-top: 0 !important;
  align-self: flex-start !important;
}

.qy-cart-product-page .qy-cart-ls-category,
.qy-cart-configure-page .qy-cart-ls-category,
.qy-cart-config-layout--with-sidebar .qy-cart-ls-category {
  margin-top: 0 !important;
  top: 92px !important;
}

/* 确保左侧分类面板顶部和右侧标题模块顶部平齐 */
.qy-cart-product-page .qy-cart-ls-sidebar-col .qy-cart-ls-category,
.qy-cart-configure-page .qy-cart-ls-sidebar-col .qy-cart-ls-category {
  transform: translateY(0) !important;
}

/* 缩小两个一级分类之间的间隔 */
.qy-cart-ls-category-list,
.qy-cart-left-accordion-page .qy-cart-ls-category-list,
.qy-cart-config-layout--with-sidebar .qy-cart-ls-category-list {
  gap: 0 !important;
  row-gap: 0 !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

.qy-cart-ls-category-group,
.qy-cart-left-accordion-page .qy-cart-ls-category-group,
.qy-cart-config-layout--with-sidebar .qy-cart-ls-category-group {
  margin: 0 !important;
  padding: 0 !important;
}

.qy-cart-ls-category-group + .qy-cart-ls-category-group,
.qy-cart-left-accordion-page .qy-cart-ls-category-group + .qy-cart-ls-category-group,
.qy-cart-config-layout--with-sidebar .qy-cart-ls-category-group + .qy-cart-ls-category-group {
  margin-top: 3px !important;
}

.qy-cart-ls-category-list[data-qy-cart-accordion] .qy-cart-ls-category-group:not(.is-open) .qy-cart-ls-second,
.qy-cart-ls-category-group:not(.is-open) .qy-cart-ls-second {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.qy-cart-ls-first,
.qy-cart-left-accordion-page .qy-cart-ls-first,
.qy-cart-config-layout--with-sidebar .qy-cart-ls-first {
  min-height: 42px !important;
}

/* =========================================================
   20260704 V40：只修左侧产品分类两个一级分类之间空隙过大
   - 不改变 /cart 其它布局
   - 不改变购买页布局
   - 强制分类列表按真实内容从上往下排列
   ========================================================= */
.qy-cart-ls-category-list,
.qy-cart-left-accordion-page .qy-cart-ls-category-list,
.qy-cart-config-layout--with-sidebar .qy-cart-ls-category-list {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-content: flex-start !important;
  align-items: stretch !important;
  gap: 4px !important;
  row-gap: 4px !important;
}

.qy-cart-ls-category-group,
.qy-cart-left-accordion-page .qy-cart-ls-category-group,
.qy-cart-config-layout--with-sidebar .qy-cart-ls-category-group {
  flex: 0 0 auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.qy-cart-ls-category-group + .qy-cart-ls-category-group,
.qy-cart-left-accordion-page .qy-cart-ls-category-group + .qy-cart-ls-category-group,
.qy-cart-config-layout--with-sidebar .qy-cart-ls-category-group + .qy-cart-ls-category-group {
  margin-top: 4px !important;
}

.qy-cart-ls-category-group:not(.is-open),
.qy-cart-left-accordion-page .qy-cart-ls-category-group:not(.is-open),
.qy-cart-config-layout--with-sidebar .qy-cart-ls-category-group:not(.is-open) {
  flex: 0 0 auto !important;
}

.qy-cart-ls-category-list[data-qy-cart-accordion] .qy-cart-ls-category-group:not(.is-open) .qy-cart-ls-second,
.qy-cart-ls-category-group:not(.is-open) .qy-cart-ls-second,
.qy-cart-left-accordion-page .qy-cart-ls-category-group:not(.is-open) .qy-cart-ls-second,
.qy-cart-config-layout--with-sidebar .qy-cart-ls-category-group:not(.is-open) .qy-cart-ls-second {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
}

.qy-cart-ls-category-list[data-qy-cart-accordion] .qy-cart-ls-category-group.is-open .qy-cart-ls-second,
.qy-cart-ls-category-group.is-open .qy-cart-ls-second,
.qy-cart-left-accordion-page .qy-cart-ls-category-group.is-open .qy-cart-ls-second,
.qy-cart-config-layout--with-sidebar .qy-cart-ls-category-group.is-open .qy-cart-ls-second {
  flex: 0 0 auto !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 4px 6px 8px !important;
  opacity: 1 !important;
}

/* V41: qy-cart-product-current-title 蓝色毛玻璃 3D 标题块 */
.qy-cart-ls-main-title.qy-cart-product-current-title,
.qy-cart-product-current-title {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 18px !important;
  padding: 24px 28px !important;
  min-height: 82px !important;
  display: flex !important;
  align-items: center !important;
  background: #1263ff !important;
  border: 1px solid rgba(255, 255, 255, 0.48) !important;
  box-shadow:
    0 22px 48px rgba(31, 111, 255, 0.24),
    0 10px 22px rgba(8, 52, 132, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.56),
    inset 0 -16px 34px rgba(22, 82, 190, 0.14) !important;
  -webkit-backdrop-filter: blur(18px) saturate(142%) !important;
  backdrop-filter: blur(18px) saturate(142%) !important;
  transform: translateZ(0) !important;
}

.qy-cart-ls-main-title.qy-cart-product-current-title::before,
.qy-cart-product-current-title::before {
  content: "" !important;
  position: absolute !important;
  left: 18px !important;
  right: 18px !important;
  top: 0 !important;
  height: 1px !important;
  background: rgba(255,255,255,.68) !important;
  pointer-events: none !important;
}

.qy-cart-ls-main-title.qy-cart-product-current-title::after,
.qy-cart-product-current-title::after {
  content: "" !important;
  position: absolute !important;
  right: -34px !important;
  top: -42px !important;
  width: 150px !important;
  height: 150px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.16) !important;
  filter: blur(1px) !important;
  pointer-events: none !important;
}

.qy-cart-ls-main-title.qy-cart-product-current-title h2,
.qy-cart-product-current-title h2 {
  position: relative !important;
  z-index: 1 !important;
  margin: 0 !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  line-height: 1.42 !important;
  text-shadow: 0 2px 12px rgba(0, 55, 148, 0.28) !important;
}

/* V42: 只给二级分类名称做蓝色毛玻璃效果，产品描述保持普通文字 */
.qy-cart-ls-main-title.qy-cart-product-current-title,
.qy-cart-product-current-title {
  position: relative !important;
  overflow: visible !important;
  border-radius: 12px !important;
  padding: 0 !important;
  min-height: auto !important;
  display: block !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

.qy-cart-ls-main-title.qy-cart-product-current-title::before,
.qy-cart-ls-main-title.qy-cart-product-current-title::after,
.qy-cart-product-current-title::before,
.qy-cart-product-current-title::after {
  display: none !important;
  content: none !important;
}

.qy-cart-ls-main-title.qy-cart-product-current-title h2,
.qy-cart-product-current-title h2 {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin: 0 !important;
  color: #1f2937 !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  text-shadow: none !important;
}

.qy-cart-product-current-title .qy-cart-category-name-badge {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  padding: 10px 18px !important;
  border-radius: 14px !important;
  color: #000000 !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
  background: #1263ff !important;
  border: 1px solid rgba(255,255,255,.54) !important;
  box-shadow:
    0 16px 32px rgba(37, 112, 255, .22),
    0 6px 14px rgba(15, 65, 160, .12),
    inset 0 1px 0 rgba(255,255,255,.65),
    inset 0 -12px 22px rgba(18, 84, 200, .16) !important;
  -webkit-backdrop-filter: blur(14px) saturate(145%) !important;
  backdrop-filter: blur(14px) saturate(145%) !important;
}

.qy-cart-product-current-title .qy-cart-category-desc-text {
  display: inline !important;
  color: #344054 !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;
  text-shadow: none !important;
}

.qy-cart-product-current-title .qy-plus-flag,
.qy-cart-product-current-title .qy-cart-category-flag {
  display: none !important;
}

@media (max-width: 768px) {
  .qy-cart-ls-main-title.qy-cart-product-current-title h2,
  .qy-cart-product-current-title h2 {
    gap: 8px !important;
  }
  .qy-cart-product-current-title .qy-cart-category-name-badge {
    min-height: 36px !important;
    padding: 8px 14px !important;
    font-size: 16px !important;
    border-radius: 12px !important;
  }
  .qy-cart-product-current-title .qy-cart-category-desc-text {
    font-size: 15px !important;
  }
}


/* =========================================================
   20260705 V45：手机端顶部账户入口改成默认头像
   只影响购物车手机端，PC 不动
   ========================================================= */
@media (max-width: 760px) {
  

  

  

  

  

  /* 未登录：登录/注册文字按钮改成默认头像 */
  

  /* 已登录：只保留头像，隐藏文字状态 */
  

  

  

  
}




/* 20260713：产品卡片与产品描述区域统一白底 */
.qy-cart-product-page .qy-cart-ls-card,
.qy-cart-new-product-page .qy-cart-ls-card,
.qy-cart-product-page .qy-cart-ls-spec.qy-cart-product-desc,
.qy-cart-new-product-page .qy-cart-ls-spec.qy-cart-product-desc,
.qy-cart-product-page .qy-cart-ls-spec.qy-cart-product-desc > pre,
.qy-cart-new-product-page .qy-cart-ls-spec.qy-cart-product-desc > pre {
  background: #ffffff !important;
}

/* 20260713：产品卡片固定响应式列数（不再由插件控制）
 * >1650px：6列
 * 1351px–1650px：5列
 * 1051px–1350px：4列
 * 701px–1050px：3列
 * <=700px：1列
 */
html body.qy-cart-mode .qy-cart-page.qy-cart-product-page .qy-cart-ls-grid,
html body.qy-cart-mode .qy-cart-page.qy-cart-new-product-page .qy-cart-ls-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  grid-auto-columns: minmax(0, 1fr) !important;
}

@media (max-width: 1650px) {
  html body.qy-cart-mode .qy-cart-page.qy-cart-product-page .qy-cart-ls-grid,
  html body.qy-cart-mode .qy-cart-page.qy-cart-new-product-page .qy-cart-ls-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1350px) {
  html body.qy-cart-mode .qy-cart-page.qy-cart-product-page .qy-cart-ls-grid,
  html body.qy-cart-mode .qy-cart-page.qy-cart-new-product-page .qy-cart-ls-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1050px) {
  html body.qy-cart-mode .qy-cart-page.qy-cart-product-page .qy-cart-ls-grid,
  html body.qy-cart-mode .qy-cart-page.qy-cart-new-product-page .qy-cart-ls-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  html body.qy-cart-mode .qy-cart-page.qy-cart-product-page .qy-cart-ls-grid,
  html body.qy-cart-mode .qy-cart-page.qy-cart-new-product-page .qy-cart-ls-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}



/* 20260713：移除产品卡片价格区域上方横线 */
html body.qy-cart-mode .qy-cart-page .qy-cart-ls-card .qy-cart-ls-line {
  display: none !important;
}

/* 20260713 v1.6.5：产品卡片标题与介绍文字统一为 13px */
.qy-cart-product-page .qy-cart-ls-card-top > h5,
.qy-cart-product-page .qy-cart-ls-card-top h5,
.qy-cart-new-product-page .qy-cart-ls-card-top > h5,
.qy-cart-new-product-page .qy-cart-ls-card-top h5 {
  color: #111827 !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  font-weight: 700 !important;
  text-shadow: none !important;
}

.qy-cart-product-page .qy-cart-ls-spec.qy-cart-product-desc,
.qy-cart-new-product-page .qy-cart-ls-spec.qy-cart-product-desc,
.qy-cart-product-page .qy-cart-ls-spec.qy-cart-product-desc > pre,
.qy-cart-new-product-page .qy-cart-ls-spec.qy-cart-product-desc > pre {
  font-size: 13px !important;
}


/* =========================================================
   qy-cart v1.6.9：购物车页面彻底隐藏官网 Footer
   购物车调用 web 头尾时，真实页脚类名为 .qy-footer。
   ========================================================= */
html body.qy-cart-mode footer.qy-footer,
html body.qy-cart-mode .qy-footer,
html body.qy-cart-mode footer[class*="qy-footer"] {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
}


/* =========================================================
   qy-cart v1.7.0：隔离购物车依赖对官网顶部导航的全局影响
   Bootstrap 的 a:hover 默认下划线不得污染 web 主题导航。
   ========================================================= */





/* =========================================================
   启跃云购物车 2.0：最终干净覆盖
   仅作用于购物车主体，不控制 Web 顶部导航。
   ========================================================= */
body.qy-cart-mode .qy-cart-page,
body.qy-cart-mode .qy-cart-page * {
  box-sizing: border-box;
}

/* 产品卡片响应式：6 / 5 / 4 / 3 / 1 */
body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-grid,
body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}
@media (max-width:1650px){
  body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-grid,
  body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;}
}
@media (max-width:1350px){
  body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-grid,
  body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
}
@media (max-width:1050px){
  body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-grid,
  body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media (max-width:700px){
  body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-grid,
  body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-grid{grid-template-columns:minmax(0,1fr)!important;}
}

body.qy-cart-mode .qy-cart-ls-card,
body.qy-cart-mode .qy-cart-ls-spec.qy-cart-product-desc,
body.qy-cart-mode .qy-cart-ls-spec.qy-cart-product-desc > pre { background:#fff !important; }
body.qy-cart-mode .qy-cart-ls-line { display:none !important; }
body.qy-cart-mode .qy-cart-ls-card-top h5 {
  margin:0 !important;color:#111827 !important;font-size:13px !important;
  line-height:1.55 !important;font-weight:700 !important;text-shadow:none !important;
}
body.qy-cart-mode .qy-cart-ls-spec.qy-cart-product-desc,
body.qy-cart-mode .qy-cart-ls-spec.qy-cart-product-desc > pre { font-size:13px !important; }

/* 产品描述内部 table / td / li / hr / .qisuidc_adv / .qisuidc_bq 统一交由购物车自定义 CSS 管理。 */

/* 购物车不显示 Web Footer。 */
body.qy-cart-mode .qy-footer,
body.qy-cart-mode footer.qy-footer { display:none !important; }

/* 全站零圆角要求在购物车内强制执行。 */
body.qy-cart-mode .qy-cart-page *,
body.qy-cart-mode .qy-catnav-mobile-overlay * { border-radius:0 !important; }

/* V2.0.7：购买/清单/结算操作按钮禁止显示二级分类国旗，仅分类导航保留国旗。 */
body.qy-cart-mode .qy-cart-ls-buy > .qy-plus-flag,
body.qy-cart-mode .qy-cart-ls-buy .qy-plus-flag,
body.qy-cart-mode .qy-cart-buy-btn > .qy-plus-flag,
body.qy-cart-mode .qy-cart-buy-btn .qy-plus-flag,
body.qy-cart-mode a[href*="action=configureproduct"] > .qy-plus-flag,
body.qy-cart-mode a[href*="action=configureproduct"] .qy-plus-flag,
body.qy-cart-mode a[href*="action=viewcart"] .qy-plus-flag,
body.qy-cart-mode a[href*="action=checkout"] .qy-plus-flag {
  display: none !important;
}

/* =========================================================
   启跃云购物车配置页 V2.0.12
   产品套餐等宽 / 滑块数值同步 / 下拉菜单层级修复
   ========================================================= */

/* 产品套餐：按最长名称统一按钮宽度，文字始终单行。 */
html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-switcher {
  display: grid !important;
  grid-template-columns: 120px minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: start !important;
  width: 100% !important;
  margin: 0 0 22px !important;
  padding: 0 0 22px !important;
  border-bottom: 1px solid #eef2f7 !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-label {
  min-height: 40px !important;
  display: flex !important;
  align-items: center !important;
  color: #334155 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-buttons {
  --qy-cart-package-width: max-content;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  align-items: stretch !important;
  min-width: 0 !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-button {
  width: var(--qy-cart-package-width) !important;
  min-width: var(--qy-cart-package-width) !important;
  max-width: var(--qy-cart-package-width) !important;
  min-height: 40px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 15px !important;
  border: 1px solid #dbe3ec !important;
  background: #fff !important;
  color: #334155 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-button:hover,
html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-button.is-active {
  border-color: #1263ff !important;
  background: #edf4ff !important;
  color: #1263ff !important;
}

/* 滑块行：轨道 + 左右边界值 + 当前值步进器。 */
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-control {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 124px !important;
  column-gap: 20px !important;
  row-gap: 6px !important;
  align-items: center !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: visible !important;
  padding: 0 !important;
  position: relative !important;
  z-index: 1 !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-track-box {
  min-width: 0 !important;
  width: 100% !important;
  position: relative !important;
  z-index: 1 !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm input.configoption_range {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative !important;
  z-index: 1 !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  background: linear-gradient(to right,#1263ff 0%,#1263ff var(--qy-cart-range-fill,0%),#eef2f7 var(--qy-cart-range-fill,0%),#eef2f7 100%) !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm input.configoption_range::-webkit-slider-runnable-track {
  width: 100% !important;
  height: 8px !important;
  border: 0 !important;
  background: transparent !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm input.configoption_range::-webkit-slider-thumb {
  -webkit-appearance: none !important;
  appearance: none !important;
  width: 18px !important;
  height: 18px !important;
  margin-top: -5px !important;
  border: 4px solid #fff !important;
  background: #1263ff !important;
  box-shadow: 0 2px 10px rgba(18,99,255,.28) !important;
  cursor: pointer !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm input.configoption_range::-moz-range-track {
  height: 8px !important;
  border: 0 !important;
  background: #eef2f7 !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm input.configoption_range::-moz-range-progress {
  height: 8px !important;
  background: #1263ff !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm input.configoption_range::-moz-range-thumb {
  width: 10px !important;
  height: 10px !important;
  border: 4px solid #fff !important;
  background: #1263ff !important;
  box-shadow: 0 2px 10px rgba(18,99,255,.28) !important;
  cursor: pointer !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-bounds {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  width: 100% !important;
  margin-top: 7px !important;
  color: #475569 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-stepper {
  display: grid !important;
  grid-template-columns: 32px minmax(58px, 1fr) 32px !important;
  align-items: stretch !important;
  width: 124px !important;
  min-width: 124px !important;
  height: 40px !important;
  border: 1px solid #e5eaf1 !important;
  background: #f7f9fc !important;
  position: relative !important;
  z-index: 1 !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-step {
  width: 32px !important;
  min-width: 32px !important;
  height: 38px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #f1f4f8 !important;
  color: #64748b !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  outline: 0 !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-step:hover {
  background: #e8f0ff !important;
  color: #1263ff !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-current {
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 3px !important;
  background: #fff !important;
  overflow: hidden !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-current input.configoption_range_val {
  width: auto !important;
  min-width: 28px !important;
  max-width: 54px !important;
  height: 38px !important;
  min-height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #0f172a !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 38px !important;
  text-align: right !important;
  outline: 0 !important;
  box-shadow: none !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-unit {
  color: #475569 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .range_none {
  display: none !important;
}

/* 下拉菜单统一向上展开，且层级高于所有滑块和后续配置项。 */
html body.qy-cart-mode .qy-cart-configure-page,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .card,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .card-body,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-catnav-main,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-catnav-config-main,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-catnav-config-row,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-config-main,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .configureproduct,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .form-group.row {
  overflow: visible !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .configureproduct,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .form-group.row {
  position: relative !important;
  z-index: 2 !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-option,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-control,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-track-box,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-stepper {
  z-index: 1 !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .configureproduct.qy-cart-dropdown-open-row,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .form-group.row.qy-cart-dropdown-open-row {
  z-index: 2147482000 !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .bootstrap-select,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .bootstrap-select.show,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .bootstrap-select.open,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .bootstrap-select.dropup,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .bootstrap-select.qy-cart-force-dropup {
  position: relative !important;
  overflow: visible !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .configureproduct.qy-cart-dropdown-open-row .bootstrap-select,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .form-group.row.qy-cart-dropdown-open-row .bootstrap-select {
  z-index: 2147482500 !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .bootstrap-select > .dropdown-menu,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .bootstrap-select.dropup > .dropdown-menu,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .bootstrap-select.show > .dropdown-menu,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .bootstrap-select.open > .dropdown-menu,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-menu.show,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-menu.open {
  top: auto !important;
  bottom: calc(100% + 6px) !important;
  left: 0 !important;
  right: auto !important;
  transform: none !important;
  z-index: 2147483000 !important;
  overflow: visible !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-menu.inner {
  position: static !important;
  top: auto !important;
  bottom: auto !important;
  transform: none !important;
  z-index: auto !important;
}

@media (max-width: 991px) {
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-switcher {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-label {
    min-height: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-control {
    grid-template-columns: minmax(0, 1fr) 112px !important;
    column-gap: 12px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-stepper {
    width: 112px !important;
    min-width: 112px !important;
    grid-template-columns: 30px minmax(52px, 1fr) 30px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-step {
    width: 30px !important;
    min-width: 30px !important;
  }
}

@media (max-width: 640px) {
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-control {
    grid-template-columns: minmax(0, 1fr) !important;
    row-gap: 10px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-stepper {
    justify-self: end !important;
  }
}

/* =========================================================
   QY Cart Configure V2.0.14
   滑块排版整理 / 操作系统列表扁平化 / 下拉层级修复
   ========================================================= */

/* 滑块配置项：标签固定在左，滑轨与数值区在右；一项一行。 */
.qy-cart-configure-page #addCartForm .qy-cart-range-option,
.qy-cart-configure-page #addCartForm .form-group.row.configureproduct:has(> .qy-cart-range-control) {
  display: grid !important;
  grid-template-columns: 112px minmax(0, 1fr) !important;
  column-gap: 24px !important;
  row-gap: 0 !important;
  align-items: start !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 18px 0 !important;
  border-bottom: 1px solid #eef2f7 !important;
  overflow: visible !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-range-option > label,
.qy-cart-configure-page #addCartForm .form-group.row.configureproduct:has(> .qy-cart-range-control) > label {
  grid-column: 1 !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 5px 0 0 !important;
  color: #334155 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  white-space: nowrap !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-range-control {
  grid-column: 2 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-rows: auto auto !important;
  column-gap: 18px !important;
  row-gap: 10px !important;
  align-items: center !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-range-track-box {
  grid-column: 1 / -1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.qy-cart-configure-page #addCartForm input[type="range"].configoption_range {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 18px !important;
  margin: 0 !important;
  padding: 5px 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-range-bounds {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  margin: 4px 0 0 !important;
  padding: 0 !important;
  color: #64748b !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-range-stepper {
  grid-column: 2 !important;
  grid-row: 2 !important;
  justify-self: end !important;
  display: grid !important;
  grid-template-columns: 34px minmax(78px, auto) 34px !important;
  align-items: stretch !important;
  width: max-content !important;
  min-width: 146px !important;
  height: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #dbe3ef !important;
  background: #fff !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-range-step {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  min-width: 34px !important;
  height: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #f8fafc !important;
  color: #64748b !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  box-shadow: none !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-range-step:first-child {
  border-right: 1px solid #e5eaf1 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-range-step:last-child {
  border-left: 1px solid #e5eaf1 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-range-step:hover,
.qy-cart-configure-page #addCartForm .qy-cart-range-step:focus,
.qy-cart-configure-page #addCartForm .qy-cart-range-step:active {
  background: #f1f5f9 !important;
  color: #1263ff !important;
  outline: 0 !important;
  box-shadow: none !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-range-current {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 78px !important;
  height: 34px !important;
  margin: 0 !important;
  padding: 0 8px !important;
  background: #fff !important;
  color: #0f172a !important;
  white-space: nowrap !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-range-current .configoption_range_val {
  display: block !important;
  width: 46px !important;
  min-width: 46px !important;
  max-width: 46px !important;
  height: 32px !important;
  margin: 0 !important;
  padding: 0 3px !important;
  border: 0 !important;
  background: transparent !important;
  color: #0f172a !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 32px !important;
  text-align: right !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.qy-cart-configure-page #addCartForm .qy-cart-range-unit {
  display: inline-block !important;
  margin-left: 4px !important;
  color: #475569 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

/* 操作系统/系统版本等 Bootstrap Select：始终处于滑块之上。 */
.qy-cart-configure-page #addCartForm .qy-cart-dropdown-open-row,
.qy-cart-configure-page #addCartForm .qy-cart-os-option:has(.bootstrap-select.show),
.qy-cart-configure-page #addCartForm .form-group.row:has(.bootstrap-select.show) {
  position: relative !important;
  z-index: 2147483000 !important;
  overflow: visible !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select,
.qy-cart-configure-page #addCartForm .bootstrap-select.show,
.qy-cart-configure-page #addCartForm .bootstrap-select.open,
.qy-cart-configure-page #addCartForm .bootstrap-select.dropup {
  position: relative !important;
  z-index: 2147483000 !important;
  overflow: visible !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select > .dropdown-menu,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-menu.show,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-menu.open,
.qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select > .dropdown-menu {
  z-index: 2147483000 !important;
  padding: 0 !important;
  border: 1px solid #dbe3ef !important;
  background: #fff !important;
  background-image: none !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  filter: none !important;
  overflow: hidden !important;
}

/* 下拉列表保持一整块白底，滚动时不再出现蓝色/灰色分层。 */
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-menu.inner,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-menu ul,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-menu li,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item span,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item .text {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
  filter: none !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-menu.inner {
  max-height: 240px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  scrollbar-gutter: stable !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-menu.inner > li {
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  border-bottom: 1px solid #eef2f7 !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-menu.inner > li:last-child {
  border-bottom: 0 !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 0 12px !important;
  color: #334155 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
  outline: 0 !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item img {
  width: 20px !important;
  min-width: 20px !important;
  height: 20px !important;
  margin: 0 8px 0 0 !important;
  object-fit: contain !important;
  vertical-align: middle !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item:hover,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item:focus,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item:active,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item.active,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item.selected {
  background: transparent !important;
  background-color: transparent !important;
  color: #1263ff !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item::before,
.qy-cart-configure-page #addCartForm .bootstrap-select .dropdown-item::after,
.qy-cart-configure-page #addCartForm .bootstrap-select .bs-ok-default::after {
  display: none !important;
  content: none !important;
}

@media (max-width: 768px) {
  .qy-cart-configure-page #addCartForm .qy-cart-range-option,
  .qy-cart-configure-page #addCartForm .form-group.row.configureproduct:has(> .qy-cart-range-control) {
    grid-template-columns: minmax(0, 1fr) !important;
    row-gap: 10px !important;
    padding: 15px 0 !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-range-option > label,
  .qy-cart-configure-page #addCartForm .form-group.row.configureproduct:has(> .qy-cart-range-control) > label,
  .qy-cart-configure-page #addCartForm .qy-cart-range-control {
    grid-column: 1 !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-range-option > label,
  .qy-cart-configure-page #addCartForm .form-group.row.configureproduct:has(> .qy-cart-range-control) > label {
    padding-top: 0 !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-range-control {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-range-track-box,
  .qy-cart-configure-page #addCartForm .qy-cart-range-stepper {
    grid-column: 1 !important;
  }

  .qy-cart-configure-page #addCartForm .qy-cart-range-stepper {
    justify-self: end !important;
  }
}

/* =========================================================
   QY Cart Configure V2.0.15
   滑块右侧步进器：仅显示数字；范围值位于滑块下方
   ========================================================= */
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-control {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 118px !important;
  grid-template-rows: auto !important;
  column-gap: 12px !important;
  row-gap: 0 !important;
  align-items: start !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  overflow: visible !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-track-box {
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: grid !important;
  grid-template-rows: 36px auto !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm input[type="range"].configoption_range {
  grid-row: 1 !important;
  align-self: center !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-bounds {
  grid-row: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  color: #64748b !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-stepper {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: start !important;
  justify-self: end !important;
  display: grid !important;
  grid-template-columns: 34px 50px 34px !important;
  width: 118px !important;
  min-width: 118px !important;
  max-width: 118px !important;
  height: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #dbe3ef !important;
  background: #fff !important;
  overflow: hidden !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-current {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 50px !important;
  min-width: 50px !important;
  max-width: 50px !important;
  height: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  overflow: hidden !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-current .configoption_range_val {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 34px !important;
  margin: 0 !important;
  padding: 0 3px !important;
  border: 0 !important;
  background: transparent !important;
  color: #0f172a !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 34px !important;
  text-align: center !important;
  outline: 0 !important;
  box-shadow: none !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-unit {
  display: none !important;
}

@media (max-width: 768px) {
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-control {
    grid-template-columns: minmax(0, 1fr) 108px !important;
    column-gap: 8px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-stepper {
    grid-template-columns: 30px 48px 30px !important;
    width: 108px !important;
    min-width: 108px !important;
    max-width: 108px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-step {
    width: 30px !important;
    min-width: 30px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-current {
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
  }
}


/* =========================================================
   QY Cart Configure V2.0.16
   步进器文字真正垂直居中；操作系统下拉彻底取消圆角
   ========================================================= */
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-stepper {
  display: grid !important;
  grid-template-columns: 34px 50px 34px !important;
  align-items: stretch !important;
  height: 36px !important;
  line-height: normal !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-step {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 0 1px !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  box-sizing: border-box !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-current {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 50px !important;
  min-width: 50px !important;
  max-width: 50px !important;
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 !important;
  line-height: normal !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* 保留真实 input 用于提交和同步，但显示层使用普通 span，避免浏览器 input 基线偏移。 */
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-current input.configoption_range_val {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  border: 0 !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-display {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 0 1px !important;
  color: #0f172a !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-align: center !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}

/* 操作系统及系统版本：按钮、菜单、滚动区、选项、图标全部为直角。 */
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option *,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option *::before,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option *::after,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select > .dropdown-toggle,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .dropdown-menu,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .dropdown-menu.inner,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .dropdown-item,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .filter-option,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .filter-option-inner,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .filter-option-inner-inner,
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option img {
  border-radius: 0 !important;
}


/* =========================================================
   QY Cart Configure V2.0.17
   去除配置标题蓝色装饰；桌面端操作系统卡片化
   ========================================================= */

/* 区域、CPU、内存、硬盘、带宽等标题前不再显示蓝色装饰块。 */
html body.qy-cart-mode .qy-cart-configure-page #addCartForm .col-form-label::before {
  display: none !important;
  content: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  background: none !important;
}

html body.qy-cart-mode .qy-cart-configure-page #addCartForm .col-form-label {
  padding-left: 0 !important;
}

@media (min-width: 769px) {
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option {
    align-items: flex-start !important;
    overflow: visible !important;
  }

  /* 原生两级下拉继续作为真实表单字段，但电脑端隐藏其视觉界面。 */
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-version-col,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-single-col {
    position: absolute !important;
    width: 1px !important;
    min-width: 1px !important;
    max-width: 1px !important;
    height: 1px !important;
    min-height: 1px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card-grid {
    flex: 1 1 auto !important;
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)) !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: stretch !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card {
    display: grid !important;
    grid-template-rows: 44px 36px !important;
    min-width: 0 !important;
    height: 80px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #e5eaf1 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card.is-active {
    border-color: #1263ff !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card-head {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 0 !important;
    border-bottom: 1px solid #edf1f6 !important;
    border-radius: 0 !important;
    background: #f8fafc !important;
    color: #0f172a !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-align: left !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    outline: 0 !important;
    box-shadow: none !important;
    cursor: pointer !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card.is-active .qy-cart-os-card-head {
    background: #eef4ff !important;
    color: #1263ff !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card-head img {
    flex: 0 0 auto !important;
    width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    object-fit: contain !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card-name {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card-version {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 35px !important;
    margin: 0 !important;
    padding: 0 28px 0 12px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background-color: #fff !important;
    color: #334155 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 35px !important;
    outline: 0 !important;
    box-shadow: none !important;
    cursor: pointer !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card:not(.is-active) .qy-cart-os-card-version {
    color: #94a3b8 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card *,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card *::before,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card *::after {
    border-radius: 0 !important;
  }
}

/* 手机端继续使用原来的系统/版本下拉，不显示电脑端卡片。 */
@media (max-width: 768px) {
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card-grid {
    display: none !important;
  }
}


/* =========================================================
   QY Cart V2.0.19
   删除 AJAX 订单汇总片段中的页面级装饰背景。
   全站零圆角会把旧 .qy-cart-page::before 圆形变成方块，
   被汇总容器裁切后即表现为右下角浅蓝色长方块。
   ========================================================= */
.qy-cart-configure-page .configoption_total > .qy-cart-summary-page::before,
.qy-cart-configure-page .configoption_total .qy-cart-summary-page::before,
.qy-cart-summary-page::before,
.qy-cart-summary-fragment::before {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  background: transparent !important;
}

.qy-cart-configure-page .configoption_total > .qy-cart-summary-page,
.qy-cart-configure-page .configoption_total > .qy-cart-summary-fragment,
.qy-cart-configure-page .configoption_total .qy-cart-summary-page,
.qy-cart-configure-page .configoption_total .qy-cart-summary-fragment {
  position: static !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* =========================================================
   启跃云购物车配置页 V2.0.20
   右侧配置区全宽、统一左对齐、汇总区紧贴配置区
   ========================================================= */
@media (min-width: 992px) {
  html body.qy-cart-mode .qy-cart-configure-page .qy-catnav-shell {
    width: 100% !important;
    max-width: none !important;
    padding-right: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-catnav-main,
  html body.qy-cart-mode .qy-cart-configure-page .qy-catnav-config-main,
  html body.qy-cart-mode .qy-cart-configure-page .qy-catnav-config-row,
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main,
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main > .card,
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main > .card > .card-body {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main > .card > .card-body {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm {
    --qy-config-label-width: 92px;
    --qy-config-column-gap: 14px;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .configureproduct,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .form-group.row {
    grid-template-columns: var(--qy-config-label-width) minmax(0, 1fr) !important;
    column-gap: var(--qy-config-column-gap) !important;
    width: 100% !important;
    max-width: none !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .configureproduct > label.col-form-label,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .form-group.row > label.col-form-label {
    width: var(--qy-config-label-width) !important;
    min-width: var(--qy-config-label-width) !important;
    max-width: var(--qy-config-label-width) !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-switcher {
    grid-template-columns: var(--qy-config-label-width) minmax(0, 1fr) !important;
    column-gap: var(--qy-config-column-gap) !important;
    width: 100% !important;
    max-width: none !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-label {
    width: var(--qy-config-label-width) !important;
    min-width: var(--qy-config-label-width) !important;
    max-width: var(--qy-config-label-width) !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card-grid,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-control,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .btn-group-toggle,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .btn-custom-group,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .cycle,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .justify-content-start {
    width: 100% !important;
    max-width: none !important;
  }
}

/* 费用汇总不再固定在浏览器底部，直接紧贴配置表单。 */
html body.qy-cart-mode .qy-cart-configure-page {
  padding-bottom: 0 !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-summary-render {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  clear: both !important;
}

html body.qy-cart-mode .qy-cart-configure-page .configoption_total {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-summary {
  position: relative !important;
  inset: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 68px !important;
  margin: 0 !important;
  padding: 10px 20px !important;
  border-top: 1px solid #dbe4ef !important;
  background: #fff !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
  z-index: 1 !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-panel {
  bottom: calc(100% + 8px) !important;
}

@media (max-width: 991px) {
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-summary {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    margin: 0 !important;
  }
}


/* =========================================================
   QY Cart V2.1.0 performance + stable first paint
   ========================================================= */
.qy-cart-page::before,
.qy-cart-page::after,
.qy-cart-configure-page::before,
.qy-cart-configure-page::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  background: transparent !important;
}

.qy-cart-configure-page.qy-cart-config-booting {
  visibility: hidden !important;
}
.qy-cart-configure-page.qy-cart-config-ready {
  visibility: visible !important;
}

.qy-cart-configure-page .qy-cart-summary-render.qy-cart-summary-is-empty {
  display: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

@media (min-width: 769px) {
  .qy-cart-configure-page #addCartForm .qy-cart-os-cards-ready > .qy-cart-os-group-col,
  .qy-cart-configure-page #addCartForm .qy-cart-os-cards-ready > .qy-cart-os-version-col {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
  }
}

/* =========================================================
   QY Cart V2.1.1：配置页主体占满全部剩余宽度
   ========================================================= */
@media (min-width: 992px) {
  html body.qy-cart-mode,
  html body.qy-cart-mode .main-content,
  html body.qy-cart-mode .page-content,
  html body.qy-cart-mode .page-content > .container-fluid {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  html body.qy-cart-mode .page-content > .container-fluid {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page,
  html body.qy-cart-mode .qy-cart-configure-page > #addCartForm,
  html body.qy-cart-mode .qy-cart-configure-page .qy-catnav-shell,
  html body.qy-cart-mode .qy-cart-configure-page .qy-catnav-layout {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-catnav-shell {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-catnav-layout {
    display: grid !important;
    grid-template-columns: 320px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-catnav-main,
  html body.qy-cart-mode .qy-cart-configure-page .qy-catnav-config-main {
    grid-column: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 18px 16px 0 !important;
    box-sizing: border-box !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-catnav-config-row,
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main,
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main > .card,
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main > .card > .card-body,
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-summary-render,
  html body.qy-cart-mode .qy-cart-configure-page .configoption_total,
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-summary {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-catnav-config-row {
    margin: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main {
    flex: 0 0 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* =========================================================
   QY Cart V2.1.2：操作系统卡片闭合 + 手机主系统紧凑列表
   ========================================================= */
@media (min-width: 769px) {
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card {
    box-sizing: border-box !important;
    grid-template-rows: 43px 35px !important;
    height: 80px !important;
    min-height: 80px !important;
    overflow: hidden !important;
    border: 1px solid #e5eaf1 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card.is-active {
    border-color: #1263ff !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card-version {
    box-sizing: border-box !important;
    height: 35px !important;
    min-height: 35px !important;
    max-height: 35px !important;
    border: 0 !important;
    border-bottom: 1px solid #e5eaf1 !important;
    box-shadow: none !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card.is-active .qy-cart-os-card-version {
    border-bottom-color: #1263ff !important;
  }
}

@media (max-width: 768px) {
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.inner,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.inner > ul {
    display: block !important;
    gap: 0 !important;
    row-gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.inner > li {
    display: block !important;
    width: 100% !important;
    height: 38px !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.inner > li + li {
    margin-top: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-item {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    height: 38px !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    border: 0 !important;
    line-height: 38px !important;
  }
}

/* =========================================================
   QY Cart V2.1.3
   1. 桌面操作系统卡片强制补齐底边
   2. 手机主系统下拉取消外框、横线、选中背景与列表空隙
   ========================================================= */
@media (min-width: 769px) {
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card {
    position: relative !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    border: 1px solid #e5eaf1 !important;
  }

  /* 版本选择框不再自己承担底边，避免原生 select 覆盖外框。 */
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card-version {
    position: relative !important;
    z-index: 1 !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  /* 单独绘制卡片最底线，始终位于 select 上层。 */
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card::after {
    content: "" !important;
    position: absolute !important;
    z-index: 8 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    display: block !important;
    width: auto !important;
    height: 1px !important;
    background: #e5eaf1 !important;
    pointer-events: none !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-card.is-active::after {
    background: #1263ff !important;
  }
}

@media (max-width: 768px) {
  /* 主系统下拉外层不再显示背景框、顶部蓝线或底部横线。 */
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option > div,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.show,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.open {
    border: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select > .dropdown-toggle,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select > .dropdown-toggle:hover,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select > .dropdown-toggle:focus,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select > .dropdown-toggle:active,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.show > .dropdown-toggle,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select.open > .dropdown-toggle {
    border: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    outline: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select > .dropdown-menu,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.show,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.open {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    outline: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select > .dropdown-menu::before,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select > .dropdown-menu::after {
    content: none !important;
    display: none !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.inner,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.inner > ul,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.inner > li,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-item {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    border: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.inner > li,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-menu.inner > li + li {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-item,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-item:hover,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-item:focus,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-item:active,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-item.active,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-item.selected {
    background: #fff !important;
    background-image: none !important;
    box-shadow: none !important;
  }

  /* 当前主系统只保留蓝色文字，不再用浅蓝背景框住。 */
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-item.active,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-item.selected,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-item.active .text,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option .bootstrap-select .dropdown-item.selected .text {
    color: #1263ff !important;
  }
}

/* =========================================================
   QY Cart V2.1.5
   手机主系统原生选择框保留当前系统图标
   ========================================================= */
@media (max-width: 768px) {
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    overflow: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col .bootstrap-select {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
  }

  /* 手机端使用真实 select，系统弹层可自然滚动。 */
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option select.configoption_os_group {
    position: relative !important;
    inset: auto !important;
    clip: auto !important;
    clip-path: none !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 38px 0 42px !important;
    border: 1px solid #dbe4f0 !important;
    border-radius: 0 !important;
    background-color: #fff !important;
    color: #172033 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 40px !important;
    box-shadow: none !important;
    pointer-events: auto !important;
    -webkit-appearance: menulist !important;
    appearance: menulist !important;
  }

  /* bootstrap-select 的假按钮和自定义列表在手机端彻底停用。 */
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col .bootstrap-select > .dropdown-toggle,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col .bootstrap-select > .dropdown-menu {
    display: none !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-mobile-os-icon {
    position: absolute !important;
    z-index: 3 !important;
    top: 50% !important;
    left: 12px !important;
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    object-fit: contain !important;
    transform: translateY(-50%) !important;
    pointer-events: none !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-mobile-os-icon[hidden] {
    display: none !important;
  }
}


/* =========================================================
   QY Cart V2.1.6
   手机主系统图标抽屉 + 电脑/手机底部订单汇总永久固定
   ========================================================= */
.qy-cart-mobile-os-trigger,
.qy-cart-mobile-os-overlay {
  display: none;
}

@media (max-width: 768px) {
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 42px !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
  }

  /* 原始 select 继续保留为真实提交字段，但不再承担手机交互。 */
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option select.configoption_os_group,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-os-option > .qy-cart-os-group-col .bootstrap-select {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: 0 !important;
    padding: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-trigger {
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) 12px !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 1px solid #dbe4f0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #172033 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-align: left !important;
    box-shadow: none !important;
    outline: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-trigger-icon {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    object-fit: contain !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-trigger-icon[hidden] {
    visibility: hidden !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-trigger-text {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-trigger-arrow {
    width: 8px !important;
    height: 8px !important;
    border-right: 1px solid #64748b !important;
    border-bottom: 1px solid #64748b !important;
    transform: rotate(45deg) translateY(-2px) !important;
  }

  html body.qy-cart-mode.qy-cart-mobile-os-drawer-open {
    overflow: hidden !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-overlay {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483600 !important;
    display: block !important;
    background: rgba(15, 23, 42, 0.34) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity .18s ease, visibility .18s ease !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-overlay.is-open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-drawer {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    display: grid !important;
    grid-template-rows: 52px minmax(0, 1fr) !important;
    width: 100% !important;
    max-height: min(72dvh, 520px) !important;
    margin: 0 !important;
    padding: 0 0 env(safe-area-inset-bottom) !important;
    border: 0 !important;
    border-top: 1px solid #dbe4f0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: 0 -14px 38px rgba(15, 23, 42, 0.16) !important;
    transform: translateY(100%) !important;
    transition: transform .2s ease !important;
    overflow: hidden !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-overlay.is-open .qy-cart-mobile-os-drawer {
    transform: translateY(0) !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-drawer-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 0 16px !important;
    border: 0 !important;
    border-bottom: 1px solid #e8edf4 !important;
    border-radius: 0 !important;
    background: #fff !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-drawer-head strong {
    color: #0f172a !important;
    font-size: 15px !important;
    font-weight: 700 !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-close {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    margin: 0 -8px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #64748b !important;
    font-size: 26px !important;
    line-height: 1 !important;
    box-shadow: none !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-list {
    min-height: 0 !important;
    max-height: calc(min(72dvh, 520px) - 52px - env(safe-area-inset-bottom)) !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: thin !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-item {
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 11px !important;
    width: 100% !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 0 16px !important;
    border: 0 !important;
    border-bottom: 1px solid #edf1f6 !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #334155 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    text-align: left !important;
    box-shadow: none !important;
    outline: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-item:last-child {
    border-bottom: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-item.is-active {
    background: #fff !important;
    color: #1263ff !important;
  }

  html body.qy-cart-mode .qy-cart-mobile-os-item img,
  html body.qy-cart-mode .qy-cart-mobile-os-item-placeholder {
    display: block !important;
    width: 24px !important;
    height: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    object-fit: contain !important;
  }
}

/* 费用明细、总价与加入购物车：桌面和手机始终固定在视口底部。 */
html body.qy-cart-mode .qy-cart-configure-page {
  padding-bottom: 96px !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-summary-render {
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-summary {
  position: fixed !important;
  left: 320px !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  z-index: 2147482000 !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 74px !important;
  margin: 0 !important;
  padding: 12px 22px calc(12px + env(safe-area-inset-bottom)) !important;
  display: grid !important;
  grid-template-columns: minmax(210px, 1fr) auto auto !important;
  align-items: center !important;
  gap: 16px !important;
  border: 0 !important;
  border-top: 1px solid #dbe4f0 !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.98) !important;
  box-shadow: 0 -10px 30px rgba(15,23,42,.10) !important;
  transform: none !important;
  overflow: visible !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-toggle,
html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-submit,
html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-panel {
  border-radius: 0 !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-panel {
  bottom: calc(100% + 1px) !important;
  max-height: min(62vh, 560px) !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
}

@media (max-width: 991px) {
  html body.qy-cart-mode .qy-cart-configure-page {
    padding-bottom: 136px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-summary {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-height: 118px !important;
    padding: 10px 12px calc(10px + env(safe-area-inset-bottom)) !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas:
      "detail detail"
      "total submit" !important;
    gap: 9px 12px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-detail {
    grid-area: detail !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-total {
    grid-area: total !important;
    justify-content: flex-start !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-submit {
    grid-area: submit !important;
    min-width: 116px !important;
    height: 42px !important;
    padding: 0 14px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-toggle {
    width: 100% !important;
    min-width: 0 !important;
    height: 40px !important;
    justify-content: space-between !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-panel {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: calc(118px + env(safe-area-inset-bottom)) !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: 58vh !important;
    margin: 0 !important;
    padding: 14px !important;
    border-left: 0 !important;
    border-right: 0 !important;
  }
}


/* =========================================================
   V2.1.7 订单汇总：单行明细 + 紧凑固定底栏
   ========================================================= */
html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;
  min-height: 66px !important;
  padding: 10px 22px calc(10px + env(safe-area-inset-bottom)) !important;
  grid-template-columns: none !important;
  grid-template-areas: none !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-total {
  display: flex !important;
  align-items: baseline !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  gap: 5px !important;
  min-width: 0 !important;
  color: #64748b !important;
  white-space: nowrap !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-total-label {
  color: #1f2937 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-total strong {
  color: #ff3434 !important;
  font-size: 25px !important;
  line-height: 1 !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-total em,
html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-total small {
  color: #7b8ca8 !important;
  font-style: normal !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  flex: 0 0 auto !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-detail {
  position: relative !important;
  flex: 0 0 auto !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-toggle {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 2px !important;
  width: auto !important;
  min-width: 0 !important;
  height: 34px !important;
  padding: 0 2px !important;
  border: 0 !important;
  border-bottom: 1px dashed #ff7a00 !important;
  background: transparent !important;
  color: #ff7a00 !important;
  box-shadow: none !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-toggle b {
  font-weight: 800 !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-panel {
  width: min(600px, calc(100vw - 36px)) !important;
  padding: 16px !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-table,
html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-table tbody {
  display: block !important;
  width: 100% !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-table tr {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) max-content !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  border-bottom: 1px dashed rgba(205, 218, 239, .78) !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-table tr:last-child {
  border-bottom: 0 !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-table td {
  display: block !important;
  min-width: 0 !important;
  padding: 9px 0 !important;
  border: 0 !important;
  vertical-align: middle !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-table .qy-cart-fee-item {
  display: flex !important;
  align-items: center !important;
  min-width: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-label,
html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-product {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-icon {
  display: block !important;
  flex: 0 0 auto !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 6px 0 4px !important;
  object-fit: contain !important;
  vertical-align: middle !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-flag {
  width: 22px !important;
  height: 16px !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-name {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  word-break: normal !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-table .text-right {
  align-self: center !important;
  white-space: nowrap !important;
}

html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-submit {
  min-width: 142px !important;
  height: 42px !important;
  padding: 0 18px !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

@media (max-width: 991px) {
  html body.qy-cart-mode .qy-cart-configure-page {
    padding-bottom: 118px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-summary {
    min-height: 104px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 10px 12px calc(10px + env(safe-area-inset-bottom)) !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-total {
    width: 100% !important;
    justify-content: flex-start !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-actions {
    width: 100% !important;
    justify-content: flex-end !important;
    gap: 12px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-panel {
    bottom: calc(104px + env(safe-area-inset-bottom)) !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-submit {
    min-width: 126px !important;
    height: 38px !important;
  }
}

/* =========================================================
   V2.1.8 订单汇总响应式纠正
   电脑：横向一行；手机：上下两行。
   明确重置旧版本残留的 flex/grid 与区域规则。
   ========================================================= */
@media (min-width: 992px) {
  html body.qy-cart-mode .qy-cart-configure-page {
    padding-bottom: 88px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-summary {
    left: 320px !important;
    right: 0 !important;
    bottom: 0 !important;
    width: auto !important;
    min-height: 66px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: auto !important;
    grid-template-areas: "total actions" !important;
    align-items: center !important;
    gap: 18px !important;
    padding: 10px 22px calc(10px + env(safe-area-inset-bottom)) !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-total {
    grid-area: total !important;
    width: auto !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: baseline !important;
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    gap: 5px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-actions {
    grid-area: actions !important;
    width: auto !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-toggle {
    width: auto !important;
    min-width: 0 !important;
    height: 34px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-submit {
    min-width: 142px !important;
    height: 42px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-panel {
    position: absolute !important;
    left: auto !important;
    right: 0 !important;
    bottom: calc(100% + 1px) !important;
    width: min(600px, calc(100vw - 356px)) !important;
    max-width: 600px !important;
    max-height: min(62vh, 560px) !important;
  }
}

@media (max-width: 991.98px) {
  html body.qy-cart-mode .qy-cart-configure-page {
    padding-bottom: 126px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-summary {
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    min-height: 110px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto !important;
    grid-template-areas:
      "total total"
      "detail submit" !important;
    align-items: center !important;
    gap: 8px 10px !important;
    padding: 10px 12px calc(10px + env(safe-area-inset-bottom)) !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-total {
    grid-area: total !important;
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: baseline !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-actions {
    display: contents !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-detail {
    grid-area: detail !important;
    min-width: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-toggle {
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 38px !important;
    justify-content: flex-start !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-submit {
    grid-area: submit !important;
    min-width: 126px !important;
    height: 40px !important;
    padding: 0 14px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-panel {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: calc(110px + env(safe-area-inset-bottom)) !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: 58vh !important;
    margin: 0 !important;
  }
}

/* =========================================================
   V2.1.9 电脑端费用明细悬停锁定
   鼠标从按钮移动到汇总面板时保持展开，离开整块区域后再收起。
   ========================================================= */
@media (min-width: 992px) {
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-detail {
    isolation: isolate !important;
  }

  /* 填补按钮与上方面板之间的细小鼠标过渡区，避免瞬间失焦。 */
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-detail::before {
    content: "" !important;
    position: absolute !important;
    left: -12px !important;
    right: -12px !important;
    bottom: 100% !important;
    height: 12px !important;
    background: transparent !important;
    pointer-events: auto !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-fee-panel {
    z-index: 100002 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-detail.is-fee-hover .qy-cart-fee-panel,
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-detail:focus-within .qy-cart-fee-panel {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
    pointer-events: auto !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-detail.is-fee-hover .qy-cart-fee-toggle,
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-bottom-detail:focus-within .qy-cart-fee-toggle {
    color: #ff7a00 !important;
  }
}


/* QY V2.2.0：手机套餐折叠 + 滑块加减符号等尺寸 */
.qy-cart-configure-page .qy-cart-package-toggle {
  display: none !important;
}

@media (max-width: 991.98px) {
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-switcher {
    display: block !important;
    width: 100% !important;
    margin: 0 0 16px !important;
    padding: 0 0 16px !important;
    border-bottom: 1px solid #eef2f7 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-label {
    display: none !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-toggle {
    width: 100% !important;
    min-height: 44px !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) 18px !important;
    align-items: center !important;
    column-gap: 10px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 1px solid #dbe3ec !important;
    background: #fff !important;
    color: #0f172a !important;
    text-align: left !important;
    box-shadow: none !important;
    outline: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-toggle-label {
    color: #64748b !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-toggle-current {
    min-width: 0 !important;
    overflow: hidden !important;
    color: #1263ff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-toggle > i {
    width: 8px !important;
    height: 8px !important;
    justify-self: center !important;
    border-right: 1.5px solid #64748b !important;
    border-bottom: 1.5px solid #64748b !important;
    transform: rotate(45deg) translateY(-2px) !important;
    transition: transform .18s ease !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-switcher.is-open .qy-cart-package-toggle > i {
    transform: rotate(225deg) translate(-1px, -1px) !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-buttons {
    --qy-cart-package-width: 100%;
    display: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-switcher.is-open .qy-cart-package-buttons {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    margin-top: 8px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-button {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    min-height: 40px !important;
    justify-content: flex-start !important;
    padding: 0 12px !important;
    border-bottom-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-button:last-child {
    border-bottom-width: 1px !important;
  }

  /* “+”与“−”使用相同几何尺寸绘制，避免字体字形大小不一致。 */
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-step {
    position: relative !important;
    width: 30px !important;
    min-width: 30px !important;
    height: 34px !important;
    min-height: 34px !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-step::before,
  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-step[data-qy-range-plus]::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 10px !important;
    height: 1.5px !important;
    background: currentColor !important;
    transform: translate(-50%, -50%) !important;
    pointer-events: none !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page #addCartForm .qy-cart-range-step[data-qy-range-plus]::after {
    width: 1.5px !important;
    height: 10px !important;
  }
}

/* QY V2.2.1：手机端标题与产品套餐紧凑化 */
@media (max-width: 991.98px) {
  /* 产品名称标题：减少字号和上下留白，避免在手机端显得突兀。 */
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main > .card:first-child,
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main-col > .card:first-child {
    margin: 0 !important;
    border-bottom: 1px solid #e8edf3 !important;
    background: #fff !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main > .card:first-child .card-body,
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main-col > .card:first-child .card-body {
    min-height: 0 !important;
    padding: 11px 12px !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main > .card:first-child .card-title,
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main-col > .card:first-child .card-title,
  html body.qy-cart-mode .qy-cart-configure-page h4.card-title {
    margin: 0 !important;
    color: #111827 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  /* 套餐区域：取消多余底部留白，改成紧凑的两行折叠标题。 */
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-switcher {
    width: 100% !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-toggle {
    width: 100% !important;
    min-height: 54px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 18px !important;
    grid-template-rows: auto auto !important;
    grid-template-areas:
      "label arrow"
      "current arrow" !important;
    align-items: center !important;
    column-gap: 10px !important;
    row-gap: 3px !important;
    margin: 0 !important;
    padding: 9px 12px !important;
    border: 1px solid #dbe3ec !important;
    background: #fff !important;
    color: #0f172a !important;
    text-align: left !important;
    box-shadow: none !important;
    outline: 0 !important;
    border-radius: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-toggle-label {
    grid-area: label !important;
    color: #64748b !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-toggle-current {
    grid-area: current !important;
    min-width: 0 !important;
    display: block !important;
    overflow: hidden !important;
    color: #1263ff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-toggle > i {
    grid-area: arrow !important;
    width: 8px !important;
    height: 8px !important;
    align-self: center !important;
    justify-self: center !important;
    border-right: 1.5px solid #64748b !important;
    border-bottom: 1.5px solid #64748b !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-switcher.is-open .qy-cart-package-buttons {
    max-height: 252px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    margin: -1px 0 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    border: 1px solid #dbe3ec !important;
    background: #fff !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    -webkit-overflow-scrolling: touch !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-button {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    min-height: 38px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin: 0 !important;
    padding: 8px 12px !important;
    border: 0 !important;
    border-bottom: 1px solid #eef2f7 !important;
    background: #fff !important;
    color: #334155 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-button:last-child {
    border-bottom: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-package-button.is-active {
    background: #eef5ff !important;
    color: #1263ff !important;
    font-weight: 700 !important;
  }
}

@media (max-width: 480px) {
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main > .card:first-child .card-title,
  html body.qy-cart-mode .qy-cart-configure-page .qy-cart-config-main-col > .card:first-child .card-title,
  html body.qy-cart-mode .qy-cart-configure-page h4.card-title {
    font-size: 13px !important;
  }
}


/* =========================================================
   V2.2.2 购物车手机端顶部账户入口
   隐藏菜单展开按钮，替换为注册 / 登录；电脑端不变。
   ========================================================= */
.qy-header-scope .qy-cart-mobile-auth {
  display: none;
}

@media (max-width: 991.98px) {
  body.qy-cart-mode .qy-header-scope .qy-menu-toggle,
  body.qy-cart-mode .qy-header-scope .qy-mobile-menu {
    display: none !important;
  }

  body.qy-cart-mode .qy-header-scope .qy-actions {
    display: none !important;
  }

  body.qy-cart-mode .qy-header-scope .qy-navbar__inner {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    width: 100% !important;
  }

  body.qy-cart-mode .qy-header-scope .qy-logo {
    flex: 0 1 auto !important;
    min-width: 0 !important;
    margin-right: auto !important;
  }

  body.qy-cart-mode .qy-header-scope .qy-logo img {
    max-width: 132px !important;
    height: auto !important;
  }

  body.qy-cart-mode .qy-header-scope .qy-cart-mobile-auth {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    margin-left: auto !important;
  }

  body.qy-cart-mode .qy-header-scope .qy-cart-mobile-auth a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 32px !important;
    min-width: 48px !important;
    padding: 0 11px !important;
    margin: 0 !important;
    border: 1px solid #1263ff !important;
    border-radius: 0 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    box-shadow: none !important;
  }

  body.qy-cart-mode .qy-header-scope .qy-cart-mobile-auth__register,
  body.qy-cart-mode .qy-header-scope .qy-cart-mobile-auth__account {
    color: #1263ff !important;
    background: #ffffff !important;
  }

  body.qy-cart-mode .qy-header-scope .qy-cart-mobile-auth__login,
  body.qy-cart-mode .qy-header-scope .qy-cart-mobile-auth__logout {
    color: #ffffff !important;
    background: #1263ff !important;
  }

  body.qy-cart-mode .qy-header-scope .qy-cart-mobile-auth a:hover,
  body.qy-cart-mode .qy-header-scope .qy-cart-mobile-auth a:focus,
  body.qy-cart-mode .qy-header-scope .qy-cart-mobile-auth a:active {
    text-decoration: none !important;
    outline: none !important;
    box-shadow: none !important;
  }
}

@media (max-width: 380px) {
  body.qy-cart-mode .qy-header-scope .qy-logo img {
    max-width: 108px !important;
  }

  body.qy-cart-mode .qy-header-scope .qy-cart-mobile-auth {
    gap: 4px !important;
  }

  body.qy-cart-mode .qy-header-scope .qy-cart-mobile-auth a {
    min-width: 42px !important;
    height: 30px !important;
    padding: 0 8px !important;
    font-size: 11px !important;
  }
}


/* =========================================================
   V2.2.3 手机端账户入口强制显示
   不依赖 body.qy-cart-mode，购物车头部本身即为作用域。
   ========================================================= */
.qy-header-scope .qy-cart-mobile-auth {
  display: none !important;
}

@media (max-width: 991.98px) {
  .qy-header-scope .qy-nav,
  .qy-header-scope .qy-actions,
  .qy-header-scope .qy-menu-toggle,
  .qy-header-scope .qy-mobile-menu {
    display: none !important;
  }

  .qy-header-scope .qy-navbar__inner {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    gap: 8px !important;
  }

  .qy-header-scope .qy-logo {
    flex: 0 1 auto !important;
    min-width: 0 !important;
    margin-right: auto !important;
  }

  .qy-header-scope .qy-cart-mobile-auth {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 30 !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    margin-left: auto !important;
  }

  .qy-header-scope .qy-cart-mobile-auth > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 32px !important;
    min-width: 48px !important;
    padding: 0 11px !important;
    margin: 0 !important;
    border: 1px solid #1263ff !important;
    border-radius: 0 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    box-shadow: none !important;
  }

  .qy-header-scope .qy-cart-mobile-auth__register {
    color: #1263ff !important;
    background: #fff !important;
  }

  .qy-header-scope .qy-cart-mobile-auth__login {
    color: #fff !important;
    background: #1263ff !important;
  }
}

/* =========================================================
   V2.2.4 购物车手机端真实头部账户入口
   实际页面使用 .qy-header，不依赖 .qy-header-scope。
   ========================================================= */
.qy-header .qy-cart-runtime-auth {
  display: none !important;
}

@media (max-width: 991.98px) {
  .qy-header .qy-menu-toggle,
  .qy-header .qy-mobile-menu,
  .qy-header .qy-nav {
    display: none !important;
  }

  .qy-header .qy-navbar__inner {
    display: flex !important;
    grid-template-columns: none !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 8px !important;
  }

  .qy-header .qy-logo {
    flex: 0 1 auto !important;
    min-width: 0 !important;
    margin-right: auto !important;
  }

  .qy-header .qy-logo img {
    display: block !important;
    max-width: 132px !important;
    height: auto !important;
  }

  .qy-header .qy-actions {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 0 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
    z-index: 60 !important;
  }

  .qy-header .qy-actions > .qy-cart-desktop-auth-original {
    display: none !important;
  }

  .qy-header .qy-cart-runtime-auth {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .qy-header .qy-cart-runtime-auth > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 48px !important;
    height: 32px !important;
    margin: 0 !important;
    padding: 0 11px !important;
    border: 1px solid #1263ff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    text-decoration: none !important;
  }

  .qy-header .qy-cart-runtime-register {
    color: #1263ff !important;
    background: #ffffff !important;
  }

  .qy-header .qy-cart-runtime-login {
    color: #ffffff !important;
    background: #1263ff !important;
  }
}

@media (max-width: 380px) {
  .qy-header .qy-logo img {
    max-width: 106px !important;
  }

  .qy-header .qy-cart-runtime-auth {
    gap: 4px !important;
  }

  .qy-header .qy-cart-runtime-auth > a {
    min-width: 42px !important;
    height: 30px !important;
    padding: 0 8px !important;
    font-size: 11px !important;
  }
}


/* =========================================================
   V2.2.5 手机端头部双按钮最终规则
   两套 header.html 都直接输出按钮，不再依赖运行时拆分。
   ========================================================= */
.qy-header .qy-mobile-auth-pair {
  display: none !important;
}

@media (max-width: 991.98px) {
  html body .qy-header[data-qy-header] .qy-menu-toggle,
  html body .qy-header[data-qy-header] .qy-mobile-menu,
  html body .qy-header[data-qy-header] .qy-nav,
  html body .qy-header[data-qy-header] .qy-cart-runtime-auth,
  html body .qy-header[data-qy-header] .qy-cart-mobile-auth {
    display: none !important;
  }

  html body .qy-header[data-qy-header] .qy-navbar__inner {
    display: flex !important;
    grid-template-columns: none !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 6px !important;
    overflow: visible !important;
  }

  html body .qy-header[data-qy-header] .qy-logo {
    display: flex !important;
    flex: 0 1 auto !important;
    min-width: 0 !important;
    margin: 0 auto 0 0 !important;
  }

  html body .qy-header[data-qy-header] .qy-logo img {
    display: block !important;
    max-width: 118px !important;
    width: auto !important;
    height: auto !important;
  }

  html body .qy-header[data-qy-header] .qy-actions {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 0 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
    z-index: 80 !important;
  }

  html body .qy-header[data-qy-header] .qy-actions__login.qy-auth-desktop-single {
    display: none !important;
  }

  html body .qy-header[data-qy-header] .qy-mobile-auth-pair {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    flex: 0 0 auto !important;
    align-items: stretch !important;
    justify-content: flex-end !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
    z-index: 90 !important;
  }

  html body .qy-header[data-qy-header] .qy-mobile-auth-pair > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 34px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 34px !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
  }

  html body .qy-header[data-qy-header] .qy-mobile-auth-login {
    min-width: 66px !important;
    padding: 0 10px !important;
    border: 1px solid transparent !important;
    color: #475569 !important;
    background: #ffffff !important;
  }

  html body .qy-header[data-qy-header] .qy-mobile-auth-register {
    min-width: 72px !important;
    padding: 0 12px !important;
    border: 1px solid #1769ff !important;
    color: #ffffff !important;
    background: #1769ff !important;
  }
}

@media (max-width: 380px) {
  html body .qy-header[data-qy-header] .qy-logo img {
    max-width: 92px !important;
  }

  html body .qy-header[data-qy-header] .qy-mobile-auth-pair > a {
    height: 32px !important;
    font-size: 11px !important;
    line-height: 32px !important;
  }

  html body .qy-header[data-qy-header] .qy-mobile-auth-login {
    min-width: 58px !important;
    padding: 0 7px !important;
  }

  html body .qy-header[data-qy-header] .qy-mobile-auth-register {
    min-width: 66px !important;
    padding: 0 8px !important;
  }
}


/* =========================================================
   V2.2.6 手机端：默认圆形头像 + 右侧导航展开按钮
   Web 与购物车头部结构一致；此处覆盖旧版双按钮规则。
   ========================================================= */
@media (max-width: 991.98px) {
  html body .qy-header[data-qy-header] .qy-actions,
  html body .qy-header[data-qy-header] .qy-mobile-auth-pair,
  html body .qy-header[data-qy-header] .qy-cart-runtime-auth,
  html body .qy-header[data-qy-header] .qy-cart-mobile-auth {
    display: none !important;
  }

  html body .qy-header[data-qy-header] .qy-navbar__inner {
    display: flex !important;
    grid-template-columns: none !important;
    align-items: center !important;
    gap: 8px !important;
    overflow: visible !important;
  }

  html body .qy-header[data-qy-header] .qy-logo {
    flex: 0 1 auto !important;
    min-width: 0 !important;
    margin: 0 auto 0 0 !important;
  }

  html body .qy-header[data-qy-header] .qy-mobile-avatar-entry {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: static !important;
    flex: 0 0 34px !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 50% !important;
    background: #f8fafc !important;
    overflow: hidden !important;
    box-shadow: none !important;
  }

  html body .qy-header[data-qy-header] .qy-mobile-avatar-entry img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    border-radius: 50% !important;
    object-fit: cover !important;
  }

  html body .qy-header[data-qy-header] .qy-menu-toggle {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    flex: 0 0 36px !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body .qy-header[data-qy-header] .qy-menu-toggle > span {
    display: block !important;
    position: relative !important;
    width: 18px !important;
    height: 2px !important;
    background: #334155 !important;
  }

  html body .qy-header[data-qy-header] .qy-menu-toggle > span::before,
  html body .qy-header[data-qy-header] .qy-menu-toggle > span::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    width: 18px !important;
    height: 2px !important;
    background: #334155 !important;
  }

  html body .qy-header[data-qy-header] .qy-menu-toggle > span::before { top: -6px !important; }
  html body .qy-header[data-qy-header] .qy-menu-toggle > span::after { top: 6px !important; }
  html body .qy-header[data-qy-header] .qy-menu-toggle.is-active > span { background: transparent !important; }
  html body .qy-header[data-qy-header] .qy-menu-toggle.is-active > span::before { top: 0 !important; transform: rotate(45deg) !important; }
  html body .qy-header[data-qy-header] .qy-menu-toggle.is-active > span::after { top: 0 !important; transform: rotate(-45deg) !important; }

  html body .qy-header[data-qy-header] .qy-mobile-menu {
    display: none !important;
  }

  html body .qy-header[data-qy-header] .qy-mobile-menu.is-open {
    display: grid !important;
  }
}


/* =========================================================
   QY Cart V2.2.1：移动端结算栏首屏固定、配置展开与按钮恢复
   结算栏挂载到 body，避免祖先布局或滚动容器影响 position: fixed。
   ========================================================= */
html body.qy-cart-mode .qy-cart-configure-page {
  padding-bottom: 92px !important;
}

html body.qy-cart-mode #qyCartSummaryPortal {
  position: fixed !important;
  left: 320px !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  z-index: 2147483000 !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
  pointer-events: none !important;
}

html body.qy-cart-mode #qyCartSummaryPortal.qy-cart-summary-is-empty {
  display: none !important;
}

html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-summary-fragment {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
}

html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-summary {
  position: relative !important;
  inset: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  top: auto !important;
  z-index: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 66px !important;
  margin: 0 !important;
  padding: 10px 22px calc(10px + env(safe-area-inset-bottom)) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-areas: "total actions" !important;
  align-items: center !important;
  gap: 18px !important;
  overflow: visible !important;
  border: 0 !important;
  border-top: 1px solid #dbe4f0 !important;
  border-radius: 0 !important;
  background: rgba(255, 255, 255, .985) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  backdrop-filter: blur(16px) !important;
  box-shadow: 0 -10px 30px rgba(15, 23, 42, .10) !important;
  transform: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-total {
  grid-area: total !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: baseline !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  gap: 5px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-total strong {
  flex: 0 0 auto !important;
  color: #ff3434 !important;
  font-size: 25px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-actions {
  grid-area: actions !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
}

html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-detail {
  position: relative !important;
  min-width: 0 !important;
  flex: 0 1 auto !important;
}

html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-fee-toggle {
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 3px !important;
  margin: 0 !important;
  padding: 0 4px !important;
  overflow: visible !important;
  border: 0 !important;
  border-bottom: 1px dashed #ff7a00 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #ff7a00 !important;
  box-shadow: none !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  visibility: visible !important;
  opacity: 1 !important;
}

html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-fee-toggle:disabled {
  color: #94a3b8 !important;
  border-bottom-color: #cbd5e1 !important;
  cursor: wait !important;
}

html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-submit {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 142px !important;
  max-width: 220px !important;
  height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 18px !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #1263ff !important;
  color: #000000 !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  visibility: visible !important;
  opacity: 1 !important;
}

html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-submit:disabled {
  background: #94a3b8 !important;
  cursor: wait !important;
}

html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-fee-panel {
  position: absolute !important;
  left: auto !important;
  right: 0 !important;
  bottom: calc(100% + 1px) !important;
  top: auto !important;
  z-index: 3 !important;
  width: min(600px, calc(100vw - 356px)) !important;
  max-width: 600px !important;
  max-height: min(62vh, 560px) !important;
  margin: 0 !important;
  padding: 16px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  border: 1px solid #dbe4f0 !important;
  border-radius: 0 !important;
  background: #fff !important;
  box-shadow: 0 -18px 50px rgba(15, 23, 42, .16) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(10px) !important;
  pointer-events: none !important;
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease !important;
}

html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-summary.is-fee-open .qy-cart-fee-panel,
html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-detail.is-fee-hover .qy-cart-fee-panel,
html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-detail:focus-within .qy-cart-fee-panel {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

html body.qy-cart-mode #qyCartSummaryPortal.is-loading .qy-cart-bottom-summary {
  min-height: 66px !important;
}

@media (max-width: 991.98px) {
  html body.qy-cart-mode.qy-cart-fee-panel-open {
    overflow: hidden !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page {
    padding-bottom: calc(118px + env(safe-area-inset-bottom)) !important;
  }

  html body.qy-cart-mode #qyCartSummaryPortal {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
  }

  html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-summary {
    min-height: 110px !important;
    padding: 10px 12px calc(10px + env(safe-area-inset-bottom)) !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas:
      "total"
      "actions" !important;
    gap: 8px !important;
  }

  html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-total {
    width: 100% !important;
    max-width: 100% !important;
    flex-wrap: wrap !important;
    overflow: visible !important;
    gap: 4px !important;
  }

  html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-total strong {
    font-size: 23px !important;
  }

  html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-actions {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 10px !important;
  }

  html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-detail {
    width: 100% !important;
    min-width: 0 !important;
  }

  html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-fee-toggle {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 40px !important;
    justify-content: flex-start !important;
    padding: 0 8px !important;
    text-align: left !important;
  }

  html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-fee-toggle::after {
    content: "" !important;
    width: 8px !important;
    height: 8px !important;
    margin-left: auto !important;
    border-right: 2px solid currentColor !important;
    border-bottom: 2px solid currentColor !important;
    transform: rotate(225deg) !important;
    transition: transform .18s ease !important;
  }

  html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-summary.is-fee-open .qy-cart-fee-toggle::after {
    transform: rotate(45deg) !important;
  }

  html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-submit {
    width: auto !important;
    min-width: 126px !important;
    max-width: 44vw !important;
    height: 42px !important;
    padding: 0 14px !important;
    font-size: 13px !important;
  }

  html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-fee-panel {
    left: 0 !important;
    right: 0 !important;
    bottom: calc(100% + 1px) !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: min(58dvh, 540px) !important;
    padding: 14px !important;
    border-left: 0 !important;
    border-right: 0 !important;
  }
}

@media (max-width: 420px) {
  html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-submit {
    min-width: 118px !important;
    max-width: 42vw !important;
    padding: 0 10px !important;
  }

  html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-total-label,
  html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-total em,
  html body.qy-cart-mode #qyCartSummaryPortal .qy-cart-bottom-total small {
    font-size: 12px !important;
  }
}


/* =========================================================
   QY Cart V2.2.2 final override：结算栏始终贴住视口底部
   不依赖 body class、滚动位置或动态挂载时机。
   ========================================================= */
#qyCartSummaryPortal.qy-cart-summary-portal {
  position: fixed !important;
  bottom: 0 !important;
  top: auto !important;
  z-index: 2147483640 !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: translate3d(0,0,0) !important;
}
#qyCartSummaryPortal .qy-cart-bottom-submit {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}
@media (max-width: 991.98px) {
  #qyCartSummaryPortal.qy-cart-summary-portal {
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
  }
  #qyCartSummaryPortal .qy-cart-bottom-actions {
    grid-template-columns: minmax(0,1fr) 132px !important;
  }
  #qyCartSummaryPortal .qy-cart-bottom-submit {
    width: 132px !important;
    min-width: 132px !important;
    max-width: 132px !important;
    height: 44px !important;
    padding: 0 10px !important;
    color: #000000 !important;
    background: #1263ff !important;
  }
}


/* QY V2.3.0 FINAL SUMMARY OVERRIDE */
/* QY V2.3.0：配置页固定结算栏与响应式费用明细 */
html body.qy-cart-mode .qy-cart-configure-page {
  padding-bottom: calc(78px + env(safe-area-inset-bottom)) !important;
}

#qyCartSummaryPortal.qy-cart-summary-portal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483000 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
  pointer-events: none !important;
}

#qyCartSummaryPortal .qy-cart-summary-fragment {
  position: fixed !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
}

#qyCartSummaryPortal .qy-cart-bottom-summary {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  z-index: 30 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  width: 100% !important;
  min-height: 66px !important;
  margin: 0 !important;
  padding: 9px 16px calc(9px + env(safe-area-inset-bottom)) !important;
  border: 0 !important;
  border-top: 1px solid #dfe6ef !important;
  border-radius: 0 !important;
  background: rgba(255, 255, 255, .985) !important;
  box-shadow: 0 -8px 30px rgba(15, 23, 42, .10) !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: translate3d(0, 0, 0) !important;
  pointer-events: auto !important;
  transition: opacity .18s ease, visibility .18s ease, transform .18s ease !important;
}

#qyCartSummaryPortal .qy-cart-bottom-total {
  display: flex !important;
  align-items: baseline !important;
  flex: 1 1 auto !important;
  gap: 5px !important;
  min-width: 0 !important;
  color: #475569 !important;
  white-space: nowrap !important;
}

#qyCartSummaryPortal .qy-cart-bottom-total-label {
  color: #334155 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

#qyCartSummaryPortal .qy-cart-bottom-total strong {
  color: #ff3b30 !important;
  font-size: 21px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

#qyCartSummaryPortal .qy-cart-bottom-total em,
#qyCartSummaryPortal .qy-cart-bottom-total small {
  color: #64748b !important;
  font-size: 12px !important;
  font-style: normal !important;
  font-weight: 500 !important;
}

#qyCartSummaryPortal .qy-cart-bottom-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex: 0 0 auto !important;
  gap: 12px !important;
  min-width: 0 !important;
}

#qyCartSummaryPortal .qy-cart-bottom-detail {
  display: block !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

#qyCartSummaryPortal .qy-cart-fee-toggle {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  width: auto !important;
  min-width: 108px !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 13px !important;
  border: 1px solid #d9e2ef !important;
  border-radius: 4px !important;
  background: #fff !important;
  color: #475569 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  visibility: visible !important;
  opacity: 1 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  box-shadow: none !important;
}

#qyCartSummaryPortal .qy-cart-fee-toggle::after {
  content: "" !important;
  display: block !important;
  width: 7px !important;
  height: 7px !important;
  margin: -3px 0 0 3px !important;
  border-right: 1.5px solid currentColor !important;
  border-bottom: 1.5px solid currentColor !important;
  transform: rotate(45deg) !important;
  transition: transform .18s ease, margin .18s ease !important;
}

#qyCartSummaryPortal.is-fee-open .qy-cart-fee-toggle::after {
  margin-top: 3px !important;
  transform: rotate(225deg) !important;
}

#qyCartSummaryPortal .qy-cart-fee-toggle b {
  color: #ff7a00 !important;
  font-weight: 800 !important;
}

#qyCartSummaryPortal .qy-cart-fee-toggle:disabled {
  color: #94a3b8 !important;
  cursor: wait !important;
}

#qyCartSummaryPortal .qy-cart-bottom-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  gap: 6px !important;
  width: 140px !important;
  min-width: 140px !important;
  max-width: 140px !important;
  height: 46px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  overflow: visible !important;
  border: 1px solid #1263ff !important;
  border-radius: 3px !important;
  background: #1263ff !important;
  color: #000000 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  visibility: visible !important;
  opacity: 1 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  box-shadow: none !important;
}

#qyCartSummaryPortal .qy-cart-bottom-submit:hover {
  border-color: #0757ed !important;
  background: #0757ed !important;
}

#qyCartSummaryPortal .qy-cart-fee-backdrop {
  position: fixed !important;
  inset: 0 !important;
  z-index: 35 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: rgba(15, 23, 42, .42) !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .2s ease, visibility .2s ease !important;
}

#qyCartSummaryPortal .qy-cart-fee-panel {
  position: fixed !important;
  right: 16px !important;
  bottom: calc(78px + env(safe-area-inset-bottom)) !important;
  left: auto !important;
  top: auto !important;
  z-index: 40 !important;
  display: flex !important;
  flex-direction: column !important;
  width: min(640px, calc(100vw - 32px)) !important;
  max-width: 640px !important;
  max-height: calc(100dvh - 112px) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid #dfe5ee !important;
  border-radius: 3px !important;
  background: #fff !important;
  box-shadow: 0 16px 48px rgba(15, 23, 42, .18) !important;
  visibility: hidden !important;
  opacity: 0 !important;
  transform: translateY(10px) !important;
  pointer-events: none !important;
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease !important;
}

#qyCartSummaryPortal.is-fee-open .qy-cart-fee-panel {
  visibility: visible !important;
  opacity: 1 !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

#qyCartSummaryPortal .qy-cart-fee-panel__head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto 34px !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 54px !important;
  padding: 9px 12px 9px 16px !important;
  border-bottom: 1px solid #e5ebf3 !important;
  background: #fff !important;
}

#qyCartSummaryPortal .qy-cart-fee-panel__title {
  min-width: 0 !important;
  color: #111827 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

#qyCartSummaryPortal .qy-cart-fee-panel__title strong {
  font-weight: 800 !important;
}

#qyCartSummaryPortal .qy-cart-fee-panel__total {
  color: #334155 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

#qyCartSummaryPortal .qy-cart-fee-panel__total strong {
  color: #ff3b30 !important;
  font-size: 16px !important;
  font-weight: 800 !important;
}

#qyCartSummaryPortal .qy-cart-fee-close {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  margin: 0 !important;
  padding: 0 0 2px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #f1f5f9 !important;
  color: #64748b !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

#qyCartSummaryPortal .qy-cart-fee-panel__body {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow: auto !important;
  overscroll-behavior: contain !important;
  background: #fff !important;
}

#qyCartSummaryPortal .qy-cart-fee-table {
  width: 100% !important;
  margin: 0 !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  background: #fff !important;
  color: #475569 !important;
  font-size: 12px !important;
}

#qyCartSummaryPortal .qy-cart-fee-col-name { width: 17% !important; }
#qyCartSummaryPortal .qy-cart-fee-col-detail { width: 30% !important; }
#qyCartSummaryPortal .qy-cart-fee-col-price { width: 17% !important; }
#qyCartSummaryPortal .qy-cart-fee-col-discount { width: 18% !important; }
#qyCartSummaryPortal .qy-cart-fee-col-final { width: 18% !important; }

#qyCartSummaryPortal .qy-cart-fee-table th,
#qyCartSummaryPortal .qy-cart-fee-table td {
  padding: 11px 12px !important;
  border: 0 !important;
  border-bottom: 1px solid #edf1f6 !important;
  vertical-align: middle !important;
  text-align: left !important;
  line-height: 1.5 !important;
  overflow-wrap: anywhere !important;
}

#qyCartSummaryPortal .qy-cart-fee-table thead th {
  position: sticky !important;
  top: 0 !important;
  z-index: 1 !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  background: #f3f7ff !important;
  color: #1f2937 !important;
  font-weight: 800 !important;
}

#qyCartSummaryPortal .qy-cart-fee-table tbody th {
  color: #111827 !important;
  font-weight: 700 !important;
}

#qyCartSummaryPortal .qy-cart-fee-table tbody td:nth-child(n+3),
#qyCartSummaryPortal .qy-cart-fee-table thead th:nth-child(n+3) {
  text-align: center !important;
  white-space: nowrap !important;
}

#qyCartSummaryPortal .qy-cart-fee-detail-value {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  max-width: 100% !important;
}

#qyCartSummaryPortal .qy-cart-fee-icon {
  flex: 0 0 auto !important;
  width: 20px !important;
  height: 20px !important;
  object-fit: contain !important;
}

@media (max-width: 991.98px) {
  html body.qy-cart-mode.qy-cart-fee-panel-open {
    overflow: hidden !important;
    touch-action: none !important;
  }

  html body.qy-cart-mode .qy-cart-configure-page {
    padding-bottom: calc(82px + env(safe-area-inset-bottom)) !important;
  }

  #qyCartSummaryPortal .qy-cart-bottom-summary {
    min-height: 72px !important;
    gap: 8px !important;
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom)) !important;
  }

  #qyCartSummaryPortal .qy-cart-bottom-total {
    flex: 1 1 auto !important;
    flex-wrap: wrap !important;
    column-gap: 4px !important;
    row-gap: 2px !important;
    min-width: 76px !important;
  }

  #qyCartSummaryPortal .qy-cart-bottom-total-label {
    font-size: 11px !important;
  }

  #qyCartSummaryPortal .qy-cart-bottom-total strong {
    font-size: 18px !important;
  }

  #qyCartSummaryPortal .qy-cart-bottom-total em,
  #qyCartSummaryPortal .qy-cart-bottom-total small {
    font-size: 10px !important;
  }

  #qyCartSummaryPortal .qy-cart-bottom-actions {
    gap: 7px !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-toggle {
    min-width: 92px !important;
    height: 44px !important;
    padding: 0 9px !important;
    border-color: transparent !important;
    background: transparent !important;
    color: #f97316 !important;
    font-size: 12px !important;
  }

  #qyCartSummaryPortal .qy-cart-bottom-submit {
    width: 118px !important;
    min-width: 118px !important;
    max-width: 118px !important;
    height: 46px !important;
    padding: 0 9px !important;
    font-size: 13px !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-backdrop {
    display: block !important;
  }

  #qyCartSummaryPortal.is-fee-open .qy-cart-fee-backdrop {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  #qyCartSummaryPortal.is-fee-open .qy-cart-bottom-summary {
    visibility: hidden !important;
    opacity: 0 !important;
    transform: translateY(100%) !important;
    pointer-events: none !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-panel {
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: min(82dvh, 760px) !important;
    border: 0 !important;
    border-radius: 16px 16px 0 0 !important;
    box-shadow: 0 -16px 50px rgba(15, 23, 42, .22) !important;
    transform: translateY(100%) !important;
  }

  #qyCartSummaryPortal.is-fee-open .qy-cart-fee-panel {
    transform: translateY(0) !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-panel__head {
    grid-template-columns: minmax(0, 1fr) auto 34px !important;
    gap: 8px !important;
    min-height: 56px !important;
    padding: 10px 10px 10px 12px !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-panel__title {
    font-size: 13px !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-panel__total {
    font-size: 12px !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-panel__total strong {
    font-size: 16px !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-table {
    font-size: 11px !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-col-name { width: 20% !important; }
  #qyCartSummaryPortal .qy-cart-fee-col-detail { width: 27% !important; }
  #qyCartSummaryPortal .qy-cart-fee-col-price { width: 16% !important; }
  #qyCartSummaryPortal .qy-cart-fee-col-discount { width: 18% !important; }
  #qyCartSummaryPortal .qy-cart-fee-col-final { width: 19% !important; }

  #qyCartSummaryPortal .qy-cart-fee-table th,
  #qyCartSummaryPortal .qy-cart-fee-table td {
    padding: 10px 7px !important;
    line-height: 1.45 !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-table tbody td:nth-child(n+3),
  #qyCartSummaryPortal .qy-cart-fee-table thead th:nth-child(n+3) {
    white-space: normal !important;
  }
}

@media (max-width: 420px) {
  #qyCartSummaryPortal .qy-cart-bottom-summary {
    gap: 5px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  #qyCartSummaryPortal .qy-cart-bottom-total-label {
    display: block !important;
    flex-basis: 100% !important;
  }

  #qyCartSummaryPortal .qy-cart-bottom-total strong {
    font-size: 17px !important;
  }

  #qyCartSummaryPortal .qy-cart-bottom-total small {
    display: none !important;
  }

  #qyCartSummaryPortal .qy-cart-bottom-actions {
    gap: 4px !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-toggle {
    min-width: 82px !important;
    padding: 0 5px !important;
    font-size: 11px !important;
  }

  #qyCartSummaryPortal .qy-cart-bottom-submit {
    width: 106px !important;
    min-width: 106px !important;
    max-width: 106px !important;
    padding: 0 6px !important;
    font-size: 12px !important;
  }

  #qyCartSummaryPortal .qy-cart-bottom-submit i {
    display: none !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-panel__head {
    grid-template-columns: minmax(0, 1fr) auto 30px !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-panel__title,
  #qyCartSummaryPortal .qy-cart-fee-panel__total {
    font-size: 11.5px !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-panel__total strong {
    font-size: 15px !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-close {
    width: 28px !important;
    height: 28px !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-table {
    font-size: 10.5px !important;
  }

  #qyCartSummaryPortal .qy-cart-fee-table th,
  #qyCartSummaryPortal .qy-cart-fee-table td {
    padding: 9px 5px !important;
  }
}



/* =========================================================
   V2.3.1 强制底部定位：抵抗父级 transform / overflow / 旧主题覆盖
   ========================================================= */
html body.qy-cart-mode > #qyCartSummaryPortal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483000 !important;
  pointer-events: none !important;
}
html body.qy-cart-mode > #qyCartSummaryPortal .qy-cart-bottom-summary {
  position: fixed !important;
  inset: auto 0 0 0 !important;
  margin: 0 !important;
  transform: translate3d(0,0,0) !important;
  -webkit-transform: translate3d(0,0,0) !important;
  pointer-events: auto !important;
}
@media (max-width: 991.98px) {
  html body.qy-cart-mode > #qyCartSummaryPortal .qy-cart-fee-panel {
    position: fixed !important;
    inset: auto 0 0 0 !important;
    margin: 0 !important;
  }
}
@media (min-width: 992px) {
  html body.qy-cart-mode > #qyCartSummaryPortal .qy-cart-fee-panel {
    position: fixed !important;
    inset: auto 16px calc(78px + env(safe-area-inset-bottom)) auto !important;
    margin: 0 !important;
  }
}


/* =========================================================
   luansuicart v1.0.0
   Web 顶部导航保持 luansuiweb 原样；购物车只负责导航后的内容距离。
   当前 luansuiweb Header 高 45px 且位于正常文档流，不重复计算导航高度。
   ========================================================= */
html body.lsw-site.qy-cart-mode .qy-cart-page {
  margin-top: 16px !important;
}

@media (max-width: 760px) {
  html body.lsw-site.qy-cart-mode .qy-cart-page {
    margin-top: 12px !important;
  }
}

/* 20260831 V1.0.33：产品购买按钮强制常显并贴齐卡片底边；移除两套卡片悬停顶部蓝条 */
html body.qy-cart-mode .qy-cart-page .qy-cart-ls-card .qy-cart-ls-bottom {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
  max-height: none !important;
  overflow: visible !important;
  transform: none !important;
  padding-bottom: 0 !important;
}

html body.qy-cart-mode .qy-cart-page .qy-cart-ls-card .qy-cart-ls-buy,
html body.qy-cart-mode .qy-cart-page .qy-cart-ls-card:not(:hover) .qy-cart-ls-buy,
html body.qy-cart-mode .qy-cart-page .qy-cart-ls-card:hover .qy-cart-ls-buy {
  width: calc(100% + 40px) !important;
  height: 46px !important;
  min-height: 46px !important;
  max-height: 46px !important;
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  margin-left: -20px !important;
  margin-bottom: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  pointer-events: auto !important;
  transform: none !important;
  background: rgba(74, 104, 255, 1) !important;
  color: #fff !important;
  box-shadow: none !important;
}

html body.qy-cart-mode .qy-cart-page .qy-cart-product-card .qy-cart-buy-btn,
html body.qy-cart-mode .qy-cart-page .qy-cart-product-card:not(:hover) .qy-cart-buy-btn,
html body.qy-cart-mode .qy-cart-page .qy-cart-product-card:hover .qy-cart-buy-btn {
  width: 100% !important;
  min-height: 48px !important;
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: none !important;
  margin: 0 !important;
  background: rgba(74, 104, 255, 1) !important;
  color: #fff !important;
  box-shadow: none !important;
}

html body.qy-cart-mode .qy-cart-page .qy-cart-ls-card::before,
html body.qy-cart-mode .qy-cart-page .qy-cart-ls-card:hover::before,
html body.qy-cart-mode .qy-cart-page .qy-cart-product-card::before,
html body.qy-cart-mode .qy-cart-page .qy-cart-product-card:hover::before {
  content: none !important;
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  background: none !important;
}

/* 20260831 V1034: 手机端产品分类标题对齐电脑端，移除蓝色名称块 */
@media (max-width: 991px) {
  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-main-title.qy-cart-product-current-title,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-main-title.qy-cart-product-current-title {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-category-inline-row,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-category-inline-row {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 46px !important;
    display: flex !important;
    align-items: center !important;
    padding: 12px 16px !important;
    border: 1px solid #e5e7eb !important;
    background: #ffffff !important;
    box-shadow: none !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-category-inline-title,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-category-inline-title {
    display: flex !important;
    align-items: center !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-category-inline-title h2,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-category-inline-title h2 {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #111827 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.55 !important;
    white-space: normal !important;
    text-shadow: none !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-product-current-title .qy-cart-category-name-badge,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-product-current-title .qy-cart-category-name-badge {
    display: inline !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #111827 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.55 !important;
    white-space: normal !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
}

/* /cart：购物车内容与页脚间距，仅调整底部留白 */
html body.qy-cart-mode .qy-cart-view-page {
  padding-bottom: 2px !important;
}

/* /cart：页脚顶部空隙仅调整为 2px，不改页脚结构与其他页面 */
html body.qy-cart-mode .qy-cart-view-page ~ .lsw-footer .lsw-footer__main,
html body.qy-cart-mode .qy-cart-view-page ~ footer#lsw-footer .lsw-footer__main {
  padding-top: 2px !important;
}

@media (max-width: 760px) {
  html body.qy-cart-mode .qy-cart-view-page ~ .lsw-footer .lsw-footer__mobile-phone,
  html body.qy-cart-mode .qy-cart-view-page ~ footer#lsw-footer .lsw-footer__mobile-phone {
    padding-top: 2px !important;
  }
}

/* /cart 产品列表：法律提示下方到底部只保留 2px；只调整底部间距。 */
html body.lsw-site.qy-cart-mode .page-content {
  padding-bottom: 0 !important;
}

html body.lsw-site.qy-cart-mode .qy-cart-page.qy-cart-product-page.qy-cart-ls-page.qy-cart-new-product-page {
  padding-bottom: 2px !important;
}

/* v1.0.58：产品介绍区域横向空间释放，仅调整描述区左右间距 */
html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-spec.qy-cart-product-desc,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-spec.qy-cart-product-desc {
  margin-left: 10px !important;
  margin-right: 10px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* v1.0.59：缩小产品介绍与价格区域之间的垂直间距；不改卡片等高与按钮贴底逻辑 */
html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-spec.qy-cart-product-desc,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-spec.qy-cart-product-desc {
  padding-bottom: 0 !important;
}

html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-bottom,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-bottom {
  padding-top: 6px !important;
}

/* =========================================================
   luansuicart v1.0.62 - mobile product list refinement
   2026-09-02
   Mobile-only: remove duplicate category card, tighten product cards,
   normalize typography and make the purchase action inset.
   ========================================================= */
@media (max-width: 767.98px) {
  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-main-title.qy-cart-product-current-title,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-main-title.qy-cart-product-current-title {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-catnav-main,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-catnav-main {
    padding-top: 10px !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-grid,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-grid {
    gap: 12px !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card {
    min-height: 0 !important;
    overflow: hidden !important;
    border: 1px solid #dde3eb !important;
    background: #fff !important;
    box-shadow: none !important;
    transform: none !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card:hover,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card:hover {
    border-color: #dde3eb !important;
    box-shadow: none !important;
    transform: none !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card-top,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card-top {
    min-height: 0 !important;
    padding: 15px 14px 7px !important;
    gap: 8px !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card-top h5,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card-top h5 {
    margin: 0 !important;
    color: #111827 !important;
    font-size: 14px !important;
    font-weight: 750 !important;
    line-height: 1.45 !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-spec.qy-cart-product-desc,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-spec.qy-cart-product-desc {
    flex: 0 0 auto !important;
    margin: 0 14px !important;
    padding: 6px 0 4px !important;
    border: 0 !important;
    background: transparent !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-spec.qy-cart-product-desc > pre,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-spec.qy-cart-product-desc > pre {
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    color: #374151 !important;
    font-size: 12.5px !important;
    line-height: 1.65 !important;
    background: transparent !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-product-desc table.tftable td,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-product-desc table.tftable td {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
    color: #111827 !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-product-desc table.tftable td:first-child,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-product-desc table.tftable td:first-child {
    width: 48px !important;
    padding-right: 8px !important;
    color: #8a919d !important;
    font-weight: 650 !important;
    white-space: nowrap !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-product-desc .qisuidc_adv,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-product-desc .qisuidc_adv {
    min-width: 0 !important;
    height: 18px !important;
    margin-top: 0 !important;
    padding: 0 4px !important;
    font-size: 10px !important;
    line-height: 16px !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-product-desc .qisuidc_bq,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-product-desc .qisuidc_bq {
    height: 22px !important;
    margin-bottom: 5px !important;
    padding: 0 8px !important;
    font-size: 11px !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-bottom,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-bottom {
    gap: 9px !important;
    margin-top: 0 !important;
    padding: 8px 14px 14px !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-price-main,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-price-main {
    gap: 4px !important;
    align-items: baseline !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-price-main strong,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-price-main strong {
    font-size: 23px !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-price-main em,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-price-main em {
    font-size: 12px !important;
    font-weight: 700 !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-price-main span,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-price-main span {
    font-size: 10.5px !important;
    font-weight: 700 !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-price small,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-price small {
    margin-top: 3px !important;
    font-size: 10.5px !important;
    line-height: 1.4 !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card:not(:hover) .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card:hover .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card:not(:hover) .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card:hover .qy-cart-ls-buy {
    width: 100% !important;
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    background: #2f64f5 !important;
  }
}

/* v1.0.68 /cart?action=viewcart：顶部避让 + 已购产品摘要重构 */
html body.qy-cart-mode .qy-cart-view-page {
  width: min(1320px, calc(100% - 32px));
  margin: 0 auto !important;
  padding: 76px 0 26px !important;
  overflow: visible !important;
  background: #fff !important;
}

html body.qy-cart-mode .qy-cart-view-page::before {
  display: none !important;
}

html body.qy-cart-mode .qy-cart-view-page > form > .row {
  margin-right: -8px !important;
  margin-left: -8px !important;
}

html body.qy-cart-mode .qy-cart-view-page > form > .row > [class*="col-"] {
  padding-right: 8px !important;
  padding-left: 8px !important;
}

html body.qy-cart-mode .qy-cart-view-page .card {
  border-color: #e5e9f0 !important;
  box-shadow: none !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-summary-card {
  position: sticky !important;
  top: 76px !important;
  overflow: hidden !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-summary-body {
  padding: 0 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-summary-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 54px !important;
  padding: 0 18px !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-summary-title,
html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-summary-title h4 {
  margin: 0 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-summary-title h4 {
  color: #111827 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-summary-divider {
  margin: 0 !important;
  border-top: 1px solid #edf0f4 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-products {
  max-height: calc(100vh - 292px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  padding: 0 18px !important;
  scrollbar-width: thin;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-product {
  margin: 0 !important;
  padding: 17px 0 15px !important;
  border-bottom: 1px solid #edf0f4 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-product:last-child {
  border-bottom: 0 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-product-main {
  margin: 0 !important;
  font-style: normal !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-product-head {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  justify-content: space-between !important;
  margin-bottom: 10px !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-product-name-wrap {
  min-width: 0 !important;
  flex: 1 1 auto !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-product-name {
  display: block !important;
  overflow-wrap: anywhere !important;
  color: #111827 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.55 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-product-actions {
  display: flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  gap: 10px !important;
  padding-top: 1px !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-product-actions a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 26px !important;
  height: 26px !important;
  color: #7b8492 !important;
  text-decoration: none !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-product-actions a:hover {
  color: #1263ff !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-qty {
  display: flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  gap: 4px !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-qty .number {
  width: 58px !important;
  min-height: 30px !important;
  height: 30px !important;
  padding: 2px 6px !important;
  font-size: 12px !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-qty .btn {
  min-height: 30px !important;
  height: 30px !important;
  padding: 0 8px !important;
  border: 1px solid #e2e6ec !important;
  background: #fff !important;
  box-shadow: none !important;
  color: #4b5563 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-goods-info {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-goods-info .qy-viewcart-instance {
  display: flex !important;
  align-items: center !important;
  min-height: 34px !important;
  margin: 0 0 4px !important;
  padding: 0 !important;
  text-indent: 0 !important;
  color: #374151 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-goods-info .qy-viewcart-instance font {
  float: none !important;
  width: 16px !important;
  margin: 0 5px 0 0 !important;
  color: #9aa2ad !important;
  font-family: Arial, sans-serif !important;
  font-size: 12px !important;
  line-height: 1 !important;
  transition: transform .18s ease !important;
  transform-origin: center !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-goods-info .qy-viewcart-instance font.zk {
  margin-top: 0 !important;
  transform: rotate(90deg) !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-instance-label {
  flex: 0 0 52px !important;
  color: #929aa6 !important;
  font-size: 11px !important;
  font-weight: 500 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-instance-value {
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
  color: #374151 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-spec-row,
html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-option-row {
  display: grid !important;
  grid-template-columns: 76px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 8px !important;
  width: 100% !important;
  min-height: 28px !important;
  margin: 0 !important;
  padding: 4px 0 !important;
  color: #374151 !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
  text-indent: 0 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-spec-label {
  min-width: 0 !important;
  color: #929aa6 !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 1.65 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-spec-value {
  min-width: 0 !important;
  margin: 0 !important;
  color: #374151 !important;
  font-family: inherit !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.55 !important;
  overflow-wrap: anywhere !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-price-row,
html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-subtotal {
  align-items: baseline !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 5px 0 !important;
  color: #4b5563 !important;
  font-size: 12px !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-price-label {
  color: #929aa6 !important;
  font-size: 11px !important;
  font-weight: 500 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-discount-row {
  color: #697386 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-subtotal {
  margin-top: 7px !important;
  padding-top: 11px !important;
  border-top: 1px solid #edf0f4 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-subtotal strong {
  color: #111827 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-total-divider {
  margin: 0 !important;
  border: 0 !important;
  border-top: 8px solid #f6f7f9 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-total-row {
  align-items: center !important;
  margin: 0 !important;
  padding: 14px 18px 8px !important;
  font-size: 13px !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-total-row .text-primary,
html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-total-row .price-num {
  color: #1263ff !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-checkout {
  padding: 0 18px 18px !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-checkout .custom-control {
  margin: 0 0 10px !important;
  padding-left: 1.5rem !important;
  color: #697386 !important;
  font-size: 11px !important;
  line-height: 1.5 !important;
}

html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-checkout .btn {
  min-height: 42px !important;
  box-shadow: none !important;
}

@media (max-width: 767.98px) {
  html body.qy-cart-mode .qy-cart-view-page {
    width: calc(100% - 20px) !important;
    padding: 70px 0 calc(92px + env(safe-area-inset-bottom)) !important;
  }

  html body.qy-cart-mode .qy-cart-view-page > form > .row {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-view-page > form > .row > [class*="col-"] {
    width: 100% !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-summary-col {
    margin-top: 12px !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-summary-card {
    position: static !important;
    top: auto !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-summary-head {
    min-height: 50px !important;
    padding: 0 14px !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-products {
    max-height: none !important;
    overflow: visible !important;
    padding: 0 14px !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-product {
    padding: 15px 0 13px !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-product-head {
    gap: 8px !important;
    margin-bottom: 8px !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-product-name {
    font-size: 13.5px !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-product-actions {
    gap: 5px !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-product-actions a {
    width: 24px !important;
    height: 24px !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-spec-row,
  html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-option-row {
    grid-template-columns: 72px minmax(0, 1fr) !important;
    gap: 6px !important;
    min-height: 27px !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-total-row {
    padding-right: 14px !important;
    padding-left: 14px !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .mobile-bottom-total {
    z-index: 980 !important;
    width: 100% !important;
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom)) !important;
    border-top: 1px solid #e5e9f0 !important;
    background: #fff !important;
    box-shadow: 0 -8px 24px rgba(15, 23, 42, .08) !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .mobile-bottom-total > .font-size-16 {
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 12px !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .mobile-bottom-total .mobile-flex {
    gap: 10px !important;
    align-items: center !important;
    padding: 7px 0 0 !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .mobile-bottom-total .custom-control {
    min-width: 0 !important;
    margin: 0 !important;
    padding-left: 1.35rem !important;
    font-size: 10.5px !important;
    line-height: 1.45 !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .mobile-bottom-total .text-sm-right {
    flex: 0 0 112px !important;
    margin: 0 !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .mobile-bottom-total .btn {
    width: 112px !important;
    min-height: 40px !important;
    height: 40px !important;
    padding: 0 10px !important;
    box-shadow: none !important;
    font-size: 12px !important;
  }
}

@media (max-width: 360px) {
  html body.qy-cart-mode .qy-cart-view-page {
    width: calc(100% - 16px) !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-spec-row,
  html body.qy-cart-mode .qy-cart-view-page .qy-viewcart-option-row {
    grid-template-columns: 66px minmax(0, 1fr) !important;
  }

  html body.qy-cart-mode .qy-cart-view-page .mobile-bottom-total .text-sm-right,
  html body.qy-cart-mode .qy-cart-view-page .mobile-bottom-total .btn {
    width: 102px !important;
    flex-basis: 102px !important;
  }
}

/* =========================================================
   luansuicart v1.0.69 - /cart?action=viewcart CSS-only rescue
   2026-09-02
   Minimal override only: header clearance, readable order summary,
   compact mobile flow and white primary-button text.
   ========================================================= */
.qy-cart-view-page {
  box-sizing: border-box !important;
  width: min(1400px, calc(100% - 32px)) !important;
  margin: 0 auto !important;
  padding: 70px 0 24px !important;
  overflow: visible !important;
  background: #fff !important;
}

.qy-cart-view-page > form > .row {
  align-items: flex-start !important;
  margin-right: -10px !important;
  margin-left: -10px !important;
}

.qy-cart-view-page > form > .row > [class*="col-"] {
  padding-right: 10px !important;
  padding-left: 10px !important;
}

.qy-cart-view-page .card,
.qy-cart-view-page .addfunds-payment,
.qy-cart-view-page .checkboxDiv,
.qy-cart-view-page .form-control,
.qy-cart-view-page .btn {
  border-radius: 0 !important;
}

.qy-cart-view-page > form > .row > .col-md-8 > .card {
  border: 1px solid #e2e7ee !important;
  box-shadow: none !important;
}

.qy-cart-view-page > form > .row > .col-md-8 > .card > .card-body:first-child {
  padding: 17px 20px !important;
}

.qy-cart-view-page > form > .row > .col-md-8 > .card > .card-body:first-child h5 {
  color: #111827 !important;
  font-size: 16px !important;
  font-weight: 700 !important;
}

.qy-cart-view-page > form > .row > .col-md-8 > .card > .card-body:nth-of-type(2) {
  padding: 20px !important;
}

.qy-cart-view-page > form > .row > .col-md-8 > .card > .card-body:nth-of-type(2) > .col-sm-12.mb-3.mt-4 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 9px 0 !important;
  line-height: 1.55 !important;
}

.qy-cart-view-page > form > .row > .col-md-8 > .card > .card-body:nth-of-type(2) > .col-sm-12.mb-3.mt-4 > span:first-child {
  display: inline-block !important;
  width: 92px !important;
  color: #8b93a1 !important;
}

.qy-cart-view-page .remarksInput {
  min-height: 40px !important;
  height: 40px !important;
}

.qy-cart-view-page p.mt-5 {
  margin-top: 28px !important;
  margin-bottom: 12px !important;
  color: #111827 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

.qy-cart-view-page .checkDiv {
  margin-bottom: 14px !important;
  padding: 0 !important;
}

.qy-cart-view-page .checkboxDiv {
  min-height: 42px !important;
  padding: 9px 12px !important;
  border: 1px solid #dfe5ed !important;
  background: #fff !important;
  box-shadow: none !important;
}

.qy-cart-view-page .addfunds {
  padding-right: 6px !important;
  padding-left: 6px !important;
}

.qy-cart-view-page .addfunds-payment {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 58px !important;
  padding: 10px 14px !important;
  border: 1px solid #dfe5ed !important;
  background: #fff !important;
  box-shadow: none !important;
}

.qy-cart-view-page .addfunds-payment.active,
.qy-cart-view-page .addfunds-payment:hover {
  border-color: #1263ff !important;
  background: #f7faff !important;
  box-shadow: none !important;
}

.qy-cart-view-page .addfunds-payment img {
  max-width: 132px !important;
  max-height: 34px !important;
  object-fit: contain !important;
}

.qy-cart-view-page #promo .form-control,
.qy-cart-view-page #promo .btn {
  min-height: 40px !important;
  height: 40px !important;
}

.qy-cart-view-page #promo .btn.btn-primary,
.qy-cart-view-page .qy-viewcart-checkout .btn.btn-primary,
.qy-cart-view-page .mobile-bottom-total .btn.btn-primary,
.qy-cart-view-page .submit-btn {
  border-color: #1263ff !important;
  background: #1263ff !important;
  color: #fff !important;
  box-shadow: none !important;
}

.qy-cart-view-page #promo .btn.btn-primary *,
.qy-cart-view-page .qy-viewcart-checkout .btn.btn-primary *,
.qy-cart-view-page .mobile-bottom-total .btn.btn-primary *,
.qy-cart-view-page .submit-btn * {
  color: #fff !important;
}

.qy-cart-view-page .qy-viewcart-summary-card {
  position: sticky !important;
  top: 66px !important;
  overflow: visible !important;
  border: 1px solid #dfe5ed !important;
  background: #fff !important;
  box-shadow: none !important;
}

.qy-cart-view-page .qy-viewcart-summary-body {
  padding: 0 !important;
}

.qy-cart-view-page .qy-viewcart-summary-head {
  display: flex !important;
  align-items: center !important;
  min-height: 52px !important;
  padding: 0 16px !important;
}

.qy-cart-view-page .qy-viewcart-summary-title,
.qy-cart-view-page .qy-viewcart-summary-title h4 {
  margin: 0 !important;
}

.qy-cart-view-page .qy-viewcart-summary-title h4 {
  color: #111827 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
}

.qy-cart-view-page .qy-viewcart-summary-divider {
  margin: 0 !important;
  border-top: 1px solid #e8ecf1 !important;
}

.qy-cart-view-page .qy-viewcart-products {
  max-height: none !important;
  overflow: visible !important;
  padding: 0 14px !important;
}

.qy-cart-view-page .qy-viewcart-product {
  margin: 14px 0 !important;
  padding: 14px !important;
  border: 1px solid #e3e8ef !important;
  background: #fff !important;
}

.qy-cart-view-page .qy-viewcart-product-main {
  margin: 0 !important;
  font-style: normal !important;
}

.qy-cart-view-page .qy-viewcart-product-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 9px 12px !important;
  align-items: center !important;
  margin-bottom: 10px !important;
}

.qy-cart-view-page .qy-viewcart-product-name-wrap {
  grid-column: 1 / -1 !important;
  min-width: 0 !important;
}

.qy-cart-view-page .qy-viewcart-product-name {
  display: block !important;
  color: #111827 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  overflow-wrap: anywhere !important;
}

.qy-cart-view-page .qy-viewcart-qty {
  display: flex !important;
  grid-column: 1 !important;
  align-items: center !important;
  gap: 6px !important;
  min-width: 0 !important;
}

.qy-cart-view-page .qy-viewcart-qty .number {
  width: 70px !important;
  min-height: 32px !important;
  height: 32px !important;
  padding: 3px 7px !important;
  border: 1px solid #d8dee8 !important;
  font-size: 12px !important;
}

.qy-cart-view-page .qy-viewcart-qty .btn {
  min-height: 32px !important;
  height: 32px !important;
  padding: 0 12px !important;
  border: 1px solid #d8dee8 !important;
  background: #f5f6f8 !important;
  color: #374151 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

.qy-cart-view-page .qy-viewcart-product-actions {
  display: flex !important;
  grid-column: 2 !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 7px !important;
  padding: 0 !important;
}

.qy-cart-view-page .qy-viewcart-product-actions a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  color: #1263ff !important;
  text-decoration: none !important;
}

.qy-cart-view-page .qy-viewcart-goods-info {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.qy-cart-view-page .qy-viewcart-goods-info .qy-viewcart-instance {
  display: grid !important;
  grid-template-columns: 82px minmax(0, 1fr) !important;
  gap: 8px !important;
  align-items: start !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 5px 0 !important;
  text-indent: 0 !important;
  color: #374151 !important;
  line-height: 1.55 !important;
}

.qy-cart-view-page .qy-viewcart-goods-info .qy-viewcart-instance font {
  display: none !important;
}

.qy-cart-view-page .qy-viewcart-instance-label,
.qy-cart-view-page .qy-viewcart-spec-label {
  min-width: 0 !important;
  color: #8b93a1 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.6 !important;
  text-align: left !important;
}

.qy-cart-view-page .qy-viewcart-instance-value,
.qy-cart-view-page .qy-viewcart-spec-value {
  min-width: 0 !important;
  margin: 0 !important;
  color: #1f2937 !important;
  font-family: inherit !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;
  text-align: left !important;
  overflow-wrap: anywhere !important;
}

.qy-cart-view-page .qy-viewcart-instance-value {
  color: #1263ff !important;
  font-weight: 700 !important;
}

.qy-cart-view-page .qy-viewcart-spec-row,
.qy-cart-view-page .qy-viewcart-option-row,
.qy-cart-view-page .goods_info .info {
  display: grid !important;
  grid-template-columns: 82px minmax(0, 1fr) !important;
  gap: 8px !important;
  align-items: start !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 5px 0 !important;
  color: #1f2937 !important;
  font-size: 12.5px !important;
  line-height: 1.6 !important;
  text-indent: 0 !important;
}

.qy-cart-view-page .qy-viewcart-price-row,
.qy-cart-view-page .qy-viewcart-subtotal {
  align-items: baseline !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 6px 0 !important;
  font-size: 12.5px !important;
}

.qy-cart-view-page .qy-viewcart-subtotal {
  margin-top: 8px !important;
  padding-top: 12px !important;
  border-top: 1px solid #e8ecf1 !important;
}

.qy-cart-view-page .qy-viewcart-subtotal strong {
  color: #111827 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
}

.qy-cart-view-page .qy-viewcart-total-divider {
  margin: 0 !important;
  border: 0 !important;
  border-top: 1px solid #e8ecf1 !important;
}

.qy-cart-view-page .qy-viewcart-total-row {
  align-items: center !important;
  margin: 0 !important;
  padding: 14px 16px 8px !important;
  font-size: 13px !important;
}

.qy-cart-view-page .qy-viewcart-checkout {
  padding: 0 16px 16px !important;
}

.qy-cart-view-page .qy-viewcart-checkout .submit-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 42px !important;
  height: 42px !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

@media (min-width: 1200px) {
  .qy-cart-view-page > form > .row {
    display: flex !important;
    flex-wrap: nowrap !important;
  }

  .qy-cart-view-page > form > .row > .col-md-8 {
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: none !important;
  }

  .qy-cart-view-page > form > .row > .qy-viewcart-summary-col {
    flex: 0 0 410px !important;
    width: 410px !important;
    max-width: 410px !important;
  }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .qy-cart-view-page > form > .row > .qy-viewcart-summary-col {
    flex: 0 0 360px !important;
    width: 360px !important;
    max-width: 360px !important;
  }
}

@media (max-width: 767.98px) {
  .qy-cart-view-page {
    width: calc(100% - 16px) !important;
    padding: 66px 0 calc(92px + env(safe-area-inset-bottom)) !important;
  }

  .qy-cart-view-page > form > .row {
    display: block !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .qy-cart-view-page > form > .row > [class*="col-"] {
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .qy-cart-view-page > form > .row > .col-md-8 > .card > .card-body:first-child {
    padding: 15px 14px !important;
  }

  .qy-cart-view-page > form > .row > .col-md-8 > .card > .card-body:nth-of-type(2) {
    padding: 16px 14px !important;
  }

  .qy-cart-view-page > form > .row > .col-md-8 > .card > .card-body:nth-of-type(2) > .col-sm-12.mb-3.mt-4 {
    padding: 8px 0 !important;
  }

  .qy-cart-view-page > form > .row > .col-md-8 > .card > .card-body:nth-of-type(2) > .col-sm-12.mb-3.mt-4 > span:first-child {
    width: 72px !important;
  }

  .qy-cart-view-page p.mt-5 {
    margin-top: 24px !important;
  }

  .qy-cart-view-page .col-sm-6:has(.remarksInput) {
    max-width: 100% !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .qy-cart-view-page .addfunds {
    width: 50% !important;
    max-width: 50% !important;
    padding-right: 5px !important;
    padding-left: 5px !important;
  }

  .qy-cart-view-page .addfunds-payment {
    min-height: 54px !important;
    padding: 8px 10px !important;
  }

  .qy-cart-view-page .qy-viewcart-summary-col {
    margin-top: 14px !important;
  }

  .qy-cart-view-page .qy-viewcart-summary-card {
    position: static !important;
    top: auto !important;
  }

  .qy-cart-view-page .qy-viewcart-products {
    padding: 0 12px !important;
  }

  .qy-cart-view-page .qy-viewcart-product {
    margin: 12px 0 !important;
    padding: 12px !important;
  }

  .qy-cart-view-page .qy-viewcart-product-head {
    gap: 8px 10px !important;
  }

  .qy-cart-view-page .qy-viewcart-product-name {
    font-size: 14px !important;
  }

  .qy-cart-view-page .qy-viewcart-goods-info .qy-viewcart-instance,
  .qy-cart-view-page .qy-viewcart-spec-row,
  .qy-cart-view-page .qy-viewcart-option-row,
  .qy-cart-view-page .goods_info .info {
    grid-template-columns: 76px minmax(0, 1fr) !important;
    gap: 7px !important;
    padding: 4px 0 !important;
  }

  .qy-cart-view-page #promo .btn.btn-primary {
    min-width: 64px !important;
    padding-right: 12px !important;
    padding-left: 12px !important;
  }

  .qy-cart-view-page .mobile-bottom-total {
    z-index: 980 !important;
    width: 100% !important;
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom)) !important;
    border-top: 1px solid #e1e6ed !important;
    background: #fff !important;
    box-shadow: 0 -6px 18px rgba(15, 23, 42, .08) !important;
  }

  .qy-cart-view-page .mobile-bottom-total .btn.btn-primary,
  .qy-cart-view-page .mobile-bottom-total .submit-btn {
    color: #fff !important;
  }
}

@media (max-width: 380px) {
  .qy-cart-view-page .qy-viewcart-goods-info .qy-viewcart-instance,
  .qy-cart-view-page .qy-viewcart-spec-row,
  .qy-cart-view-page .qy-viewcart-option-row,
  .qy-cart-view-page .goods_info .info {
    grid-template-columns: 68px minmax(0, 1fr) !important;
  }
}

/* =========================================================
   luansuicart v1.0.70 - viewcart summary visual refinement
   CSS-only: remove nested-card feel, clarify hierarchy,
   compact desktop/mobile order summary.
   ========================================================= */
.qy-cart-view-page .qy-viewcart-summary-card {
  border: 1px solid #dfe5ed !important;
  background: #fff !important;
  box-shadow: none !important;
}

.qy-cart-view-page .qy-viewcart-summary-head {
  min-height: 50px !important;
  padding: 0 18px !important;
  background: #fff !important;
}

.qy-cart-view-page .qy-viewcart-summary-title h4 {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #111827 !important;
}

.qy-cart-view-page .qy-viewcart-summary-divider {
  border-top-color: #e6eaf0 !important;
}

.qy-cart-view-page .qy-viewcart-products {
  padding: 0 !important;
  background: #fff !important;
}

.qy-cart-view-page .qy-viewcart-product {
  margin: 0 !important;
  padding: 16px 18px 14px !important;
  border: 0 !important;
  border-bottom: 1px solid #e8ecf1 !important;
  background: #fff !important;
}

.qy-cart-view-page .qy-viewcart-product:last-child {
  border-bottom: 0 !important;
}

.qy-cart-view-page .qy-viewcart-product-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  gap: 8px !important;
  align-items: center !important;
  margin-bottom: 12px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid #edf0f4 !important;
}

.qy-cart-view-page .qy-viewcart-product-name-wrap {
  grid-column: 1 !important;
  min-width: 0 !important;
}

.qy-cart-view-page .qy-viewcart-product-name {
  color: #111827 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
}

.qy-cart-view-page .qy-viewcart-qty {
  grid-column: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 0 !important;
  min-width: 0 !important;
}

.qy-cart-view-page .qy-viewcart-qty .number {
  width: 52px !important;
  height: 30px !important;
  min-height: 30px !important;
  padding: 2px 6px !important;
  border: 1px solid #dce2ea !important;
  border-right: 0 !important;
  background: #fff !important;
  color: #111827 !important;
  font-size: 12px !important;
  text-align: center !important;
}

.qy-cart-view-page .qy-viewcart-qty .btn {
  height: 30px !important;
  min-height: 30px !important;
  padding: 0 10px !important;
  border: 1px solid #dce2ea !important;
  background: #f7f8fa !important;
  color: #374151 !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
}

.qy-cart-view-page .qy-viewcart-product-actions {
  grid-column: 3 !important;
  display: inline-flex !important;
  gap: 5px !important;
}

.qy-cart-view-page .qy-viewcart-product-actions a {
  width: 30px !important;
  height: 30px !important;
  border: 1px solid #e1e6ed !important;
  background: #fff !important;
  color: #6b7280 !important;
  font-size: 12px !important;
}

.qy-cart-view-page .qy-viewcart-product-actions a:hover {
  border-color: #1263ff !important;
  color: #1263ff !important;
  background: #f8fbff !important;
}

.qy-cart-view-page .qy-viewcart-goods-info {
  display: block !important;
  margin: 0 !important;
  padding: 9px 12px !important;
  background: #f7f9fc !important;
}

.qy-cart-view-page .qy-viewcart-goods-info .qy-viewcart-instance,
.qy-cart-view-page .qy-viewcart-spec-row,
.qy-cart-view-page .qy-viewcart-option-row,
.qy-cart-view-page .goods_info .info {
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 28px !important;
  margin: 0 !important;
  padding: 4px 0 !important;
  border: 0 !important;
  background: transparent !important;
  line-height: 1.45 !important;
  text-indent: 0 !important;
}

.qy-cart-view-page .qy-viewcart-goods-info .qy-viewcart-instance {
  margin-bottom: 3px !important;
  padding-bottom: 7px !important;
  border-bottom: 1px solid #e7ebf0 !important;
}

.qy-cart-view-page .qy-viewcart-instance-label,
.qy-cart-view-page .qy-viewcart-spec-label {
  color: #8b93a1 !important;
  font-size: 11.5px !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
}

.qy-cart-view-page .qy-viewcart-instance-value,
.qy-cart-view-page .qy-viewcart-spec-value {
  color: #202938 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
  overflow-wrap: anywhere !important;
}

.qy-cart-view-page .qy-viewcart-instance-value {
  color: #1263ff !important;
  font-weight: 700 !important;
}

.qy-cart-view-page .qy-viewcart-option-row {
  margin-top: 4px !important;
  padding: 5px 12px !important;
  background: #f7f9fc !important;
}

.qy-cart-view-page .qy-viewcart-subtotal {
  min-height: 48px !important;
  margin: 12px 0 0 !important;
  padding: 11px 0 0 !important;
  border-top: 1px solid #e8ecf1 !important;
  font-size: 12px !important;
}

.qy-cart-view-page .qy-viewcart-subtotal .qy-viewcart-price-label {
  color: #6b7280 !important;
}

.qy-cart-view-page .qy-viewcart-subtotal strong {
  color: #111827 !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  letter-spacing: -.2px !important;
}

.qy-cart-view-page .qy-viewcart-total-divider {
  display: none !important;
}

.qy-cart-view-page .qy-viewcart-total-row {
  min-height: 58px !important;
  padding: 15px 18px 8px !important;
  border-top: 8px solid #f5f7fa !important;
  background: #fff !important;
  font-size: 13px !important;
}

.qy-cart-view-page .qy-viewcart-total-row .text-primary,
.qy-cart-view-page .qy-viewcart-total-row .price-num {
  color: #1263ff !important;
  font-size: 20px !important;
  font-weight: 700 !important;
}

.qy-cart-view-page .qy-viewcart-checkout {
  padding: 0 18px 18px !important;
  background: #fff !important;
}

.qy-cart-view-page .qy-viewcart-checkout .payDiv {
  margin: 0 !important;
}

.qy-cart-view-page .qy-viewcart-checkout .custom-control {
  margin: 0 0 10px !important;
  padding-top: 2px !important;
  font-size: 12px !important;
}

.qy-cart-view-page .qy-viewcart-checkout .submit-btn {
  height: 44px !important;
  min-height: 44px !important;
  border: 0 !important;
  background: #1263ff !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

.qy-cart-view-page .qy-viewcart-checkout .submit-btn,
.qy-cart-view-page .qy-viewcart-checkout .submit-btn *,
.qy-cart-view-page #promo .btn.btn-primary,
.qy-cart-view-page #promo .btn.btn-primary * {
  color: #fff !important;
}

@media (max-width: 767.98px) {
  .qy-cart-view-page .qy-viewcart-summary-col {
    margin-top: 16px !important;
  }

  .qy-cart-view-page .qy-viewcart-summary-head {
    min-height: 48px !important;
    padding: 0 14px !important;
  }

  .qy-cart-view-page .qy-viewcart-product {
    padding: 14px !important;
  }

  .qy-cart-view-page .qy-viewcart-product-head {
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 9px 8px !important;
    margin-bottom: 10px !important;
    padding-bottom: 10px !important;
  }

  .qy-cart-view-page .qy-viewcart-product-name-wrap {
    grid-column: 1 / -1 !important;
  }

  .qy-cart-view-page .qy-viewcart-qty {
    grid-column: 1 !important;
    justify-self: start !important;
  }

  .qy-cart-view-page .qy-viewcart-product-actions {
    grid-column: 2 !important;
    justify-self: end !important;
  }

  .qy-cart-view-page .qy-viewcart-qty .number {
    width: 58px !important;
  }

  .qy-cart-view-page .qy-viewcart-goods-info {
    padding: 8px 10px !important;
  }

  .qy-cart-view-page .qy-viewcart-goods-info .qy-viewcart-instance,
  .qy-cart-view-page .qy-viewcart-spec-row,
  .qy-cart-view-page .qy-viewcart-option-row,
  .qy-cart-view-page .goods_info .info {
    grid-template-columns: 68px minmax(0, 1fr) !important;
    gap: 8px !important;
    min-height: 27px !important;
    padding: 4px 0 !important;
  }

  .qy-cart-view-page .qy-viewcart-option-row {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }

  .qy-cart-view-page .qy-viewcart-subtotal {
    min-height: 46px !important;
    margin-top: 10px !important;
    padding-top: 10px !important;
  }

  .qy-cart-view-page .qy-viewcart-subtotal strong {
    font-size: 19px !important;
  }

  .qy-cart-view-page .qy-viewcart-total-row {
    padding-right: 14px !important;
    padding-left: 14px !important;
  }

  .qy-cart-view-page .qy-viewcart-checkout {
    padding-right: 14px !important;
    padding-left: 14px !important;
    padding-bottom: 14px !important;
  }
}

@media (max-width: 360px) {
  .qy-cart-view-page .qy-viewcart-goods-info .qy-viewcart-instance,
  .qy-cart-view-page .qy-viewcart-spec-row,
  .qy-cart-view-page .qy-viewcart-option-row,
  .qy-cart-view-page .goods_info .info {
    grid-template-columns: 62px minmax(0, 1fr) !important;
  }
}

/* =========================================================
   luansuicart v1.0.76 - mobile product purchase bar full width
   2026-09-02
   Keep the price area inset, but let the purchase action touch
   the product card's left/right/bottom edges on mobile.
   ========================================================= */
@media (max-width: 767.98px) {
  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-bottom,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-bottom {
    padding: 8px 14px 0 !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card:not(:hover) .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card:hover .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card:not(:hover) .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card:hover .qy-cart-ls-buy {
    width: calc(100% + 28px) !important;
    margin: 0 -14px !important;
    align-self: stretch !important;
  }
}

/* =========================================================
   luansuicart v1.0.77 - desktop product purchase bar full width
   2026-09-02
   Keep price content inset while making the purchase action a true
   edge-to-edge footer of every desktop product card.
   ========================================================= */
@media (min-width: 768px) {
  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card {
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-bottom,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-bottom {
    width: 100% !important;
    box-sizing: border-box !important;
    margin-top: auto !important;
    padding: 6px 20px 0 !important;
  }

  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card:not(:hover) .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card:hover .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card:not(:hover) .qy-cart-ls-buy,
  html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card:hover .qy-cart-ls-buy {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 -20px !important;
    justify-self: stretch !important;
    align-self: stretch !important;
    box-sizing: border-box !important;
  }
}

/* =========================================================
   luansuicart v1.0.78 - product card stock badge
   Synced products read products.qty and display it at top-right.
   ========================================================= */
html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card-top,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card-top {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
}

html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card-top h5,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card-top h5 {
  min-width: 0 !important;
  margin-right: 10px !important;
}

html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card-top .qy-cart-ls-stock,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card-top .qy-cart-ls-stock {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 68px !important;
  min-height: 22px !important;
  margin: 0 !important;
  padding: 3px 8px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 16px !important;
  white-space: nowrap !important;
  border: 1px solid transparent !important;
  box-sizing: border-box !important;
}

html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card-top .stock-info,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card-top .stock-info {
  visibility: visible !important;
  opacity: 1 !important;
}

html body.qy-cart-mode .qy-cart-ls-stock.stock-high {
  color: #00875a !important;
  background: #e8fff6 !important;
  border-color: #b8ebd8 !important;
}

html body.qy-cart-mode .qy-cart-ls-stock.stock-medium {
  color: #b85c00 !important;
  background: #fff7e6 !important;
  border-color: #f2d5a4 !important;
}

html body.qy-cart-mode .qy-cart-ls-stock.stock-low {
  color: #cf1322 !important;
  background: #fff1f0 !important;
  border-color: #f2b8bc !important;
}

/* v1009: product card background is part of the main stylesheet */
html body.qy-cart-mode .qy-cart-page .qy-cart-ls-card.qy-cart-ls-card::before,
html body.qy-cart-mode .qy-cart-page .qy-cart-ls-card.qy-cart-ls-card:hover::before {
  content: "" !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  inset: 0 0 auto 0 !important;
  width: 100% !important;
  height: 140px !important;
  background: url("https://static.luansui.com/image/webp/cart.webp") no-repeat right top / auto 100% !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

html body.qy-cart-mode .qy-cart-page .qy-cart-ls-card.qy-cart-ls-card::after,
html body.qy-cart-mode .qy-cart-page .qy-cart-ls-card.qy-cart-ls-card:hover::after {
  content: "" !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  inset: 0 0 auto 0 !important;
  width: 100% !important;
  height: 140px !important;
  background: linear-gradient(90deg, rgba(255,255,255,.45), rgba(255,255,255,.15) 50%, transparent) !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

html body.qy-cart-mode .qy-cart-page .qy-cart-ls-card.qy-cart-ls-card > * {
  position: relative !important;
  z-index: 1 !important;
}

/* v1010: allow the card artwork to remain visible behind product parameters */
html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card-top,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card-top,
html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-spec.qy-cart-product-desc,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-spec.qy-cart-product-desc,
html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-spec.qy-cart-product-desc > pre,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-spec.qy-cart-product-desc > pre,
html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-spec table,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-spec table,
html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-spec tbody,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-spec tbody,
html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-spec tr,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-spec tr,
html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-spec td,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-spec td {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-buy.qy-cart-ls-buy-disabled,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-buy.qy-cart-ls-buy-disabled,
html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-buy.qy-cart-ls-buy-disabled:hover,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-buy.qy-cart-ls-buy-disabled:hover {
  color: #98a2b3 !important;
  background: #eaecf0 !important;
  border-color: #eaecf0 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
  box-shadow: none !important;
  transform: none !important;
}

/* Final override for out-of-stock cards: the generic purchase-button theme
 * may set a later background/gradient, so explicitly clear every visual layer. */
html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card .qy-cart-ls-bottom .qy-cart-ls-buy.qy-cart-ls-buy-disabled,
html body.qy-cart-mode .qy-cart-product-page .qy-cart-ls-card .qy-cart-ls-bottom .qy-cart-ls-buy.qy-cart-ls-buy-disabled:hover,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card .qy-cart-ls-bottom .qy-cart-ls-buy.qy-cart-ls-buy-disabled,
html body.qy-cart-mode .qy-cart-new-product-page .qy-cart-ls-card .qy-cart-ls-bottom .qy-cart-ls-buy.qy-cart-ls-buy-disabled:hover {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #98a2b3 !important;
  background: #eaecf0 !important;
  background-color: #eaecf0 !important;
  background-image: none !important;
  border: 1px solid #eaecf0 !important;
  opacity: 1 !important;
  box-shadow: none !important;
  text-shadow: none !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
  transform: none !important;
  filter: none !important;
}
