/* ============================================================
   redesign.css（文件名沿用 light-theme.css，内容为全新设计系统覆盖层）
   目标：把小程序从「线框感」升级为 2026 年一线 App 观感
   原则：无硬边框卡片 + 柔和投影 / 大圆角 / 强字重层级 / 橙色只做点缀
   本文件最后加载，通过同名覆盖 + CSS 变量在运行期全局生效。
   ============================================================ */

/* ==================== 1. 设计令牌（浅色精致版） ==================== */
:root, .mp-page {
  --bg-deep: #F4F5F7;          /* 页面底：极浅冷灰 */
  --bg-card: #FFFFFF;
  --bg-elevated: #EFF0F3;      /* 填充灰：搜索框/胶囊槽 */
  --brand-orange: #E85A17;
  --brand-orange-deep: #C84A16;
  --brand-blue: #2C71E8;
  --brand-gold: #B07E1F;
  --text-primary: #17191F;
  --text-secondary: #5A616C;
  --text-tertiary: #9BA1AB;
  --divider: #E9EBEF;
  --success: #1F9D63;
  --danger: #D64541;
  --light-bg: #FFFFFF;
  --radius-card: 16px;
  --radius-vip: 22px;
  --radius-btn: 999px;         /* 主按钮全圆角 */
  --shadow-card: 0 1px 2px rgba(23,25,31,0.04), 0 8px 24px rgba(23,25,31,0.06);
  --shadow-pop: 0 4px 12px rgba(23,25,31,0.08), 0 18px 48px rgba(23,25,31,0.12);
  --orange-soft: #FDEEE3;      /* 橙色 8% 底 */
  --gold-soft: #FAF3E2;
  --blue-soft: #EAF1FD;
}

/* ==================== 2. 全局按钮 / 卡片 / 标签 ==================== */
.btn-primary {
  border-radius: var(--radius-btn);
  background: var(--brand-orange);
  color: #FFFFFF;
  font-weight: 600;
  letter-spacing: 0.5px;
  box-shadow: 0 8px 20px rgba(232, 90, 23, 0.26);
}
.btn-primary:active { opacity: 0.9; }
.btn-primary[disabled] {
  background: #E4E6EA;
  color: #9BA1AB;
  box-shadow: none;
}
.btn-secondary {
  border-radius: var(--radius-btn);
  background: #FFFFFF;
  border: 1px solid #E2E4E9;
  color: var(--text-primary);
  font-weight: 600;
  letter-spacing: 0.5px;
}
.btn-secondary:active { background: #F5F6F8; }
.btn-danger { border-radius: var(--radius-btn); }

.mp-page .card {
  background: var(--bg-card);
  border: none;
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
}

/* 胶囊标签：去边框、柔和实底 */
.tag {
  border: none;
  background: var(--bg-elevated);
  color: var(--text-secondary);
  font-weight: 500;
}
.tag-orange { background: var(--orange-soft); color: var(--brand-orange-deep); }
.tag-blue { background: var(--blue-soft); color: var(--brand-blue); }
.tag-gold { background: var(--gold-soft); color: var(--brand-gold); }

/* 等宽数字：字体栈统一在 tokens.css 的 .text-num 定义（内嵌 EwDIN），此处仅保留数值特性 */
.text-num {
  font-variant-numeric: tabular-nums lining-nums;
  letter-spacing: 1px;
  font-weight: 600;
}

/* ==================== 3. 顶部导航（白底毛玻璃） ==================== */
/* 统一展示现代扁平导航栏：sticky 贴顶，不脱离文档流，彻底解决内容被遮挡裁切问题 */
.page-nav,
.home-nav,
.detail-nav,
.engagement-nav,
.account-nav,
.commerce-nav,
.member-account-nav {
  position: sticky !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 900 !important;
  background: rgba(255, 255, 255, 0.96) !important;
  backdrop-filter: blur(20px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
  flex: none !important;
}

.page-nav .page-nav-title,
.home-nav .page-nav-title,
.detail-nav .page-nav-title,
.engagement-nav .page-nav-title,
.account-nav .page-nav-title,
.account-nav .account-title,
.commerce-nav .page-nav-title,
.commerce-nav .commerce-nav-title,
.member-account-nav .page-nav-title,
.member-account-nav .account-title,
.member-account-nav h1 {
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  color: #17191F !important;
  font-weight: 700 !important;
  font-size: 17px !important;
  line-height: 48px !important;
  letter-spacing: 0.2px !important;
  text-align: center !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  white-space: nowrap !important;
  pointer-events: none !important;
}

.page-nav-status,
.account-nav > div:first-child[style*="height"],
.member-account-page header > div:first-child[style*="height"] {
  display: none !important;
  height: 0 !important;
}

.page-nav .page-nav-bar,
.account-nav-bar,
.commerce-nav-bar,
.member-account-nav {
  height: 48px !important;
  padding: 0 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
}

.page-nav .page-nav-back,
.account-back,
.commerce-back,
button[data-organizer-back],
button[data-growth-back] {
  position: absolute !important;
  left: 12px !important;
  width: 36px !important;
  height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  color: #17191F !important;
  cursor: pointer !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  transition: background 0.15s ease, transform 0.1s ease !important;
}

.page-nav .page-nav-back:active,
.account-back:active,
.commerce-back:active,
button[data-organizer-back]:active,
button[data-growth-back]:active {
  background: rgba(0, 0, 0, 0.06) !important;
  transform: scale(0.92) !important;
}

.page-nav .page-nav-back svg,
.account-back svg,
.commerce-back svg,
button[data-organizer-back] svg,
button[data-growth-back] svg {
  display: block;
  width: 20px;
  height: 20px;
}

/* Universal disclosure right-chevrons */
.calendar-arrow,
.garage-record-arrow,
.asset-arrow,
.mg-arrow,
.row-arrow,
.picker-arrow,
.service-arrow,
.draft-arrow {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--text-tertiary, #94A3B8) !important;
}
.calendar-arrow svg,
.garage-record-arrow svg,
.asset-arrow svg,
.mg-arrow svg,
.row-arrow svg,
.picker-arrow svg,
.service-arrow svg,
.draft-arrow svg {
  display: block;
}

/* Universal dropdown chevrons */
.nav-city-arrow,
.scope-arrow {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #94A3B8 !important;
  margin-left: 2px !important;
}
.nav-city-arrow svg,
.scope-arrow svg {
  display: block;
}

.page-nav .page-nav-actions {
  position: absolute !important;
  right: 12px !important;
}

.mp-page[data-route="pages/profile/profile"] .content {
  padding-top: 56px !important;
}

.mp-page[data-route="pages/community/community"] .content,
.mp-page[data-route="pages/community/community"] .community-content {
  padding-top: 56px !important;
}

.mp-page[data-route="pages/publish/publish"] .content,
.mp-page[data-route="pages/publish/publish"] .publish-content {
  padding-top: 56px !important;
}


/* 原本挂在导航条上的操作按钮（例如发起活动、城市选择），下移融入页面内容区 */
.filter-scroll {
  position: relative;
  background: #FFFFFF;
}
.nav-create-chip {
  background: var(--brand-orange) !important;
  color: #FFFFFF !important;
  font-weight: 700 !important;
}

/* 全屏容器贴合微信窗口 */
#stage,
#phone,
#viewport {
  width: 100vw;
  height: 100vh;
  margin: 0;
  border: none;
  box-shadow: none;
}
#phone-notch,
#phone-brand,
#phone-statusbar,
#home-indicator {
  display: none !important;
}


/* ==================== 4. 手机壳 / 桌面背景 ==================== */
body { background: #EDEEF1; }
#backdrop {
  background:
    radial-gradient(700px 480px at 15% 10%, rgba(232, 90, 23, 0.06) 0%, transparent 60%),
    radial-gradient(800px 560px at 88% 88%, rgba(44, 113, 232, 0.06) 0%, transparent 60%),
    #EDEEF1;
}
#backdrop::before {
  background-image:
    linear-gradient(rgba(23, 25, 31, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(23, 25, 31, 0.035) 1px, transparent 1px);
}
#backdrop-caption { color: #A8AEB8; }
#phone {
  border: none;
  box-shadow: none;
  background: var(--bg-deep);
}
#phone-notch { display: none !important; }
#phone-brand { display: none !important; }
#phone-statusbar { display: none !important; }
#home-indicator { display: none !important; }

/* ==================== 5. Tab Bar ==================== */
#tabbar {
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(18px) saturate(1.6);
  -webkit-backdrop-filter: blur(18px) saturate(1.6);
  border-top: 1px solid #EBEDF1;
  box-shadow: 0 -4px 24px rgba(23, 25, 31, 0.06);
}
.tab-item { color: #9BA1AB; }
.tab-item.active { color: var(--brand-orange); }
.tab-fab {
  border: 3.5px solid #FFFFFF;
  background: linear-gradient(145deg, #F0712C 0%, #E85A17 60%, #D34E14 100%);
  box-shadow: 0 8px 18px rgba(232, 90, 23, 0.38), inset 0 1.5px 2px rgba(255,255,255,0.35);
}

/* ==================== 6. wx.* 弹层（toast/modal/sheet/loading） ==================== */
.wx-toast {
  background: rgba(23, 25, 31, 0.92);
  color: #F5F6F8;
  border: none;
  box-shadow: 0 8px 28px rgba(23, 25, 31, 0.28);
}
.wx-loading { background: rgba(255,255,255,0.97); border: none; box-shadow: var(--shadow-pop); }
.wx-loading .wx-spinner { border-color: #EEF0F3; border-top-color: var(--brand-orange); }
.wx-loading .wx-loading-text { color: var(--text-secondary); }
.wx-mask { background: rgba(23, 25, 31, 0.45); backdrop-filter: blur(3px); }
.wx-modal {
  background: #FFFFFF; border: none; border-radius: 20px;
  box-shadow: var(--shadow-pop);
}
.wx-modal-title { color: var(--text-primary); font-weight: 700; }
.wx-modal-content { color: var(--text-secondary); }
.wx-modal-btns { border-top: 1px solid #F0F1F4; }
.wx-modal-btn { color: var(--text-secondary); }
.wx-modal-btn + .wx-modal-btn { border-left: 1px solid #F0F1F4; }
.wx-modal-btn.confirm { color: var(--brand-orange); }
.wx-modal-btn:active { background: #F5F6F8; }
.wx-sheet-mask { background: rgba(23, 25, 31, 0.45); backdrop-filter: blur(3px); }
.wx-sheet { background: #FFFFFF; border-top: none; }
.wx-sheet-item { color: var(--text-primary); border-bottom: 1px solid #F4F5F7; }
.wx-sheet-item:active { background: #F7F8FA; }
.wx-sheet-cancel { background: #F5F6F8; color: var(--text-tertiary); }
.wx-picker { background: #FFFFFF; }
.wx-picker-head { border-bottom: 1px solid #F0F1F4; }
.wx-picker-option { color: var(--text-primary); border-bottom: 1px solid #F4F5F7; }
.wx-picker-option:active { background: #F7F8FA; }

input::placeholder, textarea::placeholder { color: var(--text-tertiary); }

/* ==================== 7. 编号徽章（核心视觉组件：号段卡） ==================== */
.badge {
  border: none;
  background: #FFFFFF;
  border-radius: 14px;
  padding: 12px 6px 10px;
  box-shadow: var(--shadow-card);
  gap: 1px;
}
.badge-prefix {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 2.5px;
  color: var(--text-tertiary);
}
.badge-num {
  color: var(--text-primary);
  font-weight: 800;
  letter-spacing: 1px;
  white-space: nowrap;
}
.badge-normal .badge-num { font-size: 21px; }
.badge-large { padding: 20px 24px; border-radius: 20px; }
.badge-large .badge-prefix { font-size: 11px; }
.badge-large .badge-num { font-size: 34px; }
.badge-status {
  margin-top: 5px;
  font-size: 10px;
  letter-spacing: 1.5px;
  color: var(--text-tertiary);
  font-weight: 600;
}
.badge-large .badge-status { font-size: 12px; }

/* 可认领：白底 + 顶部橙色微光指示 */
.badge-available {
  background: #FFFFFF;
  box-shadow: var(--shadow-card), inset 0 2.5px 0 var(--brand-orange);
}
.badge-available .badge-status { color: var(--brand-orange); }

/* 稀有号：淡金底 + 金字 */
.badge-rare {
  background: linear-gradient(160deg, #FFFBF1 0%, #FBF3DE 100%);
  box-shadow: var(--shadow-card), inset 0 2.5px 0 var(--brand-gold);
}
.badge-rare .badge-num { color: #8A5E12; }
.badge-rare .badge-status { color: var(--brand-gold); }

/* 锁定中：虚线弱化 */
.badge-locked {
  background: #FFFFFF;
  box-shadow: var(--shadow-card);
  opacity: 0.85;
}
.badge-locked .badge-num { color: var(--text-tertiary); }
.badge-locked .badge-status { color: var(--brand-orange); }

/* 已认领：灰底弱化 */
.badge-occupied {
  background: #EFF0F3;
  box-shadow: none;
}
.badge-occupied .badge-prefix { color: #B9BEC7; }
.badge-occupied .badge-num { color: #B9BEC7; }
.badge-occupied .badge-status { color: #B9BEC7; }

/* 我的编号：橙色实底 */
.badge-mine {
  background: linear-gradient(140deg, #F0712C 0%, #E85A17 70%);
  box-shadow: 0 6px 16px rgba(232, 90, 23, 0.3);
}
.badge-mine .badge-prefix { color: rgba(255,255,255,0.75); }
.badge-mine .badge-num { color: #FFFFFF; }
.badge-mine .badge-status { color: rgba(255,255,255,0.85); }

/* ==================== 8. 活动卡片 ==================== */
.ac { border-radius: 18px; }
.ac-official { box-shadow: var(--shadow-card), inset 0 0 0 1px rgba(176, 126, 31, 0.25); }
.ac-cover { padding-bottom: 52%; }
.ac-compact .ac-cover { padding-bottom: 38%; }
.ac-cover-orbit { display: none; } /* 图片时代不需要轨道纹理 */
.ac-cover-shade {
  background: linear-gradient(180deg, rgba(15,17,22,0.16) 0%, transparent 40%, rgba(15,17,22,0.30) 100%);
}
/* 日期角标：白色磨砂 */
.ac-date {
  background: rgba(255, 255, 255, 0.94);
  border: none;
  border-radius: 12px;
  padding: 6px 10px 7px;
  box-shadow: 0 4px 14px rgba(15,17,22,0.18);
}
.ac-date-day { color: #17191F; font-weight: 800; font-size: 20px; }
.ac-date-month { color: #5A616C; font-weight: 600; }
/* 类型胶囊：白色磨砂 */
.ac-type {
  background: rgba(255, 255, 255, 0.92);
  border: none;
  color: #17191F;
  font-weight: 600;
}
.ac-full {
  background: rgba(23,25,31,0.6);
  border: none;
  color: #F5D9A8;
}
.ac-body { padding: 13px 15px 15px; }
.ac-title { font-weight: 700; color: var(--text-primary); }
.ac-meta-item { color: var(--text-tertiary); display: inline-flex; align-items: center; gap: 3px; }
.ac-meta-item svg { color: var(--text-tertiary); }
.ac-progress-track { background: #F0F1F4; height: 4px; }
.ac-progress-text { color: var(--text-tertiary); }
.ac-fee { font-weight: 700; }
.ac-fee-paid { color: var(--brand-orange); }

/* ==================== 9. 帖子卡片 ==================== */
.pc { border-radius: 18px; padding: 16px; }
.pc-avatar { width: 42px; height: 42px; font-size: 17px; color: #FFFFFF; }
.pc-name { font-weight: 700; }
.pc-verified { color: var(--brand-blue); }
.pc-author-num {
  font-size: 9px; padding: 1.5px 7px; border-radius: 999px;
  background: var(--gold-soft); color: var(--brand-gold); border: none; font-weight: 600;
}
.pc-sub { color: var(--text-tertiary); }
.pc-title { font-weight: 700; line-height: 1.45; }
.pc-content { color: var(--text-secondary); line-height: 1.75; }
.pc-images { gap: 8px; }
.pc-image { border-radius: 12px; height: 96px; }
.pc-images-1 .pc-image { height: 180px; }
.pc-image-orbit { display: none; }
.pc-foot { margin-top: 12px; padding-top: 12px; border-top: 1px solid #F4F5F7; }
.pc-topic { font-weight: 600; }
.pc-actions { gap: 18px; }
.pc-action { color: var(--text-tertiary); font-weight: 500; }
.pc-action svg { color: var(--text-tertiary); }
.pc-action-on, .pc-action-on svg { color: var(--brand-orange); }
.pc-action-fav, .pc-action-fav svg { color: var(--brand-gold); }

/* ==================== 10. 会员卡（深色卡面保留，作视觉焦点） ==================== */
.mc { height: 200px; }
.mc-face {
  border: none;
  box-shadow: 0 12px 32px rgba(15, 17, 22, 0.22);
  padding: 16px 18px;
}
.mc-orbit { opacity: 0.5; }
.mc-glow-orange { opacity: 0.75; }
.mc-glow-blue { opacity: 0.6; }
.mc-brand { color: rgba(255,255,255,0.72); font-weight: 700; }
.mc-nickname { color: #FFFFFF; }
.mc-verified { color: #7FB0FF; }
.mc-number { color: rgba(255,255,255,0.5); }
.mc-number-on { color: #F0C878; text-shadow: 0 0 12px rgba(240, 200, 120, 0.45); }
.mc-tag { color: rgba(255,255,255,0.78); background: rgba(255,255,255,0.13); border: none; }
.mc-id { color: rgba(255,255,255,0.55); }
.mc-flip-hint { color: #9CC0FF; }
.mc-qr { background: #FFFFFF; border-radius: 8px; }
.mc-qr-on { background: #17191F; }
.mc-avatar { border-color: rgba(255,255,255,0.5); color: #FFFFFF; }
.mc-back-title { color: #FFFFFF; }
.mc-back-num { color: #F0C878; }
/* 卡背强制深色卡面：浅色主题下 .mc-face 的 var() 底色接近白色，会导致白底白字只剩二维码裸奔 */
.mc-back { background: linear-gradient(150deg, #1B2029 0%, #14171D 60%, #101318 100%); }
.mc-back-sub { color: rgba(255, 255, 255, 0.6); }

/* ==================== 11. 模块标题 / 合规提示 / 空状态 / 骨架屏 ==================== */
.sec { padding: 2px 0 12px; }
.sec-bar {
  width: 4px; height: 15px; border-radius: 3px;
  background: var(--brand-orange);
  margin-right: 9px;
}
.sec-title { font-size: 18px; font-weight: 800; letter-spacing: 0.2px; color: var(--text-primary); }
.sec-more { color: var(--text-tertiary); font-weight: 500; }

.tip {
  background: var(--orange-soft);
  border: none;
  border-radius: 12px;
}
.tip-bar { width: 3.5px; border-radius: 3px; margin: 10px 0 10px 10px; }
.tip-text { color: #9A5A33; padding: 10px 12px 10px 10px; }

.empty-halo {
  background: #FFFFFF;
  border: none;
  box-shadow: var(--shadow-card);
}
.empty-icon { text-shadow: none; }
.empty-title { color: var(--text-primary); font-weight: 700; }
.empty-btn {
  border-radius: 999px;
  background: var(--brand-orange);
  box-shadow: 0 8px 18px rgba(232, 90, 23, 0.26);
  letter-spacing: 0.5px;
}

.sk-card { background: #FFFFFF; border: none; box-shadow: var(--shadow-card); }
.sk-block { background: #EFF0F3; }

/* 文字层级辅助 */
.text-page-title { color: var(--text-primary); font-weight: 800; }
.text-section-title { color: var(--text-primary); font-weight: 700; }
.text-body { color: var(--text-primary); }
.text-aux { color: var(--text-tertiary); }

/* ==================== 12. 首页 ==================== */
.mp-page[data-route="pages/home/home"] .home-nav-solid {
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(16px) saturate(1.5);
  border-bottom: 1px solid #EEF0F3;
}
.mp-page[data-route="pages/home/home"] .nav-city {
  background: rgba(255,255,255,0.16);
  border: none;
  color: #FFFFFF;
  backdrop-filter: blur(4px);
}
.mp-page[data-route="pages/home/home"] .nav-logo,
.mp-page[data-route="pages/home/home"] .nav-icon { color: #FFFFFF; }
.mp-page[data-route="pages/home/home"] .nav-city-arrow { color: rgba(255,255,255,0.7); }
.mp-page[data-route="pages/home/home"] .home-nav-solid .nav-city {
  background: var(--bg-elevated);
  color: var(--text-primary);
}
.mp-page[data-route="pages/home/home"] .home-nav-solid .nav-city-arrow { color: var(--text-tertiary); }
.mp-page[data-route="pages/home/home"] .home-nav-solid .nav-logo,
.mp-page[data-route="pages/home/home"] .home-nav-solid .nav-icon { color: var(--text-primary); }
.mp-page[data-route="pages/home/home"] .nav-dot { border-color: #FFFFFF; }

/* 2. 尊享车主数字车卡 (Tesla Club Digital Key Pass) */
.home-pass-wrap {
  margin-top: 10px;
  margin-bottom: 6px;
}
.home-pass-card {
  position: relative;
  overflow: hidden;
  border-radius: 18px;
  background: linear-gradient(145deg, #1C212A 0%, #11141A 100%);
  border: 1.5px solid rgba(224, 180, 76, 0.35);
  box-shadow: 0 12px 28px rgba(16, 20, 28, 0.16), 0 2px 6px rgba(0, 0, 0, 0.08);
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
  user-select: none;
}
.home-pass-card:active {
  transform: scale(0.985);
  box-shadow: 0 6px 16px rgba(16, 20, 28, 0.12);
}

/* 快捷入口：统一柔和浅色瓷砖，图标彩色 */
.quick { padding: 4px 0 8px; }
.quick-icon {
  width: 50px; height: 50px; border-radius: 17px;
  border: none;
}
.quick-icon-orange { background: var(--orange-soft); color: var(--brand-orange); }
.quick-icon-blue { background: var(--blue-soft); color: var(--brand-blue); }
.quick-icon-gold { background: var(--gold-soft); color: var(--brand-gold); }
.quick-label { color: var(--text-secondary); font-weight: 500; margin-top: 8px; }

/* 公告条 */
.ann { border: none; box-shadow: var(--shadow-card); border-radius: 14px; }
.ann-bar { display: none; }
.ann-title { font-weight: 600; }
.ann-title svg { color: var(--brand-orange); }
.ann-item { color: var(--text-secondary); }
.ann-toggle { color: var(--brand-orange); font-weight: 600; }

/* 附近服务卡 */
.svc {
  background: #FFFFFF;
  border-radius: 16px;
  box-shadow: var(--shadow-card);
}
.svc-cover { border-radius: 12px; }
.svc-cover-orbit { display: none; }
.svc-name { font-weight: 700; }
.svc-tag { background: var(--bg-elevated); border: none; color: var(--text-secondary); }

/* 社区精选区块 */
.community {
  background: transparent;
  border: none;
}
.comm-title { font-weight: 800; }
.comm-more { color: var(--brand-orange); font-weight: 600; }

/* 商城横滑卡 */
.mall-cover { border-radius: 14px; box-shadow: var(--shadow-card); }
.mall-cover-orbit { display: none; }
.mall-title { font-weight: 600; }
.mall-mp { font-size: 16px; }
.footer { color: var(--text-tertiary); }

/* ==================== 13. 选号大厅 ==================== */
.nav-action {
  border: none;
  background: var(--bg-elevated);
  color: var(--text-secondary);
  font-weight: 500;
}
.nav-action-badge { background: var(--gold-soft); color: var(--brand-gold); }

.scope-capsule { background: var(--bg-elevated); border: none; }
.scope-item { color: var(--text-secondary); font-weight: 500; }
.scope-on {
  background: #FFFFFF;
  color: var(--brand-orange);
  font-weight: 700;
  box-shadow: 0 2px 8px rgba(23,25,31,0.10);
}
.search-box { background: var(--bg-elevated); border: none; height: 38px; border-radius: 999px; }
.search-input { color: var(--text-primary); }
.search-icon { color: var(--text-tertiary); }

.cat-item {
  background: var(--bg-elevated);
  border: none;
  color: var(--text-secondary);
  font-weight: 500;
}
.cat-on {
  background: #17191F;
  color: #FFFFFF;
  font-weight: 700;
}
.filter-entry {
  border: none;
  background: var(--blue-soft);
  color: var(--brand-blue);
  font-weight: 600;
}
.chip { border: none; font-weight: 500; }
.grid-title { font-weight: 800; }
.cell-price { color: var(--brand-orange); font-weight: 700; font-size: 12px; }
.rec-price { color: var(--brand-orange); font-weight: 700; }
.cell-tag { color: var(--text-tertiary); }

/* 底部弹层 */
.mask { background: rgba(23, 25, 31, 0.45); backdrop-filter: blur(3px); }
.sheet { background: #FFFFFF; border-top: none; box-shadow: var(--shadow-pop); }
.sheet-title { font-weight: 800; }
.rule-k { color: var(--brand-orange); font-weight: 600; }
.opt { background: var(--bg-elevated); border: none; color: var(--text-secondary); font-weight: 500; }
.opt-on { background: #17191F; color: #FFFFFF; font-weight: 600; }
.f-input { background: var(--bg-elevated); border: none; border-radius: 12px; color: var(--text-primary); }

/* ==================== 14. 活动列表 ==================== */
.nav-create {
  background: var(--brand-orange);
  border: none;
  color: #FFFFFF;
  font-weight: 600;
  box-shadow: 0 4px 12px rgba(232, 90, 23, 0.28);
}
.filter-scroll { border-bottom: none; }
.filter-row { padding: 12px var(--space-page); }
.filter-row .chip {
  background: var(--bg-elevated);
  border: none;
  color: var(--text-secondary);
  font-weight: 500;
  padding: 7px 14px;
}
.filter-row .chip-active {
  background: #17191F;
  color: #FFFFFF;
  font-weight: 700;
}
.filter-row .chip-city { background: var(--blue-soft); color: var(--brand-blue); font-weight: 600; }
.filter-row .chip-gold { background: var(--gold-soft); color: var(--brand-gold); font-weight: 600; }
.filter-row .chip-divider { background: #E4E6EA; }
.act-reason { color: var(--text-tertiary); }
.full-mask { background: rgba(255,255,255,0.6); color: var(--text-secondary); backdrop-filter: blur(2px); }

/* ==================== 15. 社区 ==================== */
.channel-item { color: var(--text-tertiary); font-weight: 500; }
.channel-item-on { color: var(--text-primary); font-weight: 800; font-size: 16px; }
.channel-underline { background: var(--brand-orange); width: 22px; height: 3.5px; }
/* 去掉双层套壳：面板透明，卡片自己承载 */
.feed-panel {
  background: transparent;
  border: none;
  padding: 0;
}
.nav-search { color: var(--text-primary); }

/* ==================== 16. 我的 ==================== */
.member-meta {
  border: none;
  box-shadow: var(--shadow-card);
  border-radius: 16px;
  padding: 16px 6px;
}
.meta-value { font-size: 18px; font-weight: 800; }
.meta-level { color: var(--brand-blue); font-weight: 700; }
.meta-level-gold { color: var(--brand-gold); font-weight: 700; }
.meta-divider { background: #EFF0F3; }
.guest-card { border: none; box-shadow: var(--shadow-card); }
.guest-orbit { border-color: rgba(232, 90, 23, 0.2); box-shadow: none; }

.grid-order, .grid-asset, .grid-content { padding: 18px 6px; }
.grid-icon { font-size: 22px; color: var(--text-primary); }
.grid-icon-blue {
  background: var(--blue-soft);
  border: none;
  color: var(--brand-blue);
  border-radius: 14px;
}
.grid-label { color: var(--text-secondary); font-weight: 500; }
.cell-hover { background: #F5F6F8; }

.service-list { background: #FFFFFF; border-radius: 16px; box-shadow: var(--shadow-card); }
.service-row { border-bottom: 1px solid #F4F5F7; padding: 16px 16px; }
.service-row:last-child { border-bottom: none; }
.row-hover { background: #F7F8FA; }
.service-icon { color: var(--text-secondary); }
.service-label { font-weight: 500; }
.service-arrow { color: #C9CED6; }
.notice { color: var(--text-tertiary); }

/* ==================== 17. 详情页 / 其他页面统一收边 ==================== */
/* 活动详情封面文字（压在图片上，保持白色） */
.mp-page[data-route="pages/activity-detail/activity-detail"] .cover-title,
.mp-page[data-route="pages/activity-detail/activity-detail"] .cover-icon-btn { color: #FFFFFF; }
.mp-page[data-route="pages/activity-detail/activity-detail"] .cover-city { color: rgba(255,255,255,0.85); }
.mp-page[data-route="pages/activity-detail/activity-detail"] .cover-date-text { color: #FFFFFF; }

/* 登录页 hero（浅色背景，深色文字） */
.mp-page[data-route="pages/login/login"] .hero-logo { color: var(--text-primary); }
.mp-page[data-route="pages/login/login"] .hero-slogan { color: var(--text-tertiary); }

/* 头像色块文字恒白 */
.avatar-block { color: #FFFFFF; }

/* 输入类 */
.mp-page input, .mp-page textarea { color: var(--text-primary); }

/* ==================== 18. 会员卡片布局修正 ==================== */
/* 隐藏宇航员+头像叠柱，卡面只留文字信息 + 二维码，视觉更干净 */
.mc-astro { display: none; }
.mc-info { margin-left: 0; }
.mc-main { align-items: flex-start; margin-top: 10px; }
.mc-nickname { font-size: 18px; }
.mc-number { margin-top: 4px; font-size: 20px; }
.mc-tags { margin-top: 8px; }
.mc-tag { padding: 2.5px 9px; }
.mc { height: 206px; }
.mc-qr { width: 46px; height: 46px; padding: 4px; }

/* 「我的」统计行：编号不被截断 */
.meta-num { max-width: none; font-size: 13px; letter-spacing: 0.5px; }

/* 活动详情：封面状态条实底化（图片上可读） */
.cover-status { border: none !important; backdrop-filter: blur(6px); }
.st-open { background: rgba(31, 157, 99, 0.92); color: #FFFFFF; }
.st-full { background: rgba(176, 126, 31, 0.92); color: #FFFFFF; }
.st-going { background: rgba(44, 113, 232, 0.92); color: #FFFFFF; }
.st-ended, .st-pending { background: rgba(23,25,31,0.55); color: rgba(255,255,255,0.85); }

/* 身份选择等页的下一步按钮：全宽胶囊 */
.next-btn { width: 100%; }

/* 发布页：图标瓷砖改为柔和浅色底 + 单色图标 */
.mp-page[data-route="pages/publish/publish"] .entry-icon-wrap { background: var(--bg-elevated); border-radius: 14px; }
.mp-page[data-route="pages/publish/publish"] .entry-icon-orbit { display: none; }
.mp-page[data-route="pages/publish/publish"] .cover-theme-0 { background: var(--orange-soft); color: var(--brand-orange); }
.mp-page[data-route="pages/publish/publish"] .cover-theme-1 { background: var(--blue-soft); color: var(--brand-blue); }
.mp-page[data-route="pages/publish/publish"] .cover-theme-2 { background: #FDEAE8; color: var(--danger); }
.mp-page[data-route="pages/publish/publish"] .cover-theme-5 { background: var(--gold-soft); color: var(--brand-gold); }
.mp-page[data-route="pages/publish/publish"] .entry-card { border: none; box-shadow: var(--shadow-card); }
.mp-page[data-route="pages/publish/publish"] .pub-wrap { background: var(--bg-deep); }

/* 引导页按钮：全宽胶囊 */
.act-next, .act-start { width: 100%; }

/* 表单页主按钮统一全宽 */
.submit-btn, .save-btn, .publish-btn, .go-number-hall, .resubmit { width: 100%; }

/* 登录页主/次按钮：全宽胶囊（web 端 view 默认 inline-block，需显式全宽） */
.login-btn, .phone-btn { width: 100%; box-sizing: border-box; }

/* 认证进度页次要按钮：与主按钮同宽对齐 */
.go-home { width: 100%; box-sizing: border-box; }

/* ===== 「我的」页面视觉升级 ===== */
/* 1. 三元信息条：去边框改浮层阴影，与会员卡衔接更高级 */
.mp-page[data-route="pages/profile/profile"] .member-meta {
  border: none;
  box-shadow: var(--shadow-card);
  padding: 16px 6px;
  margin-top: 10px;
}
.mp-page[data-route="pages/profile/profile"] .meta-value { font-size: 18px; font-weight: 800; }
.mp-page[data-route="pages/profile/profile"] .meta-level { font-size: 14px; font-weight: 700; }
.mp-page[data-route="pages/profile/profile"] .meta-num { font-size: 14px; font-weight: 700; letter-spacing: 0.5px; }

/* 2. 宫格图标统一为柔和色瓷砖(与首页快入口同一语言) */
.mp-page[data-route="pages/profile/profile"] .grid-icon {
  width: 44px; height: 44px; border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  background: var(--bg-elevated); color: var(--text-primary);
}
.mp-page[data-route="pages/profile/profile"] .grid-icon svg { width: 22px; height: 22px; }
.mp-page[data-route="pages/profile/profile"] .grid-label { margin-top: 8px; font-weight: 500; }

/* 快捷订单:中性瓷砖 + 墨色图标,干净利落 */
.mp-page[data-route="pages/profile/profile"] .grid-order { padding: 18px 4px; }

/* 内容与活动:2x2 稀疏大格 -> 四联彩色瓷砖单排 */
.mp-page[data-route="pages/profile/profile"] .grid-content { flex-wrap: nowrap; padding: 18px 4px; }
.mp-page[data-route="pages/profile/profile"] .grid-cell-lg { width: auto; flex: 1; padding: 6px 0; }
.mp-page[data-route="pages/profile/profile"] .grid-content .grid-cell:nth-child(1) .grid-icon { background: var(--orange-soft); color: var(--brand-orange); }
.mp-page[data-route="pages/profile/profile"] .grid-content .grid-cell:nth-child(2) .grid-icon { background: var(--blue-soft); color: var(--brand-blue); }
.mp-page[data-route="pages/profile/profile"] .grid-content .grid-cell:nth-child(3) .grid-icon { background: var(--gold-soft); color: var(--brand-gold); }
.mp-page[data-route="pages/profile/profile"] .grid-content .grid-cell:nth-child(4) .grid-icon { background: #E7F5EC; color: #1F9D63; }

/* 车辆与编号:蓝色瓷砖去硬边框,改柔和小蓝砖 */
.mp-page[data-route="pages/profile/profile"] .grid-icon-blue {
  background: var(--blue-soft); border: none; color: var(--brand-blue); border-radius: 14px;
}

/* 3. 服务列表:图标加浅灰圆角底,行间更透气 */
.mp-page[data-route="pages/profile/profile"] .service-icon {
  width: 34px; height: 34px; border-radius: 10px;
  background: var(--bg-elevated);
  display: flex; align-items: center; justify-content: center;
  color: var(--text-primary);
}
.mp-page[data-route="pages/profile/profile"] .service-icon svg { width: 18px; height: 18px; }
.mp-page[data-route="pages/profile/profile"] .service-label { font-weight: 500; }

/* ===== 活动详情页:沉浸导航滚动态 + 弹性布局加固 ===== */
/* 未滚动(压在深色封面上):标题/返回键用白色,保证可读 */
.mp-page[data-route="pages/activity-detail/activity-detail"] .detail-nav:not(.nav-solid) .page-nav-title,
.mp-page[data-route="pages/activity-detail/activity-detail"] .detail-nav:not(.nav-solid) .page-nav-back {
  color: #FFFFFF; text-shadow: 0 1px 6px rgba(0,0,0,0.35);
}
/* 滚过封面:切为白底毛玻璃 + 深色文字 */
.mp-page[data-route="pages/activity-detail/activity-detail"] .detail-nav {
  transition: background-color 0.2s ease;
}
.mp-page[data-route="pages/activity-detail/activity-detail"] .detail-nav.nav-solid {
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(16px) saturate(1.5);
  -webkit-backdrop-filter: blur(16px) saturate(1.5);
  border-bottom: 1px solid #EEF0F3;
}
.mp-page[data-route="pages/activity-detail/activity-detail"] .detail-nav.nav-solid .page-nav-title,
.mp-page[data-route="pages/activity-detail/activity-detail"] .detail-nav.nav-solid .page-nav-back {
  color: var(--text-primary); text-shadow: none;
}

/* 发起人卡片:昵称可省略,徽章与关注按钮永不换行挤压 */
.mp-page[data-route="pages/activity-detail/activity-detail"] .creator-main { min-width: 0; }
.mp-page[data-route="pages/activity-detail/activity-detail"] .creator-name {
  min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.mp-page[data-route="pages/activity-detail/activity-detail"] .creator-verified,
.mp-page[data-route="pages/activity-detail/activity-detail"] .creator-follow {
  white-space: nowrap; flex-shrink: 0;
}

/* 底部操作栏:统一间距,任何字体环境下按钮文字都不换行 */
.mp-page[data-route="pages/activity-detail/activity-detail"] .bottom-bar { gap: 10px; }
.mp-page[data-route="pages/activity-detail/activity-detail"] .bottom-fee { margin-right: 0; flex-shrink: 0; min-width: 0; }
.mp-page[data-route="pages/activity-detail/activity-detail"] .bottom-fee-value,
.mp-page[data-route="pages/activity-detail/activity-detail"] .bottom-fee-sub { white-space: nowrap; }
.mp-page[data-route="pages/activity-detail/activity-detail"] .btn-checkin {
  margin-right: 0; white-space: nowrap; flex-shrink: 0;
}
.mp-page[data-route="pages/activity-detail/activity-detail"] .bottom-btn {
  min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.mp-page[data-route="pages/home/home"] .section-first { margin-top: 18px; }

/* 微信小程序标准嵌入适配：支持页面标题与微信原生顶栏联动 */
.in-miniprogram .page-nav,
.in-miniprogram .home-nav,
.in-miniprogram .detail-nav,
.in-miniprogram .engagement-nav,
.in-miniprogram .account-nav,
.in-miniprogram .commerce-nav {
  display: flex !important;
  flex-direction: column !important;
}

.in-miniprogram .member-account-nav {
  display: flex !important;
  flex-direction: row !important;
}

.in-miniprogram .nav-placeholder,
.in-miniprogram .nav-placeholder-bar {
  display: block !important;
}


/* Tab 页在小程序中由微信原生顶栏显示标题，无返回键的发布与个人中心顶栏完全隐藏 */
.in-miniprogram .mp-page[data-route="pages/publish/publish"] .page-nav {
  display: none !important;
}
.in-miniprogram .mp-page[data-route="pages/publish/publish"] .pub-wrap {
  padding-top: 16px !important;
}

.in-miniprogram .mp-page[data-route="pages/profile/profile"] .page-nav {
  display: none !important;
}
.in-miniprogram .mp-page[data-route="pages/profile/profile"] .content {
  padding-top: 16px !important;
}

.in-miniprogram .mp-page[data-route="pages/community/community"] .page-nav-title {
  display: none !important;
}

.in-miniprogram .comm-header {
  display: block !important;
}

/* 小程序原生已带胶囊与顶部，隐藏 H5 自带的模拟状态栏时间/电量 */
.in-miniprogram #phone-statusbar,
.in-miniprogram .page-nav-status,
.in-miniprogram .nav-status,
.in-miniprogram [class*="-nav-status"] {
  display: none !important;
  height: 0 !important;
}

.in-miniprogram {
  --mp-status-h: 0px;
  --mp-safe-bottom: env(safe-area-inset-bottom, 0px);
}

#stage,
#phone {
  width: 100vw;
  height: 100vh;
  margin: 0;
  border: none;
  box-shadow: none;
}
#phone-notch,
#phone-brand,
#phone-statusbar,
#home-indicator {
  display: none !important;
}


