*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  /* ---- 配色系统（强制，禁止另起绿色）---- */
  --brand:#206040;              /* 主品牌色：低饱和墨绿 */
  --brand-d:#206040;            /* 主色按下态 */
  --brand-l:#E8F1ED;            /* 主色极浅底（标签） */
  --accent:#D47B2E;             /* 辅助暖橙：仅按钮/少量标签 */
  --accent-l:#FBF1E6;           /* 橙的浅底 */

  /* ---- 中性色严格分层 ---- */
  --t1:#1A1A1A;                 /* 一级标题 */
  --t1b:#222222;                /* 二级标题 */
  --t2:#444444;                 /* 正文 */
  --t3:#707070;                 /* 辅助小字/标签说明 */
  --t4:#707070;                 /* 辅助小字（与 t3 同值，保持兼容） */
  --bg:#FFFFFF;                 /* 页面背景：纯白 */
  --line:#EEEEEE;               /* 分割线/描边 */

  /* ---- 圆角：全局唯一 ---- */
  --r:10px;                     /* 所有卡片 */
  --r-sm:6px;                   /* 标签 */
  --r-btn:8px;                  /* 按钮 */

  /* ---- 阴影：全局唯一 ---- */
  --shadow:0 2px 10px rgba(0,0,0,.08);

  /* ---- 间距 ---- */
  --pad-y:20px;                 /* 卡片上下 */
  --pad-x:18px;                 /* 卡片左右 */
  --gap:16px;                   /* 卡片之间 */
  --row:12px;                   /* 列表行内间距 */

  /* ---- 行高 ---- */
  --lh-title:1.3;
  --lh-body:1.5;
  --lh-note:1.5;

  /* ---- 字号层级（金鑫 H5 视觉规范 §118）---- */
  --fs-page:20px;               /* 页面大标题 20/bold/1.3 */
  --fs-h1:20px;                 /* 兼容旧引用 */
  --fs-h2:17px;                 /* 模块标题 17/600/1.3 */
  --fs-body:15px;               /* 正文 15/400/1.5 */
  --fs-note:13px;               /* 辅助说明 13/400/1.5 */
  --fs-small:12px;
  --fs-num:18px;                /* 金额/重点数字 18/bold/主色 */
  --fw-title:700;               /* 大标题 */
  --fw-h2:600;                  /* 模块标题 */
  --fw-body:400;                /* 正文 */

  /* ---- 浅米警示（费用提醒/注意事项）---- */
  --warn-bg:#fff7e9;
  --warn-fg:#b56b1e;

  /* ---- 按钮 / 标签尺寸规范 ---- */
  --btn-pad:10px 20px;
  --btn-min:44px;               /* 移动端最小触摸区 */
  --tag-pad:4px 10px;

  /* 兼容旧变量名（页面里还有引用，全部指向新规范） */
  --green:var(--brand); --green-d:var(--brand-d); --green-deep:#206040; --green-l:var(--brand-l);
  --ink:var(--t2); --sub:var(--t3); --sub2:var(--t3); --hint:var(--t4);
  --t1b2:#222222;
  --amber:var(--accent); --amber-d:var(--accent);
  --shadow-sm:var(--shadow);
  --sp-y:var(--pad-y); --sp-x:var(--pad-x);
  --gap-card:var(--gap); --gap-row:var(--row);
  --r-tag:var(--r-sm);
  --fs-item:var(--fs-body);
}
html{scroll-behavior:smooth}
body{
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  background:#FFFFFF; color:var(--t2);
  line-height:var(--lh-body); -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  padding-bottom:56px;
}

a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}
.wrap{max-width:760px;margin:0 auto;padding:0 20px}

/* ===== 顶部栏 ===== */
.top{
  position:sticky;top:0;z-index:30;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.top .wrap{display:flex;align-items:center;gap:12px;height:56px}
.back{
  display:inline-flex;align-items:center;gap:6px;
  font-size:13px;font-weight:700;color:var(--brand);
  min-height:var(--btn-min);padding:0 10px 0 6px;border-radius:10px;
  margin-left:-6px;
  transition:background .2s,transform .2s;
}
.back:hover{background:var(--green-l)}
.back:active{transform:scale(.96)}
.back svg{width:15px;height:15px;stroke:currentColor;fill:none;
  stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.top .ttl{
  font-size:var(--fs-h2);font-weight:var(--fw-h2);margin:0 auto;
  color:var(--t1);letter-spacing:0;
  text-align:center;
}

/* ===== 页头 ===== */
.head{padding:clamp(26px,5vw,40px) 0 clamp(18px,3vw,24px)}
.head .tag{
  display:inline-flex;align-items:center;gap:5px;
  font-size:var(--fs-small);font-weight:600;letter-spacing:.06em;
  color:var(--brand);background:var(--brand-l);
  padding:4px 10px;border-radius:var(--r-sm);margin-bottom:14px;
  border:1px solid rgba(32,96,64,.12);
}
.head h1{
  font-size:var(--fs-page);font-weight:var(--fw-title);
  letter-spacing:-.01em;line-height:var(--lh-title);color:var(--t1);
}
.head p{color:var(--t3);margin-top:10px;font-size:var(--fs-body);line-height:var(--lh-body);max-width:560px}

/* ===== 卡片 ===== */
.card{
  background:#FFFFFF;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  border-radius:var(--r);
  padding:var(--pad-y) var(--pad-x);
  margin-bottom:var(--gap);
}
.card:hover{border-color:#EEEEEE}
.card h3{
  font-size:var(--fs-h2);margin-bottom:14px;font-weight:500;
  display:flex;align-items:center;gap:8px;
  letter-spacing:0;line-height:var(--lh-title);color:var(--t1);
}
.card h3::before{
  content:"";width:3px;height:15px;border-radius:2px;
  background:var(--brand);
  flex-shrink:0;
}
.card p.body{font-size:var(--fs-body);color:var(--t3);line-height:var(--lh-body)}
.card p.body + p.body{margin-top:var(--gap-row)}

/* ===== 信息行 ===== */
.row{
  display:flex;justify-content:space-between;align-items:baseline;
  gap:16px;padding:var(--row) 0;
  border-bottom:1px solid var(--line);font-size:var(--fs-body);
  line-height:var(--lh-body);
}
.row:last-child{border-bottom:none;padding-bottom:0}
.row:first-child{padding-top:0}
.row span{color:var(--t3);flex-shrink:0;font-size:var(--fs-body)}
.row b{font-weight:600;text-align:right;color:var(--t1)}

/* ===== 特色条目 ===== */
.feat{
  display:flex;gap:12px;padding:var(--row) 0;
  border-bottom:1px solid var(--line);
}
.feat:last-child{border-bottom:none;padding-bottom:0}
.feat:first-child{padding-top:0}
.feat .ic{
  width:32px;height:32px;border-radius:var(--r-sm);flex-shrink:0;
  display:grid;place-items:center;
  background:transparent;
  border:none;
}
.feat .ic svg{width:20px;height:20px;stroke:var(--brand);fill:none;
  stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.feat .ic.num{
  font-size:13px;font-weight:600;color:var(--brand);
}
.feat > div:last-child{flex:1;min-width:0}
.feat b{display:block;font-size:var(--fs-body);margin-bottom:4px;font-weight:600;color:var(--t1);line-height:var(--lh-title)}
.feat span{font-size:var(--fs-note);color:var(--t3);line-height:var(--lh-note)}

/* ===== 按钮 ===== */
.btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  background:var(--brand);
  color:#fff;text-align:center;
  min-height:var(--btn-min);
  padding:var(--btn-pad);border-radius:var(--r-btn);
  font-size:var(--fs-body);font-weight:500;letter-spacing:0;
  margin-top:20px;
  box-shadow:none;
  transition:background .18s,transform .12s;
  border:none;cursor:pointer;width:100%;font-family:inherit;
}
.btn:hover{background:var(--brand-d)}
.btn:active{transform:scale(.985);background:var(--brand-d);filter:brightness(.94)}
.btn svg{width:17px;height:17px;stroke:currentColor;fill:none;
  stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.btn.amber{
  background:var(--accent);
  color:#FFFFFF;
}
.btn.amber:hover{background:#D47B2E}
.btn.amber:active{background:#D47B2E;filter:brightness(.94)}

/* ===== 页脚小注 ===== */
.note{
  text-align:center;font-size:var(--fs-note);color:var(--t4);line-height:var(--lh-note);
  padding:22px 0 6px;letter-spacing:.02em;
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}

/* ===== 统一 Toast（全站共用） ===== */
.jx-toast{
  position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));
  transform:translate(-50%,10px);
  z-index:9999;
  display:flex;align-items:center;gap:8px;
  max-width:calc(100vw - 48px);
  padding:11px 18px;
  border-radius:10px;
  background:#206040;
  color:#fff;
  font-size:13px;font-weight:400;line-height:1.5;
  box-shadow:0 2px 10px rgba(0,0,0,.08);
  opacity:0;pointer-events:none;
  transition:opacity .22s,transform .22s;
}
.jx-toast.on{opacity:1;transform:translate(-50%,0)}
.jx-toast svg{width:16px;height:16px;stroke:currentColor;fill:none;
  stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* ===== 统一空状态占位（全站共用） ===== */
.jx-empty{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;
  padding:36px 16px;
  text-align:center;
}
.jx-empty svg{width:36px;height:36px;stroke:#EEEEEE;fill:none;
  stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.jx-empty b{font-size:13px;font-weight:400;color:#707070;line-height:1.5}
.jx-empty span{font-size:13px;color:#707070;line-height:1.5}

/* ===== 按压缩放反馈（移动端） ===== */
.jx-tap{transition:transform .12s ease,opacity .12s ease}
.jx-tap:active{transform:scale(.97);opacity:.9}

/* ===== 统一 Loading ===== */
.jx-load{
  display:flex;align-items:center;justify-content:center;gap:9px;
  padding:28px 16px;
  font-size:13px;color:#707070;
}
.jx-load i{
  width:15px;height:15px;border-radius:50%;
  border:2px solid rgba(32,96,64,.22);border-top-color:#206040;
  animation:jxspin .7s linear infinite;
}
@keyframes jxspin{to{transform:rotate(360deg)}}

/* ===== 标签 / 警示（金鑫 H5 规范 §118 统一） ===== */
.jx-tag{
  display:inline-flex;align-items:center;gap:4px;
  background:var(--brand-l);color:var(--brand);
  border-radius:var(--r-sm);
  padding:var(--tag-pad);
  font-size:12px;font-weight:400;line-height:1.4;
  white-space:nowrap;
}
.jx-tag-warn{
  display:inline-flex;align-items:center;gap:4px;
  background:var(--warn-bg);color:var(--warn-fg);
  border-radius:var(--r-sm);
  padding:var(--tag-pad);
  font-size:12px;font-weight:400;line-height:1.4;
}
/* 浅米警示块：费用提醒 / 注意事项 */
.jx-warn{
  background:var(--warn-bg);color:var(--warn-fg);
  border-radius:var(--r);
  padding:14px 16px;
  font-size:var(--fs-note);line-height:var(--lh-note);
}
.jx-warn b{font-weight:600}

/* 金额 / 重点数字 */
.jx-num{
  font-size:var(--fs-num);font-weight:700;
  color:var(--brand);line-height:1.3;
}
