/* =========================================================
   VIPZAI 手机端单页模板专用样式
   文件：m/skin/css/eyou-single-page.css
   作用范围：body.m-single-template
   页面：关于我们、联系我们、售后服务等单页
   原则：保留现有布局，仅整理富文本适配与溢出保护
   ========================================================= */

.m-single-template,
.m-single-template * {
  box-sizing: border-box;
}

.m-single-template {
  overflow-x: hidden;
}

.m-single-template .cateList h2 {
  position: relative;
  margin: 0;
  color: var(--vip-heading);
  font-size: .3rem;
  line-height: .8rem;
  font-weight: 600;
}

.m-single-template .cateList h2 s {
  position: absolute;
  top: .34rem;
  right: .4rem;
  display: none;
  width: .22rem;
  height: .18rem;
  margin-left: .1rem;
  background-position: -1.06rem -2.2rem;
}

.m-single-template .m-single-page {
  min-width: 0;
  min-height: 5rem;
  padding-top: 0;
  background: var(--vip-white);
}

.m-single-template .m-single-head {
  padding: .28rem 4% .22rem;
  border-bottom: 1px solid var(--vip-border-soft);
  background: var(--vip-white);
}

.m-single-template .m-single-head h1 {
  max-width: 6.2rem;
  margin: 0 auto;
  padding: 0;
  color: var(--vip-heading);
  font-size: .36rem;
  line-height: 1.45;
  font-weight: 700;
  text-align: center;
  overflow-wrap: anywhere;
}

.m-single-template .m-single-entry {
  min-width: 0;
  max-width: 6.4rem;
  margin: 0 auto;
  padding: .28rem 4% .5rem;
  color: var(--vip-text);
  font-size: .26rem;
  line-height: 1.85;
  text-align: left;
  overflow-wrap: anywhere;
  word-break: normal;
}

.m-single-template .m-single-entry > :first-child {
  margin-top: 0;
}

.m-single-template .m-single-entry > :last-child {
  margin-bottom: 0;
}

.m-single-template .m-single-entry p {
  margin: 0 0 1em;
  line-height: inherit;
}

.m-single-template .m-single-entry h2,
.m-single-template .m-single-entry h3,
.m-single-template .m-single-entry h4,
.m-single-template .m-single-entry h5,
.m-single-template .m-single-entry h6 {
  color: var(--vip-heading);
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.m-single-template .m-single-entry h2 {
  margin: 1.3em 0 .6em;
}

.m-single-template .m-single-entry h3 {
  margin: 1.2em 0 .55em;
}

.m-single-template .m-single-entry h4,
.m-single-template .m-single-entry h5,
.m-single-template .m-single-entry h6 {
  margin: 1.1em 0 .5em;
}

.m-single-template .m-single-entry ul,
.m-single-template .m-single-entry ol {
  margin: 0 0 1em 1.4em;
  padding: 0;
}

.m-single-template .m-single-entry li {
  margin-bottom: .45em;
}

.m-single-template .m-single-entry a {
  color: var(--vip-primary);
  text-decoration: underline;
  text-decoration-thickness: from-font;
  text-underline-offset: .04rem;
  overflow-wrap: anywhere;
}

.m-single-template .m-single-entry a:focus-visible {
  outline: 2px solid var(--vip-primary);
  outline-offset: 2px;
  border-radius: var(--vip-radius-sm);
  box-shadow: var(--vip-focus-ring);
}

/* 正文图片保持原比例，不使用裁切规则。 */
.m-single-template .m-single-entry img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  margin: .22rem auto;
  border: 0;
}

.m-single-template .m-single-entry figure {
  max-width: 100%;
  margin: .22rem auto;
}

.m-single-template .m-single-entry figure img {
  margin: 0 auto;
}

.m-single-template .m-single-entry figcaption {
  margin-top: .08rem;
  color: var(--vip-muted);
  text-align: center;
}

.m-single-template .m-single-entry video,
.m-single-template .m-single-entry audio,
.m-single-template .m-single-entry canvas,
.m-single-template .m-single-entry svg {
  display: block;
  max-width: 100%;
  height: auto;
  margin-right: auto;
  margin-left: auto;
}

.m-single-template .m-single-entry iframe,
.m-single-template .m-single-entry embed,
.m-single-template .m-single-entry object {
  display: block;
  width: 100%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  border: 0;
}

/* 后台富文本表格在自身区域横向滚动，不撑破整页。 */
.m-single-template .m-single-entry table {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: .22rem 0;
  overflow-x: auto;
  border-collapse: collapse;
  border-spacing: 0;
  -webkit-overflow-scrolling: touch;
}

.m-single-template .m-single-entry thead th {
  background: var(--vip-bg-soft);
}

.m-single-template .m-single-entry th,
.m-single-template .m-single-entry td {
  padding: .12rem .14rem;
  border: 1px solid var(--vip-border);
  vertical-align: top;
  white-space: normal;
  overflow-wrap: anywhere;
}

.m-single-template .m-single-entry blockquote {
  margin: .22rem 0;
  padding: .16rem .2rem;
  border-left: .05rem solid var(--vip-primary);
  background: var(--vip-bg-soft);
  color: var(--vip-text-soft);
}

.m-single-template .m-single-entry pre {
  max-width: 100%;
  margin: .22rem 0;
  padding: .16rem;
  overflow: auto;
  border-radius: var(--vip-radius-sm);
  background: #0f172a;
  color: #e5e7eb;
  white-space: pre;
  -webkit-overflow-scrolling: touch;
}

.m-single-template .m-single-entry code,
.m-single-template .m-single-entry kbd,
.m-single-template .m-single-entry samp {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Courier New", monospace;
}

.m-single-template .m-single-entry :not(pre) > code {
  padding: .02rem .07rem;
  border-radius: .03rem;
  background: var(--vip-bg-soft);
}

.m-single-template .m-single-entry hr {
  height: 0;
  margin: .28rem 0;
  border: 0;
  border-top: 1px solid var(--vip-border-soft);
}

/* 兼容后台正文中写死宽度的旧内容块。 */
.m-single-template .m-single-entry [width],
.m-single-template .m-single-entry [style*="width"] {
  max-width: 100%;
}

.m-single-template .m-single-entry input,
.m-single-template .m-single-entry select,
.m-single-template .m-single-entry textarea,
.m-single-template .m-single-entry button {
  max-width: 100%;
  font: inherit;
}

.m-single-template .m-single-entry textarea {
  resize: vertical;
}

/* 给底部固定工具栏预留空间，避免遮挡正文末尾。 */
.m-single-template #footer_main {
  padding-bottom: max(1rem, env(safe-area-inset-bottom));
}

@media (max-width: 360px) {
  .m-single-template .m-single-head {
    padding-right: 3.5%;
    padding-left: 3.5%;
  }

  .m-single-template .m-single-entry {
    padding-right: 3.5%;
    padding-left: 3.5%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .m-single-template .m-single-entry *,
  .m-single-template .m-single-entry *::before,
  .m-single-template .m-single-entry *::after {
    scroll-behavior: auto;
  }
}

/* =========================================================
   VIPZAI 联系我们内容组件（手机端）
   后台正文根节点：.vipzai-contact
   ========================================================= */
.m-single-template .m-single-entry .vipzai-contact,
.m-single-template .m-single-entry .vipzai-contact * {
  box-sizing: border-box;
}

.m-single-template .m-single-entry .vipzai-contact {
  --contact-primary: #1674c9;
  --contact-primary-dark: #0f5fa8;
  --contact-heading: #17324d;
  --contact-text: #465568;
  --contact-muted: #748091;
  --contact-border: #e4eaf0;
  --contact-soft: #f5f9fc;
  --contact-white: #fff;
  width: 100%;
  color: var(--contact-text);
  overflow-wrap: anywhere;
}

.m-single-template .m-single-entry .vipzai-contact__hero {
  position: relative;
  padding: .3rem .24rem .28rem;
  margin: 0 0 .2rem;
  overflow: hidden;
  border: 1px solid var(--contact-border);
  border-radius: .12rem;
  background: linear-gradient(135deg, rgba(22,116,201,.09), rgba(22,116,201,.02));
}

.m-single-template .m-single-entry .vipzai-contact__hero::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: .06rem;
  content: "";
  background: var(--contact-primary);
}

.m-single-template .m-single-entry .vipzai-contact__eyebrow {
  margin: 0 0 .06rem;
  color: var(--contact-primary);
  font-size: .22rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .06em;
}

.m-single-template .m-single-entry .vipzai-contact__hero h2 {
  margin: 0 0 .12rem;
  color: var(--contact-heading);
  font-size: .34rem;
  font-weight: 700;
  line-height: 1.4;
}

.m-single-template .m-single-entry .vipzai-contact__intro {
  margin: 0;
  color: var(--contact-text);
  line-height: 1.85;
}

.m-single-template .m-single-entry .vipzai-contact__badges {
  display: flex;
  flex-wrap: wrap;
  gap: .08rem;
  margin-top: .16rem;
}

.m-single-template .m-single-entry .vipzai-contact__badge {
  display: inline-flex;
  align-items: center;
  min-height: .46rem;
  padding: .05rem .14rem;
  border: 1px solid rgba(22,116,201,.22);
  border-radius: 999px;
  background: rgba(255,255,255,.86);
  color: var(--contact-primary-dark);
  font-size: .22rem;
  line-height: 1.5;
}

.m-single-template .m-single-entry .vipzai-contact__notice {
  padding: .16rem .18rem;
  margin: .18rem 0 0;
  border-left: .05rem solid var(--contact-primary);
  border-radius: .07rem;
  background: var(--contact-white);
  color: var(--contact-text);
  line-height: 1.8;
}

.m-single-template .m-single-entry .vipzai-contact__notice strong,
.m-single-template .m-single-entry .vipzai-contact__support strong {
  color: var(--contact-heading);
}

.m-single-template .m-single-entry .vipzai-contact__grid {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: .18rem;
  margin: 0;
}

.m-single-template .m-single-entry .vipzai-contact__card {
  min-width: 0;
  padding: .24rem .2rem;
  border: 1px solid var(--contact-border);
  border-radius: .12rem;
  background: var(--contact-white);
}

.m-single-template .m-single-entry .vipzai-contact__card h2 {
  position: relative;
  padding-left: .15rem;
  margin: 0 0 .18rem;
  color: var(--contact-heading);
  font-size: .31rem;
  font-weight: 700;
  line-height: 1.45;
}

.m-single-template .m-single-entry .vipzai-contact__card h2::before {
  position: absolute;
  top: .22em;
  bottom: .22em;
  left: 0;
  width: .05rem;
  content: "";
  border-radius: .03rem;
  background: var(--contact-primary);
}

.m-single-template .m-single-entry .vipzai-contact__details {
  margin: 0;
}

.m-single-template .m-single-entry .vipzai-contact__detail {
  display: grid;
  grid-template-columns: 1.25rem minmax(0,1fr);
  gap: .1rem;
  padding: .14rem 0;
  border-top: 1px solid #edf1f5;
}

.m-single-template .m-single-entry .vipzai-contact__detail:first-child {
  padding-top: 0;
  border-top: 0;
}

.m-single-template .m-single-entry .vipzai-contact__detail dt,
.m-single-template .m-single-entry .vipzai-contact__detail dd {
  margin: 0;
}

.m-single-template .m-single-entry .vipzai-contact__detail dt {
  color: var(--contact-muted);
}

.m-single-template .m-single-entry .vipzai-contact__detail dd {
  min-width: 0;
  color: var(--contact-heading);
}

.m-single-template .m-single-entry .vipzai-contact__detail a {
  color: var(--contact-primary-dark);
  text-decoration: none;
}

.m-single-template .m-single-entry .vipzai-contact__actions {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: .1rem;
  margin-top: .2rem;
}

.m-single-template .m-single-entry .vipzai-contact__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: .68rem;
  padding: .1rem .12rem;
  border: 1px solid var(--contact-primary);
  border-radius: .07rem;
  background: var(--contact-white);
  color: var(--contact-primary);
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
}

.m-single-template .m-single-entry .vipzai-contact__button--primary {
  background: var(--contact-primary);
  color: var(--contact-white);
}

.m-single-template .m-single-entry .vipzai-contact__lead {
  margin: 0 0 .14rem;
  line-height: 1.8;
}

.m-single-template .m-single-entry .vipzai-contact__requirements {
  padding-left: .38rem;
  margin: 0;
}

.m-single-template .m-single-entry .vipzai-contact__requirements li {
  padding-left: .02rem;
  margin-bottom: .12rem;
  line-height: 1.75;
}

.m-single-template .m-single-entry .vipzai-contact__support {
  padding: .16rem .18rem;
  margin-top: .18rem;
  border: 1px dashed #cbd7e2;
  border-radius: .08rem;
  background: var(--contact-soft);
  line-height: 1.8;
}

@media (max-width: 380px) {
  .m-single-template .m-single-entry .vipzai-contact__actions {
    grid-template-columns: minmax(0,1fr);
  }
  .m-single-template .m-single-entry .vipzai-contact__detail {
    grid-template-columns: 1.05rem minmax(0,1fr);
  }
}

/* =========================================================
   VIPZAI 售后服务内容组件（手机端）
   后台正文根节点：.vipzai-after-sales
   ========================================================= */
.m-single-template .m-single-entry .vipzai-after-sales,
.m-single-template .m-single-entry .vipzai-after-sales * {
  box-sizing: border-box;
}

.m-single-template .m-single-entry .vipzai-after-sales {
  --as-primary: #1674c9;
  --as-primary-dark: #0f5fa8;
  --as-heading: #17324d;
  --as-text: #465568;
  --as-border: #e4eaf0;
  --as-soft: #f5f9fc;
  --as-white: #fff;
  width: 100%;
  color: var(--as-text);
  overflow-wrap: anywhere;
}

.m-single-template .m-single-entry .vipzai-after-sales__hero {
  position: relative;
  padding: .28rem .22rem .24rem;
  margin: 0 0 .18rem;
  overflow: hidden;
  border: 1px solid var(--as-border);
  border-radius: .1rem;
  background: linear-gradient(135deg, rgba(22,116,201,.09), rgba(22,116,201,.02));
}

.m-single-template .m-single-entry .vipzai-after-sales__hero::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: .05rem;
  content: "";
  background: var(--as-primary);
}

.m-single-template .m-single-entry .vipzai-after-sales__eyebrow {
  margin: 0 0 .06rem;
  color: var(--as-primary);
  font-size: .22rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .06em;
}

.m-single-template .m-single-entry .vipzai-after-sales__hero h2 {
  margin: 0 0 .12rem;
  color: var(--as-heading);
  font-size: .34rem;
  font-weight: 700;
  line-height: 1.4;
}

.m-single-template .m-single-entry .vipzai-after-sales__intro {
  margin: 0;
  color: var(--as-text);
  line-height: 1.85;
}

.m-single-template .m-single-entry .vipzai-after-sales__links,
.m-single-template .m-single-entry .vipzai-after-sales__contact-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .1rem;
}

.m-single-template .m-single-entry .vipzai-after-sales__links {
  margin-top: .18rem;
}

.m-single-template .m-single-entry a.vipzai-after-sales__link,
.m-single-template .m-single-entry a.vipzai-after-sales__link:visited {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: .68rem;
  padding: .1rem .12rem;
  border: 1px solid var(--as-primary);
  border-radius: .07rem;
  background: var(--as-white);
  color: var(--as-primary);
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
}

.m-single-template .m-single-entry a.vipzai-after-sales__link--primary,
.m-single-template .m-single-entry a.vipzai-after-sales__link--primary:visited {
  background: var(--as-primary);
  border-color: var(--as-primary);
  color: var(--as-white);
}

.m-single-template .m-single-entry a.vipzai-after-sales__link:active,
.m-single-template .m-single-entry a.vipzai-after-sales__link:focus-visible {
  background: var(--as-primary-dark);
  border-color: var(--as-primary-dark);
  color: var(--as-white);
  text-decoration: none;
}

.m-single-template .m-single-entry .vipzai-after-sales__commitments {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: .1rem;
  padding: 0;
  margin: .2rem 0 0;
  list-style: none;
}

.m-single-template .m-single-entry .vipzai-after-sales__commitment {
  min-width: 0;
  padding: .16rem .18rem;
  margin: 0;
  border: 1px solid var(--as-border);
  border-radius: .08rem;
  background: rgba(255,255,255,.88);
}

.m-single-template .m-single-entry .vipzai-after-sales__commitment strong {
  display: block;
  margin-bottom: .05rem;
  color: var(--as-heading);
  line-height: 1.5;
}

.m-single-template .m-single-entry .vipzai-after-sales__commitment span {
  display: block;
  color: var(--as-text);
  line-height: 1.7;
}

.m-single-template .m-single-entry .vipzai-after-sales__card {
  padding: .22rem .18rem;
  margin: 0 0 .16rem;
  border: 1px solid var(--as-border);
  border-radius: .1rem;
  background: var(--as-white);
}

.m-single-template .m-single-entry .vipzai-after-sales__card > h2 {
  position: relative;
  padding-left: .18rem;
  margin: 0 0 .16rem;
  color: var(--as-heading);
  font-size: .31rem;
  font-weight: 700;
  line-height: 1.5;
}

.m-single-template .m-single-entry .vipzai-after-sales__card > h2::before {
  position: absolute;
  top: .22em;
  bottom: .22em;
  left: 0;
  width: .05rem;
  content: "";
  border-radius: .03rem;
  background: var(--as-primary);
}

.m-single-template .m-single-entry .vipzai-after-sales__card h3 {
  margin: .22rem 0 .08rem;
  color: var(--as-heading);
  font-size: .28rem;
  font-weight: 700;
  line-height: 1.6;
}

.m-single-template .m-single-entry .vipzai-after-sales__card h3:first-of-type {
  margin-top: 0;
}

.m-single-template .m-single-entry .vipzai-after-sales__card p {
  margin: .1rem 0;
  line-height: 1.85;
}

.m-single-template .m-single-entry .vipzai-after-sales__card ul,
.m-single-template .m-single-entry .vipzai-after-sales__card ol {
  padding-left: .38rem;
  margin: .12rem 0;
}

.m-single-template .m-single-entry .vipzai-after-sales__card li {
  margin-bottom: .1rem;
  line-height: 1.8;
}

.m-single-template .m-single-entry .vipzai-after-sales__notice {
  padding: .16rem .18rem;
  margin: .16rem 0;
  border-left: .05rem solid var(--as-primary);
  border-radius: .06rem;
  background: var(--as-soft);
  line-height: 1.8;
}

.m-single-template .m-single-entry .vipzai-after-sales__notice strong {
  color: var(--as-heading);
}

.m-single-template .m-single-entry .vipzai-after-sales__table-wrap {
  max-width: 100%;
  margin-top: .16rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.m-single-template .m-single-entry table.vipzai-after-sales__table {
  display: table;
  width: 100%;
  min-width: 7rem;
  max-width: none;
  margin: 0;
  overflow: visible;
  border-collapse: collapse;
}

.m-single-template .m-single-entry .vipzai-after-sales__table th,
.m-single-template .m-single-entry .vipzai-after-sales__table td {
  padding: .14rem .16rem;
  border: 1px solid var(--as-border);
  text-align: left;
  vertical-align: top;
  line-height: 1.75;
}

.m-single-template .m-single-entry .vipzai-after-sales__table th {
  width: 30%;
  background: var(--as-soft);
  color: var(--as-heading);
  font-weight: 600;
}

.m-single-template .m-single-entry .vipzai-after-sales__steps {
  display: grid;
  gap: .11rem;
  padding: 0;
  margin: 0;
  list-style: none;
  counter-reset: vipzai-after-sales-step;
}

.m-single-template .m-single-entry .vipzai-after-sales__step {
  position: relative;
  min-height: .82rem;
  padding: .15rem .14rem .15rem .72rem;
  margin: 0;
  border: 1px solid var(--as-border);
  border-radius: .08rem;
  background: var(--as-white);
  line-height: 1.8;
  counter-increment: vipzai-after-sales-step;
}

.m-single-template .m-single-entry .vipzai-after-sales__step::before {
  position: absolute;
  top: .16rem;
  left: .16rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: .38rem;
  height: .38rem;
  content: counter(vipzai-after-sales-step);
  border-radius: 50%;
  background: var(--as-primary);
  color: var(--as-white);
  font-weight: 700;
  line-height: 1;
}

.m-single-template .m-single-entry .vipzai-after-sales__step strong {
  color: var(--as-heading);
}

.m-single-template .m-single-entry .vipzai-after-sales__faq {
  display: grid;
  gap: .1rem;
}

.m-single-template .m-single-entry .vipzai-after-sales__faq details {
  overflow: hidden;
  margin: 0;
  border: 1px solid var(--as-border);
  border-radius: .08rem;
  background: var(--as-white);
}

.m-single-template .m-single-entry .vipzai-after-sales__faq summary {
  position: relative;
  padding: .16rem .56rem .16rem .18rem;
  cursor: pointer;
  list-style: none;
  color: var(--as-heading);
  font-weight: 600;
  line-height: 1.65;
}

.m-single-template .m-single-entry .vipzai-after-sales__faq summary::-webkit-details-marker {
  display: none;
}

.m-single-template .m-single-entry .vipzai-after-sales__faq summary::after {
  position: absolute;
  top: 50%;
  right: .2rem;
  content: "+";
  color: var(--as-primary);
  font-size: .38rem;
  line-height: 1;
  transform: translateY(-50%);
}

.m-single-template .m-single-entry .vipzai-after-sales__faq details[open] summary::after {
  content: "−";
}

.m-single-template .m-single-entry .vipzai-after-sales__faq details p {
  padding: 0 .18rem .18rem;
  margin: 0;
  color: var(--as-text);
  line-height: 1.85;
}

.m-single-template .m-single-entry .vipzai-after-sales__contact {
  display: block;
}

.m-single-template .m-single-entry .vipzai-after-sales__contact-text p {
  margin-bottom: 0;
}

.m-single-template .m-single-entry .vipzai-after-sales__contact-actions {
  margin-top: .18rem;
}

@media (max-width: 380px) {
  .m-single-template .m-single-entry .vipzai-after-sales__links,
  .m-single-template .m-single-entry .vipzai-after-sales__contact-actions {
    grid-template-columns: minmax(0,1fr);
  }
}
