/* ============================================================
   妙推（MIOMAX）商户产品说明书 H5
   严格按 Ardot 设计稿还原 (375 x 812)
   响应式：以 375px 设计稿为基准，全部尺寸换算为 vw，
   任意分辨率下宽度铺满屏幕、等比缩放。
   换算公式：1px = (100 / 375)vw = 0.2667vw
   ============================================================ */

:root {
  --brand: #14C74F;          /* 品牌绿 */
  --brand-dark: #10AF45;     /* 按压态 */
  --bg-ask: #E2F8E9;         /* 助手首页背景（绿 12% 叠加白） */
  --bg-chat: #D8EFE0;        /* 对话页背景 */
  --gray-tab: #848484;       /* 底部 tab 文字 */
  --gray-7e: #7E7E7E;
  --gray-b8: #B8B8B8;
  --gray-8b: #8B8B8B;
  --gray-f0: #F0F0F0;        /* 说明03 内容区 */
  --gray-ef: #EFEFEF;        /* 说明05 内容区 */
  --gray-f4: #F4F4F4;        /* 说明07 内容区 */
  --text-dark: #333333;
  --pill-green: #A4E8BA;     /* 换一批按钮底 */
  --grad-purple: #5E3EC3;    /* 渐变紫 */
  --grad-pink: #FF3FB0;      /* 渐变粉 */
  --gray-line: #BABABA;      /* 表格灰分隔线 */
}

* { margin: 0; padding: 0; box-sizing: border-box; -webkit-tap-highlight-color: transparent; }

html, body {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

body {
  font-family: "Microsoft YaHei", "PingFang SC", "Helvetica Neue", Arial, sans-serif;
  color: #000;
}

/* ---------- 手机外框：铺满全宽 ---------- */
.phone {
  position: relative;
  width: 100%;
  height: 100dvh;
  overflow: hidden;
  background: #fff;
}

/* ============================================================
   通用：品牌区（MIOMAX / 米奥麦克斯 → PNG 图片）
   设计稿尺寸：146 x 49 @ (31.5, 36)
   ============================================================ */
.brand {
  position: absolute;
  top: 9.6vw;
  left: 8.4vw;
  z-index: 5;
  display: block;
  width: 38.93vw;
  height: 13.07vw;
}
.brand img {
  display: block;
  width: 100%;
  height: 100%;
  -webkit-user-select: none;
  user-select: none;
  pointer-events: none;
}
.brand--center {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
}

/* ============================================================
   底部固定 Tab（首页 / 问我 / 预约）
   设计稿：图标区 y=704 高63，白底 y=732 高80，文字 y=767
   ============================================================ */
.tab-bar {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 28.8vw;
  z-index: 50;
}
.tab-bg {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 18.67vw;
  background: #fff;
}
.tab-icons {
  position: absolute;
  top: 2.67vw; left: 9.6vw; right: 9.6vw;
  height: 16.8vw;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.tab-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
}
.tab-item .icon {
  width: 8.53vw;
  height: 8.53vw;
  display: flex;
  align-items: center;
  justify-content: center;
}
.tab-item .icon img { width: 8.53vw; height: 8.53vw; display: block; }
.tab-item.center .icon {
  width: 16.8vw;
  height: 16.8vw;
  border-radius: 50%;
  background: #fff;
  border: 0.4vw solid #fff;
  box-shadow: 0 0 0 0.27vw rgba(0,0,0,0.02);
}
.tab-item.center .icon img { width: 15.73vw; height: 15.73vw; border-radius: 50%; }
.tab-labels {
  position: absolute;
  bottom: 3.73vw; left: 10.27vw; right: 10.27vw;
  height: 5.6vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 3.73vw;
  color: var(--gray-tab);
  line-height: 5.6vw;
}
.tab-labels span { width: 7.47vw; text-align: center; }
.tab-labels .lb-center { width: 7.47vw; }

/* ============================================================
   首页滑动容器（商户说明 1-7）
   ============================================================ */
.swiper {
  position: absolute;
  inset: 0;
  display: flex;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  cursor: grab;
  touch-action: pan-x pan-y;
}
.swiper.dragging { cursor: grabbing; }
.swiper::-webkit-scrollbar { display: none; }
.slide {
  position: relative;
  flex: 0 0 100%;
  width: 100%;
  height: 100%;
  scroll-snap-align: start;
  scroll-snap-stop: always;
  overflow-y: auto;
  overflow-x: hidden;
  background: var(--brand);
}
.slide::-webkit-scrollbar { display: none; }

/* ---------- 02 视频介绍页 ---------- */
.slide-video { background: var(--brand); }
.video-wrap {
  position: absolute;
  top: 57.33vw; left: 5.33vw;
  width: 89.33vw;
  border-radius: 2.13vw;
  overflow: hidden;
  background: #000;
  box-shadow: 0 0.53vw 1.6vw rgba(0,0,0,0.25);
}
.s-video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #000;
}
.video-title {
  position: absolute;
  top: 113.33vw; left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 4.27vw;
  font-weight: 700;
  line-height: 5.6vw;
  white-space: nowrap;
}

/* ---------- 06 支持平台页 ---------- */
.sp-title {
  position: absolute;
  top: 9.87vw; left: 26.13vw;
  color: #fff;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 8.53vw;
  white-space: nowrap;
}
.sp-group {
  position: absolute;
  left: 10.4vw;
  width: 75vw;
}
.sp-group.g1 { top: 22.4vw; }
.sp-group.g2 { top: 55.47vw; }
.sp-group.g3 { top: 89.33vw; }
.sp-group.g4 { top: 122.13vw; }
.sp-cat {
  font-size: 3.73vw;
  color: #fff;
  opacity: .92;
  line-height: 4.8vw;
  margin-bottom: 2.67vw;
}
.sp-icons { display: flex; }
.sp-item {
  text-align: center;
  margin-right: 5.33vw;
}
.sp-item:last-child { margin-right: 0; }
.sp-item img {
  width: 11.73vw; height: 11.73vw;
  display: block;
}
.sp-item span {
  display: block;
  margin-top: 1.33vw;
  font-size: 2.93vw;
  line-height: 3.73vw;
  color: rgba(255,255,255,.85);
  white-space: nowrap;
}
.sp-footer {
  position: absolute;
  top: 152vw; left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 3.73vw;
  line-height: 5.6vw;
  white-space: nowrap;
}

/* ---------- 10 案例展示页 ---------- */
.case-title {
  position: absolute;
  top: 18.13vw; left: 32.53vw;
  color: #fff;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 8.53vw;
  white-space: nowrap;
}
.case-grid {
  position: absolute;
  top: 36.53vw; left: 5.07vw; right: 5.07vw;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2vw;
}
.case-item {
  width: 100%;
  aspect-ratio: 3 / 2;
  border-radius: 1.6vw;
  overflow: hidden;
  background: rgba(255,255,255,0.08);
}
.case-item img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

/* ---------- 11 更多页 ---------- */
.more-block {
  position: absolute;
  top: 22vw; left: 8.4vw; right: 8.4vw;
  color: #fff;
}
.more-title {
  font-size: 5.87vw;
  font-weight: 700;
  line-height: 8vw;
  margin-bottom: 2.13vw;
}
.more-desc {
  font-size: 3.73vw;
  line-height: 5.6vw;
  margin-bottom: 6.67vw;
  opacity: .95;
}
.more-img {
  position: absolute;
  right: 0; bottom: 21.33vw;
  width: 80vw;
  text-align: center;
}
.more-img img {
  width: 100%;
  height: auto;
  display: block;
}

/* ---------- 11 测试体验页（浅灰底 + 台卡 + NFC 贴纸） ---------- */
.slide-test {
  background: var(--gray-ef);
}
.slide-test .page-indicator {
  color: var(--gray-tab);
  text-shadow: none;
}
.test-title {
  position: absolute;
  top: 19.73vw; left: 8.27vw;
  width: 84vw;
}
.test-title-big {
  font-size: 8vw;
  font-weight: 700;
  line-height: 9.6vw;
  color: #1a1a1a;
}
.test-title-sm {
  margin-top: calc(4.8vw - 15px);
  font-size: 3.47vw;
  font-weight: 400;
  line-height: 5.6vw;
  color: var(--gray-tab);
}
.test-title-sm .sm-strong {
  font-weight: 700;
}
.test-card {
  position: absolute;
  top: 61.33vw; left: 18.93vw;
  width: 66.67vw; height: 92.11vw;
}
.test-ka {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: fill;
  -webkit-user-select: none;
  user-select: none;
  pointer-events: none;
}
.test-nfc {
  position: absolute;
  left: 54.8%;
  top: 37.55%;
  transform: translate(-50%, -50%);
  width: 13.33vw; height: 13.33vw;
  z-index: 5;
  display: block;
  animation: nfc-pulse 1.6s ease-in-out infinite;
}
.test-nfc img {
  display: block;
  width: 100%;
  height: 100%;
  -webkit-user-select: none;
  user-select: none;
  pointer-events: none;
}
@keyframes nfc-pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.12); }
}
.test-note {
  position: absolute;
  top: 155.73vw; left: 24.27vw;
  font-size: 3.73vw;
  line-height: 9.87vw;
  color: var(--gray-tab);
  white-space: nowrap;
}

/* 右上角页码指示（如 1/7） */
.page-indicator {
  position: absolute;
  top: 9.6vw;
  right: 5.33vw;
  z-index: 10;
  font-size: 3.2vw;
  line-height: 5.6vw;
  color: #fff;
  text-shadow: 0 0.27vw 0.53vw rgba(0,0,0,0.45);
  -webkit-user-select: none;
  user-select: none;
}

/* 说明01 / 02 / 04 / 06 整页绿 */
.slide-green { background: var(--brand); }

/* 说明03：上绿下灰 */
.slide-mix .panel {
  position: absolute;
  left: 0; top: 0;
  width: 100%;
  height: 151.2vw;
  background: var(--gray-f0);
}
/* 说明05：顶部绿 + 下部灰面板 */
.slide05 .panel {
  position: absolute;
  left: 0; top: 42.67vw;
  width: 100%;
  height: 173.87vw;
  background: var(--gray-ef);
}
/* 说明07：底部灰面板（顶部固定定位，与熊一致，不随视口高度变化） */
.slide07 .panel {
  position: absolute;
  left: 0; top: 158.13vw;
  width: 100%;
  height: 58.4vw;
  background: var(--gray-f4);
}

/* ---------- 说明01 封面 ---------- */
.cover-title {
  position: absolute;
  top: 64.53vw;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 12.27vw;
  font-weight: 700;
  line-height: 16.27vw;
  white-space: nowrap;
}
/* 封面替换图（shouce.png，位置同原 title） */
.cover-img {
  position: absolute;
  top: 27.2vw;
  left: 50%;
  transform: translateX(-50%);
  width: 64vw;
}
.cover-img img { width: 100%; display: block; }
/* 封面品牌图：居中偏右，位于 shouce.png 正下方 */
.brand-cover {
  top: 147.33vw;
  left: 50%;
  transform: translateX(-50%);
  margin-left: 4vw;
  text-align: center;
}
.brand-cover img { width: 30vw; height: auto; }
.cover-sub {
  position: absolute;
  top: 82.67vw;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 7.47vw;
  font-weight: 700;
  line-height: 9.87vw;
  white-space: nowrap;
}
.cover-copy {
  position: absolute;
  bottom: 14.13vw;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 3.2vw;
  line-height: 5.6vw;
  white-space: nowrap;
  z-index: 5;
}

/* ---------- 说明02 ---------- */
.s02-title {
  position: absolute;
  top: 33.33vw; left: 8.4vw;
  color: #fff;
  font-size: 12.27vw;
  font-weight: 700;
  line-height: 16.27vw;
}
.s02-sub {
  position: absolute;
  top: 49.6vw; left: 8.4vw;
  color: #fff;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 8.53vw;
  white-space: pre-line;
}
.s02-desc {
  position: absolute;
  top: 70.13vw; left: 8.4vw;
  width: 83.2vw;
  color: #fff;
  font-size: 3.73vw;
  line-height: 5.6vw;
}
.s02-bear {
  position: absolute;
  left: 8.4vw; right: auto;
  top: 97.87vw;
  width: 83.2vw;
  text-align: center;
}
.s02-bear img { display: block; width: 100%; height: auto; }
.s02-applicable {
  position: absolute;
  top: 150.13vw; left: 8.4vw;
  width: 83.2vw;
  color: #fff;
  font-size: 3.73vw;
  line-height: 5.6vw;
}

/* ---------- 说明03 ---------- */
.s03-content {
  position: absolute;
  top: 9.33vw; left: 8.53vw;
  z-index: 3;
}
.s03-content .q {
  font-size: 10.67vw;
  font-weight: 700;
  line-height: 12.8vw;
  color: #000;
  margin-bottom: 4.53vw;
}
.s03-step { margin-bottom: 8.53vw; }
.s03-step .t {
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 7.68vw;
  color: #000;
  margin-bottom: 1.07vw;
}
.s03-step .d {
  font-size: 3.73vw;
  line-height: 5.6vw;
  color: #000;
}
/* 描述文字宽度与设计稿一致（308 / 322 / 242 px） */
.s03-content .s03-step:nth-child(2) .d { width: 82.13vw; }
.s03-content .s03-step:nth-child(3) .d { width: 85.87vw; }
/* 第三步：强制一行显示（生成链接后制作卡牌让用户扫码或NFC碰一碰） */
.s03-content .s03-step:nth-child(4) .d { width: 89.33vw; font-size: 3.47vw; white-space: nowrap; }
.s03-bear {
  position: absolute;
  left: 0; top: 102.4vw;
  width: 82.67vw;
}
.s03-bear img { display: block; width: 100%; }

/* ---------- 说明04 ---------- */
.s04-title {
  position: absolute;
  top: 28.8vw; left: 8.53vw;
  color: #fff;
  font-size: 9.6vw;
  font-weight: 700;
  line-height: 11.52vw;
}
.s04-list {
  position: absolute;
  top: 41.87vw; left: 8.53vw;
  width: 83.2vw;
  color: #fff;
  font-size: 4vw;
  line-height: 7.47vw;
}
.s04-bear {
  position: absolute;
  left: 0; top: 96.53vw;
  width: 100%;
}
.s04-bear img { display: block; width: 100%; }

/* ---------- 说明05 ---------- */
.s05-bear {
  position: absolute;
  top: 6.93vw; right: 8.27vw;
  width: 34.08vw;
  z-index: 4;
}
.s05-bear img { display: block; width: 100%; }
.s05-title {
  position: absolute;
  top: 60vw; left: 50%;
  transform: translateX(-50%);
  font-size: 8.53vw;
  font-weight: 700;
  line-height: 10.24vw;
  color: #000;
  white-space: nowrap;
}
.s05-sub {
  position: absolute;
  top: 71.47vw; left: 50%;
  transform: translateX(-50%);
  font-size: 4.27vw;
  font-weight: 700;
  line-height: 5.6vw;
  color: var(--brand);
  white-space: nowrap;
}
/* 套餐表格 */
.pkg-table {
  position: absolute;
  top: 80vw; left: 5.87vw;
  width: 88.53vw;
  font-size: 4vw;
  color: #000;
}
.pkg-table .row {
  display: grid;
  grid-template-columns: 1.1fr 1fr 0.8fr 1fr;
  height: 10.93vw;
  align-items: center;
  text-align: center;
}
.pkg-table .row.head { font-weight: 700; }
.pkg-table .sep {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  width: 87.73vw;
  height: 0.27vw;
}
.pkg-table .sep.brand {
  background: var(--brand);
  position: relative;
  top: -1.33vw;
}
.pkg-table .sep.gray { background: var(--gray-line); }
.s05-note {
  position: absolute;
  top: 130.13vw; left: 6.13vw;
  width: 87.73vw;
  font-size: 3.47vw;
  line-height: 5.6vw;
  color: var(--brand);
}
/* 平台图标行 */
.platforms {
  position: absolute;
  top: 144vw; left: 12.27vw;
  display: flex;
  align-items: center;
  gap: 6.67vw;
}
.platform {
  width: 13.87vw;
  height: 13.87vw;
  border-radius: 50%;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.platform img { width: 13.87vw; height: 13.87vw; display: block; }
.platform--other {
  background: var(--brand);
  color: #fff;
  font-size: 4vw;
  font-weight: 700;
  line-height: 10.93vw;
}
.platform-labels {
  position: absolute;
  top: 159.2vw;
  left: 12.27vw;
  display: flex;
  gap: 6.67vw;
  font-size: 3.2vw;
  line-height: 5.6vw;
  color: var(--gray-tab);
}
.platform-labels span {
  flex: none;
  width: 13.87vw;
  text-align: center;
  white-space: nowrap;
}
.s05-copy {
  position: absolute;
  bottom: 30.13vw; left: 50%;
  transform: translateX(-50%);
  font-size: 3.2vw;
  line-height: 5.6vw;
  color: var(--gray-tab);
  white-space: nowrap;
  z-index: 5;
}

/* ---------- 说明06 ---------- */
.s06-title {
  position: absolute;
  top: 12vw; left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 8.53vw;
  font-weight: 700;
  line-height: 10.24vw;
  white-space: nowrap;
}
.s06-sub {
  position: absolute;
  top: 24.27vw; left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 4.27vw;
  line-height: 5.6vw;
  white-space: nowrap;
}
/* 充值表格 */
.recharge {
  position: absolute;
  top: 34.13vw; left: 5.33vw;
  width: 91.47vw;
  font-size: 3.73vw;
  color: #fff;
}
.recharge .row {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr 0.8fr 1fr;
  height: 10.93vw;
  align-items: center;
  text-align: center;
}
.recharge .row.head {
  background: #fff;
  color: var(--brand);
  font-size: 4vw;
  font-weight: 700;
  height: 9.87vw;
  border-radius: 2.67vw;
}
.recharge .row .c-strong { font-weight: 700; }
.recharge .sep {
  width: 91.47vw;
  height: 0.27vw;
  background: #fff;
}
.s06-bear {
  position: absolute;
  left: 0; top: 110.4vw;
  width: 100%;
}
.s06-bear img { display: block; width: 100%; }

/* ---------- 说明07 ---------- */
.s07-title {
  position: absolute;
  top: 12vw; left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 8.53vw;
  font-weight: 700;
  line-height: 10.24vw;
  white-space: nowrap;
}
.s07-sub {
  position: absolute;
  top: 24.27vw; left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 4.27vw;
  line-height: 5.6vw;
  white-space: nowrap;
}
/* 对比表格 */
.compare {
  position: absolute;
  top: 34.93vw; left: 4.27vw;
  width: 91.47vw;
  font-size: 3.73vw;
  color: #fff;
}
.compare .row {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr 1.1fr 1fr;
  height: 10.93vw;
  align-items: center;
  text-align: center;
}
.compare .row.head {
  background: #fff;
  color: var(--brand);
  font-size: 4vw;
  font-weight: 700;
  height: 9.87vw;
  border-radius: 2.67vw;
}
.compare .sep {
  width: 91.47vw;
  height: 0.27vw;
  background: #fff;
}
.s07-desc {
  position: absolute;
  top: 99.73vw; left: 5.33vw;
  width: 46.93vw;
  color: #fff;
  font-size: 3.73vw;
  line-height: 8vw;
}
.s07-bear {
  position: absolute;
  right: 0; top: 104.27vw;
  width: 51.2vw;
}
.s07-bear img { display: block; width: 100%; }

/* ============================================================
   商户预约页 booking.html
   ============================================================ */
.booking-page {
  position: relative;
  height: 100%;
  background: var(--brand);
}
.bk-logo {
  position: absolute;
  top: 34.93vw; left: 50%;
  transform: translateX(-50%);
  width: 26.13vw; height: 26.13vw;
  border-radius: 50%;
  overflow: hidden;
}
.bk-logo img { width: 100%; height: 100%; display: block; }
.bk-title {
  position: absolute;
  top: 65.07vw; left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 8.53vw;
  font-weight: 700;
  line-height: 10.24vw;
  white-space: nowrap;
}
.bk-sub {
  position: absolute;
  top: 76.27vw; left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 5.33vw;
  line-height: 5.6vw;
  white-space: nowrap;
}
/* 预约表单 */
.bk-form {
  position: absolute;
  top: 94.67vw; left: 50%;
  transform: translateX(-50%);
  width: 78.4vw;
}
.bk-input {
  width: 100%;
  height: 13.33vw;
  background: #fff;
  border: none;
  border-radius: 1.6vw;
  font-size: 4.27vw;
  color: #000;
  padding: 0 3.47vw;
  margin-bottom: 3.2vw;
  outline: none;
  font-family: inherit;
  -webkit-appearance: none;
}
.bk-input::placeholder { color: var(--gray-b8); }
.bk-btn {
  width: 100%;
  height: 13.33vw;
  background: #fff;
  color: var(--brand);
  border: 0.27vw solid var(--brand);
  border-radius: 1.6vw;
  font-size: 4.8vw;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
  -webkit-user-select: none;
  user-select: none;
}
.bk-btn:active { opacity: .8; }

/* 轻提示（复制成功等） */
.toast {
  position: fixed;
  left: 50%;
  bottom: 32vw;
  transform: translateX(-50%);
  background: rgba(0,0,0,0.75);
  color: #fff;
  font-size: 3.73vw;
  line-height: 5.6vw;
  padding: 2.67vw 5.33vw;
  border-radius: 2.67vw;
  white-space: nowrap;
  z-index: 300;
  pointer-events: none;
  opacity: 0;
  transition: opacity .3s;
}

/* ============================================================
   妙推助手（ask / chat）公共：底部 返回+输入框+发送
   ============================================================ */
.assistant-footer {
  position: absolute;
  left: 0; right: 0; bottom: 6.67vw;
  height: 22.93vw;
  z-index: 60;
}
.assistant-footer .back-btn {
  position: absolute;
  top: 9.6vw; left: 3.47vw;
  width: 13.33vw; height: 13.33vw;
  background: var(--brand);
  border-radius: 6.67vw 0 0 6.67vw; /* 左侧圆角 */
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 4.27vw;
  font-weight: 700;
  line-height: 3.73vw;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
}
.assistant-footer .input-wrap {
  position: absolute;
  top: 9.6vw; left: 17.87vw;
  width: 78.4vw; height: 13.33vw;
  background: #fff;
  border-radius: 0 6.67vw 6.67vw 0; /* 右侧圆角 */
}
.assistant-footer .input-wrap input {
  width: 100%; height: 100%;
  border: none;
  outline: none;
  background: transparent;
  font-size: 4.27vw;
  color: #000;
  padding-left: 3.47vw;
  padding-right: 13.33vw;
  font-family: inherit;
}
.assistant-footer .input-wrap input::placeholder { color: var(--gray-b8); }
.assistant-footer .send-btn {
  position: absolute;
  top: 11.73vw; right: 5.07vw;
  width: 9.07vw; height: 9.07vw;
  border-radius: 50%;
  background: var(--brand);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.assistant-footer .send-btn img { width: 4.8vw; height: 4.8vw; display: block; }

/* ============================================================
   妙推助手首页 ask.html
   ============================================================ */
.ask-page {
  position: relative;
  height: 100%;
  background: var(--bg-ask);
  overflow: hidden;
}
.ask-head {
  position: absolute;
  top: 28.8vw; left: 5.33vw;
  z-index: 5;
}
.ask-hello {
  font-size: 5.33vw;
  font-weight: 700;
  line-height: 6.4vw;
  background: linear-gradient(135deg, var(--grad-purple) 0%, var(--grad-pink) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.ask-name {
  margin-top: 6.67vw;
  font-size: 5.33vw;
  font-weight: 700;
  line-height: 6.4vw;
  background: linear-gradient(135deg, var(--grad-purple) 0%, #000 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.ask-tip {
  margin-top: 2.93vw;
  font-size: 3.47vw;
  line-height: 3.73vw;
  color: var(--gray-7e);
}
.ask-bear {
  position: absolute;
  top: 21.87vw; right: 6.67vw;
  width: 34.13vw;
  z-index: 4;
}
.ask-bear img { display: block; width: 100%; }

/* 你可能想问 卡片 */
.ask-card {
  position: absolute;
  top: 56.27vw; left: 3.47vw;
  width: 92.8vw;
  background: rgba(255,255,255,0.51);
  border: 0.27vw solid rgba(255,255,255,0.9);
  padding: 5.33vw 4vw 2.93vw;
}
.ask-card .card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 2.67vw;
}
.ask-card .card-title {
  font-size: 4.27vw;
  font-weight: 700;
  line-height: 5.12vw;
  color: #000;
}
.ask-card .card-en {
  margin-top: 1.07vw;
  font-size: 2.67vw;
  line-height: 3.73vw;
  color: var(--brand);
  letter-spacing: 0.13vw;
}
.ask-card .refresh-btn {
  display: flex;
  align-items: center;
  gap: 0.27vw;
  height: 5.87vw;
  padding: 0 1.87vw;
  background: var(--pill-green);
  border: 0.27vw solid rgba(255,255,255,0.9);
  border-radius: 2.93vw;
  font-size: 2.67vw;
  line-height: 3.73vw;
  color: #333;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
}
.ask-card .refresh-btn img { width: 5.87vw; height: 5.87vw; }
.ask-card .q-list {
  display: flex;
  flex-direction: column;
  gap: 2.13vw;
}
.ask-card .q-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 13.6vw;
  padding: 0 4vw 0 5.07vw;
  background: #fff;
  border-radius: 14.4vw;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
}
.ask-card .q-item .q-text {
  display: flex;
  align-items: center;
  gap: 2.13vw;
  font-size: 3.73vw;
  line-height: 3.73vw;
  color: #000;
}
.ask-card .q-item .q-text img { width: 3.73vw; height: 3.73vw; flex: none; }
.ask-card .q-item .go-icon { width: 4.8vw; height: 4.8vw; flex: none; }

/* ============================================================
   妙推助手对话页 chat.html
   ============================================================ */
.chat-page {
  position: relative;
  height: 100%;
  background: var(--bg-chat);
  overflow: hidden;
}
.chat-body {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 22.93vw;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 0 3.47vw 5.33vw;
  scrollbar-width: none;
}
.chat-body::-webkit-scrollbar { display: none; }

/* 对话页顶部"你可能想问"（设计稿 Group3 位于 y=-33 被裁剪） */
.chat-picks {
  margin: -8.8vw -3.47vw 6.4vw;
  background: rgba(255,255,255,0.51);
  border: 0.27vw solid rgba(255,255,255,0.9);
  padding: 5.33vw 4vw 2.93vw;
}
.chat-picks .card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 2.67vw;
}
.chat-picks .card-title {
  font-size: 4.27vw;
  font-weight: 700;
  line-height: 5.12vw;
  color: #000;
}
.chat-picks .card-en {
  margin-top: 1.07vw;
  font-size: 2.67vw;
  line-height: 3.73vw;
  color: var(--brand);
  letter-spacing: 0.13vw;
}
.chat-picks .refresh-btn {
  display: flex;
  align-items: center;
  gap: 0.27vw;
  height: 5.87vw;
  padding: 0 1.87vw;
  background: var(--pill-green);
  border: 0.27vw solid rgba(255,255,255,0.9);
  border-radius: 2.93vw;
  font-size: 2.67vw;
  line-height: 3.73vw;
  color: #333;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
}
.chat-picks .refresh-btn img { width: 5.87vw; height: 5.87vw; }
.chat-picks .q-list { display: flex; flex-direction: column; gap: 2.13vw; }
.chat-picks .q-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 13.6vw;
  padding: 0 4vw 0 5.07vw;
  background: #fff;
  border-radius: 14.4vw;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
}
.chat-picks .q-text {
  display: flex;
  align-items: center;
  gap: 2.13vw;
  font-size: 3.73vw;
  line-height: 3.73vw;
  color: #000;
}
.chat-picks .q-text img { width: 3.73vw; height: 3.73vw; flex: none; }
.chat-picks .go-icon { width: 4.8vw; height: 4.8vw; flex: none; }

/* 消息气泡 */
.msg {
  display: flex;
  margin-bottom: 5.87vw;
}
.msg--user { flex-direction: row-reverse; align-items: flex-start; }
.msg--bot { align-items: flex-start; }
.msg .avatar {
  width: 8.53vw; height: 8.53vw;
  flex: none;
  border-radius: 50%;
  overflow: hidden;
}
.msg--user .avatar { margin-left: 2.67vw; }
.msg--bot .avatar { margin-right: 2.67vw; }
.msg .avatar img { width: 100%; height: 100%; display: block; }
.msg .bubble {
  max-width: 68vw;
  padding: 3.73vw 3.2vw;
  font-size: 3.47vw;
  line-height: 5.33vw;
}
.msg--bot .bubble {
  background: #fff;
  color: var(--text-dark);
  border-radius: 2.13vw;
  border-top-left-radius: 0;
}
.msg--user .bubble {
  background: var(--brand);
  color: #fff;
  border-radius: 2.13vw;
  border-top-right-radius: 0;
}
.msg .time {
  display: block;
  margin-top: 0.8vw;
  font-size: 2.13vw;
  line-height: 3.73vw;
  color: #fff;
}
.msg--bot .time { color: var(--gray-8b); }

/* ============================================================
   通用工具
   ============================================================ */
.hidden { display: none !important; }
