/* 工程人 v1.0.0 设计规范:工程黄 #FFC400 / 沥青黑 #17181C / 混凝土浅灰 #F4F4EF */
:root{
  --yellow:#FFC400;
  --yellow-deep:#F0A800;
  --black:#17181C;
  --ink:#26272B;
  --gray:#6E7076;
  --line:#E5E4DC;
  --bg:#F4F4EF;
  --card:#FFFFFF;
  --orange:#E65100;
  --ok:#2E7D32;
}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
body{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;background:var(--bg);color:var(--ink);padding-bottom:76px}
.wrap{max-width:560px;margin:0 auto}
a{color:inherit;text-decoration:none}

/* ===== 页头 ===== */
header{background:var(--black);color:#fff;padding:16px 16px 14px}
.brand{display:flex;align-items:center;gap:10px}
.logo{width:38px;height:38px;background:var(--yellow);color:var(--black);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;flex:0 0 auto}
.brand-name{font-size:20px;font-weight:800;letter-spacing:2px}
.brand-sub{font-size:12px;color:#9A9BA0;margin-top:3px;letter-spacing:1px}
.hazard{height:6px;background:repeating-linear-gradient(45deg,var(--yellow) 0 12px,var(--black) 12px 24px)}

/* ===== 统计 / 筛选 ===== */
.stats{padding:10px 16px;font-size:12px;color:var(--gray);background:#EDEDE6;border-bottom:1px solid var(--line)}
.stats b{color:var(--ink)}
.filters{background:var(--card);padding:12px 16px 10px;border-bottom:1px solid var(--line)}
.chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:10px;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chip{flex:0 0 auto;padding:6px 14px;border-radius:16px;border:1px solid var(--line);background:#fff;font-size:13px;color:var(--ink);cursor:pointer}
.chip.on{background:var(--black);border-color:var(--black);color:var(--yellow);font-weight:700}
.row2{display:flex;gap:10px}
select{flex:1;appearance:none;-webkit-appearance:none;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:13px;color:var(--ink)}

/* ===== 名片卡 ===== */
.cards{padding:12px 16px;display:flex;flex-direction:column;gap:12px}
.card{background:var(--card);border:1px solid var(--line);border-left:5px solid var(--yellow);border-radius:8px;padding:14px 16px 12px;box-shadow:0 1px 2px rgba(23,24,28,.04)}
.c-top{display:flex;align-items:center;gap:8px}
.c-name{font-size:19px;font-weight:800}
.badge-cert{background:var(--black);color:var(--yellow);font-size:11px;font-weight:700;padding:2px 8px;border-radius:4px}
.badge-free{background:#E3F2E5;color:var(--ok);font-size:11px;font-weight:700;padding:2px 8px;border-radius:4px}
.badge-working{background:#F0F0EA;color:var(--gray);font-size:11px;font-weight:700;padding:2px 8px;border-radius:4px}
.free-filter{display:flex;align-items:center;gap:6px;font-size:13px;margin-top:10px;cursor:pointer}
.c-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.t-main{background:var(--yellow);color:var(--black);font-size:12px;font-weight:700;padding:3px 10px;border-radius:4px}
.t-sub{border:1px solid var(--black);color:var(--black);font-size:12px;padding:2px 9px;border-radius:4px;background:#fff}
.t-tag{background:#F0F0EA;color:var(--gray);font-size:12px;padding:3px 9px;border-radius:4px}
.t-rare{border:1px solid var(--orange);color:var(--orange);font-size:12px;padding:2px 9px;border-radius:4px;background:#fff;font-weight:600}
.c-meta{margin-top:9px;font-size:13px;color:var(--gray)}
.c-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:11px;padding-top:11px;border-top:1px dashed var(--line)}
.c-price{font-size:15px}
.c-price b{font-size:18px;color:var(--ink)}
.btn-call{background:var(--black);color:var(--yellow);border:none;font-size:14px;font-weight:700;padding:9px 18px;border-radius:6px;cursor:pointer}
.btn-call:active{background:#000}

/* ===== 详情页 ===== */
.detail{padding:16px}
.d-card{background:var(--card);border:1px solid var(--line);border-top:5px solid var(--yellow);border-radius:8px;padding:18px 16px;box-shadow:0 1px 2px rgba(23,24,28,.04)}
.d-views{margin-left:auto;font-size:12px;color:var(--gray)}
.d-tb{width:100%;border-collapse:collapse;margin-top:14px;font-size:14px}
.d-tb th{color:var(--gray);font-weight:400;text-align:left;padding:7px 0;width:5.5em;vertical-align:top}
.d-tb td{padding:7px 0;border-bottom:1px solid var(--line)}
.d-h{font-size:13px;font-weight:700;color:var(--black);margin:16px 0 6px;padding-left:8px;border-left:4px solid var(--yellow)}
.d-intro p,.d-note p{font-size:14px;line-height:1.7}
.d-muted{color:var(--gray)}
.d-call{display:block;text-align:center;margin-top:18px;border:none;width:100%}
.d-tip{font-size:11px;color:#A0A1A5;margin-top:12px;line-height:1.7}
.d-back{display:inline-block;margin-top:14px;font-size:13px;color:var(--gray);padding:0 16px}

/* ===== 表单页 ===== */
.form-wrap{padding:16px}
.f-head{font-size:17px;font-weight:800;margin-bottom:12px}
.f-error{background:#FDEBDD;border:1px solid var(--orange);color:var(--orange);font-size:13px;padding:10px 12px;border-radius:6px;margin-bottom:12px}
.f-lab{display:block;font-size:13px;font-weight:600;margin:14px 0 6px}
.f-in{display:block;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:15px;color:var(--ink)}
.f-in:focus{outline:none;border-color:var(--yellow);box-shadow:0 0 0 2px rgba(255,196,0,.25)}
.f-grid{display:flex;gap:12px}
.f-grid>div{flex:1;min-width:0}
.f-check{display:flex;align-items:center;gap:6px;font-size:13px;margin-top:8px}
.f-tags{display:flex;flex-wrap:wrap;gap:8px}
.f-tag{display:flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:16px;padding:6px 12px;font-size:13px;cursor:pointer}
.f-tag:has(input:checked){border-color:var(--black);background:var(--black);color:var(--yellow);font-weight:600}
.f-submit{margin-top:22px;border:none;width:100%}

/* ===== 成功 / 404 页 ===== */
.done-wrap{padding:48px 16px}
.done-box{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:32px 20px;text-align:center}
.done-mark{width:56px;height:56px;margin:0 auto 14px;background:var(--yellow);color:var(--black);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:800}
.done-t{font-size:18px;font-weight:800;margin-bottom:10px}
.done-box p{font-size:14px;color:var(--gray);line-height:1.8;margin-bottom:20px}
.done-btn{display:block;border:none}

/* ===== 关于页 ===== */
.about{padding:16px}
.a-card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:16px 16px 8px}
.a-card .d-h:first-child{margin-top:0}
.a-card p{font-size:14px;line-height:1.8;color:var(--ink)}

/* ===== 后台 ===== */
.admin{padding:14px 16px}
.a-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.a-title{font-size:17px;font-weight:800}
.a-links{font-size:12px;color:var(--gray)}
.a-links a{margin-left:4px}
.a-tabs{display:flex;gap:8px;overflow-x:auto;margin-bottom:12px;scrollbar-width:none}
.a-tabs::-webkit-scrollbar{display:none}
.a-tab{flex:0 0 auto;font-size:13px;padding:6px 12px;border-radius:16px;border:1px solid var(--line);background:#fff}
.a-tab.on{background:var(--black);color:var(--yellow);border-color:var(--black);font-weight:700}
.a-row{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:12px 14px;margin-bottom:10px}
.a-info{font-size:14px}
.a-st{font-size:11px;padding:2px 8px;border-radius:4px;margin-left:6px;font-weight:600}
.st-pending{background:#FDEBDD;color:var(--orange)}
.st-online{background:#E3F2E5;color:var(--ok)}
.st-offline{background:#F0F0EA;color:var(--gray)}
.a-meta{font-size:12px;color:var(--gray);margin-top:5px}
.a-ops{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}
.op{border:none;border-radius:6px;font-size:13px;font-weight:600;padding:7px 12px;cursor:pointer}
.op-go{background:var(--black);color:var(--yellow)}
.op-no{background:#fff;border:1px solid var(--line);color:var(--gray)}
.op-mid{background:#FFF4CC;color:#6B5200;border:1px solid var(--yellow)}
.op-del{background:#fff;border:1px solid #D94040;color:#D94040}
.empty{padding:48px 16px;text-align:center;color:var(--gray);font-size:14px}

/* ===== 页脚 ===== */
footer{padding:26px 16px 20px;text-align:center;font-size:11px;color:#A0A1A5;line-height:1.9}
footer .fn{color:#8A8B90}
footer a{border-bottom:1px dotted #8A8B90}
.btn-main{display:block;width:100%;max-width:528px;margin:0 auto;background:var(--yellow);color:var(--black);border:none;font-size:16px;font-weight:800;padding:13px 0;border-radius:8px;letter-spacing:1px;cursor:pointer;text-align:center}
.btn-main:active{background:var(--yellow-deep)}

/* ===== 底部导航 tab ===== */
.tabbar{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--line);display:flex;padding-bottom:env(safe-area-inset-bottom);z-index:10}
.tb{flex:1;text-align:center;padding:12px 0 10px;font-size:14px;color:var(--gray);border-top:3px solid transparent}
.tb.on{color:var(--black);font-weight:800;border-top-color:var(--yellow)}

/* ===== 首页:搜索/宫格/入口/区块 ===== */
.search-bar{display:flex;gap:8px;padding:12px 16px;background:#fff;border-bottom:1px solid var(--line)}
.search-bar input{flex:1;border:1px solid var(--line);border-radius:6px;padding:10px 12px;font-size:14px;background:var(--bg)}
.search-bar input:focus{outline:none;border-color:var(--yellow)}
.search-bar button{background:var(--black);color:var(--yellow);border:none;border-radius:6px;padding:0 18px;font-size:14px;font-weight:700;cursor:pointer}
.g-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:12px 16px;background:#fff;border-bottom:1px solid var(--line)}
.g-cell{background:var(--bg);border:1px solid var(--line);border-radius:8px;text-align:center;padding:14px 0;font-size:14px;font-weight:600}
.entry-row{display:flex;gap:10px;padding:12px 16px 0}
.entry{flex:1;border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:6px;font-size:16px}
.entry span{font-size:12px;font-weight:400}
.e-op{background:var(--black);color:#fff}
.e-op span{color:#B9BAC0}
.e-co{background:var(--yellow);color:var(--black)}
.e-co span{color:#6B5200}
.home-sec{padding:0 16px}
.sec-h{display:flex;justify-content:space-between;align-items:baseline;margin:16px 0 10px;font-size:15px}
.sec-h a{font-size:12px;color:var(--gray)}
.pub-row{display:flex;gap:10px}
.pub{flex:1;background:#fff;border:1px solid var(--line);border-radius:8px;text-align:center;padding:14px 4px;font-size:14px;font-weight:700;line-height:1.5}
.pub span{font-size:11px;color:var(--gray);font-weight:400}

/* ===== 设备/企业通用 ===== */
.dvc{display:block;background:#fff;border:1px solid var(--line);border-left:4px solid var(--yellow);border-radius:6px;padding:11px 13px;margin-bottom:8px}
.dvc-t{font-size:15px;font-weight:700}
.dvc-b{color:var(--gray);font-weight:400;font-size:13px}
.dvc-m{font-size:12px;color:var(--gray);margin-top:4px}
.dvc-p{font-size:13px;color:var(--orange);font-weight:600;margin-top:4px}
.v-tag{font-size:11px;font-weight:700;padding:2px 8px;border-radius:4px;margin-left:6px;white-space:nowrap}
.v-rent{background:var(--yellow);color:var(--black)}
.v-sell{background:var(--black);color:var(--yellow)}
.v-both{background:#FFF4CC;color:#6B5200}
.v-co{background:#E8EDF5;color:#1E5AA8}
.pub-link{display:block;margin-top:10px;font-size:13px;color:var(--black);font-weight:600;text-align:center;border:1px dashed var(--yellow-deep);border-radius:6px;padding:9px;background:#FFFBEB}
.chip-sep{color:#D0D0CA;align-self:center;padding:0 2px}
.co-name{font-size:17px}
.intro-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pre{white-space:pre-wrap}
.banner-btn{display:block;margin:12px 16px 0;background:var(--yellow);color:var(--black);text-align:center;font-weight:800;font-size:15px;padding:12px;border-radius:8px}
.banner-row{display:flex;gap:8px;margin:12px 16px 0}
.banner-row .banner-btn{margin:0;flex:1;font-size:14px;padding:11px}
.banner-btn.sub{background:#fff;border:1.5px solid var(--yellow-deep)}
.badge-stale{background:#FDEBDD;color:var(--orange);font-size:11px;font-weight:700;padding:2px 8px;border-radius:4px}
.wx-tip{background:#E8F0FB;border:1px solid #B9D2F2;color:#1E5AA8;font-size:12px;line-height:1.8;padding:10px 12px;border-radius:6px;margin-bottom:12px}
.me{padding:14px 16px}
.me-head{background:var(--black);border-radius:8px;padding:16px;color:#fff;margin-bottom:12px}
.me-uid{font-size:12px;color:#9A9BA0}
.me-uid b{color:var(--yellow);font-size:20px;letter-spacing:1px;margin-left:4px}
.me-sub{font-size:12px;color:#9A9BA0;margin-top:8px}
.me-sub a{color:var(--yellow);border-bottom:1px dotted var(--yellow)}
.me-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:14px;margin-bottom:12px}
.me-stats{display:flex;gap:8px;margin:12px 0 8px}
.me-stats>div{flex:1;background:var(--bg);border-radius:6px;text-align:center;padding:10px 0}
.me-stats b{display:block;font-size:20px}
.me-stats span{font-size:11px;color:var(--gray)}
.me-soul{font-size:13px;line-height:1.7;margin:6px 0 10px}
.me-card .a-ops{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;padding-top:10px;border-top:1px dashed var(--line)}
a.op{text-align:center;cursor:pointer}
.me-sec{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px 14px;margin-bottom:12px}
.exp-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.6}
.exp-row form{flex:0 0 auto}
.op.sm{padding:4px 10px;font-size:12px}
.op.wide{width:100%;margin-top:8px;padding:9px 0}
.exp-form{margin-top:10px}
.exp-form .f-grid{margin-bottom:8px}
.mine-row{font-size:13px;color:var(--gray);padding:7px 0;border-bottom:1px solid var(--line)}
.dmd .dvc-t{font-size:16px}
.dmd-c{font-size:13px;line-height:1.7;margin-top:6px;white-space:pre-wrap}
.exp-list .exp-item{font-size:13px;line-height:1.7;padding:7px 0;border-bottom:1px dashed var(--line)}
.exp-item b{color:var(--black)}
.btn-call.lock,.btn-main.lock{background:#C9CACD;color:#fff}
.lock-box{background:#F7F7F3;border:1px dashed #C9CACD;border-radius:6px;padding:14px;text-align:center;font-size:13px;color:var(--gray);margin-top:10px}
.lock-box a{color:var(--orange);font-weight:700;margin-left:4px}
.badge-vip{background:var(--yellow);color:var(--black);font-size:11px;font-weight:800;padding:2px 8px;border-radius:4px;border:1px solid var(--yellow-deep);margin-left:8px;vertical-align:2px}
.vip-link{color:var(--yellow);font-size:12px;margin-left:8px;border-bottom:1px dotted var(--yellow)}
.q-bar{height:8px;background:var(--bg);border-radius:4px;overflow:hidden;margin:10px 0 6px}
.q-bar i{display:block;height:100%;background:var(--yellow)}
.q-hint{font-size:12px;color:var(--gray);padding:3px 0}
.price-card{background:#fff;border:1px solid var(--line);border-top:5px solid var(--yellow);border-radius:8px;padding:18px 16px;margin-bottom:12px}
.me-price{font-size:30px;font-weight:800}
.me-price small{font-size:13px;color:var(--gray);font-weight:400}
.price-sub{font-size:12px;color:var(--gray);margin-top:4px}
.vip-list{margin-top:12px;font-size:13px;line-height:2}
.vip-ok{background:#E3F2E5;color:var(--ok);font-size:14px;font-weight:700;text-align:center;padding:12px;border-radius:6px}

/* ===== 0902 增补:同事方案全景演示(资讯轮播/商城/券/加盟/海报/统计) ===== */
.hot-row{display:flex;gap:8px;overflow-x:auto;padding:10px 16px;background:#fff;border-bottom:1px solid var(--line);scrollbar-width:none}
.hot-row::-webkit-scrollbar{display:none}
.hot{flex:0 0 auto;max-width:230px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:8px 12px;font-size:12px}
.hot b{color:var(--orange);font-size:11px;margin-right:6px;font-style:normal}
.hot.hot-more{background:var(--black);color:var(--yellow);border-color:var(--black)}
.entry3{padding-top:10px}
.e-mall{background:#fff;border:1.5px solid var(--black)}
.e-mall span{color:var(--gray)}
.e-news{background:#EDEDE6}
.e-news span{color:#6F7075}
.e-union{background:var(--black);color:#fff}
.e-union span{color:#B9BAC0}
.sec-h .sec-src{font-size:11px;color:#A0A1A5;font-weight:400}
.mall-err{margin:12px 16px 0}
.mall-tip{font-size:12px;color:var(--gray);margin:0 0 10px}
.g-goods{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.g-item{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px}
.g-t{font-size:14px;font-weight:700;line-height:1.4}
.g-spec{font-size:12px;color:var(--gray);margin-top:3px}
.g-pt{color:var(--orange);font-weight:800;font-size:16px;margin-top:6px}
.g-intro{font-size:11px;color:#A0A1A5;margin-top:4px;line-height:1.6}
.x-btn{display:block;text-align:center;margin-top:10px;cursor:pointer}
.x-det{margin-top:10px;border-top:1px dashed var(--line);padding-top:10px}
.x-det summary{font-size:13px;font-weight:700;color:var(--black);cursor:pointer;padding:6px 0}
.x-in{margin-top:8px;font-size:13px;padding:8px 10px}
.rule-list{background:#fff;border:1px solid var(--line);border-radius:8px;padding:4px 14px}
.rule-row{display:flex;justify-content:space-between;font-size:13px;padding:8px 0;border-bottom:1px solid var(--line)}
.rule-row:last-child{border-bottom:none}
.coupon-amt{font-size:26px;font-weight:800;color:var(--orange)}
.coupon-amt small{font-size:12px;font-weight:600}
.coupon-info{margin-left:4px}
.coupon-t{font-size:15px;font-weight:700}
.d-title{font-size:20px;font-weight:800;line-height:1.5;margin:8px 0 6px}
.d-meta{margin-top:2px}
.uni .a-card{margin-bottom:12px}
.src-badge{float:right;font-size:10px;font-weight:600;color:#A0A1A5;border:1px solid var(--line);border-radius:4px;padding:1px 6px;margin-top:2px}
.uni-tb{width:100%;border-collapse:collapse;margin-top:10px;font-size:13px;background:var(--bg);border-radius:6px}
.uni-tb th{color:var(--gray);font-weight:600;text-align:left;padding:8px 10px;white-space:nowrap;vertical-align:top;border-bottom:1px solid var(--line)}
.uni-tb td{padding:8px 10px;border-bottom:1px solid var(--line)}
.uni-tb tr:last-child th,.uni-tb tr:last-child td{border-bottom:none}
.uni-note{font-size:12px;color:#A0A1A5;margin-top:8px}
.uni-foot{font-size:11px;color:#A0A1A5;padding:4px 16px 12px;line-height:1.8}
.pf-h{margin-top:18px}
.poster{background:var(--black);border-radius:10px;padding:22px 18px;color:#fff;text-align:center}
.poster-top{font-size:12px;color:#9A9BA0;letter-spacing:1px}
.poster-logo{width:52px;height:52px;margin:16px auto 10px;background:var(--yellow);color:var(--black);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:800}
.poster-t{font-size:13px;color:#B9BAC0}
.poster-code{font-size:26px;font-weight:800;letter-spacing:2px;color:var(--yellow);margin:8px 0 12px}
.poster-link{font-size:11px;color:#8A8B90;word-break:break-all;margin-bottom:14px}
.poster-tip{font-size:11px;color:#8A8B90;line-height:1.8;margin-top:12px}
.a-stats{display:flex;gap:6px;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:10px 6px;margin-bottom:12px}
.a-stats>div{flex:1;text-align:center}
.a-stats b{display:block;font-size:16px;color:var(--black)}
.a-stats span{font-size:10px;color:var(--gray)}
.me-mi{margin-top:10px;font-size:12px;color:#B9BAC0}
.me-mi b{color:var(--yellow);font-size:16px;margin:0 2px}
.me-mi a{color:var(--yellow);border-bottom:1px dotted var(--yellow);margin:0 4px}
.pt-in{color:var(--ok)}
.pt-out{color:var(--orange)}

/* ===== 地图找设备(铁公鸡草图·按省点亮) ===== */
.map-sec{background:#fff;border-bottom:1px solid var(--line);padding:12px 16px 14px}
#chinamap svg{width:100%;height:auto;display:block}
#chinamap path{stroke:#17181C;stroke-width:.12;fill:#F0F0EA}
#chinamap path.g1{fill:#FFF4CC}
#chinamap path.g2{fill:#FFC400}
#chinamap path.g3{fill:#E65100}
#chinamap path.has{cursor:pointer}
#chinamap path.cur{stroke-width:.55;stroke:#17181C;filter:brightness(.92)}
.map-cap{font-size:12px;color:var(--gray);margin-top:8px}
.map-cap b{color:var(--ink)}
.map-cap a{color:var(--orange);font-weight:600}
.map-lg{display:flex;gap:12px;font-size:11px;color:#A0A1A5;margin-top:6px}
.map-lg i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px;vertical-align:-1px;border:1px solid var(--line)}

/* ===== 高德大地图页 ===== */
.map-big-head{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:#fff;border-bottom:1px solid var(--line);font-size:13px}
.map-big-head b{font-size:15px}
.map-big-n{font-size:12px;color:var(--gray)}
.sec-h .map-big-link{display:inline-block;font-size:14px;font-weight:900;color:#fff;background:#1668DC;border:1px solid #0F4FB8;border-radius:14px;padding:4px 12px}
.sec-h .tap-ico{display:inline-block;font-style:normal;margin-right:2px;animation:gcrTap 1.1s ease-in-out infinite;transform-origin:50% 80%}
@keyframes gcrTap{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(3px) scale(.86)}}
#amapbox{width:100%;height:calc(100vh - 240px);min-height:420px}
.amap-iw{font-size:13px;line-height:1.8;max-width:230px}
.amap-iw b{font-size:14px}
.amap-pn{color:#E65100;font-weight:700}
.amap-iw a{color:#1E5AA8;font-weight:600}
/* 证件图展示 */
.d-cert{margin-top:14px}
.cert-img{display:block;width:100%;max-width:480px;border-radius:10px;border:1px solid #E2E2DC;background:#fff}
/* 机手名片墙:搜索框+行式列表(1013k) */
.pl-top{padding:14px 16px 12px;background:#fff;border-bottom:1px solid var(--line)}
.pl-search{display:flex;gap:8px}
.pl-search input{flex:1;min-width:0;border:1px solid var(--line);border-radius:8px;padding:10px 12px;
  font-size:14px;background:var(--bg)}
.pl-search input:focus{outline:none;border-color:var(--yellow-deep)}
.pl-search button{background:none;border:none;color:var(--black);display:flex;
  align-items:center;padding:0 6px;cursor:pointer}
.pl-free{flex:0 0 auto;display:flex;align-items:center;gap:4px;border:1px solid var(--line);
  border-radius:8px;padding:0 10px;font-size:13px;font-weight:700;color:var(--gray);
  cursor:pointer;user-select:none;-webkit-user-select:none;white-space:nowrap}
.pl-free input{display:none}
.pl-free.on{background:#E3F2E5;border-color:var(--ok);color:var(--ok)}
.pl-add{display:block;text-align:center;margin:12px 16px 14px;border:1px dashed var(--yellow-deep);border-radius:8px;
  color:var(--yellow-deep);font-size:14px;font-weight:700;padding:10px;text-decoration:none;background:#fff}
.plist-wrap{position:relative}
.plist-scroll{max-height:460px;overflow-y:auto;-webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;scrollbar-width:none}  /* 原生条隐藏,统一用自绘滑块 */
.plist-scroll::-webkit-scrollbar{display:none}
.plist-bar{position:absolute;top:8px;right:5px;bottom:8px;width:14px;border-radius:7px;
  background:#F0F0EA;box-shadow:inset 0 0 0 1px var(--line)}
.plist-thumb{position:absolute;left:2px;width:10px;min-height:44px;border-radius:5px;
  background:var(--yellow);box-shadow:0 1px 2px rgba(23,24,28,.25);cursor:grab;touch-action:none}
.plist-thumb:active{cursor:grabbing;background:var(--yellow-deep)}
.plist-wrap.has-bar .pl-row{padding-right:26px}  /* 让行内容避开滑块轨道 */
.plist{background:#fff;border-bottom:1px solid var(--line)}
.pl-row{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--line);
  text-decoration:none}
.pl-row:last-child{border-bottom:none}
.pl-main{display:flex;align-items:center;gap:6px;flex:0 0 auto}
.pl-main.wide{flex:1.2;min-width:0}              /* 设备行:标题长,占宽省略 */
.pl-main.wide .pl-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pl-name{font-size:16px;font-weight:800}
.pl-mid{flex:1;min-width:0;font-size:13px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dev-imgs{display:flex;gap:8px;overflow-x:auto;padding:4px 0;scrollbar-width:none}
.dev-imgs::-webkit-scrollbar{display:none}
.dev-imgs img{width:150px;height:112px;object-fit:cover;border-radius:8px;border:1px solid var(--line);flex:0 0 auto;background:var(--bg)}
.pl-side{flex:0 0 auto;font-size:12px;color:var(--gray)}
.pl-more{flex:0 0 auto;font-size:13px;font-weight:700;color:var(--yellow-deep)}
.badge-vip-sm{background:var(--yellow);color:var(--black);font-size:10px;font-weight:700;
  padding:1px 6px;border-radius:3px}
.badge-free-sm{background:#E3F2E5;color:var(--ok);font-size:10px;font-weight:700;
  padding:1px 6px;border-radius:3px}
.badge-busy-sm{background:#F0F0EA;color:var(--gray);font-size:10px;font-weight:700;
  padding:1px 6px;border-radius:3px}
.pl-btn{flex:0 0 auto;background:none;color:var(--yellow-deep);font-size:13px;font-weight:400}
.pl-empty{background:#fff;margin:0;border-bottom:1px solid var(--line);padding:26px 16px;
  text-align:center;font-size:14px;color:var(--gray)}
.pl-empty a{display:inline-block;margin-top:10px;color:var(--yellow-deep);font-weight:700}
/* 登录页:注册主入口(未登录用户大多是新人,注册优先于登录) */
.login-reg{display:block;text-align:center;border:1px dashed var(--yellow-deep);border-radius:8px;
  color:var(--yellow-deep);font-size:14px;font-weight:700;padding:10px;margin-top:4px;
  text-decoration:none}
/* 填报页/成功页:申请会员块 */
.f-vip{background:linear-gradient(135deg,#26272D 0%,#17181C 70%);border-radius:10px;
  padding:14px 16px;margin:16px 0 8px;color:#F4F4EF}
.f-vip b{font-size:15px;color:var(--yellow)}
.f-vip p{font-size:12px;color:#B9BAC0;margin:6px 0 8px}
.f-vip a{color:var(--yellow);font-size:13px;font-weight:700}
.done-vip{display:block;margin:0 0 12px;border:1px dashed var(--yellow-deep);border-radius:8px;
  color:var(--yellow-deep);font-weight:700;font-size:14px;padding:10px;text-decoration:none}
/* 出售筛选显眼 + 企业资产页 */
.chip.chip-sell{border-color:#E65100;color:#E65100;font-weight:700}
.chip.chip-sell.on{background:#E65100;border-color:#E65100;color:#fff}
.exp-item a{color:var(--ink)}
.exp-item a b{font-size:14px}
/* 首页大改:访谈视频轮播+背书+CTA+最新上墙 */
.hv-wrap{margin:14px 16px 0}
.hv-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}
.hv-head b{font-size:16px}
.hv-head span{font-size:11px;color:var(--gray)}
.hv-box{position:relative}
.hv-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;scrollbar-width:none}
.hv-track::-webkit-scrollbar{display:none}
.hv-card{flex:0 0 100%;scroll-snap-align:center;border-radius:14px;overflow:hidden;background:#1F2025}
.hv-video{display:block;width:100%;aspect-ratio:16/9;background:#000}
.hv-ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  aspect-ratio:16/9;background:linear-gradient(135deg,#26272D 0%,#17181C 60%,#3A2E10 100%);color:#F4F4EF}
.hv-play{width:56px;height:56px;border-radius:50%;background:var(--yellow);color:var(--black);
  display:flex;align-items:center;justify-content:center;font-size:22px;padding-left:4px;margin-bottom:6px}
.hv-t{font-size:18px;font-weight:800}
.hv-s{font-size:13px;color:#A0A1A5}
.hv-soon{font-size:10px;color:var(--yellow);border:1px solid var(--yellow);border-radius:10px;padding:2px 10px;margin-top:6px}
.hv-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:34px;height:34px;
  border-radius:50%;border:none;background:rgba(23,24,28,.55);color:#fff;font-size:22px;line-height:1;
  display:flex;align-items:center;justify-content:center;cursor:pointer}
.hv-arrow:hover{background:rgba(23,24,28,.8)}
#hvPrev{left:6px}#hvNext{right:6px}
.hv-dots{text-align:center;font-size:11px;color:var(--gray);margin-top:6px}
/* 会员页:电子工牌 */
.vip-card-demo{margin:14px 16px 0;background:linear-gradient(135deg,#26272D 0%,#17181C 70%);border-radius:14px;
  padding:18px 16px;color:#F4F4EF;border:1px solid #2A2B31}
.vcd-top{display:flex;align-items:center;gap:10px;font-size:15px}
.vcd-logo{width:34px;height:34px;border-radius:8px;background:var(--yellow);color:var(--black);
  display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:900}
.vcd-no{font-size:24px;font-weight:800;letter-spacing:.12em;margin:12px 0 4px;color:var(--yellow)}
.vcd-foot{font-size:11px;color:#A0A1A5}

/* ===== 加盟体系:工作台/门店卡(1013g) ===== */
.biz-nums{display:flex;gap:8px;margin:4px 0 10px}
.biz-num{flex:1;background:var(--bg);border:1px solid var(--line);border-radius:8px;text-align:center;padding:10px 4px}
.biz-num b{display:block;font-size:22px;color:var(--ink)}
.biz-num span{font-size:11px;color:var(--gray)}
.biz-bar{height:10px;background:#F0F0EA;border-radius:5px;overflow:hidden}
.biz-bar-in{height:100%;background:var(--yellow)}
.biz-log{padding:6px 0;border-bottom:1px dashed var(--line)}
.biz-log:last-child{border-bottom:none}
.biz-me{font-weight:800;color:var(--black)}
.bind-form{display:flex;gap:6px;flex:1 1 100%}
.bind-form input{flex:1;min-width:0;border:1px solid var(--line);border-radius:6px;padding:6px 8px;font-size:13px}
.co-cover{display:block;width:calc(100% + 32px);margin:-14px -16px 10px;aspect-ratio:16/7;object-fit:cover;border-radius:8px 8px 0 0;border-bottom:1px solid var(--line)}
.d-cover{display:block;width:calc(100% + 32px);margin:-18px -16px 14px;aspect-ratio:16/9;object-fit:cover;border-radius:8px 8px 0 0;border-bottom:1px solid var(--line)}
.btn-sub{display:block;text-align:center;margin-top:14px;border:1px solid var(--black);color:var(--black);font-weight:700;font-size:14px;padding:10px;border-radius:6px;text-decoration:none}

/* ===== 设备频道:联盟门店横滑卡(1013h) ===== */
.store-scroll{display:flex;gap:8px;overflow-x:auto;padding:2px 0 4px;scrollbar-width:none}
.store-scroll::-webkit-scrollbar{display:none}
.store-card{flex:0 0 auto;width:150px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--yellow);border-radius:8px;padding:10px 10px 9px;display:flex;flex-direction:column;gap:4px;text-decoration:none;color:var(--ink)}
.store-card b{font-size:14px;line-height:1.3}
.store-cov{width:100%;height:64px;object-fit:cover;border-radius:6px;border:1px solid var(--line);background:var(--bg)}
.co-cover-ph{display:flex;align-items:center;justify-content:center;background:#F0F0EA}
.co-cover-ph span{font-size:26px;font-weight:800;color:#C8C9CD}
.d-cover-ph{display:flex;align-items:center;justify-content:center;background:#17181C}
.d-cover-ph div{display:flex;flex-direction:column;align-items:center;gap:8px;padding:30px 0}
.d-cover-ph b{font-size:22px;color:var(--yellow)}
.d-cover-ph span{font-size:12px;color:#9A9BA0}
.store-big{padding-top:0;overflow:hidden}
.store-big .co-cover{width:100%;margin:0;border-radius:8px 8px 0 0;aspect-ratio:16/7}
.store-big-link{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:inherit;margin:-14px -16px 10px}
.store-big .c-top,.store-big .c-meta,.store-big .c-chips{margin-left:16px;margin-right:16px}
.biz-live{border:1px solid var(--yellow-deep);border-radius:8px;padding:10px 12px;margin:12px 0;background:#FFFBEB}
.biz-live-h{font-size:12px;font-weight:700;color:#6B5200;margin-bottom:8px;display:flex;justify-content:space-between}
.biz-live-h span{font-weight:400;color:#9A8A4A;font-size:11px}
.biz-qr{display:flex;align-items:center;gap:12px;margin-top:12px;border-top:1px dashed var(--line);padding-top:12px}
.biz-qr img{border:1px solid var(--line);border-radius:6px;background:#fff}
.biz-qr span{font-size:11px;color:var(--gray);line-height:1.5}
.sib-scroll{display:flex;gap:8px;overflow-x:auto;padding:4px 0;scrollbar-width:none}
.sib-scroll::-webkit-scrollbar{display:none}
.sib-card{flex:0 0 auto;width:140px;border:1px solid var(--line);border-left:4px solid var(--yellow);
  border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:4px;text-decoration:none;color:var(--ink);background:#fff}
.sib-card b{font-size:13px;line-height:1.35}
.sib-card span{font-size:11px;color:var(--gray)}
.sib-city{color:var(--yellow-deep)!important;font-weight:600}
.uni-disclaimer{background:#FFFBEB;border-bottom:1px solid var(--line);padding:10px 16px;
  font-size:12px;color:#6B5200;line-height:1.6}
.store-city{font-size:11px;color:var(--gray)}

/* ===== 首页四宫格 + 名片精选(1013j) ===== */
.quick{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:14px 16px 0;
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 6px 12px}
.q-item{display:flex;flex-direction:column;align-items:center;gap:5px;text-decoration:none}
.q-ico{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;
  font-size:20px;font-weight:900}
.q-yellow{background:var(--yellow);color:var(--black)}
.q-black{background:var(--black);color:var(--yellow)}
.q-item b{font-size:13px;color:var(--ink)}
.q-item span{font-size:10px;color:var(--gray)}
.dvc .dvc-name{margin:0 2px}
.dvc .dvc-meta{float:right;font-size:12px;color:var(--gray);font-weight:400}

/* ===== 名片分享海报(1013j) ===== */
.d-poster-btn{display:block;width:100%;margin-top:14px;padding-top:13px;border:none;
  border-top:1px dashed var(--line);background:none;color:var(--gray);font-size:14px;
  font-weight:700;cursor:pointer}
.d-poster-btn:active{color:var(--ink)}
.poster-mask{position:fixed;inset:0;z-index:60;background:rgba(23,24,28,.88);
  display:flex;align-items:center;justify-content:center;padding:20px}
.poster-mask[hidden]{display:none}
.poster-box{background:#fff;border-radius:14px;padding:12px 12px 14px;max-width:340px;width:100%;
  max-height:calc(100vh - 60px);display:flex;flex-direction:column;align-items:center}
.poster-box img{width:100%;border-radius:8px;display:block}
.poster-tip{font-size:12px;color:var(--gray);margin:10px 0}
.poster-close{background:var(--black);color:var(--yellow);border:none;border-radius:6px;
  font-size:14px;font-weight:700;padding:9px 32px;cursor:pointer}

/* 工程人门店联盟 hero+运营看板 (1014b) */
.uni-hero{background:var(--ink);color:#fff;padding:18px 16px 14px}
.uh-top{display:flex;align-items:center;gap:10px}
.uh-logo{width:38px;height:38px;border-radius:8px;background:var(--yellow);color:var(--ink);font-weight:800;font-size:19px;display:flex;align-items:center;justify-content:center;flex:none}
.uh-name{font-size:18px;font-weight:800}
.uh-sub{font-size:11px;color:#B9BAC0;margin-top:2px}
.uh-nums{display:flex;flex-wrap:wrap;margin-top:14px;border-top:1px solid #2B2C33;padding-top:12px}
.uh-n{width:33.33%;display:flex;flex-direction:column;padding:4px 0}
.uh-n b{color:var(--yellow);font-size:19px;font-weight:800}
.uh-n span{font-size:10px;color:#B9BAC0;margin-top:1px}
.ops-rank{margin-top:10px;background:var(--bg);border-radius:6px;padding:4px 10px}
.ops-rank-row{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}
.ops-rank-row:last-of-type{border-bottom:none}
.rk-no{width:18px;height:18px;border-radius:50%;background:#D8D9DD;color:var(--ink);font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;flex:none}
.ops-rank-row.first .rk-no{background:var(--yellow)}
.rk-name{font-weight:700;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rk-meta{order:9;width:100%;padding-left:26px;color:var(--gray);font-size:11px}
.rk-rebate{color:var(--ink);font-weight:600;font-size:12px;white-space:nowrap;flex:none}
.ops-flow{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.ops-step{display:flex;flex-direction:column;background:var(--bg);border-radius:6px;padding:9px 12px}
.ops-step b{font-size:13px;color:var(--black)}
.ops-step span{font-size:12px;color:var(--gray);margin-top:2px}
.ops-cta{display:flex;gap:10px;margin-bottom:12px}
.ops-cta .btn-call{flex:1;text-align:center;display:block}

/* 门店工作台工具化 (1014e) */
.biz-hero{background:var(--ink);color:#fff}
.biz-hero-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.biz-hero-top b{color:#fff;font-size:15px}
.biz-hero .a-meta{color:#B9BAC0}
.biz-viewlink{color:var(--yellow);font-size:12px;font-weight:600;white-space:nowrap;padding-top:2px}
.biz-month{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px;border-top:1px solid #2B2C33;padding-top:10px}
.bm-lab{color:var(--yellow);font-size:12px;font-weight:700}
.bm-item{font-size:12px;color:#DEDFE3}
.bq-btns{display:flex;gap:10px}
.bq-btn{flex:1;border:none;border-radius:8px;padding:16px 0 14px;font-size:16px;font-weight:800;cursor:pointer}
.bq-shift{background:var(--yellow);color:var(--ink)}
.bq-sale{background:var(--black);color:var(--yellow)}
.bq-oil{background:#E8E9EC;color:var(--ink)}
.bq-btn:active{opacity:.85}
.biz-qr-row{display:flex;gap:14px;align-items:center}
.biz-qr-tip b{font-size:14px}
.biz-fold{border:1px solid var(--line);border-radius:8px;background:var(--card);padding:14px 16px}
.biz-fold summary{font-weight:700;font-size:14px;cursor:pointer;color:var(--ink)}
.biz-fold[open] summary{margin-bottom:4px}
.log-del{display:inline;margin-left:6px}
.log-del button{border:1px solid var(--line);background:none;color:var(--gray);font-size:11px;border-radius:4px;padding:1px 8px;cursor:pointer}
.log-del button:active{color:var(--ink)}

/* 店家街+主铺(虚拟铺子,游戏感) 1014f */
.street-top{background:linear-gradient(180deg,#17181C 0%,#17181C 46px,#fff 46px)}
.street-top .sec-h b{color:#fff}
.street-top .sec-h span{color:#B9BAC0}
.shop-card{padding:0;overflow:hidden;display:block}
.shop-awning{height:14px;background:repeating-linear-gradient(90deg,var(--sw) 0 16px,#17181C 16px 32px)}
.shop-head{display:flex;align-items:center;gap:10px;padding:12px 14px 8px}
.shop-badge{font-size:26px;width:44px;height:44px;background:var(--bg);border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;justify-content:center;flex:none}
.shop-name{font-size:16px;font-weight:800;color:var(--black)}
.shop-id{flex:1;min-width:0}
.shop-enter{font-size:12px;font-weight:700;color:var(--ink);background:var(--yellow);border-radius:14px;padding:4px 12px;flex:none}
.shop-banner{margin:0 14px 10px;background:#FFF8E1;border:1px dashed #E6C34A;color:#7A5C00;font-size:12px;padding:6px 10px;border-radius:6px}
.shop-voice{padding:0 14px 8px;font-size:13px;color:var(--ink)}
.sv-mood{font-weight:700}
.shop-pop{display:flex;gap:6px;padding:0 14px 12px;flex-wrap:wrap}
.shop-pop span{font-size:11px;color:var(--gray);background:var(--bg);border-radius:10px;padding:2px 9px}
.big-front{background:var(--card);border-bottom:1px solid var(--line)}
.bf-awning{height:20px;background:repeating-linear-gradient(90deg,var(--sw) 0 22px,#17181C 22px 44px)}
.bf-sign{display:flex;align-items:center;gap:12px;padding:14px 16px 10px}
.bf-badge{font-size:34px;width:60px;height:60px;background:var(--bg);border:2px solid var(--sw);border-radius:14px;display:flex;align-items:center;justify-content:center;flex:none}
.bf-name{font-size:20px;font-weight:800;color:var(--black)}
.bf-meta{font-size:12px;color:var(--gray);margin-top:3px}
.bf-banner{margin:0 16px 14px;background:var(--sw);color:#17181C;font-size:13px;font-weight:700;padding:8px 12px;border-radius:6px}
.bf-banner-ph{background:var(--bg);color:var(--gray);font-weight:400;border:1px dashed var(--line)}
.visit-line{padding:10px 16px;font-size:13px;color:var(--gray);background:#fff;border-bottom:1px solid var(--line)}
.visit-line b{color:var(--ink)}
.parlor{padding:12px 16px}
.owner-box{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:12px 14px;margin-bottom:12px}
.ob-lab{font-size:12px;font-weight:700;color:var(--gray);margin-bottom:8px}
.ob-moods{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.mood-btn{border:1px solid var(--line);background:var(--bg);border-radius:16px;padding:5px 12px;font-size:12px;cursor:pointer}
.mood-btn:active{background:var(--yellow)}
.feed-row{margin-bottom:10px}
.feed-mood{display:flex;align-items:baseline;gap:8px;padding:4px 2px}
.fm-emoji{font-size:26px}
.fm-lab{font-size:14px;font-weight:700;color:var(--ink)}
.fm-time{font-size:11px;color:#A0A1A5;margin-left:auto}
.feed-talk{display:flex;gap:10px}
.ft-badge{font-size:20px;width:36px;height:36px;background:var(--bg);border:1px solid var(--line);border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none}
.ft-bubble{background:var(--card);border:1px solid var(--line);border-radius:2px 12px 12px 12px;padding:9px 12px;flex:1}
.ft-text{font-size:14px;line-height:1.6;color:var(--ink)}
.job-row{display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin-bottom:8px}
.jr-title{font-size:14px;font-weight:700;color:var(--black);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jr-meta{font-size:11px;color:var(--gray);flex:none}
.jr-go{color:var(--gray);flex:none}
.visitor-line{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:12px;color:var(--gray);margin-bottom:12px}
.visitor-chip{background:var(--bg);border-radius:12px;padding:3px 10px;font-size:11px;color:var(--ink)}
.gb-card{background:#FFF9DB;border:1px solid #EAD98A;border-radius:6px;padding:10px 12px;margin-bottom:10px;transform:rotate(-.4deg)}
.gb-card:nth-child(even){transform:rotate(.4deg)}
.gb-head{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}
.gb-head b{font-size:13px;color:#5B4A00}
.gb-text{font-size:14px;line-height:1.6;color:#3D3200}
.gb-form{margin-top:12px}
.bk-fold{margin-top:10px;border:1px solid var(--line);border-radius:8px;background:var(--card);padding:12px 14px}
.bk-fold summary{font-weight:700;font-size:14px;cursor:pointer}
.bk-form{margin-top:10px}
.empty-s{font-size:13px;color:var(--gray);padding:8px 0}
.foot-acts{display:flex;gap:10px;padding:14px 16px 20px;background:#fff}
.foot-acts .btn-call{flex:1;text-align:center}
.foot-acts .btn-call.ghost{background:var(--bg);color:var(--ink)}

/* ===== 店家主铺·院子场景 1014g ===== */
/* ① 坐标地图 */
.cy-mapcard{margin:12px 16px;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.cy-maphead{display:flex;align-items:baseline;gap:8px;padding:12px 14px 8px}
.cy-maphead b{font-size:15px;color:var(--black)}
.cy-maphead span{font-size:12px;color:var(--gray)}
.map-svg{display:block;width:100%;height:auto}
.mt-shop{fill:#17181C}
.mt-dim{fill:#A0A1A5}
.mt-badge{fill:#17181C}
.cy-mapchip{margin:10px 14px 0;display:inline-block;background:#FFF8E1;border:1px solid #E6C34A;color:#5B4A00;font-size:13px;font-weight:700;border-radius:14px;padding:5px 12px}
.cy-mapnote{padding:4px 16px 0;font-size:11px;color:#A0A1A5}
.cy-enter{display:block;margin:10px 14px 14px;text-align:center;background:var(--yellow);color:var(--ink);font-weight:800;font-size:15px;border-radius:20px;padding:11px}
.cy-enter:active{transform:scale(.97)}
.map-pin{animation:pinbounce 2.2s ease-in-out infinite}
@keyframes pinbounce{0%,100%{transform:translate(391px,212px)}50%{transform:translate(391px,204px)}}
.map-truck{animation:truckrun 13s linear infinite}
@keyframes truckrun{from{transform:translate(780px,157px)}to{transform:translate(-140px,157px)}}
/* ② 院门 */
.cy-gate .bf-sign{padding-bottom:8px}
.cy-id{flex:1;min-width:0}
.cy-sky{position:relative;height:118px;background:linear-gradient(180deg,#CFE3F0 0%,#E9F0EC 74%,#F2F1EA 100%);overflow:hidden}
.cy-sun{position:absolute;right:30px;top:20px;width:42px;height:42px;border-radius:50%;background:#FFD54F;box-shadow:0 0 0 10px rgba(255,213,79,.28),0 0 0 22px rgba(255,213,79,.12)}
.cy-cloud{position:absolute;height:13px;background:#fff;border-radius:10px;opacity:.92}
.cy-cloud::before,.cy-cloud::after{content:'';position:absolute;background:#fff;border-radius:50%}
.cy-cloud::before{width:20px;height:20px;top:-9px;left:8px}
.cy-cloud::after{width:14px;height:14px;top:-6px;right:10px}
.cy-cloud.c1{width:62px;top:28px;left:-90px;animation:cloudrift 30s linear infinite}
.cy-cloud.c2{width:42px;top:64px;left:-70px;animation:cloudrift 42s linear infinite 9s}
@keyframes cloudrift{to{transform:translateX(130vw)}}
.cy-awning{height:20px;background:repeating-linear-gradient(90deg,var(--sw) 0 22px,#17181C 22px 44px)}
.cy-flag{flex:none;position:relative;width:34px;height:44px}
.cy-flag::before{content:'';position:absolute;left:50%;bottom:0;width:3px;height:44px;background:#6E7078;transform:translateX(-50%)}
.cy-flag span{position:absolute;left:50%;top:0;transform:translateX(-6%);background:var(--sw);color:#17181C;font-size:17px;padding:2px 4px;border-radius:0 6px 6px 6px;clip-path:polygon(0 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 calc(100% - 6px))}
.cy-wall{position:relative;height:92px;background:repeating-linear-gradient(0deg,#E3DFCF 0 16px,#DBD6C3 16px 18px),#E3DFCF;border-top:3px solid #CFC9B4;overflow:hidden}
.cy-lintel{position:absolute;left:50%;top:0;transform:translateX(-50%);width:104px;height:14px;background:#17181C;border-radius:0 0 6px 6px}
.cy-door{position:absolute;top:12px;width:34px;height:74px;background:#17181C;border-radius:5px 5px 0 0;box-shadow:inset 0 0 0 2px rgba(255,255,255,.05)}
.cy-door.dl{left:calc(50% - 47px)}
.cy-door.dr{left:calc(50% + 13px)}
.cy-door::after{content:'';position:absolute;top:34px;width:5px;height:5px;border-radius:50%;background:var(--sw)}
.cy-door.dl::after{right:6px}
.cy-door.dr::after{left:6px}
.cy-mat{position:absolute;left:50%;bottom:6px;transform:translateX(-50%) rotate(-1deg);background:var(--sw);color:#17181C;font-size:11px;font-weight:800;letter-spacing:2px;padding:4px 16px;border-radius:4px;border:2px dashed rgba(23,24,28,.35)}
.cy-rooster{position:absolute;right:12%;bottom:2px;font-size:26px;transform:rotate(-6deg)}
.cy-ground{height:22px;background:repeating-linear-gradient(90deg,#E9E7DC 0 44px,#E2DFD0 44px 46px);border-top:1px solid #D8D5C6}
/* ③ 房间通用 */
.cy-room{margin:12px 16px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 14px 16px}
.room-tag{display:inline-flex;align-items:center;gap:5px;background:#17181C;color:#FFC400;font-size:12px;font-weight:800;border-radius:14px;padding:5px 12px;margin-bottom:12px}
/* 小人 */
.pp{display:block}
.pp-bob{animation:ppbob 3.2s ease-in-out infinite}
@keyframes ppbob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
/* 前台舞台 */
.cy-stage{display:flex;flex-direction:column;align-items:center;padding:4px 0 0}
.cy-stage .pp{width:88px;height:auto}
.bub{position:relative;max-width:290px;background:#fff;border:2px solid #17181C;border-radius:14px;padding:9px 13px;font-size:14px;line-height:1.55;color:var(--ink);margin-bottom:16px;text-align:center}
.bub::after{content:'';position:absolute;left:50%;bottom:-8px;width:12px;height:12px;background:#fff;border-right:2px solid #17181C;border-bottom:2px solid #17181C;transform:translateX(-50%) rotate(45deg)}
.bub.pop{animation:bubpop .5s cubic-bezier(.34,1.6,.64,1) both}
@keyframes bubpop{0%{transform:scale(.25) translateY(10px);opacity:0}70%{transform:scale(1.05)}100%{transform:scale(1);opacity:1}}
.bub-emoji{font-size:19px;margin-right:5px}
.desk{position:relative;z-index:1;margin-top:-20px;width:100%;height:62px;background:linear-gradient(180deg,#D9B57C 0 13px,#B98A4A 13px 100%);border-radius:8px 8px 4px 4px;box-shadow:0 2px 0 rgba(23,24,28,.12);display:flex;align-items:center;justify-content:space-between;padding:0 14px}
.desk-item{font-size:20px;margin-top:-16px}
.desk-sign{background:#17181C;color:#FFC400;font-size:13px;font-weight:800;letter-spacing:6px;padding:5px 10px 5px 16px;border-radius:4px;margin-top:-22px}
.cy-visits{display:flex;align-items:center;gap:10px;margin-top:12px;background:var(--bg);border-radius:8px;padding:7px 12px;font-size:13px;color:var(--gray)}
.cy-visits b{color:var(--ink)}
.mini-figs{display:flex;align-items:flex-end;gap:1px;flex:none}
.mini-figs .pp{width:24px;height:auto}
.mini-figs .pp-bob{animation:none}
.desk-cta{display:flex;gap:10px;margin-top:12px}
.desk-cta .btn-call{flex:1;text-align:center}
.desk-cta .btn-call.ghost{background:var(--bg);color:var(--ink)}
/* ④ 陈列院 */
.mc-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mc-card{border:1px solid var(--line);border-radius:10px;padding:10px 10px 8px;display:block;background:#fff}
.mc-card:active{background:var(--bg)}
.mc-card .mc{width:100%;height:auto}
.mc-name{font-size:13px;font-weight:700;color:var(--black);margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mc-meta{font-size:11px;color:var(--gray);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ops-row{display:flex;gap:12px;overflow-x:auto;padding:2px 2px 6px;margin-top:12px}
.ops-solo{margin-top:0}
.op-fig{flex:none;width:78px;text-align:center;display:block}
.op-fig .pp{width:54px;height:auto;margin:0 auto}
.op-fig:active{opacity:.7}
.op-name{font-size:12px;font-weight:700;color:var(--black);margin-top:3px}
.op-cat{font-size:10px;color:var(--gray)}
/* ⑤ 招工牌 */
.cy-board{background:#8A5A2B;border-radius:10px;padding:9px}
.board-body{background:#A97442;border:2px solid #7A4C20;border-radius:6px;padding:11px 10px;display:grid;gap:9px}
.board-note{position:relative;background:#FFF9DB;border:1px solid #EAD98A;border-radius:4px;padding:9px 10px 9px 20px;display:block;box-shadow:1px 2px 0 rgba(122,76,32,.35);transform:rotate(-.5deg)}
.board-note:nth-child(even){transform:rotate(.6deg)}
.board-note::before{content:'';position:absolute;left:8px;top:12px;width:6px;height:6px;border-radius:50%;background:#E65100;box-shadow:0 1px 0 rgba(0,0,0,.25)}
.bn-title{display:block;font-size:13px;font-weight:700;color:#5B4A00}
.bn-meta{display:block;font-size:11px;color:#9A8A55;margin-top:2px}
.bn-empty{color:#9A8A55;font-weight:400}
.pub-link{display:block;text-align:center;font-size:13px;font-weight:700;color:var(--gray);padding:8px 0 0}
/* ⑥ 会客厅 */
.parlor-wall{position:relative;height:64px;background:linear-gradient(180deg,#F3E7D0 0 44px,#E6D5B2 44px 100%);border-radius:8px;overflow:hidden;margin-bottom:12px}
.parlor-wall::after{content:'';position:absolute;left:0;right:0;top:44px;height:2px;background:#D8C49A}
.pw-pic{position:absolute;left:18px;top:8px;width:44px;height:30px;background:#fff;border:2px solid #B98A4A;border-radius:2px;font-size:10px;color:#8A6A3F;display:flex;align-items:center;justify-content:center;letter-spacing:1px}
.pw-lamp{position:absolute;left:50%;top:0;transform:translateX(-50%);width:2px;height:26px;background:#6E7078}
.pw-lamp i{position:absolute;left:50%;top:24px;transform:translateX(-50%);width:0;height:0;border-left:16px solid transparent;border-right:16px solid transparent;border-top:20px solid #E65100;box-shadow:0 14px 18px rgba(230,81,0,.25)}
.pw-lamp::after{content:'';position:absolute;left:50%;top:46px;transform:translateX(-50%);width:8px;height:3px;background:#FFD54F;border-radius:50%}
.pw-plant{position:absolute;right:16px;bottom:2px;font-size:22px}
.pw-tea{position:absolute;right:58px;bottom:2px;font-size:20px}
.cy-visitors{display:flex;align-items:flex-end;flex-wrap:wrap;gap:8px;margin-bottom:12px;background:var(--bg);border-radius:8px;padding:8px 10px}
.cv-lab{font-size:11px;color:var(--gray);flex:none;margin-right:2px;padding-bottom:8px}
.cv-fig{text-align:center}
.cv-fig .pp{width:26px;height:auto;margin:0 auto}
.cv-fig .pp-bob{animation:none}
.cv-fig i{display:block;font-style:normal;font-size:10px;color:var(--ink);max-width:52px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:1px}
.guest-row{display:flex;gap:10px;margin-bottom:12px;align-items:flex-start}
.guest-row .pp{width:42px;height:auto;flex:none;margin-top:6px}
.guest-bub{flex:1;position:relative;background:#fff;border:1px solid var(--line);border-radius:2px 12px 12px 12px;padding:8px 12px}
.guest-bub::after{content:'';position:absolute;left:-6px;top:14px;width:10px;height:10px;background:#fff;border-left:1px solid var(--line);border-bottom:1px solid var(--line);transform:rotate(45deg)}
.gb-text{font-size:14px;line-height:1.6;color:var(--ink)}

/* ===== 首页双世界入口+店家地图 1014j ===== */
.portal{display:block;margin:14px 16px 0;background:#fff;border:2.5px solid #17181C;border-radius:18px;overflow:hidden;box-shadow:0 5px 0 rgba(23,24,28,.18)}
.portal:active{transform:translateY(3px);box-shadow:0 2px 0 rgba(23,24,28,.18)}
.pt-scene{position:relative;height:168px}
.pt-scene svg{width:100%;height:100%;display:block}
.pt-badge{position:absolute;top:10px;right:10px;background:#17181C;color:#FFC400;font-size:11px;font-weight:800;border-radius:12px;padding:4px 10px}
.pt-badge-y{background:#FFC400;color:#17181C}
.pt-bar{display:flex;align-items:center;justify-content:space-between;background:#17181C;padding:12px 16px}
.pt-name{font-size:17px;font-weight:900;color:#FFC400;letter-spacing:1px}
.pt-sub{font-size:11px;color:#B9BAC0;margin-top:2px}
.pt-go{background:#FFC400;color:#17181C;font-weight:800;font-size:14px;border-radius:16px;padding:7px 16px;flex:none}
.pt-path{margin:6px 70px 0;height:40px}
.pt-path svg{width:100%;height:100%;display:block}
.pt-card,.pt-man{transform-box:fill-box;transform-origin:center}
@keyframes ptsway{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(1.6deg)}}
.pt-card:nth-of-type(3){animation:ptsway 6s ease-in-out infinite}
.pt-card:nth-of-type(4){animation:ptsway 6s ease-in-out -3s infinite}
@keyframes ptfall{0%{transform:translate(600px,-50px) rotate(0);opacity:0}6%{opacity:1}75%{transform:translate(576px,238px) rotate(330deg);opacity:1}82%,100%{transform:translate(576px,238px) rotate(330deg);opacity:0}}
.pt-fall{animation:ptfall 7s linear infinite}
@keyframes ptbob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
.pt-bob{animation:ptbob 2.8s ease-in-out infinite}
.pt-bob2{animation:ptbob 2.8s ease-in-out -1.4s infinite}
@keyframes sunbreath{0%,100%{opacity:.88}50%{opacity:1}}
.pt-sun2{animation:sunbreath 4s ease-in-out infinite}
@keyframes lightblink{0%,70%,100%{opacity:.4}78%,90%{opacity:1}}
.pt-light{animation:lightblink 5s infinite}
@keyframes wavemove{from{transform:translateX(0)}to{transform:translateX(-160px)}}
.pt-wave{animation:wavemove 7s linear infinite}
.pt-wave2{animation:wavemove 11s linear infinite reverse}
@keyframes boatrock{0%,100%{transform:rotate(-3.5deg)}50%{transform:rotate(3.5deg)}}
.pt-rock{transform-box:fill-box;transform-origin:50% 78%;animation:boatrock 4.5s ease-in-out infinite}
.pt-bubA,.pt-bubB{transform-box:fill-box;transform-origin:70% 100%;animation:bubcycle 7s ease-in-out infinite}
.pt-bubB{animation-delay:-3.5s}
@keyframes bubcycle{0%{transform:scale(0);opacity:0}9%{transform:scale(1.12);opacity:1}14%{transform:scale(1)}78%{transform:scale(1);opacity:1}88%{transform:scale(.5);opacity:0}100%{opacity:0}}
/* 地图页 */
.mp-head{background:#17181C;padding:14px 16px 12px}
.mp-title{display:flex;align-items:baseline;gap:8px}
.mp-title b{font-size:18px;color:#FFC400}
.mp-title span{font-size:11px;color:#B9BAC0}
.mp-row{display:flex;align-items:center;justify-content:space-between;margin-top:8px}
.mp-stats{font-size:12px;color:#E8E8EA}
.mp-links a{color:#B9BAC0;font-size:12px;margin-left:12px;text-decoration:underline}
.mp-map{display:block;width:100%;height:auto}
.hse{cursor:pointer;-webkit-tap-highlight-color:transparent}
.hse:active{opacity:.75}
@keyframes flagwave{0%,100%{transform:rotate(0)}30%{transform:rotate(-7deg)}70%{transform:rotate(5deg)}}
.hse-flag{transform-box:fill-box;transform-origin:left center;animation:flagwave 3.5s ease-in-out infinite}
@keyframes bubpop2{0%,4%{transform:scale(0)}14%{transform:scale(1.18)}22%{transform:scale(1)}86%{transform:scale(1);opacity:1}94%,100%{transform:scale(1);opacity:0}}
.hse-bub{transform-box:fill-box;transform-origin:22% 96%;animation:bubpop2 5s ease-in-out infinite}
@keyframes treesway{0%,100%{transform:rotate(-1.8deg)}50%{transform:rotate(1.8deg)}}
.mp-tree{transform-box:fill-box;transform-origin:50% 96%;animation:treesway 5s ease-in-out infinite}
@keyframes cloudslow{0%,100%{transform:translateX(-50px)}50%{transform:translateX(50px)}}
.mp-cloud{animation:cloudslow 28s ease-in-out infinite}
.mp-c2{animation-duration:36s;animation-delay:-14s}
@keyframes driveby{from{transform:translate(790px,428px)}to{transform:translate(-150px,428px)}}
.mp-drive{animation:driveby 13s linear infinite}
@keyframes walkby{from{transform:translate(790px,452px)}to{transform:translate(-80px,452px)}}
.mp-walk{animation:walkby 22s linear infinite}
.mp-w2{animation-duration:30s;animation-direction:reverse}
.mp-foot{padding:14px 16px 20px;background:#F4F4EF}
.mp-cta{display:block;text-align:center;background:#FFC400;color:#17181C;font-weight:900;font-size:15px;border-radius:22px;padding:12px;box-shadow:0 4px 0 rgba(23,24,28,.15)}
.mp-cta:active{transform:translateY(2px);box-shadow:none}
.mp-disc{font-size:11px;color:#A0A1A5;text-align:center;margin-top:10px}

/* ===== 店铺·四幕连续场景 1014k ===== */
.yard{background:#F4F4EF}
.yd-plaque{position:absolute;left:14px;top:12px;z-index:5;background:#A97442;border:2px solid #7A4C20;color:#FFF3C2;font-size:12px;font-weight:800;border-radius:4px;padding:4px 12px;box-shadow:0 2px 0 rgba(122,76,32,.4)}
.yd-plaque::before{content:'';position:absolute;left:50%;top:-5px;width:5px;height:5px;border-radius:50%;background:#5B3A16;transform:translateX(-50%)}
/* 幕0 门厅 */
.yd-gate{position:relative}
.yd-sky{position:relative;height:92px;background:linear-gradient(180deg,#CFE3F0,#EAF0EC 82%,#F2F1EA);overflow:hidden}
.yd-sun{position:absolute;right:28px;top:16px;width:36px;height:36px;border-radius:50%;background:#FFD54F;box-shadow:0 0 0 9px rgba(255,213,79,.25)}
.yd-cl{position:absolute;height:11px;background:#fff;border-radius:8px;opacity:.92}
.yd-cl::before{content:'';position:absolute;width:17px;height:17px;background:#fff;border-radius:50%;top:-8px;left:7px}
.yd-cl.c1{width:54px;top:22px;left:-70px;animation:cloudrift 30s linear infinite}
.yd-cl.c2{width:38px;top:56px;left:-60px;animation:cloudrift 42s linear infinite 9s}
.yd-awning{height:18px;background:repeating-linear-gradient(90deg,var(--sw) 0 20px,#17181C 20px 40px)}
.yd-sign{display:flex;align-items:center;gap:11px;background:#fff;padding:12px 14px;border-bottom:1px solid var(--line)}
.yd-badge{font-size:30px;width:54px;height:54px;background:var(--bg);border:2px solid var(--sw);border-radius:12px;display:flex;align-items:center;justify-content:center;flex:none}
.yd-id{flex:1;min-width:0}
.yd-name{font-size:19px;font-weight:800;color:var(--black)}
.yd-meta{font-size:11px;color:var(--gray);margin-top:3px}
.yd-moodflag{flex:none;width:34px;height:40px;background:var(--sw);border-radius:0 8px 8px 8px;display:flex;align-items:center;justify-content:center;font-size:18px;border:1.5px solid rgba(23,24,28,.25)}
.yd-banner{background:var(--sw);color:#17181C;font-size:13px;font-weight:700;padding:7px 14px;border-bottom:2px solid rgba(23,24,28,.12)}
.yd-wall{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:20px;background:repeating-linear-gradient(0deg,#E3DFCF 0 14px,#DBD6C3 14px 16px);padding:22px 14px 0;border-top:3px solid #CFC9B4}
.yd-doorway{position:relative;display:flex;flex-direction:column;align-items:center;background:#17181C;border-radius:8px 8px 0 0;padding:14px 26px 0}
.yd-doorway::before{content:'';position:absolute;top:-12px;left:50%;transform:translateX(-50%);width:110%;height:12px;background:#17181C;border-radius:6px}
.yd-doorway .pp{width:76px;height:auto}
.yd-welc{position:absolute;top:-64px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#fff;border:2px solid #17181C;border-radius:12px;font-size:13px;font-weight:700;padding:6px 12px}
.yd-welc::after{content:'';position:absolute;left:50%;bottom:-7px;width:11px;height:11px;background:#fff;border-right:2px solid #17181C;border-bottom:2px solid #17181C;transform:translateX(-50%) rotate(45deg)}
.yd-visitq{display:flex;flex-direction:column;align-items:center;gap:4px;padding-bottom:8px}
.vq-figs{display:flex;align-items:flex-end;gap:0}
.vq-figs .pp{width:22px;height:auto}
.vq-figs .pp-bob{animation:none}
.vq-t{font-size:11px;color:#5B5C61;background:rgba(255,255,255,.75);border-radius:10px;padding:3px 9px}
.vq-t b{color:#17181C}
.yd-rooster{position:absolute;right:12px;bottom:0;font-size:24px}
.yd-path{height:20px;background:repeating-linear-gradient(90deg,#E9E7DC 0 42px,#E2DFD0 42px 44px);border-top:1px solid #D8D5C6}
/* 幕1 前台(室内) */
.yd-front{position:relative;padding:52px 14px 16px;background:
  linear-gradient(180deg,rgba(255,255,255,.35),transparent 34%),
  repeating-linear-gradient(90deg,rgba(184,138,74,.08) 0 2px,transparent 2px 26px),
  linear-gradient(180deg,#F6EBD3 0 58%,#E2C896 58% 60%,#D9B57C 60% 100%)}
.yd-front::after{content:'';position:absolute;left:0;right:0;bottom:0;height:56px;background:repeating-linear-gradient(90deg,rgba(122,76,32,.10) 0 1px,transparent 1px 54px)}
.yd-wallart{position:absolute;right:16px;top:14px;display:flex;gap:8px}
.wa-clock{width:44px;height:44px;border-radius:50%;background:#fff;border:3px solid #7A4C20;display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:800;color:#7A4C20;box-shadow:0 2px 0 rgba(122,76,32,.25)}
.yd-counter-zone{position:relative;display:flex;flex-direction:column;align-items:center;z-index:2;padding-top:6px}
.yd-counter-zone .pp{width:84px;height:auto;position:relative;z-index:1}
.yd-bub{position:relative;z-index:2;max-width:280px;background:#fff;border:2px solid #17181C;border-radius:14px;padding:9px 13px;font-size:14px;line-height:1.5;text-align:center;margin-bottom:14px}
.yd-bub::after{content:'';position:absolute;left:50%;bottom:-8px;width:12px;height:12px;background:#fff;border-right:2px solid #17181C;border-bottom:2px solid #17181C;transform:translateX(-50%) rotate(45deg)}
.yd-bub.pop{animation:bubpop .5s cubic-bezier(.34,1.6,.64,1) both}
.yd-bub-e{font-size:18px;margin-right:5px}
.yd-counter{position:relative;z-index:3;margin-top:-26px;display:flex;align-items:center;justify-content:center;gap:14px;height:58px;background:linear-gradient(180deg,#C99B5F 0 11px,#A97442 11px 100%);border-radius:10px 10px 4px 4px;box-shadow:0 3px 0 rgba(23,24,28,.14),inset 0 2px 0 rgba(255,255,255,.28)}
.ct-item{font-size:19px;margin-top:-18px}
.ct-phone{margin-top:-18px;background:#17181C;color:#FFC400;font-size:13px;font-weight:800;border-radius:8px;padding:8px 14px;box-shadow:0 3px 0 rgba(0,0,0,.25)}
.ct-phone.lock{background:#C9CACD;color:#fff}
.ct-phone:active{transform:translateY(2px)}
.ct-note{font-size:11px;font-weight:700;color:#5B3A16;margin-top:-16px}
.yd-ownerbar{position:relative;z-index:2;margin-top:12px;background:rgba(255,255,255,.6);border:1px solid rgba(122,76,32,.3);border-radius:10px;padding:10px 12px}
.ob-form{display:flex;gap:8px}
.ob-in{flex:1;border:1px solid rgba(122,76,32,.35);border-radius:8px;padding:9px 12px;font-size:13px;background:#fff}
.ob-btn{background:#A97442;color:#fff;border:none;border-radius:8px;padding:0 18px;font-size:14px;font-weight:800}
.ob-moods{display:flex;gap:7px;margin-top:9px;flex-wrap:wrap}
.ob-m{width:36px;height:36px;border-radius:50%;border:1.5px solid rgba(122,76,32,.4);background:#fff;font-size:17px}
.ob-m:active{background:#FFC400}
/* 幕2 陈列院(露天) */
.yd-yard{position:relative;padding:52px 0 18px;background:
  radial-gradient(circle at 12% 30%,rgba(255,255,255,.5) 0 2px,transparent 3px),
  radial-gradient(circle at 62% 55%,rgba(255,255,255,.4) 0 2px,transparent 3px),
  radial-gradient(circle at 30% 80%,rgba(255,255,255,.35) 0 2px,transparent 3px),
  radial-gradient(circle at 85% 20%,rgba(255,255,255,.4) 0 2px,transparent 3px),
  linear-gradient(180deg,#CFE3F0 0 42px,#D8DCC8 42px 52px,#E4E2D3 52px 100%);
  background-size:46px 46px,52px 52px,60px 60px,70px 70px,100% 100%}
.yd-fence{position:absolute;left:0;right:0;top:44px;height:10px;background:repeating-linear-gradient(90deg,#C9B98E 0 34px,transparent 34px 44px)}
.yd-fence::before{content:'';position:absolute;left:0;right:0;top:-5px;height:4px;background:#B8A67A}
.yd-lot{display:flex;gap:12px;overflow-x:auto;padding:16px 14px 6px;scroll-snap-type:x proximity}
.lot-item{flex:none;width:128px;text-align:center;display:block;border-radius:10px;padding:8px 6px 10px;scroll-snap-align:start}
.lot-item:active{background:rgba(255,255,255,.55)}
.lot-item .mc{width:112px;height:auto}
.lot-item .pp{width:52px;height:auto;margin-top:10px}
.lot-name{font-size:13px;font-weight:800;color:#26261C;margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lot-meta{font-size:10px;color:#6E6F73;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.yd-empty{padding:26px 20px;text-align:center;font-size:13px;color:#6E6F73}
.yd-jobboard{margin:14px 14px 0;background:#8A5A2B;border-radius:10px;padding:8px;position:relative}
.yd-jobboard::before,.yd-jobboard::after{content:'';position:absolute;bottom:-16px;width:8px;height:16px;background:#7A4C20;border-radius:0 0 3px 3px}
.yd-jobboard::before{left:26px}
.yd-jobboard::after{right:26px}
.jb-head{font-size:12px;font-weight:800;color:#FFF3C2;padding:2px 4px 6px}
.jb-note{display:flex;justify-content:space-between;align-items:baseline;gap:8px;background:#FFF9DB;border:1px solid #EAD98A;border-radius:4px;padding:8px 10px 8px 18px;margin-bottom:8px;position:relative;transform:rotate(-.5deg)}
.jb-note::before{content:'';position:absolute;left:7px;top:11px;width:6px;height:6px;border-radius:50%;background:#E65100}
.jb-note b{font-size:13px;color:#5B4A00;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jb-note span{font-size:10px;color:#9A8A55;flex:none}
.jb-none{color:#9A8A55;font-weight:400}
.jb-add{display:block;text-align:center;font-size:12px;font-weight:700;color:#FFF3C2;padding:4px 0 2px}
/* 幕3 会客厅(室内) */
.yd-parlor{position:relative;padding:56px 14px 14px;background:
  linear-gradient(180deg,#F7EFDF 0 55%,#E6D5B2 55% 57%,#DCC294 57% 100%)}
.yd-lamp{position:absolute;left:50%;top:0;transform:translateX(-50%);z-index:1}
.la-line{position:absolute;left:50%;top:0;width:2px;height:30px;background:#6E7078;transform:translateX(-50%)}
.la-shade{position:absolute;left:50%;top:28px;transform:translateX(-50%);width:0;height:0;border-left:17px solid transparent;border-right:17px solid transparent;border-top:22px solid #E65100}
.la-bulb{position:absolute;left:50%;top:52px;transform:translateX(-50%);width:26px;height:10px;background:radial-gradient(ellipse,#FFE9A8 0 40%,rgba(255,213,79,0) 75%);border-radius:50%}
.yd-pic{position:absolute;right:120px;top:14px;width:42px;height:30px;background:#fff;border:2.5px solid #B98A4A;border-radius:2px;display:flex;align-items:center;justify-content:center;font-size:15px}
.yd-window{position:absolute;right:16px;top:12px;width:86px;height:60px;border:4px solid #B98A4A;border-radius:6px;overflow:hidden}
.wd-sky{position:absolute;inset:0;background:linear-gradient(180deg,#CFE3F0,#E8F2F8);box-shadow:inset 0 0 0 2px rgba(255,255,255,.4)}
.wd-sky::before{content:'';position:absolute;left:8px;bottom:8px;width:22px;height:12px;background:#B4CD85;border-radius:3px 3px 0 0}
.wd-sky::after{content:'';position:absolute;right:12px;bottom:10px;width:12px;height:12px;border-radius:50%;background:#FFD54F;opacity:.9}
.yd-plant{position:absolute;left:14px;bottom:10px;font-size:30px;z-index:1}
.yd-sofa-zone{position:relative;margin-top:6px}
.sofa-guests{display:flex;justify-content:center;gap:18px;align-items:flex-end}
.sv-guest{display:flex;flex-direction:column;align-items:center}
.sv-bub{position:relative;max-width:150px;background:#fff;border:1.5px solid #17181C;border-radius:2px 12px 12px 12px;padding:7px 10px;font-size:12px;line-height:1.5;color:#26261C;margin-bottom:10px}
.sv-bub b{display:block;font-size:11px;color:#8A6A3F;margin-bottom:2px}
.sv-bub i{display:block;font-style:normal;font-size:10px;color:#A0A1A5;margin-top:3px}
.pp-sit{width:44px;height:auto;display:block}
.sv-empty{font-size:12px;color:#8A7A55;background:rgba(255,255,255,.6);border-radius:10px;padding:8px 12px;margin-bottom:10px}
.yd-sofa{position:relative;height:74px;margin-top:-2px}
.sf-back{position:absolute;left:4%;right:4%;top:0;height:40px;background:#E8975A;border-radius:12px 12px 4px 4px;box-shadow:inset 0 -6px 0 rgba(122,76,32,.18)}
.sf-seat{position:absolute;left:0;right:0;top:34px;height:26px;background:#D97F3F;border-radius:6px}
.sf-arm{position:absolute;top:14px;width:26px;height:52px;background:#D97F3F;border-radius:10px;box-shadow:inset 0 -5px 0 rgba(122,76,32,.2)}
.sf-arm.l{left:-4px}
.sf-arm.r{right:-4px}
.yd-table{position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);width:64px;height:26px;background:#B98A4A;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:16px;box-shadow:0 3px 0 rgba(122,76,32,.3)}
.yd-more{text-align:center;font-size:11px;color:#A0A1A5;margin-top:10px}
.yd-msgboard{margin-top:14px;background:rgba(255,255,255,.72);border:1.5px solid rgba(122,76,32,.35);border-radius:12px;padding:12px}
.mb-form{display:flex;gap:8px}
.mb-in{flex:1;border:1.5px solid rgba(122,76,32,.4);border-radius:8px;padding:9px 12px;font-size:13px;background:#fff}
.mb-btn{background:#A97442;color:#fff;border:none;border-radius:8px;padding:0 16px;font-size:13px;font-weight:800;flex:none}
.mb-book{margin-top:10px;border-top:1px dashed rgba(122,76,32,.3);padding-top:10px}

/* ===== 1014p 店铺等级(主堡体系):等级徽章条/皮肤/名片架/运营坊/AI台/账房 ===== */
.yd-tierline{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fff;padding:8px 14px;border-bottom:1px solid var(--line)}
.tl-badge{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:800;color:#17181C}
.tl-dot{width:10px;height:10px;border-radius:3px;background:var(--tc);display:inline-block}
.tl-next{font-size:12px;color:#8A8B90;text-decoration:none}
.tl-next:active{opacity:.6}
.tl-top{color:#B8860B;font-weight:700}
/* max 阁楼(门头上小层+三旗) */
.yd-attic{position:relative;height:32px;background:#1C1D22;display:flex;align-items:center;justify-content:center;gap:18px;border-top:3px solid #FFD700}
.yd-attic i{width:14px;height:14px;border-radius:2px;background:#FFC400;box-shadow:0 0 0 2.5px #3A3B42 inset}
.at-flag{position:absolute;top:-14px;width:16px;height:11px;background:#EDB800;clip-path:polygon(0 0,100% 0,100% 100%,50% 72%,0 100%)}
.at-flag.f1{left:16%}.at-flag.f2{left:50%}.at-flag.f3{left:84%}
/* 灯箱皮肤:pro 工程黄发光,max 暗金 */
.tier-pro .yd-sign{box-shadow:inset 0 -3px 0 #FFC400,0 5px 16px rgba(255,196,0,.30)}
.tier-max .yd-sign{box-shadow:inset 0 -3px 0 #FFD700,0 5px 20px rgba(255,215,0,.42)}
.tier-max .yd-awning{background:repeating-linear-gradient(90deg,#EDB800 0 20px,#17181C 20px 40px)}
/* 荣誉墙(pro 起):门厅墙右金框证书 */
.yd-honor{position:absolute;right:14px;bottom:26px;width:78px;background:#F6E7C0;border:3px solid #B8860B;border-radius:4px;padding:5px;display:flex;flex-direction:column;align-items:center;box-shadow:0 3px 8px rgba(23,24,28,.18)}
.yd-honor img{width:100%;height:86px;object-fit:contain;background:#fff;border-radius:2px}
.yd-honor span{font-size:18px;padding:28px 0;color:#B8860B;font-weight:800}
.hn-lab{font-style:normal;font-size:9px;color:#7A5A16;margin-top:4px;letter-spacing:1px}
/* 名片架(前台):微信/视频号 */
.yd-rack{position:absolute;right:14px;top:60px;width:158px;background:#F1E4CB;border:2px solid #A97442;border-radius:8px;padding:8px 10px;box-shadow:0 3px 8px rgba(23,24,28,.12)}
.rk-title{font-size:11px;font-weight:800;color:#7A4C20;letter-spacing:2px;border-bottom:1px dashed rgba(122,76,32,.4);padding-bottom:4px;margin-bottom:6px}
.rk-item{font-size:12px;color:#17181C;line-height:1.5}
.rk-item b{display:block;color:#7A4C20;font-size:13px;word-break:break-all}
.rk-item i{font-style:normal;font-size:10px;color:#8A8B90}
.rk-none{opacity:.55}
.rk-edit{display:block;margin-top:6px;font-size:11px;color:#E65100;text-decoration:none;font-weight:700}
/* 运营坊(pro) */
.yd-ops{position:relative;padding:52px 14px 18px;background:linear-gradient(180deg,#EFEEE6,#E6E3D7);border-top:3px solid #CFC9B4}
.op-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.op-card{background:#fff;border:1.5px solid #D8D5C6;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:3px}
.op-card .oc-ico{font-size:22px}
.op-card b{font-size:14px;color:#17181C}
.op-card i{font-style:normal;font-size:11px;color:#6E7078;line-height:1.5}
.op-locked .op-card{background:transparent;border-style:dashed;opacity:.5}
.op-locked .op-card .oc-ico{filter:grayscale(1)}
.op-note{margin-top:10px;font-size:11px;color:#8A8B90;text-align:center}
.op-note a{color:#E65100;font-weight:700;text-decoration:none}
/* AI台(max) */
.yd-ai{position:relative;padding:52px 14px 18px;background:linear-gradient(180deg,#1C1D22,#232429);border-top:3px solid #0E0F12}
.yd-ai .yd-plaque{background:#232429;border-color:#3A3B42}
.ai-tool{background:#fff;border-radius:12px;padding:14px;margin-bottom:10px}
.ai-title{font-size:15px;font-weight:800;color:#17181C;margin-bottom:10px}
.ai-title i{font-style:normal;font-size:10px;color:#fff;background:#B8860B;border-radius:3px;padding:2px 6px;margin-left:6px;vertical-align:2px}
.ai-row{display:flex;gap:8px;align-items:center}
.ai-lab{font-size:12px;color:#6E7078;flex:none}
.ai-sel{flex:1;border:1.5px solid #D8D5C6;border-radius:8px;padding:9px 10px;font-size:13px;background:#fff}
.ai-go{background:#17181C;color:#FFC400;border:none;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:800;flex:none}
.ai-go:active{opacity:.7}
.ai-out{margin-top:10px;background:#F4F4EF;border-radius:8px;padding:10px 12px;font-size:13px;color:#17181C;line-height:1.7}
.ai-out b{color:#E65100}
.ai-out i{font-style:normal;font-size:11px;color:#8A8B90}
.ai-soon{background:#2A2B31;border:1.5px dashed #3A3B42;border-radius:10px;padding:12px;text-align:center;font-size:12px;color:#B8B9BE}
.ai-soon a{color:#FFC400;font-weight:700;text-decoration:none}
.ai-lock{color:#8A8B90}
/* 账房(数据墙+升级对照) */
.yd-vault{position:relative;padding:52px 14px 20px;background:linear-gradient(180deg,#E9DFC9,#DFD3B6);border-top:3px solid #C9BB97}
.vt-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.vt-num{background:#fff;border-radius:8px;padding:10px 4px;text-align:center;border:1px solid #D8D5C6}
.vt-num b{display:block;font-size:18px;color:#17181C}
.vt-num span{font-size:10px;color:#8A8B90}
.yd-vault .yd-empty{margin-top:4px}
.vt-up{margin-top:16px}
.vt-up-h{text-align:center;font-size:13px;font-weight:800;color:#7A4C20;margin-bottom:10px}
.vt-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.vt-col{position:relative;background:#fff;border:2px solid transparent;border-radius:10px;padding:12px 9px 10px;display:flex;flex-direction:column;gap:6px}
.vt-col.on{border-color:var(--tc);box-shadow:0 4px 12px rgba(23,24,28,.12)}
.vt-col b{font-size:12px;color:#17181C;line-height:1.3}
.vt-col em{font-style:normal;font-size:13px;font-weight:800;color:var(--tc)}
.vc-feats{display:flex;flex-direction:column;gap:4px}
.vc-feats i{font-style:normal;font-size:10px;color:#6E7078;line-height:1.45}
.vc-cur{position:absolute;top:-9px;right:8px;font-size:9px;font-weight:800;color:#fff;background:var(--tc);border-radius:3px;padding:2px 7px}
.vc-past{background:#8A8B90}
.vc-next{background:#17181C}
.vt-note{margin-top:10px;text-align:center;font-size:10px;color:#8A8B90}
.mb-book summary{font-size:13px;font-weight:700;color:#7A4C20;cursor:pointer}
.mb-login{text-align:center;font-size:13px;color:#8A7A55;padding:4px 0}
.yd-visitors{display:flex;align-items:center;gap:10px;margin-top:12px;font-size:11px;color:#8A7A55}
.yv-figs{display:flex;gap:5px}
.yv-dot{width:9px;height:9px;border-radius:50%;background:#C7D2DE;border:1.5px solid #1E6FFF}
.yd-foot{display:flex;gap:10px;padding:12px 14px 18px;background:#fff;border-top:1px solid var(--line)}
.yd-back{flex:1;text-align:center;font-size:13px;font-weight:700;color:var(--ink);background:var(--bg);border-radius:8px;padding:10px}
.yd-biz{flex:none;text-align:center;font-size:13px;font-weight:700;color:#FFC400;background:#17181C;border-radius:8px;padding:10px 16px}

/* 首页双入口:图标+文字横排小卡 1014l(覆盖旧宫格样式) */
.quick{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 16px 0}
.q-item{flex-direction:row;justify-content:center;gap:9px;background:#fff;border:1.5px solid #17181C;border-radius:14px;padding:13px 6px;box-shadow:0 3px 0 rgba(23,24,28,.12)}
.q-item:active{transform:translateY(2px);box-shadow:0 1px 0 rgba(23,24,28,.12)}
.q-ic{width:29px;height:auto;flex:none}
.q-item b{font-size:14px;color:var(--ink);font-weight:800}

/* 首页双入口:无框宫格(学主流App,去卡去边去阴影) 1014m */
.quick{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 26px 6px}
.q-item{flex-direction:column;justify-content:flex-start;gap:7px;background:transparent;border:none;box-shadow:none;padding:0;border-radius:0}
.q-item:active{transform:scale(.94);box-shadow:none}
.q-ic{width:50px;height:50px;flex:none}
.q-item b{font-size:13px;color:#3E3F43;font-weight:700}

/* 首页入口容器:去白底纹+左起横排可扩展 1014n */
.quick{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:flex-start;gap:6px 26px;margin:18px 18px 4px;background:transparent;border:none;border-radius:0;padding:0}

/* 1014p 店家街等级图例 */
.mp-tiers{display:flex;align-items:center;gap:12px;margin-top:8px;flex-wrap:wrap}
.mpt{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:#17181C}
.mpt i{width:9px;height:9px;border-radius:3px;display:inline-block}
.mpt-note{font-size:10px;color:#8A8B90}

/* 1014p 工作台红点条+工具分级徽 */
.biz-inbox{margin:10px 0 0;background:#FFF3D6;border:1.5px solid #E6B800;border-radius:10px;padding:9px 14px;font-size:13px;color:#5B4A00}
.biz-inbox a{color:#B8860B;font-weight:800;text-decoration:none}
.biz-inbox b{color:#E65100;font-size:15px}
.tbadge{display:inline-block;vertical-align:2px;margin-left:8px;font-size:10px;font-weight:800;color:#fff;border-radius:3px;padding:2px 7px}

/* 1014q 入驻付费口径+个人会员入口 */
.mp-sub{display:block;margin-top:8px;font-size:12px;color:#B8860B;font-weight:700;text-decoration:none;text-align:center}
.vt-member{display:block;margin-top:8px;text-align:center;font-size:12px;color:#B8860B;font-weight:700;text-decoration:none;background:#fff;border:1.5px dashed #B8860B;border-radius:8px;padding:9px 8px}

/* 1014s 入驻表单:等级三选一行卡+标签副注 */
.tier-pick{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.tp-row{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"radio name price" "radio feat feat";align-items:center;column-gap:9px;row-gap:2px;background:#fff;border:2px solid var(--line);border-radius:10px;padding:10px 12px;cursor:pointer}
.tp-row input{grid-area:radio;accent-color:#17181C;width:17px;height:17px}
.tp-row.on{border-color:var(--tc);box-shadow:0 2px 10px rgba(23,24,28,.08)}
.tp-name{grid-area:name;font-size:14px;font-weight:800;color:#17181C}
.tp-price{grid-area:price;font-size:14px;font-weight:800;color:var(--tc)}
.tp-feat{grid-area:feat;font-size:11px;color:#6E7078}
.tp-row:active{opacity:.75}
.lab-sub{font-style:normal;font-size:11px;color:#8A8B90;font-weight:400;margin-left:4px}

/* 1014t 后台改等级下拉 */
.bind-sel{border:1px solid var(--line,#D8D5C6);border-radius:6px;padding:5px 6px;font-size:12px;background:#fff;flex:1;min-width:0}
