/**
 * jiou 前台主题（Template/pc/new）
 * 整体沿用原商城红色：暖沙底、经典红主色、圆角卡片、轻阴影。
 * 依赖 rem 版心 7.5、WeUI/Swiper；不含 legacy 打包 CSS。
 */

:root {
  /* 版心 7.5rem；PC 上根字号由 initRem 将视口上限钳到 800px，故壳宽约等于 min(100vw, 800px) */
  --sf-shell: 7.5rem;
  --sf-bg: #f0ebe3;
  --sf-bg-deep: #e8e1d6;
  --sf-surface: #fffef9;
  --sf-surface-2: #f7f4ed;
  --sf-primary: #e72b1c;
  --sf-primary-2: #ff6b5c;
  --sf-primary-deep: #b91c1c;
  --sf-accent: #c2410c;
  --sf-accent-soft: rgba(194, 65, 12, 0.12);
  --sf-gold: #b45309;
  --sf-ink: #1c1917;
  --sf-muted: #78716c;
  --sf-muted-2: #a8a29e;
  --sf-line: rgba(28, 25, 23, 0.09);
  --sf-line-strong: rgba(28, 25, 23, 0.14);
  --sf-success: #059669;
  --sf-danger: #dc2626;
  --sf-warning: #d97706;
  --sf-radius-xl: 20px;
  --sf-radius-lg: 16px;
  --sf-radius-md: 12px;
  --sf-radius-sm: 8px;
  --sf-font: "Sarabun", "Kanit", "Noto Sans Thai", -apple-system, BlinkMacSystemFont,
    "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
  --sf-shadow: 0 8px 32px rgba(28, 25, 23, 0.07);
  --sf-shadow-sm: 0 2px 14px rgba(28, 25, 23, 0.06);
  --sf-shadow-nav: 0 4px 20px rgba(140, 28, 22, 0.24);
  --sf-nav-gradient: linear-gradient(125deg, #7f1d1d 0%, var(--sf-primary) 48%, var(--sf-primary-2) 100%);
  --sf-btn-gradient: linear-gradient(135deg, var(--sf-primary) 0%, var(--sf-primary-deep) 100%);
  --sf-footer-h: 0.85rem;
  --sf-tabbar-z: 900;
  --sf-gutter: 0.12rem;
  /** 主内容区左右微缩进（px 固定），两侧露出 body 底色 */
  --sf-page-pad-x: 5px;
}

/* ---- reset ---- */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-font-smoothing: antialiased;
  background: var(--sf-bg);
  scroll-behavior: smooth;
}

::selection {
  background: rgba(231, 43, 28, 0.2);
  color: var(--sf-ink);
}

body {
  margin: 0;
  font-family: var(--sf-font);
  color: var(--sf-ink);
  background: var(--sf-bg);
  line-height: 1.58;
  letter-spacing: 0.01em;
}

body *,
body *::before,
body *::after {
  font-family: inherit !important;
}

img {
  max-width: 100%;
  vertical-align: middle;
}

a {
  color: var(--sf-primary);
  text-decoration: none;
  transition: opacity 0.15s ease, color 0.15s ease;
}

a:active {
  opacity: 0.88;
}

.clear {
  clear: both;
}

.pull-left {
  float: left;
}

.pull-right {
  float: right;
}

.iconfont {
  font-family: "iconfont" !important;
}

.fa,
.fa:before,
[class^="fa-"]:before {
  font-family: FontAwesome !important;
}

* {
  -webkit-tap-highlight-color: rgba(231, 43, 28, 0.14);
}

/* ---- 版心与底栏对齐：7.5rem 与首页同逻辑；登录等 .sf-no-shell 不限宽 ---- */
body#upgradeMall:not(.sf-no-shell) {
  max-width: var(--sf-shell);
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow-x: hidden;
}

#app[data-v-27a294f3],
#app {
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  margin: 0;
  padding: 0;
}

/**
 * fixed 的 #app 百分比宽相对视口，不能单靠 body 限宽；须与底栏同宽居中。
 * 不依赖 :has()，避免旧 WebView 下「促销/发现」等页全宽、底栏仍 7.5rem 错位。
 */
body#upgradeMall:not(.sf-no-shell) #app[data-v-27a294f3],
body#upgradeMall:not(.sf-no-shell) #app {
  left: 50% !important;
  right: auto !important;
  width: var(--sf-shell) !important;
  max-width: 100% !important;
  -webkit-transform: translateX(-50%) !important;
  transform: translateX(-50%) !important;
}

body#upgradeMall:not(.sf-no-shell) #app > .container {
  position: relative;
  width: 100% !important;
  max-width: 100% !important;
  height: 100%;
}

/**
 * newxs（个人中心/促销等）首层为 .index，无首页 `.container > .main`；#app 固定全屏时内容区不滚动会导致 PC 上底部 nav 菜单被裁切。与 `.main[data-v-7cda72f2]` 一致预留底栏并纵向滚动。
 */
body#upgradeMall:not(.sf-no-shell) #app[data-v-27a294f3] > .index {
  box-sizing: border-box;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: var(--sf-footer-h);
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

/** 个人中心：顶栏标题/头像/余额块全宽；仅下方 nav（入口+菜单）保留左右缩进 */
body#upgradeMall:not(.sf-no-shell) #app[data-v-27a294f3] > .index .personal nav[data-v-507af33a] {
  padding-left: var(--sf-page-pad-x);
  padding-right: var(--sf-page-pad-x);
  box-sizing: border-box;
}

/** 促销专区：轮播/分类等顶区全宽；商品列表 .content 保留左右缩进 */
body#upgradeMall:not(.sf-no-shell) #app[data-v-27a294f3] > .index .content[data-v-4b15e8fa] {
  padding-left: var(--sf-page-pad-x);
  padding-right: var(--sf-page-pad-x);
  box-sizing: border-box;
}

/* 促销专区等有外置顶栏时，.index 让出导航高度（与 .sf-page-subnav .main[data-v-8f0b26b4] 一致） */
body#upgradeMall.sf-page-subnav:not(.sf-no-shell) #app[data-v-27a294f3] > .index {
  top: 0.88rem;
}

/* 不支持 :has 时：.auth 页人工加 sf-no-shell 解除 7.5rem */
body#upgradeMall.sf-no-shell {
  max-width: none !important;
  width: 100% !important;
}

/* ---- 首页主栏 7cda72f2 ---- */
.main[data-v-7cda72f2] {
  width: 100%;
  background: radial-gradient(120% 80% at 50% 0%, rgba(231, 43, 28, 0.05) 0%, transparent 55%),
    linear-gradient(180deg, var(--sf-surface-2) 0%, var(--sf-bg) 36%);
  -webkit-overflow-scrolling: touch;
  position: absolute;
  top: 0;
  bottom: var(--sf-footer-h);
  left: 0;
  right: 0;
  overflow-x: hidden;
  overflow-y: auto;
}

.main[data-v-7cda72f2]::after {
  content: "";
  display: table;
  clear: both;
}

.banner[data-v-7cda72f2] {
  width: 100%;
  height: 3.4rem;
  border-radius: 0 0 var(--sf-radius-lg) var(--sf-radius-lg);
  overflow: hidden;
  box-shadow: var(--sf-shadow-sm);
}

.banner img[data-v-7cda72f2] {
  width: 100%;
  height: 3.4rem;
  object-fit: cover;
  display: block;
}

.notice[data-v-7cda72f2] {
  width: 100%;
  min-height: 0.76rem;
  background: var(--sf-surface);
  border-bottom: 1px solid var(--sf-line);
  display: flex;
  align-items: center;
}

.notice img[data-v-7cda72f2] {
  width: 0.34rem;
  height: 0.34rem;
  margin: 0 0.14rem 0 0.24rem;
  flex-shrink: 0;
}

.notice p[data-v-7cda72f2] {
  flex: 1;
  margin: 0;
  font-size: 0.24rem;
  color: var(--sf-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.navbar[data-v-7cda72f2] {
  width: 100%;
  min-height: 2rem;
  background: var(--sf-surface);
  margin: 0.2rem 0.12rem 0.24rem;
  padding: 0.08rem 0;
  border-radius: var(--sf-radius-md);
  box-shadow: var(--sf-shadow-sm);
  border: 1px solid var(--sf-line);
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-around;
  align-items: center;
}

.navbarItem[data-v-7cda72f2] {
  flex: 1;
  text-align: center;
}

.navbar img[data-v-7cda72f2] {
  width: 1.04rem;
  height: 1.04rem;
  margin-top: 0.12rem;
}

.navbarItem p[data-v-7cda72f2] {
  font-size: 0.2rem;
  color: var(--sf-muted);
  margin: 0.08rem 0 0 0;
  font-weight: 500;
}

.content[data-v-7cda72f2] {
  width: 100%;
  height: auto;
  padding-bottom: 0.2rem;
  padding-left: var(--sf-page-pad-x);
  padding-right: var(--sf-page-pad-x);
  box-sizing: border-box;
}

/* ---- 升级商品列表/详情：两张规格图 + 中部默认 upgrade 桥接图 ---- */
.sf-upgrade-dual-preview {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  width: 100%;
  background: linear-gradient(180deg, #fff8f6 0%, #fee5dd 52%, #fefefe 100%);
  overflow: hidden;
  box-sizing: border-box;
}

.sf-upgrade-dual-preview--listing {
  height: 3.15rem;
  border-radius: 10px 10px 0 0;
}

.sf-upgrade-dual-preview--detail {
  height: 195px;
}

.sf-upgrade-dual-preview__cell {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.08rem 0.04rem;
  box-sizing: border-box;
}

.sf-upgrade-dual-preview__cell img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.sf-upgrade-dual-preview__mid {
  /* upgrade-bridge.png 约 202×174（横图），窄栏会严重缩小可视箭头 */
  flex: 0 0 1.75rem;
  max-width: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.02rem;
  box-sizing: border-box;
}

.sf-upgrade-dual-preview__mid img {
  width: 100%;
  height: auto;
  max-height: 100%;
  object-fit: contain;
  aspect-ratio: 202 / 174;
  display: block;
}

/* 区块标题「热卖 / 积分商城」左右与版心对齐 */
.main[data-v-7cda72f2] .content[data-v-7cda72f2] > div[style*="position:relative"] {
  padding-left: var(--sf-gutter);
  padding-right: var(--sf-gutter);
  box-sizing: border-box;
}

.main[data-v-7cda72f2] .content[data-v-7cda72f2] > div[style*="position:relative"] span[style*="float: right"] {
  margin-right: 0 !important;
}

/**
 * 促销热卖（4b15e8fa）：与版心、底栏同宽，左右留出与九宫格一致的边距
 */
.sf-hot-sale {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding-left: var(--sf-gutter);
  padding-right: var(--sf-gutter);
}

.sf-hot-sale ul[data-v-4b15e8fa] {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  box-sizing: border-box;
}

.sf-hot-sale ul[data-v-4b15e8fa] > li {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  overflow: hidden;
  border-radius: var(--sf-radius-md);
}

/* ---- 积分商城：每行 2 个，与底栏同宽 ---- */
.content[data-v-72568846] {
  overflow: hidden;
}

.sf-points-mall {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding-left: var(--sf-gutter);
  padding-right: var(--sf-gutter);
}

body#upgradeMall .sf-points-mall ul[data-v-72568846] {
  display: flex;
  flex-wrap: wrap;
  gap: 0.12rem;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
  overflow: hidden;
}

body#upgradeMall .sf-points-mall ul[data-v-72568846] > li[data-v-72568846] {
  flex: 0 0 calc(50% - 0.06rem);
  width: calc(50% - 0.06rem) !important;
  max-width: calc(50% - 0.06rem) !important;
  min-height: 0;
  margin: 0 !important;
  float: none !important;
  background: var(--sf-surface);
  border-radius: var(--sf-radius-md);
  overflow: hidden;
  border: 1px solid var(--sf-line);
  box-shadow: var(--sf-shadow-sm);
  box-sizing: border-box;
}

.sf-points-mall ul li p[data-v-72568846],
.sf-points-mall ul li .goodsName[data-v-8f0b26b4] {
  font-size: 0.24rem;
  color: var(--sf-ink);
  margin: 0.12rem 0;
  padding: 0 0.1rem;
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

/* 其它模板（无 sf-points-mall）：维持 rem 双列 */
body#upgradeMall .content[data-v-72568846]:not(.sf-points-mall) ul[data-v-72568846] {
  overflow: hidden;
  margin-left: 0.1rem;
  padding: 0;
  list-style: none;
}

body#upgradeMall .content[data-v-72568846]:not(.sf-points-mall) ul[data-v-72568846] > li[data-v-72568846] {
  margin-top: 0.11rem;
  width: 3.37rem;
  min-height: 3.56rem;
  background: var(--sf-surface);
  margin-left: 0.15rem;
  float: left;
  border-radius: var(--sf-radius-md);
  overflow: hidden;
  border: 1px solid var(--sf-line);
  box-shadow: var(--sf-shadow-sm);
}

body#upgradeMall .content[data-v-72568846]:not(.sf-points-mall) ul li p[data-v-72568846],
body#upgradeMall .content[data-v-72568846]:not(.sf-points-mall) ul li .goodsName[data-v-8f0b26b4] {
  font-size: 0.24rem;
  color: var(--sf-ink);
  margin: 0.12rem 0;
  padding: 0 0.1rem;
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

/* ---- 积分商品 8f0b26b4（列表页 goodsContent / 双列） ---- */
.main[data-v-8f0b26b4] {
  width: 100%;
  background: var(--sf-bg);
  -webkit-overflow-scrolling: touch;
  position: absolute;
  top: 0;
  bottom: var(--sf-footer-h);
  left: 0;
  right: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding-top: 0.2rem;
  padding-bottom: 0.24rem;
  padding-left: var(--sf-page-pad-x);
  padding-right: var(--sf-page-pad-x);
}

/* 带顶部返回条的内页（如积分列表），主栏让出导航高度 */
.sf-page-subnav .main[data-v-8f0b26b4] {
  top: 0.88rem;
}

.goodsContent[data-v-8f0b26b4] {
  width: 100%;
  min-height: 2rem;
  padding-left: 0.2rem;
  padding-right: 0.2rem;
  overflow: hidden;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.12rem 0.2rem;
  align-items: start;
}

.goodsContent[data-v-8f0b26b4] > .goods[data-v-8f0b26b4] {
  width: auto;
  max-width: 100%;
  margin-right: 0;
  float: none;
  background: var(--sf-surface);
  padding-bottom: 0.2rem;
  margin-bottom: 0;
  border-radius: var(--sf-radius-md);
  border: 1px solid var(--sf-line);
  box-shadow: var(--sf-shadow-sm);
  overflow: hidden;
  align-self: start;
}

.goodsContent[data-v-8f0b26b4] > .goods[data-v-8f0b26b4]:nth-of-type(2n) {
  margin-right: 0;
}

.deleteline[data-v-8f0b26b4] {
  text-decoration: none;
  color: inherit;
  display: block;
}

.goods img[data-v-8f0b26b4] {
  width: 100%;
  max-width: 100%;
  max-height: 2.75rem;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  background: var(--sf-surface-2);
  display: block;
}

.goods .goodsName[data-v-8f0b26b4] {
  min-height: 0.8rem;
  font-size: 0.28rem;
  color: var(--sf-ink);
  overflow: hidden;
  padding: 0 0.12rem;
  font-weight: 600;
  margin: 0;
}

.buyPrice[data-v-8f0b26b4] {
  width: 100%;
  margin-top: 0.2rem;
  padding: 0 0.12rem 0.12rem;
  overflow: hidden;
}

.buyPrice p[data-v-8f0b26b4],
.buyPrice .price[data-v-8f0b26b4] {
  font-size: 0.3rem;
  font-weight: 600;
  color: var(--sf-primary);
  margin: 0;
  float: left;
}

.buyPrice .buy[data-v-8f0b26b4] {
  float: right;
  font-size: 0.22rem;
  color: #fff;
  background: var(--sf-btn-gradient);
  padding: 0.08rem 0.16rem;
  border-radius: var(--sf-radius-sm);
}

/* 首页 ul>li 内嵌的积分商品：不占双列 float */
body#upgradeMall .sf-points-mall ul[data-v-72568846] > li[data-v-72568846] .goods[data-v-8f0b26b4] {
  width: 100% !important;
  margin-right: 0 !important;
  float: none !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding-bottom: 0 !important;
}

body#upgradeMall .sf-points-mall ul[data-v-72568846] > li[data-v-72568846] .goods img[data-v-8f0b26b4] {
  aspect-ratio: auto;
  max-height: 2.3rem;
}

/* ---- 内页顶栏（积分商城等，替代整包 mobile-ui） ---- */
.navbar-app.navbar-custom-top,
.navbar.navbar-custom-top {
  position: relative;
  z-index: 800;
  display: flex;
  align-items: center;
  min-height: 0.88rem;
  padding: 0.12rem 0.24rem;
  background: var(--sf-nav-gradient);
  color: #fff;
  box-shadow: var(--sf-shadow-nav);
}

.navbar-brand.navbar-brand-center {
  flex: 1;
  margin: 0;
  text-align: center;
  font-size: 0.32rem;
  font-weight: 600;
}

.navbar-custom-top .btn-group.pull-left {
  position: absolute;
  left: 0.16rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.navbar-custom-top .btn-group.pull-right {
  position: absolute;
  right: 0.16rem;
  left: auto;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.navbar-custom-top .btn-group:not(.pull-left):not(.pull-right) {
  position: absolute;
  left: 0.16rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.navbar-custom-top .btn {
  color: rgba(255, 255, 255, 0.92);
  font-size: 0.26rem;
  padding: 0.08rem 0.12rem;
  cursor: pointer;
}

/**
 * 个人中心：头像与账号左对齐（覆盖 newxs `header` 的 text-align:center）
 */
body#upgradeMall:not(.sf-no-shell) .personal header[data-v-507af33a] {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 0.24rem;
  text-align: left;
  padding-left: var(--sf-gutter);
  padding-right: 0.24rem;
  box-sizing: border-box;
}

body#upgradeMall:not(.sf-no-shell) .personal header[data-v-507af33a] .tour[data-v-507af33a] {
  margin-top: 0;
}

body#upgradeMall:not(.sf-no-shell) .personal header[data-v-507af33a] .id[data-v-507af33a] {
  width: auto;
  flex: 1;
  min-width: 0;
  text-align: left;
}

/**
 * 个人中心：待发货/待收货/充值/提现 — newxs 固定每个 span 1.65rem 宽，
 * 加上页边距与 li 内边距后一行容不下四项，第四项换行且原 li 高度不足会与「我的钱包」重叠。
 * 使用 flex 四项均分，高度随内容撑开。
 */
body#upgradeMall:not(.sf-no-shell) .personal nav ul .moneyText[data-v-507af33a] {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.04rem;
  height: auto !important;
  min-height: 1.5rem;
  padding-top: 0.18rem;
  padding-bottom: 0.22rem;
  box-sizing: border-box;
}

body#upgradeMall:not(.sf-no-shell) .personal nav ul .moneyText[data-v-507af33a] > a {
  flex: 1 1 0;
  min-width: 0;
  display: block;
  box-sizing: border-box;
}

body#upgradeMall:not(.sf-no-shell) .personal nav ul .moneyText span[data-v-507af33a] {
  width: 100% !important;
  max-width: 100%;
  margin-top: 0.12rem;
  box-sizing: border-box;
}

/**
 * 登录/注册等 sf-no-shell 页未执行 initRem，html 根字号多为 16px，
 * 此时 0.88rem≈14px，顶栏会变成一条细红线；用 min 与 px 保底高度。
 */
body#upgradeMall.sf-no-shell .navbar-app.navbar-custom-top,
body#upgradeMall.sf-no-shell .navbar.navbar-custom-top {
  min-height: max(48px, 0.88rem);
  padding: 12px 16px;
  box-sizing: border-box;
}

body#upgradeMall.sf-no-shell .navbar-brand.navbar-brand-center {
  font-size: max(17px, 0.32rem);
  line-height: 1.35;
}

body#upgradeMall.sf-no-shell .navbar-custom-top .btn {
  font-size: max(14px, 0.26rem);
}

/* ---- 底部 Tab ---- */
footer#main_footer,
#main_footer {
  background: var(--sf-surface);
  box-shadow: 0 -8px 32px rgba(28, 25, 23, 0.08);
  border-top: 1px solid var(--sf-line);
}

#main_footer[data-v-8baf3650],
footer#main_footer[data-v-8baf3650] {
  position: fixed !important;
  bottom: 0 !important;
  left: 50% !important;
  right: auto !important;
  -webkit-transform: translateX(-50%) !important;
  transform: translateX(-50%) !important;
  width: var(--sf-shell) !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0.08rem 0 env(safe-area-inset-bottom, 0) !important;
  z-index: var(--sf-tabbar-z) !important;
  box-sizing: border-box !important;
}

#main_footer ul[data-v-8baf3650],
footer#main_footer ul[data-v-8baf3650] {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  margin: 0;
  padding: 0 0.08rem;
  list-style: none;
  align-items: flex-end;
  justify-content: space-around;
  box-sizing: border-box !important;
}

#main_footer ul li[data-v-8baf3650],
footer#main_footer ul li[data-v-8baf3650] {
  flex: 1 1 0 !important;
  min-width: 0;
  text-align: center;
}

#main_footer ul li a[data-v-8baf3650],
footer#main_footer ul li a[data-v-8baf3650] {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.04rem;
  color: inherit;
}

#main_footer ul li span[data-v-8baf3650],
footer#main_footer ul li span[data-v-8baf3650] {
  font-size: 0.2rem !important;
  color: var(--sf-muted) !important;
  font-weight: 500 !important;
}

#main_footer ul li.checked span[data-v-8baf3650],
footer#main_footer ul li.checked span[data-v-8baf3650] {
  color: var(--sf-primary) !important;
  font-weight: 600 !important;
}

#main_footer ul li i img[data-v-8baf3650] {
  width: 0.48rem !important;
  height: 0.48rem !important;
  object-fit: contain;
}

/* ---- WeUI 主色 ---- */
.weui-btn_primary,
.weui-btn.weui-btn_primary,
button.weui-btn_primary {
  background: var(--sf-btn-gradient) !important;
  border-radius: var(--sf-radius-md) !important;
  border: none !important;
  box-shadow: 0 4px 16px rgba(231, 43, 28, 0.32);
}

.weui-btn_primary:active,
.weui-btn.weui-btn_primary:active {
  opacity: 0.94;
}

.weui-cell,
.weui-cells {
  border-radius: var(--sf-radius-md) !important;
}

.weui-dialog {
  border-radius: var(--sf-radius-lg) !important;
}

.weui-picker__hd,
.weui-actionsheet {
  border-radius: var(--sf-radius-lg) var(--sf-radius-lg) 0 0 !important;
}

input[type="text"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="email"],
select,
textarea {
  border-radius: var(--sf-radius-sm);
}

textarea:focus,
input:focus,
select:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(231, 43, 28, 0.18);
}

/* ---- 优惠券弹层 ---- */
.popup-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 1200;
}

.coupon-pop {
  display: none;
  min-width: 6rem;
  min-height: 8rem;
  color: #b45309;
  font-weight: 600;
  z-index: 1201;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: url("/Template/pc/new/Static/images/img-yhq-bg.png") center / contain no-repeat;
}

.coupon-pop .coupon-pop-content {
  display: flex;
  flex-direction: column;
  padding-left: 10%;
  padding-top: 20%;
}

.coupon-pop .btn span {
  color: var(--sf-primary);
}

.coupon-pop .zhuhe {
  color: #44403c;
  font-weight: 600;
}

.coupon-pop .youhui {
  color: #57534e;
  font-size: 0.25rem;
}

.coupon-pop .fuhao,
.coupon-pop .jine {
  color: var(--sf-primary);
}

.coupon-pop .btn {
  width: 4rem;
  min-height: 0.8rem;
  border-radius: 999px;
  background: #fff;
  position: absolute;
  bottom: 20%;
  left: 15%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.banner[data-v-7cda72f2] .swiper-slide img,
.mint-swipe .swiper-slide img {
  width: 100%;
  display: block;
}

.icon-language {
  width: 0.54rem;
  height: 0.54rem;
  background: url("../images/icon-language.png") center / contain no-repeat;
  position: absolute;
  top: 0.3rem;
  right: 0.2rem;
  margin-top: -0.27rem;
  z-index: 100;
}

.weui-picker__item {
  height: 48px !important;
}

/* ------------------------------------------------------------------
 * 全站组件：轮播、登录注册、面板（红色主色）
 * ------------------------------------------------------------------ */

.swiper-pagination-bullet {
  background: #fff !important;
  opacity: 0.45 !important;
}

.swiper-pagination-bullet-active {
  background: var(--sf-primary) !important;
  opacity: 1 !important;
}

/* 账户类 Angular 页（sf-no-shell）：整页背景与表单层次 */
body#upgradeMall.sf-no-shell {
  min-height: 100vh;
  min-height: 100dvh;
}

body#upgradeMall.sf-no-shell .app {
  min-height: 100vh;
  min-height: 100dvh;
  background: radial-gradient(100% 60% at 50% 0%, rgba(231, 43, 28, 0.06) 0%, transparent 50%),
    linear-gradient(180deg, var(--sf-bg-deep) 0%, var(--sf-bg) 40%, var(--sf-bg) 100%);
}

body#upgradeMall.sf-no-shell .app-body {
  background: transparent;
}

body#upgradeMall.sf-no-shell .panel {
  border: none;
  box-shadow: none;
  background: transparent;
}

body#upgradeMall.sf-no-shell .panel-body {
  padding-left: max(16px, 0.32rem);
  padding-right: max(16px, 0.32rem);
  padding-bottom: max(24px, 0.4rem);
}

body#upgradeMall.sf-no-shell .app-header-content {
  color: var(--sf-ink) !important;
  letter-spacing: 0.02em;
}

body#upgradeMall.sf-no-shell .custom-input-item {
  background: var(--sf-surface) !important;
  border: 1px solid var(--sf-line) !important;
  border-radius: var(--sf-radius-lg) !important;
  box-shadow: var(--sf-shadow-sm);
  margin-bottom: 0.22rem !important;
}

body#upgradeMall.sf-no-shell .custom-input-item input,
body#upgradeMall.sf-no-shell .custom-input-item select {
  background: transparent !important;
  color: var(--sf-ink) !important;
}

body#upgradeMall.sf-no-shell .btn-primary-big,
body#upgradeMall.sf-no-shell .btn.btn-block.btn-primary-big {
  background: var(--sf-btn-gradient) !important;
  border: none !important;
  border-radius: var(--sf-radius-xl) !important;
  color: #fff !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em;
  box-shadow: 0 8px 28px rgba(231, 43, 28, 0.35);
}

body#upgradeMall.sf-no-shell a.custom-label-color {
  color: var(--sf-primary) !important;
}

body#upgradeMall.sf-no-shell a.custom-label-color-grey {
  color: var(--sf-muted) !important;
}

@media (min-width: 520px) {
  html {
    background: linear-gradient(160deg, #e7e2d9 0%, var(--sf-bg) 40%, #ebe6dc 100%);
  }
}
