:root{
  --bg:#f6f7f8;--card:#fff;--text:#1f2329;--muted:#8a8f98;--line:#eceef1;
  --primary:#111827;--danger:#e5484d;--radius:18px;--shadow:0 8px 28px rgba(17,24,39,.06);
  --bottom-nav-h:66px
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
body{min-height:100vh;padding-bottom:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom))}
a{text-decoration:none;color:inherit}img{display:block;max-width:100%}
.container{width:min(1180px,100%);margin:0 auto;padding:0 18px}
.topbar{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.topbar-inner{height:64px;display:flex;align-items:center;justify-content:center}
.brand{font-size:20px;font-weight:800}
.hero{margin:20px 0;background:linear-gradient(135deg,#17191d,#363a42);color:#fff;border-radius:26px;padding:42px;min-height:250px;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:var(--shadow)}
.hero h1{margin:0;font-size:38px;letter-spacing:-.5px}.hero p{margin:12px 0 0;color:rgba(255,255,255,.72);font-size:16px}
.catalog-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:18px;align-items:start;padding-bottom:24px}
.category-sidebar{position:sticky;top:82px;background:#fff;border-radius:20px;padding:10px;box-shadow:var(--shadow);max-height:calc(100vh - 170px);overflow-y:auto;scrollbar-width:none}
.category-sidebar::-webkit-scrollbar{display:none}
.category-sidebar-title{padding:10px 12px 8px;color:var(--muted);font-size:13px;font-weight:700}
.category-item{display:flex;align-items:center;min-height:46px;padding:10px 13px;margin:2px 0;border-radius:13px;font-size:14px;font-weight:650;transition:.16s ease}
.category-item:hover{background:#f3f4f6}.category-item.active{background:#17191d;color:#fff}
.catalog-main{min-width:0}.section-head{display:flex;align-items:center;justify-content:space-between;margin:3px 0 14px}.section-head h2{margin:0;font-size:24px}.muted{color:var(--muted)}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-bottom:20px}
.product-card{background:var(--card);border-radius:20px;overflow:hidden;box-shadow:var(--shadow);transition:transform .18s ease}.product-card:hover{transform:translateY(-2px)}
.product-image{aspect-ratio:1/1;background:#eceff2;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover}.placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#a1a6ad;background:#eceff2;font-size:14px}
.product-body{padding:16px}.product-name{font-weight:650;line-height:1.45;min-height:42px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.price-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px}.price{color:var(--danger);font-size:22px;font-weight:800}.price-unit{font-size:.52em;font-weight:700;margin-left:3px;color:inherit}.original{color:#a0a5ad;text-decoration:line-through;font-size:13px;margin-left:6px}.round-btn{border:0;width:36px;height:36px;border-radius:50%;background:#17191d;color:#fff;font-size:24px;line-height:1;cursor:pointer}
.detail-wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:26px;padding:24px 0 40px}.detail-image{background:#eceff2;border-radius:24px;overflow:hidden;aspect-ratio:1/1}.detail-image img{width:100%;height:100%;object-fit:cover}.detail-panel{background:#fff;border-radius:24px;padding:28px;box-shadow:var(--shadow);align-self:start}.detail-panel h1{margin:0 0 18px;font-size:30px;line-height:1.35}.detail-price{font-size:34px;color:var(--danger);font-weight:800}.detail-price .price-unit{font-size:15px}.stock{margin-top:16px;color:var(--muted)}.description{margin-top:24px;padding-top:24px;border-top:1px solid var(--line);white-space:pre-wrap;line-height:1.8;color:#555}.action-row{margin-top:28px;display:flex;gap:12px}
.btn{border:0;border-radius:999px;padding:14px 22px;font-size:16px;font-weight:700;cursor:pointer}.btn-primary{background:#17191d;color:#fff}.btn-light{background:#f0f2f4;color:#222}.btn-danger{background:#fff0f0;color:#c33}.btn:disabled{opacity:.55;cursor:not-allowed}
.page-title{font-size:30px;margin:28px 0 18px}.card{background:#fff;border-radius:20px;padding:20px;box-shadow:var(--shadow)}
.cart-list{display:grid;gap:14px;padding-bottom:150px}.cart-item{display:grid;grid-template-columns:120px 1fr auto;gap:18px;align-items:center;background:#fff;border-radius:18px;padding:16px;box-shadow:var(--shadow)}.cart-thumb{width:120px;height:120px;border-radius:14px;overflow:hidden;background:#eceff2}.cart-thumb img{width:100%;height:100%;object-fit:cover}.cart-main{min-width:0}.cart-main h3{margin:0 0 8px;font-size:17px}.qty{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-top:14px}.qty button{width:36px;height:34px;border:0;background:#fff;font-size:20px}.qty span{width:48px;text-align:center;line-height:34px}.cart-side{text-align:right}.cart-side .line-total{font-weight:800;color:var(--danger);margin-bottom:16px}.text-btn{border:0;background:none;color:var(--muted);cursor:pointer}
.checkout-bar{position:fixed;left:0;right:0;bottom:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom));z-index:35;background:rgba(255,255,255,.96);border-top:1px solid var(--line);backdrop-filter:blur(12px)}.checkout-inner{width:min(1180px,100%);margin:0 auto;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px}.checkout-total strong{font-size:28px;color:var(--danger)}
.empty{padding:90px 20px;text-align:center;color:var(--muted)}.checkout-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;padding-bottom:50px}.form-card h2,.summary-card h2{margin:0 0 16px;font-size:20px}.field{margin-bottom:16px}.field label{display:block;margin-bottom:7px;font-size:14px;color:#555}.field input,.field textarea,.field select{width:100%;border:1px solid #dfe2e6;border-radius:12px;padding:12px 13px;font:inherit;background:#fff}.field textarea{min-height:96px;resize:vertical}.summary-items{display:grid;gap:12px}.summary-item{display:grid;grid-template-columns:58px 1fr auto;gap:12px;align-items:center}.summary-thumb{width:58px;height:58px;border-radius:10px;background:#eceff2;overflow:hidden}.summary-thumb img{width:100%;height:100%;object-fit:cover}.summary-bottom{border-top:1px solid var(--line);margin-top:18px;padding-top:16px;display:flex;justify-content:space-between;align-items:center}
.success{max-width:620px;margin:70px auto;text-align:center}.success-mark{width:88px;height:88px;border-radius:50%;margin:0 auto 22px;background:#17191d;color:#fff;font-size:46px;display:flex;align-items:center;justify-content:center}.success h1{margin:0}.order-no{margin-top:26px;background:#fff;border-radius:16px;padding:18px;word-break:break-all}
.notice{padding:12px 14px;border-radius:12px;margin-bottom:16px}.notice-ok{background:#ecfdf3;color:#067647}.notice-error{background:#fff1f1;color:#b42318}
.footer{padding:30px 0 36px;text-align:center;color:#a0a5ad;font-size:13px}.footer-note{margin-top:8px;line-height:1.6}
.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:50;height:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(2,1fr);background:rgba(255,255,255,.97);border-top:1px solid var(--line);backdrop-filter:blur(14px);box-shadow:0 -8px 28px rgba(17,24,39,.05)}
.bottom-nav-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#8a8f98;font-size:12px;font-weight:650}.bottom-nav-item.active{color:#111827}.bottom-nav-icon{font-size:22px;line-height:1}.bottom-nav-badge{display:none;position:absolute;top:7px;left:calc(50% + 9px);min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--danger);color:#fff;font-size:11px;line-height:18px;text-align:center}
.product-card .price-unit{font-size:11px}
@media(max-width:900px){.catalog-layout{grid-template-columns:140px minmax(0,1fr)}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-wrap,.checkout-layout{grid-template-columns:1fr}}
@media(max-width:640px){
  :root{--bottom-nav-h:62px}.container{padding:0 12px}.topbar-inner{height:56px}.brand{font-size:19px}.hero{min-height:170px;margin:12px 0 14px;padding:24px 20px;border-radius:20px}.hero h1{font-size:28px}.hero p{font-size:13px;line-height:1.6}
  .catalog-layout{grid-template-columns:84px minmax(0,1fr);gap:10px;margin-left:-2px;margin-right:-2px}.category-sidebar{top:68px;border-radius:15px;padding:6px;max-height:calc(100vh - 145px)}.category-sidebar-title{padding:8px 6px 6px;font-size:11px;text-align:center}.category-item{justify-content:center;min-height:44px;padding:8px 5px;border-radius:11px;font-size:13px;text-align:center;word-break:break-all}
  .section-head{margin:1px 0 10px}.section-head h2{font-size:20px}.section-head .muted{font-size:12px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.product-card{border-radius:14px}.product-body{padding:10px}.product-name{font-size:13px;min-height:38px}.price-row{margin-top:9px}.price{font-size:17px}.original{display:none}.round-btn{width:30px;height:30px;font-size:21px}
  .detail-wrap{padding-top:14px;gap:14px}.detail-image{border-radius:18px}.detail-panel{border-radius:18px;padding:20px}.detail-panel h1{font-size:24px}.action-row{flex-wrap:wrap}.cart-item{grid-template-columns:88px 1fr;gap:12px}.cart-thumb{width:88px;height:88px}.cart-side{grid-column:2;text-align:left;display:flex;justify-content:space-between;align-items:center}.page-title{font-size:26px}.checkout-inner{padding:12px}.checkout-inner .btn{padding:12px 17px}.checkout-total strong{font-size:22px}.footer{padding-bottom:26px}
}
@media(max-width:380px){.catalog-layout{grid-template-columns:78px minmax(0,1fr);gap:8px}.product-grid{grid-template-columns:1fr}.product-image{aspect-ratio:1.22/1}.category-item{font-size:12px}}

/* BEGIN HORIZONTAL_PRODUCT_LIST */

.product-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  padding-bottom:20px
}

.product-card{
  display:grid;
  grid-template-columns:110px minmax(0,1fr);
  min-height:110px;
  background:#fff;
  border-radius:16px;
  overflow:hidden;
  box-shadow:var(--shadow);
  transform:none!important
}

.product-thumb-button{
  width:110px;
  height:110px;
  padding:0;
  border:0;
  background:#eceff2;
  overflow:hidden;
  cursor:zoom-in;
  display:block
}

.product-thumb-placeholder{
  cursor:default
}

.product-card .product-image{
  width:100%;
  height:100%;
  aspect-ratio:auto;
  background:#eceff2;
  overflow:hidden
}

.product-card .product-image img{
  width:100%;
  height:100%;
  object-fit:cover
}

.product-card .product-body{
  min-width:0;
  padding:13px 14px;
  display:flex;
  flex-direction:column;
  justify-content:space-between
}

.product-card .product-name{
  min-height:0;
  font-size:15px;
  font-weight:700;
  line-height:1.45;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden
}

.product-card .price-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:8px;
  margin-top:12px
}

.product-price-box{
  min-width:0;
  white-space:nowrap
}

.product-card .price{
  font-size:19px
}

.product-card .original{
  font-size:11px;
  margin-left:4px
}

.home-qty{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  border:1px solid #e4e7eb;
  border-radius:999px;
  background:#fff;
  overflow:hidden;
  height:34px
}

.home-qty-btn{
  width:34px;
  height:34px;
  border:0;
  background:#fff;
  color:#111827;
  font-size:20px;
  line-height:1;
  cursor:pointer;
  padding:0
}

.home-qty-btn:active{
  background:#f1f3f5
}

.home-qty-btn:disabled{
  color:#c6c9cf;
  background:#fafafa;
  cursor:not-allowed
}

.home-qty-number{
  min-width:28px;
  padding:0 3px;
  text-align:center;
  font-size:14px;
  font-weight:700;
  color:#20242a;
  line-height:34px
}

.image-lightbox{
  position:fixed;
  inset:0;
  z-index:10000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(0,0,0,.86)
}

.image-lightbox.open{
  display:flex
}

.image-lightbox-img{
  max-width:min(94vw,980px);
  max-height:88vh;
  width:auto;
  height:auto;
  object-fit:contain;
  border-radius:10px;
  box-shadow:0 18px 60px rgba(0,0,0,.35)
}

.image-lightbox-close{
  position:fixed;
  top:18px;
  right:18px;
  width:42px;
  height:42px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.16);
  color:#fff;
  font-size:30px;
  line-height:42px;
  cursor:pointer
}

body.lightbox-open{
  overflow:hidden
}

@media(max-width:640px){

  .product-grid{
    grid-template-columns:1fr;
    gap:9px
  }

  .product-card{
    grid-template-columns:86px minmax(0,1fr);
    min-height:86px;
    border-radius:13px
  }

  .product-thumb-button{
    width:86px;
    height:86px
  }

  .product-card .product-body{
    padding:9px 10px
  }

  .product-card .product-name{
    font-size:14px;
    line-height:1.35
  }

  .product-card .price-row{
    margin-top:7px;
    gap:6px
  }

  .product-card .price{
    font-size:16px
  }

  .product-card .original{
    display:none
  }

  .home-qty{
    height:30px
  }

  .home-qty-btn{
    width:29px;
    height:30px;
    font-size:18px
  }

  .home-qty-number{
    min-width:24px;
    font-size:13px;
    line-height:30px
  }

  .image-lightbox{
    padding:14px
  }

  .image-lightbox-close{
    top:12px;
    right:12px
  }
}

@media(max-width:380px){

  .product-card{
    grid-template-columns:76px minmax(0,1fr);
    min-height:76px
  }

  .product-thumb-button{
    width:76px;
    height:76px
  }

  .product-card .product-body{
    padding:8px
  }

  .product-card .product-name{
    font-size:13px
  }

  .product-card .price{
    font-size:15px
  }

  .home-qty-btn{
    width:27px
  }

  .home-qty-number{
    min-width:22px
  }
}

/* END HORIZONTAL_PRODUCT_LIST */


/* BEGIN NAV_UI_BEAUTIFY */

.bottom-nav{
  height:calc(70px + env(safe-area-inset-bottom));
  background:rgba(255,255,255,.98);
  border-top:1px solid #edf0f3;
  box-shadow:0 -6px 24px rgba(17,24,39,.06);
}

.bottom-nav-item{
  gap:4px;
  color:#9aa1ab;
  font-size:12px;
  font-weight:600;
  transition:color .18s ease;
}

.bottom-nav-item.active{
  color:#111827;
}

.bottom-nav-icon{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:10px;
  color:#9aa1ab;
  transition:
    background .18s ease,
    color .18s ease,
    transform .18s ease;
}

.bottom-nav-icon svg{
  width:22px;
  height:22px;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.bottom-nav-item.active .bottom-nav-icon{
  background:#111827;
  color:#fff;
  transform:translateY(-1px);
}

.bottom-nav-item.active > span:last-child{
  font-weight:700;
}

.bottom-nav-badge{
  top:5px;
  left:calc(50% + 10px);
  min-width:18px;
  height:18px;
  padding:0 5px;
  border:2px solid #fff;
  line-height:14px;
  font-weight:700;
}

@media(max-width:640px){
  :root{
    --bottom-nav-h:70px;
  }

  .bottom-nav-icon{
    width:30px;
    height:30px;
  }

  .bottom-nav-icon svg{
    width:21px;
    height:21px;
  }
}

/* END NAV_UI_BEAUTIFY */


/* BEGIN CATEGORY_5_CHARS */
@media(max-width:640px){

  .catalog-layout{
    grid-template-columns:88px minmax(0,1fr);
    gap:10px;
  }

  .category-sidebar{
    padding:6px 4px;
  }

  .category-item{
    justify-content:center;
    min-height:44px;
    padding:8px 2px;
    font-size:13px;
    line-height:1.35;
    text-align:center;
    white-space:normal;
    word-break:break-all;
    overflow:hidden;
  }

}

@media(max-width:380px){

  .catalog-layout{
    grid-template-columns:88px minmax(0,1fr);
    gap:8px;
  }

  .category-item{
    padding-left:2px;
    padding-right:2px;
    font-size:12px;
    line-height:1.35;
  }

}
/* END CATEGORY_5_CHARS */


/* BEGIN FRONT_UI_POLISH */

/* 去掉左侧多余的“分类”标题 */
.category-sidebar-title{
  display:none !important;
}

/* 分类区域顶部不要因为删标题留下空隙 */
.category-sidebar{
  padding-top:6px;
}

/* 数量选择器整体 */
.home-qty{
  height:30px;
  border:1px solid #d9dde3;
  border-radius:999px;
  background:#fff;
  box-shadow:0 1px 3px rgba(17,24,39,.04);
}

/* 加减按钮 */
.home-qty-btn{
  width:30px;
  height:30px;
  padding:0;
  border:0;
  font-size:18px;
  font-weight:500;
  line-height:30px;
}

/* 减号 */
.home-qty-btn[data-home-minus]{
  background:#f7f8fa;
  color:#30343b;
}

/* 加号作为主要操作 */
.home-qty-btn[data-home-plus]{
  background:#111827;
  color:#fff;
}

/* 数量 */
.home-qty-number{
  min-width:30px;
  padding:0 4px;
  line-height:30px;
  font-size:13px;
  font-weight:700;
  color:#111827;
}

/* 数量为0时，减号自动保持淡色 */
.home-qty-btn[data-home-minus]:disabled{
  background:#fafbfc;
  color:#c8cdd4;
}

/* 达到库存上限时，加号变灰 */
.home-qty-btn[data-home-plus]:disabled{
  background:#d8dce2;
  color:#fff;
}


/* 手机端顶部说明区精简 */
@media(max-width:640px){

  .hero{
    min-height:0;
    margin:10px 0 12px;
    padding:18px 18px;
    border-radius:18px;
  }

  .hero h1{
    font-size:23px;
    line-height:1.3;
  }

  .hero p{
    margin-top:7px;
    font-size:12.5px;
    line-height:1.55;
  }

  .category-sidebar{
    padding-top:5px;
  }

  .home-qty{
    height:29px;
  }

  .home-qty-btn{
    width:29px;
    height:29px;
    line-height:29px;
    font-size:17px;
  }

  .home-qty-number{
    min-width:27px;
    line-height:29px;
    font-size:13px;
  }

}

/* END FRONT_UI_POLISH */


/* BEGIN STOCK_BADGE */

.product-card{
  position:relative;
}

.stock-badge{
  position:absolute;
  top:7px;
  right:7px;
  z-index:4;
  padding:2px 7px;
  border-radius:999px;
  background:#ef4444;
  color:#fff;
  font-size:10px;
  font-weight:700;
  line-height:1.5;
  letter-spacing:.5px;
  pointer-events:none;
}

.product-card.is-out-of-stock .product-body{
  padding-right:48px;
}

@media(max-width:640px){
  .stock-badge{
    top:6px;
    right:6px;
    padding:2px 6px;
    font-size:10px;
  }

  .product-card.is-out-of-stock .product-body{
    padding-right:46px;
  }
}

/* END STOCK_BADGE */


/* BEGIN STOCK_BADGE_FIX */

/* 缺货状态不要压缩整个商品内容 */
.product-card.is-out-of-stock .product-body{
  padding-right:10px !important;
}

/* 只给商品名称右侧预留缺货标签的位置 */
.product-card.is-out-of-stock .product-name{
  padding-right:42px;
}

/* 价格和数量选择器始终使用完整宽度 */
.product-card .price-row{
  width:100%;
  min-width:0;
}

.product-price-box{
  flex:1 1 auto;
  min-width:0;
}

.home-qty{
  flex:0 0 auto;
}

/* END STOCK_BADGE_FIX */


/* BEGIN CART_UI_V2 */

.cart-list{
  display:grid;
  gap:10px;
  padding-bottom:145px;
}

.cart-item{
  position:relative;
  display:grid;
  grid-template-columns:86px minmax(0,1fr);
  gap:12px;
  align-items:start;
  padding:11px;
  background:#fff;
  border-radius:15px;
  box-shadow:0 5px 18px rgba(17,24,39,.055);
}

.cart-thumb{
  width:86px;
  height:86px;
  padding:0;
  border:0;
  border-radius:12px;
  overflow:hidden;
  display:block;
  background:#eef0f2;
  cursor:zoom-in;
}

.cart-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.cart-main{
  min-width:0;
  min-height:86px;
  display:flex;
  flex-direction:column;
}

.cart-name{
  padding-right:4px;
  font-size:14px;
  font-weight:700;
  line-height:1.4;
  color:#111827;

  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}

.cart-unit-price{
  margin-top:5px;
  color:#ef4444;
  font-size:17px;
  font-weight:800;
}

.cart-bottom-row{
  margin-top:auto;
  padding-top:7px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}

.cart-item .qty{
  display:inline-flex;
  align-items:center;
  height:29px;
  margin:0;
  overflow:hidden;
  border:1px solid #d9dde3;
  border-radius:999px;
  background:#fff;
}

.cart-item .qty button{
  width:29px;
  height:29px;
  padding:0;
  border:0;
  background:#fff;
  color:#111827;
  font-size:17px;
  line-height:29px;
  cursor:pointer;
}

.cart-item .qty button:first-child{
  background:#f7f8fa;
}

.cart-item .qty button:last-child{
  background:#111827;
  color:#fff;
}

.cart-item .qty button:disabled{
  background:#fafbfc;
  color:#c8cdd4;
  cursor:not-allowed;
}

.cart-item .qty span{
  min-width:28px;
  width:auto;
  padding:0 3px;
  line-height:29px;
  text-align:center;
  color:#111827;
  font-size:13px;
  font-weight:700;
}

.cart-remove{
  padding:4px 2px;
  border:0;
  background:transparent;
  color:#9aa1aa;
  font-size:12px;
  cursor:pointer;
}

.cart-remove:active{
  color:#ef4444;
}

.cart-subtotal{
  grid-column:1 / -1;
  margin-top:0;
  padding-top:9px;
  border-top:1px solid #f0f1f3;
  text-align:right;
  color:#8a919b;
  font-size:12px;
}

.checkout-bar{
  position:fixed;
  left:0;
  right:0;
  bottom:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom));
  z-index:35;

  background:rgba(255,255,255,.97);
  border-top:1px solid #edf0f3;
  box-shadow:0 -5px 18px rgba(17,24,39,.05);
  backdrop-filter:blur(14px);
}

.checkout-inner{
  width:min(1180px,100%);
  margin:0 auto;
  padding:10px 12px;

  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.checkout-total{
  color:#737b86;
  font-size:12px;
}

.checkout-total strong{
  display:block;
  margin-top:1px;
  color:#ef4444;
  font-size:20px;
  line-height:1.2;
}

#cart-submit-order{
  min-width:128px;
  height:42px;
  padding:0 18px;
  border-radius:999px;
  font-size:14px;
  font-weight:700;
}

#cart-submit-order:disabled{
  opacity:.65;
}


/* 空购物车 */

.cart-empty{
  min-height:360px;
  padding:70px 20px 30px;

  display:flex;
  flex-direction:column;
  align-items:center;

  text-align:center;
}

.cart-empty-icon{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;

  border-radius:18px;
  background:#f2f4f6;
  color:#9ca3ad;
}

.cart-empty-icon svg{
  width:28px;
  height:28px;

  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.cart-empty-title{
  margin-top:16px;
  color:#111827;
  font-size:16px;
  font-weight:700;
}

.cart-empty-text{
  margin-top:5px;
  color:#9aa1aa;
  font-size:13px;
}

.cart-empty-btn{
  margin-top:18px;
  padding:10px 21px;

  border-radius:999px;
  background:#111827;
  color:#fff;

  font-size:13px;
  font-weight:700;
}


/* 手机 */

@media(max-width:640px){

  .page-title{
    margin:17px 0 13px;
    font-size:22px;
  }

  .cart-list{
    gap:9px;
  }

  .cart-item{
    grid-template-columns:78px minmax(0,1fr);
    gap:10px;
    padding:9px;
    border-radius:14px;
  }

  .cart-thumb{
    width:78px;
    height:78px;
    border-radius:11px;
  }

  .cart-main{
    min-height:78px;
  }

  .cart-name{
    font-size:13px;
  }

  .cart-unit-price{
    margin-top:3px;
    font-size:16px;
  }

  .cart-bottom-row{
    padding-top:5px;
  }

  .cart-subtotal{
    padding-top:7px;
  }

  .checkout-inner{
    padding:9px 10px;
  }

  #cart-submit-order{
    min-width:122px;
    height:40px;
    padding:0 15px;
  }

}

/* END CART_UI_V2 */


/* BEGIN SUCCESS_UI */

.success-page{
  max-width:460px;
  margin:0 auto;
  padding:72px 18px 120px;
  text-align:center;
}

.success-icon{
  width:70px;
  height:70px;
  margin:0 auto;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#111827;
  color:#fff;
  box-shadow:0 10px 30px rgba(17,24,39,.14);
}

.success-icon svg{
  width:36px;
  height:36px;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.success-page h1{
  margin:22px 0 0;
  color:#111827;
  font-size:24px;
  font-weight:800;
  line-height:1.3;
}

.success-desc{
  margin:8px 0 0;
  color:#8a919b;
  font-size:13px;
}

.success-order{
  margin-top:26px;
  padding:15px 16px;
  border-radius:14px;
  background:#fff;
  box-shadow:0 5px 18px rgba(17,24,39,.055);
  text-align:left;
}

.success-order span{
  display:block;
  color:#9aa1aa;
  font-size:12px;
}

.success-order strong{
  display:block;
  margin-top:5px;
  color:#111827;
  font-size:14px;
  font-weight:700;
  line-height:1.5;
  word-break:break-all;
}

.success-back{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:150px;
  height:42px;
  margin-top:24px;
  padding:0 22px;
  border-radius:999px;
  background:#111827;
  color:#fff;
  font-size:14px;
  font-weight:700;
}

.success-back:active{
  transform:scale(.98);
}

@media(max-width:640px){

  .success-page{
    padding:58px 16px 110px;
  }

  .success-icon{
    width:64px;
    height:64px;
  }

  .success-icon svg{
    width:32px;
    height:32px;
  }

  .success-page h1{
    font-size:22px;
  }

}

/* END SUCCESS_UI */

