/* 配置页 / 购物车结算页：全屏适配（宽+高） */
.tf-cart-full {
  background: #f5f6f8;
  width: 100%;
  box-sizing: border-box;
  padding: 0 16px 16px;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.tf-cart-full .row,
.tf-cart-full > .row,
.tf-cart-full .row.zd-mt {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box;
}

/* 顶栏占位后铺满剩余视口高度 */
.tf-cart-full .row.zd-mt {
  margin-top: 0 !important;
  flex: 1 1 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  min-height: calc(100vh - 90px);
  padding-bottom: 0;
}

.tf-cart-full .card {
  border: 1px solid #e8e8e8;
  box-shadow: none;
  margin-bottom: 12px;
}

.tf-cart-full .col-xl-9,
.tf-cart-full .col-xl-3 {
  display: flex;
  flex-direction: column;
}

/* 左侧配置主卡片、右侧汇总卡片向下拉满 */
.tf-cart-full .col-xl-9 > .card:last-child,
.tf-cart-full .col-xl-3 > .card:first-child {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  margin-bottom: 12px;
}

.tf-cart-full .col-xl-9 > .card:last-child > .card-body,
.tf-cart-full .col-xl-3 > .card:first-child > .card-body {
  flex: 1 1 auto;
}

.tf-cart-full .col-xl-3 > .card.jgao {
  margin-bottom: 0;
}

/* 购物车整页单列同样拉满 */
.tf-cart-full .col-md-12 {
  display: flex;
  flex-direction: column;
}

.tf-cart-full .col-md-12 > .card {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

.tf-cart-full .col-md-12 > .card > .card-body {
  flex: 1 1 auto;
}

@media (min-width: 1200px) {
  .tf-cart-full .col-xl-3 {
    position: sticky;
    top: 80px;
    max-height: calc(100vh - 96px);
    overflow: auto;
  }
}

@media (max-width: 1199px) {
  .tf-cart-full .col-xl-9,
  .tf-cart-full .col-xl-3 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .tf-cart-full .row.zd-mt {
    min-height: 0;
  }

  .tf-cart-full .col-xl-3 {
    position: static;
    max-height: none;
    overflow: visible;
  }
}

@media (max-width: 560px) {
  .tf-cart-full {
    padding-left: 10px;
    padding-right: 10px;
  }
}
