/* page.css —— 二级页面公共样式 */
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;background:var(--bg);color:var(--ink);
  -webkit-font-smoothing:antialiased;}
.wrap{max-width:900px;margin:0 auto;padding:20px 16px 40px;}
.page-title{font-size:22px;font-family:"Songti SC","STSong",serif;color:var(--brand);letter-spacing:1px;}
.page-sub{font-size:13px;color:var(--muted);margin-top:6px;line-height:1.7;}
.sec{margin-top:22px;}
.sec h2{font-size:16.5px;margin-bottom:10px;font-family:"Songti SC",serif;color:var(--ink);}
.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px;}
.card + .card{margin-top:12px;}

/* 身份卡 */
.idcard{background:linear-gradient(135deg,var(--brand),var(--brand-2));color:var(--bg);border-radius:16px;padding:20px;}
.idcard .row{display:flex;align-items:center;gap:12px;}
.idcard .av{width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.16);
  display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0;}
.idcard .nm{font-size:17px;}
.idcard .rl{display:inline-block;margin-top:5px;background:var(--gold);color:#fff;border-radius:99px;
  padding:2px 11px;font-size:12px;}
.idcard .pts{margin-left:auto;text-align:right;}
.idcard .pts b{font-size:24px;font-family:"Songti SC",serif;}
.idcard .pts span{display:block;font-size:11.5px;opacity:.8;}

/* 进度条 */
.bar{height:8px;background:#EDE4D3;border-radius:99px;overflow:hidden;margin-top:10px;}
.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-2));border-radius:99px;}
.bar-txt{display:flex;justify-content:space-between;font-size:12.5px;color:var(--ink-2);margin-top:7px;}

/* 权益列表 —— 每一项都可点：已解锁跳对应页面，未解锁弹「怎么解锁」。
   ⚠️ 客户反馈「这些地方都按不动；电脑端也点不动」：原来这里是纯 <div>，既没有
      链接也没有点击行为，鼠标划过毫无反馈，看着像一排列印出来的标签。
      现在统一渲染成 <a>，并补 hover / active 反馈，让「能点」这件事一眼可见。 */
.rights{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:4px;}
@media(max-width:600px){.rights{grid-template-columns:1fr;}}
.right{display:flex;align-items:center;gap:8px;font-size:13.5px;padding:9px 12px;
  background:var(--panel);border:1px solid var(--line);border-radius:11px;
  text-decoration:none;color:inherit;cursor:pointer;
  transition:border-color .16s ease,transform .12s ease,opacity .16s ease;}
.right:hover{border-color:var(--brand);}
.right:active{transform:scale(.985);}
.right .k{color:var(--brand-2);font-weight:700;}
.right .go{margin-left:auto;flex-shrink:0;font-size:14px;line-height:1;color:var(--faint);}
/* 锁定的也保持可点（点了会告诉你怎么解锁），所以透明度别压太狠 —— 
   压到 0.5 会让人以为「这是禁用项、点了也没用」，反而不点了 */
.right.locked{opacity:.68;}
.right.locked:hover{opacity:1;border-color:var(--line);}
.right.locked .k{color:var(--faint);}

/* 列表 */
.list{font-size:13.5px;}
.li{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid #EFE8D9;}
.li:last-child{border-bottom:none;}
.li .t{color:var(--ink);}
.li .s{font-size:12px;color:var(--muted);margin-top:2px;}
.li .v{font-weight:600;white-space:nowrap;}
.v.plus{color:var(--brand-2);}
.v.minus{color:#B5432E;}
.v.pend{color:var(--gold);}

/* 按钮 */
.btn{display:inline-block;background:var(--brand-2);color:#fff;border:none;border-radius:10px;
  padding:11px 22px;font-size:15px;cursor:pointer;text-decoration:none;text-align:center;}
.btn.gold{background:var(--gold);}
.btn.ghost{background:#fff;color:var(--brand);border:1px solid var(--line);}
.btn:disabled{background:#C9C2B4;cursor:not-allowed;}
.btn-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;}

/* 提示 */
.tip{background:var(--gold-bg);border:1px solid var(--gold-line);border-radius:12px;padding:13px 15px;
  font-size:12.8px;color:#7A6A45;line-height:1.8;margin-top:12px;}
.tip.warn{background:#FDF1EC;border-color:#F0D5C9;color:#8A4A33;}
.empty{text-align:center;color:#A99C85;font-size:13px;padding:26px 0;}
.tag{display:inline-block;padding:2px 9px;border-radius:99px;font-size:11.5px;background:#F3E8D3;color:#8A6A1F;}
.tag.green{background:#E6EFE4;color:var(--brand-2);}

/* 二维码 · 关注与联系 */
.qr-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.qr-item{display:block;text-align:center;text-decoration:none;color:inherit;}
.qr-item img{width:100%;height:auto;border-radius:12px;border:1px solid var(--line);background:#fff;
  box-shadow:0 2px 10px rgba(60,50,30,.05);transition:transform .18s;}
.qr-item:active img{transform:scale(.97);}
.qr-item .cap{font-size:12px;color:var(--ink-2);margin-top:8px;}
@media(max-width:520px){
  .qr-row{grid-template-columns:1fr;gap:16px;}
  .qr-item img{max-width:280px;margin:0 auto;}
}

/* === 购物车 / 订单（选购者中心） === */
.cart-item{display:flex;gap:12px;padding:13px 0;border-bottom:1px solid #EFE8D9;align-items:center;}
.cart-item:last-child{border-bottom:none;}
.cart-item .pic{width:64px;height:64px;border-radius:11px;object-fit:cover;flex-shrink:0;overflow:hidden;
  background:linear-gradient(150deg,#E8EFE6,#F3E8D3);display:flex;align-items:center;justify-content:center;font-size:24px;}
.cart-item .pic img{width:100%;height:100%;object-fit:cover;}
.cart-item .info{flex:1;min-width:0;}
.cart-item .info b{font-size:14px;display:block;}
.cart-item .info .p{font-size:13.5px;color:#B5432E;font-weight:600;margin-top:5px;}
.cart-item .info .p small{font-size:11px;color:var(--muted);font-weight:400;margin-left:6px;}
.stepper{display:flex;align-items:center;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff;}
.stepper button{width:29px;height:29px;border:none;background:#fff;font-size:16px;cursor:pointer;color:var(--brand-2);line-height:1;}
.stepper button:disabled{color:#CFC7B8;cursor:not-allowed;}
.stepper span{width:32px;text-align:center;font-size:13.5px;}
.cart-del{border:none;background:none;color:#A99C85;font-size:12px;cursor:pointer;padding:4px 0;}
.checkbar{position:sticky;bottom:0;margin-top:16px;background:var(--panel);border:1px solid var(--line);border-radius:14px;
  padding:13px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 -4px 18px rgba(60,50,30,.06);}
.checkbar .sum{margin-left:auto;font-size:12.8px;color:var(--ink-2);text-align:right;}
.checkbar .sum b{display:block;font-size:20px;color:#B5432E;font-family:"Songti SC",serif;}
.otabs{display:flex;gap:7px;overflow-x:auto;padding-bottom:4px;margin-bottom:12px;}
.otabs a{flex-shrink:0;padding:6px 13px;border-radius:99px;background:#fff;border:1px solid var(--line);
  color:var(--ink-2);text-decoration:none;font-size:12.8px;white-space:nowrap;}
.otabs a.on{background:var(--brand);color:#fff;border-color:var(--brand);}
.otabs a i{font-style:normal;opacity:.75;font-size:11.5px;margin-left:3px;}
.ocard{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:13px 15px;margin-bottom:11px;}
.ocard .hd{display:flex;align-items:center;gap:8px;font-size:12.2px;color:var(--muted);padding-bottom:9px;border-bottom:1px dashed #EDE4D3;}
.ocard .hd .st{margin-left:auto;font-weight:600;font-size:12.6px;}
.st.pending{color:var(--gold);} .st.paid{color:#2F5C9E;} .st.shipped{color:var(--brand-2);}
.st.completed{color:var(--muted);} .st.cancelled,.st.refunded{color:#A99C85;}
.ocard .it{display:flex;gap:10px;padding:9px 0;align-items:center;border-bottom:1px solid var(--bg);}
.ocard .it:last-of-type{border-bottom:none;}
.ocard .it .pic{width:46px;height:46px;border-radius:9px;flex-shrink:0;overflow:hidden;
  background:linear-gradient(150deg,#E8EFE6,#F3E8D3);display:flex;align-items:center;justify-content:center;font-size:18px;}
.ocard .it .pic img{width:100%;height:100%;object-fit:cover;}
.ocard .it .nm{flex:1;font-size:13.4px;min-width:0;}
.ocard .it .nm span{display:block;font-size:11.8px;color:var(--muted);margin-top:2px;}
.ocard .ft{display:flex;align-items:center;gap:9px;padding-top:11px;flex-wrap:wrap;}
.ocard .ft .amt{margin-left:auto;font-size:12.8px;color:var(--ink-2);}
.ocard .ft .amt b{color:#B5432E;font-size:16.5px;font-family:"Songti SC",serif;}
.btn.sm{padding:7px 15px;font-size:13.4px;border-radius:9px;}

/* 悬浮购物车（商城/商品页，与底部 Tab 错开） */
.fab{position:fixed;right:16px;bottom:80px;z-index:70;width:52px;height:52px;border-radius:50%;
  background:var(--brand-2);color:#fff;display:flex;align-items:center;justify-content:center;
  font-size:22px;text-decoration:none;box-shadow:0 8px 20px rgba(42,74,54,.28);}
.fab .badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;border-radius:99px;background:#B5432E;
  color:#fff;font-size:11px;display:flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid var(--bg);}
@media(min-width:769px){ .fab{bottom:28px;} }

/* 商品内页图（详情长图）—— 多张之间无缝拼接成一条，圆角与描边只做在整体外框上 */
.detail-imgs{margin-top:16px;display:flex;flex-direction:column;gap:0;line-height:0;
  border-radius:12px;overflow:hidden;border:1px solid var(--line);background:#fff;}
.detail-imgs img{width:100%;height:auto;display:block;}

/* === 伙伴中心（天使伙伴 / 家人伙伴分级） === */
.tiers{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
@media(max-width:640px){.tiers{grid-template-columns:1fr;}}
.tier{position:relative;background:var(--panel);border:1.5px solid var(--line);border-radius:16px;padding:16px 16px 18px;}
.tier.angel{border-color:var(--line);}
.tier.family{border-color:#D8BE7E;background:linear-gradient(180deg,#FFFCF2,var(--panel));}
.tier.mine{box-shadow:0 6px 20px rgba(60,50,30,.10);border-color:var(--brand-2);}
.tier.family.mine{border-color:var(--gold);}
.tier .hrow{display:flex;align-items:center;gap:8px;}
.tier .em{font-size:22px;}
.tier .tn{font-size:16px;font-weight:700;font-family:"Songti SC",serif;color:var(--brand);}
.tier .badge{margin-left:auto;font-size:11px;padding:2px 9px;border-radius:99px;background:#E6EFE4;color:var(--brand-2);}
.tier.family .badge{background:#F3E8D3;color:#8A6A1F;}
.tier .how{font-size:12.2px;color:var(--muted);line-height:1.7;margin-top:8px;
  padding-bottom:10px;border-bottom:1px dashed #EDE4D3;}
.tier ul{list-style:none;margin-top:10px;}
.tier li{font-size:13px;color:#4A433A;padding:5px 0 5px 20px;position:relative;line-height:1.6;}
.tier li::before{content:'✓';position:absolute;left:0;color:var(--brand-2);font-weight:700;}
.tier.angel li::before{color:#9AAE9F;}
.tier .lock{font-size:12.4px;color:#A99C85;margin-top:10px;line-height:1.7;background:#FAF7F0;
  border-radius:10px;padding:9px 11px;}

/* 证照提交表单 */
.cert-form .fld{margin-top:12px;}
.cert-form label{display:block;font-size:12.8px;color:var(--ink-2);margin-bottom:5px;}
.cert-form input[type=text],.cert-form select,.cert-form textarea{width:100%;font-family:inherit;font-size:14px;
  padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);}
.cert-form input:focus,.cert-form select:focus,.cert-form textarea:focus{outline:2px solid #E8EFE6;border-color:var(--brand-2);}
.cert-form .grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
@media(max-width:600px){.cert-form .grid2{grid-template-columns:1fr;}}
.cert-pics{display:flex;gap:9px;flex-wrap:wrap;margin-top:8px;}
.cert-pic{position:relative;width:76px;height:76px;border-radius:11px;overflow:hidden;border:1px solid var(--line);background:#fff;}
.cert-pic img{width:100%;height:100%;object-fit:cover;}
.cert-pic i{position:absolute;top:2px;right:2px;background:rgba(0,0,0,.55);color:#fff;width:19px;height:19px;
  border-radius:50%;font-size:12px;font-style:normal;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.cert-up{width:76px;height:76px;border:1.5px dashed #D9CFB8;border-radius:11px;background:var(--panel-2);
  color:#A99C85;font-size:24px;cursor:pointer;}

/* 证照状态 */
.cert-item{display:flex;gap:11px;align-items:flex-start;padding:11px 0;border-bottom:1px solid #EFE8D9;}
.cert-item:last-child{border-bottom:none;}
.cert-item .th{width:52px;height:52px;border-radius:10px;overflow:hidden;flex-shrink:0;background:#F3EEE2;
  display:flex;align-items:center;justify-content:center;font-size:20px;}
.cert-item .th img{width:100%;height:100%;object-fit:cover;}
.cert-item .bd{flex:1;min-width:0;font-size:13.2px;}
.cert-item .bd b{display:block;font-size:13.8px;}
.cert-item .bd .s{font-size:11.8px;color:var(--muted);margin-top:3px;line-height:1.6;}
.cert-item .bd .rj{font-size:11.8px;color:#B5432E;margin-top:4px;}
.st-pending{background:#F3E8D3;color:#8A6A1F;}
.st-approved{background:#E6EFE4;color:var(--brand-2);}
.st-rejected{background:#FBE4DE;color:#B5432E;}

/* ── 伙伴中心 · 我的专属二维码 + 服务对象（需求 2）──── */
.promo{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap;}
.promo .pq{width:150px;height:150px;border-radius:12px;border:1px solid var(--line);
  background:#fff;flex-shrink:0;object-fit:contain;}
.promo .pb{flex:1;min-width:180px;}
.promo .pb .s{font-size:13px;color:var(--ink-2);line-height:1.75;}
.promo .lnk{margin-top:9px;font-size:12px;color:var(--ink-2);word-break:break-all;line-height:1.6;
  background:var(--gold-bg);border:1px solid var(--gold-line);border-radius:9px;padding:8px 10px;}
.promo .btn-row{margin-top:12px;}
@media(max-width:520px){ .promo .pq{width:124px;height:124px;} .promo{gap:12px;} }

.cl-sum{font-size:13px;color:var(--ink-2);padding-bottom:10px;margin-bottom:2px;
  border-bottom:1px solid #EFE8D9;}
.cl-sum b{font-family:"Songti SC",serif;font-size:15px;}
