* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:"Microsoft YaHei","PingFang SC",sans-serif; background:#f2f3f5; color:#222; font-size:14px; }
header { background:#1f2733; color:#fff; padding:0 20px; display:flex; align-items:center; height:54px; gap:16px; position:sticky; top:0; z-index:10; flex-wrap:wrap; }
header h1 { font-size:16px; font-weight:600; }
.rolebtn { background:transparent; border:1px solid #46536b; color:#aab6cc; padding:6px 16px; border-radius:18px; cursor:pointer; font-size:13px; }
.rolebtn.on { background:#c8a24b; border-color:#c8a24b; color:#fff; font-weight:600; }
.wrap { max-width:1100px; margin:0 auto; padding:18px 16px 60px; }
.note { background:#fffbe8; border:1px solid #eedc9a; border-radius:8px; padding:10px 14px; margin-bottom:14px; font-size:13px; color:#7a5d00; }
.card { background:#fff; border-radius:10px; padding:16px 18px; margin-bottom:14px; box-shadow:0 1px 3px rgba(0,0,0,.06); }
.card h2 { font-size:15px; margin-bottom:10px; color:#1f2733; border-left:4px solid #c8a24b; padding-left:8px; }
.stats { display:flex; gap:12px; flex-wrap:wrap; margin-bottom:14px; }
.stat { flex:1; min-width:130px; background:#fff; border-radius:10px; padding:14px 16px; box-shadow:0 1px 3px rgba(0,0,0,.06); }
.stat b { display:block; font-size:22px; color:#1f2733; }
.stat span { color:#888; font-size:12px; }
table { width:100%; border-collapse:collapse; font-size:13px; }
th,td { border-bottom:1px solid #f0f0f0; padding:8px 6px; text-align:left; vertical-align:middle; }
th { color:#888; font-weight:500; background:#fafafa; }
.thumb { width:46px; height:46px; object-fit:cover; border-radius:6px; background:#eee; display:block; }
input,select { border:1px solid #d9d9d9; border-radius:6px; padding:6px 8px; font-size:13px; }
input:focus,select:focus { outline:none; border-color:#c8a24b; }
.btn { background:#c8a24b; color:#fff; border:none; border-radius:6px; padding:7px 14px; cursor:pointer; font-size:13px; }
.btn.gray { background:#e8e8e8; color:#555; }
.btn.red { background:#e05a4e; }
.btn.small { padding:4px 10px; font-size:12px; }
.tag { display:inline-block; padding:2px 8px; border-radius:10px; font-size:12px; white-space:nowrap; }
.in { background:#e8f6e8; color:#2e7d32; } .low { background:#fff3e0; color:#b26a00; } .out { background:#fdeaea; color:#c0392b; }
.money { color:#e05a4e; font-weight:600; }
.profit { color:#2e7d32; font-weight:600; }
.refbox { background:#1f2733; color:#ffd977; padding:12px 14px; border-radius:8px; font-size:13px; word-break:break-all; margin:8px 0; }
.banner { background:linear-gradient(90deg,#3b2f0b,#6b5416); color:#ffe9a8; border-radius:10px; padding:12px 16px; margin-bottom:14px; font-size:13px; }
/* 图片轮播（苦瓜帮同款横幅图） */
.img-swiper { position:relative; border-radius:12px; overflow:hidden; margin-bottom:12px; background:#f2f2f2; }
.img-swiper img { width:100%; height:auto; aspect-ratio:9/5; object-fit:cover; display:none; }
.img-swiper img.on { display:block; }
.img-swiper .dots { position:absolute; right:10px; bottom:8px; display:flex; gap:5px; }
.img-swiper .dots i { width:6px; height:6px; border-radius:50%; background:rgba(255,255,255,.5); }
.img-swiper .dots i.on { background:#fff; }

/* ===== 苦瓜帮式画册布局：左品牌栏 + 右商品网格 ===== */
.bigbanner { width:100%; height:170px; border-radius:12px; overflow:hidden; position:relative; margin-bottom:14px;
  background:linear-gradient(120deg,#232b38 0%,#3a4a66 55%,#c8a24b 130%); }
.bigbanner .tt { position:absolute; left:26px; bottom:22px; color:#fff; }
.bigbanner .tt b { font-size:26px; letter-spacing:2px; display:block; }
.bigbanner .tt span { font-size:13px; color:#e8d9ae; }
.catalog { display:flex; gap:14px; align-items:flex-start; }
/* 价格筛选条 */
.pricebar { background:#fff;border-radius:14px;padding:14px;margin-bottom:12px;box-shadow:0 1px 6px rgba(0,0,0,.05); }
.pline { display:flex;align-items:center;gap:8px;flex-wrap:wrap }
.plabel { font-weight:700;font-size:14px;color:#333 }
.pline input { width:90px;padding:7px 10px;border:1.5px solid #f3c1b3;border-radius:10px;font-size:13px;outline:none }
.pline input:focus { border-color:#e8622d }
.pto { color:#999;font-size:13px }
.psearch { background:#e8622d;color:#fff;border:none;border-radius:20px;padding:8px 22px;font-size:13px;cursor:pointer }
.pclear { background:#fff;color:#999;border:1px solid #ddd;border-radius:20px;padding:7px 16px;font-size:13px;cursor:pointer }
.pgrid { display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-top:10px }
.prange { background:#fff;border:1.5px solid #eee;border-radius:10px;padding:9px 0;font-size:13px;color:#555;cursor:pointer }
.prange:hover { border-color:#e8622d;color:#e8622d }
.prange.on { background:#fdeee6;border-color:#e8622d;color:#e8622d;font-weight:700 }
.side { width:148px; flex-shrink:0; display:flex; flex-direction:column; gap:9px; }
.sidebtn { background:#f08519; color:#fff; border:none; border-radius:10px; padding:13px 4px; text-align:center; cursor:pointer; font-size:14px; letter-spacing:1px; }
.sidebtn.on { background:#c96a06; font-weight:700; box-shadow:inset 0 0 0 2px #ffd977; }
.goods { flex:1; display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:12px;
  background:#faf5ea; padding:14px; border-radius:12px; min-height:300px; }
.pcard { background:#fff; border-radius:10px; padding:12px 10px 14px; text-align:center; cursor:pointer; box-shadow:0 1px 3px rgba(0,0,0,.05); transition:transform .12s; position:relative; }
.pcard:hover { transform:translateY(-2px); }
.pcard .imgbox { height:130px; display:flex; align-items:center; justify-content:center; overflow:hidden; margin-bottom:8px; }
.pcard .imgbox img { max-width:100%; max-height:100%; object-fit:contain; }
.pcard .name { font-size:13px; line-height:1.4; height:36px; overflow:hidden; margin-bottom:6px; }
.pcard .price { color:#666; font-size:14px; }
.pcard .price b { color:#e05a4e; font-size:17px; }
.pcard .prow { display:flex; justify-content:space-between; align-items:center; font-size:12px; margin-top:4px; padding:0 2px; }
.pcard .stockline { margin-top:5px; }
.hot { position:absolute; top:0; left:0; background:#e05a4e; color:#fff; font-size:11px; padding:2px 8px; border-radius:10px 0 10px 0; }
.tag-new { position:absolute; top:0; left:0; background:#2e9e5b; color:#fff; font-size:11px; padding:2px 8px; border-radius:10px 0 10px 0; }
.tag-promo { position:absolute; top:0; left:0; background:#e8622d; color:#fff; font-size:11px; padding:2px 8px; border-radius:10px 0 10px 0; }

/* 详情弹层 */
.detail { position:fixed; inset:0; background:rgba(0,0,0,.5); z-index:99; overflow-y:auto; padding:20px 10px; }
.detail .sheet { max-width:560px; margin:0 auto; background:#fff; border-radius:12px; overflow:hidden; }
.detail .top { padding:14px 16px; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid #f0f0f0; position:sticky; top:0; background:#fff; z-index:2; }
.detail .mainimg { width:100%; display:block; background:#f5f5f5; max-height:420px; object-fit:contain; }
.detail .body { padding:16px; }
.detail .imgs img { width:100%; display:block; margin-top:4px; background:#fafafa; }
/* 详情页悬浮按钮：返回顶部 / 返回首页 */
.fab-wrap { position:fixed; right:14px; bottom:26px; z-index:120; display:flex; flex-direction:column; gap:10px; }
.fab { width:64px; height:64px; border-radius:50%; border:none; background:rgba(120,200,180,.85); color:#fff; font-size:13px; font-weight:700; line-height:1.3; cursor:pointer; box-shadow:0 3px 10px rgba(0,0,0,.2); }
.hide { display:none; }
.dealer-chip { background:#f4f0e4; border-radius:14px; padding:4px 12px; font-size:12px; margin:2px; display:inline-block; }
.subnote { color:#999; font-size:12px; margin-top:6px; line-height:1.6; }
.grid2 { display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:12px; }
@media (max-width:640px){
  /* 苦瓜帮式布局：左侧品牌窄栏固定 + 右侧产品双列，产品始终可见 */
  /* 注意：body 上不能写 overflow-x:hidden —— 它会让 body 变成滚动容器，
     左栏的 position:sticky 就会失效（滚动时整列跟着滚走，下面一大片空白）。
     html 用 hidden 兜住横向溢出，body 用 clip（只裁剪、不生成滚动容器）。 */
  html{overflow-x:hidden;max-width:100%}
  body{max-width:100%;overflow-x:clip}
  .wrap{padding:12px 10px 60px;max-width:100%;overflow-x:hidden}
  .catalog{flex-direction:row;gap:8px;width:100%;min-width:0}
  .side{width:82px;flex:0 0 82px;flex-direction:column;flex-wrap:nowrap;position:sticky;top:6px;max-height:calc(100vh - 150px);overflow-y:auto;gap:7px;-webkit-overflow-scrolling:touch}
  .sidebtn{padding:10px 4px;border-radius:10px;font-size:12.5px;letter-spacing:0;flex-shrink:0}
  /* min-width:0 是关键：否则 flex 子项不肯收缩，整页会比屏幕宽出几十像素 */
  .goods{flex:1 1 0;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px}
  .pcard{padding:8px 6px 10px;min-width:0}
  .pcard .imgbox{height:96px}
  .pcard .name{font-size:12px;height:32px;overflow:hidden;word-break:break-all}
  .pcard .price{font-size:12px}
  .pcard .price b{font-size:14px}
  .pcard .prow{font-size:11px}
  .grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .pline input{width:74px}
  .card{padding:14px 12px}
  .pricebar{padding:12px 10px}
}

/* 登录/管理补充 */
.loginbox { max-width:360px; margin:60px auto; background:#fff; border-radius:14px; padding:26px 24px; box-shadow:0 6px 24px rgba(0,0,0,.08); }
.loginbox h1 { font-size:18px; text-align:center; margin-bottom:18px; color:#1f2733; }
.loginbox input { width:100%; box-sizing:border-box; padding:11px; border:1px solid #ddd; border-radius:8px; font-size:14px; margin-bottom:10px; }
.loginbox .btn { width:100%; padding:11px; font-size:15px; }
.tabs { display:flex; gap:8px; margin-bottom:14px; }
.tabs button { flex:1; padding:9px 0; border:none; border-radius:8px; background:#eee; color:#666; cursor:pointer; font-size:14px; }
.tabs button.on { background:#c8a24b; color:#fff; font-weight:600; }
.formrow { display:flex; gap:8px; flex-wrap:wrap; align-items:center; margin-bottom:8px; }
.formrow input, .formrow select { padding:8px; font-size:13px; }
.uploadbox { border:1.5px dashed #d9b96a; border-radius:10px; padding:10px; background:#fffbf0; }
.fab-btn2 { width:40px; height:40px; border-radius:50%; background:#fff; border:1px solid #eee; cursor:pointer; font-size:16px; }
.delbtn { position:absolute; top:6px; right:6px; z-index:5; }

/* ============================================================
   画册版式（客户页 / 经销商端）—— 对齐 huace.kuguanbang.com
   只作用于 body.kgb，总后台 admin 不受影响
   ============================================================ */
body.kgb{background:#f4f4f4;color:#222;-webkit-text-size-adjust:100%}
/* 注意：这里必须用 overflow-x:clip，不能用 hidden。
   hidden 会把 .kgb-wrap 变成一个滚动容器，导致里面左侧分类栏的 position:sticky 失效，
   页面往下滚时左栏跟着滚走、下面留一大片空白。clip 只裁剪、不生成滚动容器。 */
.kgb-wrap{max-width:750px;margin:0 auto;background:#f4f4f4;min-height:100vh;overflow-x:clip}

/* 顶部横幅轮播：整宽、无圆角，底部居中圆点 */
.kgb-swiper{position:relative;width:100%;background:#eaeaea;overflow:hidden;line-height:0}
.kgb-swiper img{width:100%;height:auto;aspect-ratio:9/5;object-fit:cover;display:none}
.kgb-swiper img.on{display:block}
.kgb-swiper .dots{position:absolute;left:0;right:0;bottom:9px;display:flex;justify-content:center;gap:7px;line-height:1}
.kgb-swiper .dots i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.6);box-shadow:0 0 2px rgba(0,0,0,.15)}
.kgb-swiper .dots i.on{background:#2f6bff}

/* 经销商信息条：左名字，右「名字：电话」+ 绿色电话图标 */
.kgb-dealerbar{display:flex;align-items:center;justify-content:center;gap:18px;
  background:#fff;padding:9px 14px;border-bottom:1px solid #eee;text-align:center}
.kgb-dealerbar .nm{font-size:14px;color:#777;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:55%}
.kgb-dealerbar .tel{display:flex;align-items:center;gap:5px;font-size:13px;color:#333;text-decoration:none;white-space:nowrap}
.kgb-dealerbar .tel svg{width:15px;height:15px;fill:#12b76a;flex:0 0 auto}

/* 区块（本店推荐好物等） */
.kgb-sec{margin:10px;background:#fff;border-radius:10px;padding:12px 10px 14px}
.kgb-sec-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding:0 2px}
.kgb-sec-h b{display:block;font-size:15px;color:#1f2733;border-left:4px solid #ef7d12;padding-left:8px;line-height:1.2}
.kgb-call{background:#12b76a;color:#fff;text-decoration:none;border-radius:16px;padding:6px 14px;font-size:12px;white-space:nowrap}

/* 价格筛选（保留功能，收成一条不抢视觉） */
.kgb-pricebar{margin:10px;background:#fff;border-radius:10px;padding:10px}
.kgb-pricebar .pline{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.kgb-pricebar .plabel{font-size:13px;color:#666;font-weight:700}
.kgb-pricebar input{width:68px;padding:6px 8px;border:1px solid #e6e6e6;border-radius:8px;font-size:13px;outline:none;background:#fafafa}
.kgb-pricebar .pto{color:#bbb;font-size:12px}
.kgb-pricebar .psearch{background:#ef7d12;color:#fff;border:none;border-radius:16px;padding:7px 16px;font-size:13px}
.kgb-pricebar .pclear{background:#f2f2f2;color:#777;border:none;border-radius:16px;padding:7px 14px;font-size:13px}
.kgb-pricebar .pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:8px}
.kgb-pricebar .prange{background:#fafafa;border:1px solid #eee;border-radius:8px;padding:7px 0;font-size:12px;color:#666}
.kgb-pricebar .prange.on{background:#fdeee4;border-color:#ef7d12;color:#ef7d12;font-weight:700}

/* 分类 + 商品两栏 */
.kgb-catalog{display:flex;gap:10px;padding:10px;align-items:flex-start}
.kgb-side{width:96px;flex:0 0 96px;display:flex;flex-direction:column;gap:10px;
  position:sticky;top:6px;max-height:calc(100vh - 120px);max-height:calc(100dvh - 120px);
  overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
  /* 分类有几十个、一屏放不下：留一条细滚动条做提示，否则用户以为列表到这就没了 */
  scrollbar-width:thin;scrollbar-color:rgba(238,124,16,.45) transparent;
  padding-right:2px}
.kgb-side::-webkit-scrollbar{width:4px}
.kgb-side::-webkit-scrollbar-thumb{background:rgba(238,124,16,.45);border-radius:2px}
.kgb-side::-webkit-scrollbar-track{background:transparent}
.kgb-cat{width:100%;flex-shrink:0;border:none;border-radius:12px;cursor:pointer;font-family:inherit;
  background:linear-gradient(180deg,#f89b30,#ee7c10);color:#fff;font-size:15px;letter-spacing:1px;
  padding:20px 6px;box-shadow:0 2px 6px rgba(238,124,16,.25);line-height:1.2}
.kgb-cat.on{background:linear-gradient(180deg,#e7740a,#d26200);box-shadow:inset 0 0 0 2px #ffd977,0 2px 6px rgba(238,124,16,.3)}

.kgb-goods{flex:1 1 0;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}

/* 商品卡：米色底 + 淡点纹 + 白底图框，价格不带￥ */
.kgb-card{position:relative;cursor:pointer;border-radius:10px;padding:6px 6px 10px;
  background-color:#fdf7e9;
  background-image:radial-gradient(rgba(255,255,255,.95) 1.3px,transparent 1.3px);
  background-size:14px 14px}
.kgb-card .kgb-card-img{background:#fff;border-radius:8px;overflow:hidden;aspect-ratio:1/1;
  display:flex;align-items:center;justify-content:center}
.kgb-card .kgb-card-img img{width:100%;height:100%;object-fit:cover;display:block}
.kgb-card .kgb-card-name{margin-top:8px;font-size:13px;font-weight:700;color:#222;line-height:1.35;
  height:2.7em;overflow:hidden;text-align:center;padding:0 2px}
.kgb-card .kgb-card-price{margin-top:4px;font-size:14px;color:#6b6b6b;text-align:center}
.kgb-card .kgb-badge{position:absolute;top:0;left:0;z-index:1;background:#e05a4e;color:#fff;font-size:11px;
  padding:2px 8px;border-radius:10px 0 10px 0}
.kgb-card .kgb-badge.new{background:#2e9e5b}
.kgb-card .kgb-badge.promo{background:#ef7d12}
.kgb-card .kgb-card-del{display:block;margin:6px auto 0;background:#f1f1f1;color:#c0392b;border:none;
  border-radius:12px;padding:4px 12px;font-size:12px;font-family:inherit}

/* 底部绿色固定操作条（位于备案号之上） */
.kgb-bar{position:fixed;left:0;right:0;bottom:24px;height:52px;width:100%;border:none;z-index:70;
  background:#1fa463;color:#fff;font-size:16px;letter-spacing:2px;font-family:inherit;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  box-shadow:0 -2px 8px rgba(0,0,0,.08)}

/* 弹窗（生成我的链接） */
.kgb-modal{position:fixed;inset:0;background:rgba(0,0,0,.78);z-index:900;display:none;
  align-items:center;justify-content:center;padding:14px}
.kgb-modal.show{display:flex}
.kgb-modal-box{background:#fff;width:100%;max-width:460px;max-height:88vh;overflow:auto;
  border-radius:4px;padding:18px 18px 20px}
.kgb-modal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.kgb-modal-h b{font-size:17px;font-weight:600;color:#222}
.kgb-x{border:none;background:transparent;font-size:24px;line-height:1;color:#999;cursor:pointer;padding:0 2px}
.kgb-field{margin-bottom:12px}
.kgb-field label{display:block;font-size:15px;color:#333;margin-bottom:6px}
.kgb-field input{width:100%;box-sizing:border-box;height:44px;border:none;background:#f5f5f5;
  border-radius:4px;padding:0 12px;font-size:15px;font-family:inherit;outline:none}
.kgb-field input:focus{background:#efefef}
.kgb-check{display:flex;align-items:center;gap:8px;font-size:15px;color:#333;margin:14px 0 4px;cursor:pointer}
.kgb-check input{width:16px;height:16px;margin:0}
.kgb-hint{font-size:13px;color:#666;line-height:1.5;margin:6px 0 14px}
.kgb-submit{width:100%;height:48px;border:none;border-radius:10px;background:linear-gradient(180deg,#2BB56F,#199C58);color:#fff;font-weight:600;box-shadow:0 4px 12px rgba(31,164,99,.28);
  font-size:17px;font-family:inherit;cursor:pointer}
.kgb-submit:active{background:#17874C;box-shadow:none}
.kgb-linkres{display:none;margin-top:14px;padding-top:14px;border-top:1px dashed #e5e5e5}
.kgb-linkres.show{display:block}
.kgb-linkres .lb{font-size:13px;color:#888;margin-bottom:6px}
.kgb-linkres .url{background:#f7f7f7;border-radius:4px;padding:10px;font-size:13px;font-family:monospace;
  word-break:break-all;color:#333;margin-bottom:10px}
.kgb-linkres .row{display:flex;gap:8px}
.kgb-linkres .row button,.kgb-linkres .row a{flex:1;height:42px;border:none;border-radius:6px;font-size:14px;
  font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;text-decoration:none}
.kgb-linkres .copy{background:#1fa463;color:#fff}
.kgb-linkres .preview{background:#f1f1f1;color:#333}

@media (max-width:360px){
  .kgb-side{width:86px;flex:0 0 86px}
  .kgb-cat{font-size:14px;padding:17px 4px}
  .kgb-card .kgb-card-name{font-size:12px}
}
.kgb-bar.hide{display:none!important}
.kgb-pricebar{padding:0}
.kgb-pricebar .pbody{padding:0 10px 10px}
.kgb-pricebar .pfold{width:100%;background:transparent;border:none;font-family:inherit;font-size:13px;
  color:#888;padding:11px 12px;display:flex;align-items:center;justify-content:center;gap:4px;cursor:pointer}
.kgb-pricebar .pfold span{color:#ef7d12}
.kgb-file{display:inline-flex;align-items:center;max-width:100%;cursor:pointer}
.kgb-file input{display:none}
.kgb-file span{display:inline-block;background:#f5f5f5;border:1px dashed #d9d9d9;border-radius:6px;
  padding:7px 14px;font-size:13px;color:#666;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* 我的资料 小入口 */
.kgb-mini{background:#f5f5f5;border:none;color:#ef7d12;border-radius:14px;padding:5px 12px;font-size:12px;font-family:inherit;cursor:pointer;margin-left:6px}

/* 微信内「点右上角转发」引导层 */
.share-guide{position:fixed;inset:0;background:rgba(0,0,0,.86);z-index:1000;display:none;color:#fff;
  padding:0 30px;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.share-guide.show{display:block}
.share-guide .sg-arrow{position:absolute;top:10px;right:0;width:92px;height:92px;
  animation:sgBob 1.5s ease-in-out infinite}
@keyframes sgBob{0%,100%{transform:translate(0,0)}50%{transform:translate(1px,-5px)}}
.share-guide .sg-body{position:absolute;top:14%;left:22px;right:22px;text-align:center}
.share-guide .sg-body>b{display:block;font-size:19px;letter-spacing:1px;margin-bottom:10px}
.share-guide .sg-body p{font-size:14.5px;line-height:1.8;color:rgba(255,255,255,.9);margin:0}
.share-guide .sg-body p b{color:#ffd45e;font-size:15px}
.share-guide .sg-note{margin-top:13px;font-size:12.5px;line-height:1.65;color:rgba(255,255,255,.55)}
.share-guide .sg-ok{margin-top:16px;
  background:#1fa463;color:#fff;border:none;border-radius:24px;padding:11px 32px;
  font-size:15px;font-family:inherit;cursor:pointer}

/* ===== 分享海报层 ===== */
.poster-modal{position:fixed;inset:0;background:#120c06;z-index:1200;display:none;overflow-y:auto;-webkit-overflow-scrolling:touch}
.poster-modal.show{display:block}
.poster-box{max-width:460px;margin:0 auto;padding:12px 14px 30px}
.poster-h{display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:14px;padding:4px 2px 10px}
.poster-x{width:30px;height:30px;border:none;border-radius:50%;background:rgba(255,255,255,.16);color:#fff;font-size:18px;line-height:1;padding:0}
.poster-imgwrap{position:relative;border-radius:12px;background:#221a12;min-height:140px}
#poster-img{display:none;width:100%;border-radius:12px;-webkit-touch-callout:default;-webkit-user-select:auto;user-select:auto}
.poster-loading{color:rgba(255,255,255,.7);font-size:13px;text-align:center;padding:70px 0}
.poster-tip{margin:12px 2px 0;color:rgba(255,255,255,.86);font-size:12.5px;line-height:1.8;text-align:center}
.poster-tip b{color:#ffd07a}
.poster-btns{display:flex;gap:10px;margin-top:14px}
.poster-btns .pbtn{flex:1;height:44px;border:none;border-radius:8px;background:#E8781E;color:#fff;font-size:15px;font-weight:600}
.poster-btns .pbtn.ghost{background:rgba(255,255,255,.14);color:#fff;font-weight:400}

/* ===== 公众号发卡片 三步指引 ===== */
.kgb-steps{margin:12px 2px 8px;padding:12px 14px;background:#FFF7EE;border:1px solid #F3DFC2;border-radius:10px}
.kgb-steps div{font-size:13.5px;line-height:1.9;color:#5A4630}
.kgb-steps b{color:#D9660F}
