/* ===================================================================
   lms-fmctl.css v20261114p43-mjkg（mjk 版） —— 前端价格列表页
   v20261114p48d：sec9 选中态/悬停选择器 .text-block p a → .text-block a（后代），
   修复特殊类别组（选项裸放 .text-block 无 <p>）选中后无胶囊底色的回落问题。
   v20261114p43：修「全部」独占一行 —— mk-skin 移动端 .list-right .text-block
   {display:inline}(0,3,2) 与本文件 sec9 通用 li .text-block{display:block}(0,3,2)
   同特异性、本文件后加载压回 block；新增 (0,4,2) 规则强制 inline（详见 9.2）。「移动控制层 + 后台同款卡片」
   v20261115c（2026-11-13 二次反馈）：
   ① 类型栏 position 由 sticky 改 static —— 实测 sticky 在本站（html/body
     overflow-x:hidden 环境）把类型栏从自然位(94)下推 78px 至 172，
     压住「搜索与筛选」按钮并在导航下留出 78px 空白（用户截图问题①②根因）。
     改 static 后自然位紧贴导航栏正下方；吸顶完全由 JS fixed 兜底
     （.fm-tbfix，top=var(--fmhd)）承担，不再依赖原生 sticky。
   v20261115b：导航在上类型栏在下（--fmhd）/ 计数条移底部含第x/y页 /
   「搜索与筛选」实底蓝强化 / 吸顶态 margin 归零。
   作用域：全部规则锁在 @media (max-width:768px) 内，PC 端零覆盖。
   依赖：/js/lms-fmctl.js 注入 #fmCount / #fmCtlBar / .fm-mask / .fm-sheet
         / #fmCards；档位价与标签由 /vip/lms_rowtag.php 写入行 data 属性。
   =================================================================== */
@media (max-width:768px){

  /* ---------- 1. 隐藏桌面交互块（原位由控制层接管） ---------- */
  .large-search-box{display:none!important;}
  .lms-filter-toggle{display:none!important;}
  .search-condition{display:none!important;}
  #lmsSortTable.lms-fmsort-hide>tbody>tr:first-child{display:none!important;}
  /* v20261115d：.price 顶部两个 bk20 占位块在移动端折叠（实测撑出 150→182 共 32px 空隙，用户反馈间距太大）*/
  .price>.bk20{display:none!important;}
  /* v20261114d：.publicinfo-box 移动端隐藏 —— 搜索框/筛选项已被 JS 搬入弹层，
     残壳在「搜索与筛选」按钮上方留白色长条（mjk 页面样式给它白底内边距，用户截图反馈） */
  .publicinfo-box{display:none!important;}
  /* v20261114b：内容画布刷白 —— mjk body 灰底 #F5F7FB 会从 hero 底到胶囊/搜索/按钮区
     漏出灰条（用户反馈"白色背景缺失"）；列表容器整体刷白，与链媒社白底一致 */
  body .container.mt70{background:#fff!important;margin-top:0!important;}

  /* ---------- 2. 控制行（计数条移至列表底部，v20261115） ---------- */
  #fmCtlBar{display:flex;gap:8px;margin:0 0 12px;}
  #fmCtlBar .fm-btn{flex:1 1 50%;height:40px;padding:0 10px;border:1px solid #d9dde3;border-radius:8px;
    background:#fff;color:#333;font-size:14px;line-height:38px;text-align:center;cursor:pointer;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:inherit;}
  #fmCtlBar .fm-btn.is-on{border-color:#118fc9;color:#118fc9;background:#f2f9fd;font-weight:700;}
  #fmCtlBar .fm-btn .fm-n{font-size:12px;margin-left:4px;color:#118fc9;}
  #fmCtlBar .fm-btn.is-on .fm-n{font-weight:400;}
  /* 「搜索与筛选」主按钮实底蓝强化（2026-11-13 用户反馈④） */
  #fmCtlBar #fmFilterBtn{background:#118fc9!important;color:#fff!important;border-color:#118fc9!important;
    font-weight:700!important;box-shadow:0 2px 8px rgba(1,133,206,.30)!important;}
  #fmCtlBar #fmFilterBtn .fm-n{color:#fff!important;font-weight:400!important;}
  /* 计数条：列表底部（分页条下方），含「第 x/y 页」页码指示（反馈②③） */
  #fmCount{margin:2px 0 6px;font-size:12.5px;color:#666;line-height:1.5;text-align:center;}
  #fmCount b{color:#e02e2e;font-weight:700;padding:0 2px;}
  #fmPage{color:#888;}

  /* ---------- 3. 遮罩 + 底部弹层 ---------- */
  body.fm-lock{overflow:hidden!important;}
  .fm-mask{position:fixed;left:0;top:0;right:0;bottom:0;background:rgba(0,0,0,.45);
    z-index:99990;opacity:0;visibility:hidden;transition:opacity .22s,visibility .22s;}
  .fm-mask.is-show{opacity:1;visibility:visible;}
  .fm-sheet{position:fixed;left:0;right:0;bottom:0;z-index:99991;background:#fff;
    border-radius:12px 12px 0 0;max-height:80vh;display:flex;flex-direction:column;
    transform:translateY(105%);transition:transform .25s ease;box-shadow:0 -4px 20px rgba(0,0,0,.12);}
  .fm-sheet.is-open{transform:translateY(0);}
  .fm-sheet__hd{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;
    padding:13px 14px 11px;border-bottom:1px solid #eef1f5;}
  .fm-sheet__hd span{font-size:15px;font-weight:700;color:#111;}
  .fm-sheet__hd .fm-x{width:30px;height:30px;line-height:28px;text-align:center;border:0;background:none;
    color:#888;font-size:18px;font-weight:400;padding:0;cursor:pointer;font-family:inherit;}
  .fm-sheet__bd{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:4px 14px 14px;}
  .fm-sheet__ft{flex:0 0 auto;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));
    background:#fff;border-top:1px solid #eef1f5;}
  .fm-sheet__ft button{display:block;width:100%;height:42px;border:0;border-radius:21px;
    background:#118fc9;color:#fff;font-size:15px;font-weight:700;letter-spacing:4px;cursor:pointer;font-family:inherit;}
  .fm-sheet__ft button:active{background:#0177b8;}
  /* v3：弹层内隐藏「搜 索」按钮 —— 底部「确定」即执行搜索/筛选（用户反馈：按钮多余看不懂） */
  .fm-sheet .btn-large-search{display:none!important;}
  /* v3：底部「重置 + 确定」双按钮（对齐 hfs 弹层；重置=回列表首页） */
  .fm-sheet__ft{display:flex;gap:10px;}
  .fm-sheet__ft button{display:block;width:auto;}
  .fm-sheet__ft #fmReset{flex:0 0 110px;border:1px solid #d9dde3;background:#fff;color:#118fc9;}
  .fm-sheet__ft #fmReset:active{background:#f2f9fd;}
  .fm-sheet__ft #fmOk{flex:1;}

  /* ---------- 4. 弹层内恢复被隐藏的桌面块 ---------- */
  .fm-sheet .large-search-box{display:block!important;margin:2px 0 6px;padding:0!important;background:none!important;}
  .fm-sheet .large-search-con{display:flex!important;width:100%!important;}
  .fm-sheet .large-search-con .clear{display:none!important;}
  .fm-sheet .search-condition{display:block!important;}

  /* ---------- 5. 排序弹层 ---------- */
  .fm-sheet--sort .fm-sheet__bd{padding-top:10px;}
  .fm-sorts{display:flex;flex-wrap:wrap;gap:9px;}
  .fm-sorts .fm-chip{height:36px;padding:0 16px;border:1px solid #d9dde3;border-radius:18px;
    background:#fff;color:#333;font-size:13.5px;line-height:34px;cursor:pointer;font-family:inherit;}
  .fm-sorts .fm-chip.is-on{border-color:#118fc9;color:#118fc9;background:#f2f9fd;font-weight:700;}

  /* ---------- 6. 类型栏：吸顶 + 横向滚动（去「选择类型」文字，v20261114） ---------- */
  /* 吸顶由 JS 滚动监听实现（站点 html/body overflow-x:hidden 会使原生 sticky 失效），
     超过自然位置后加 .fm-tbfix（fixed）+ 占位节点防跳动。
     v20261115：站点头部移动端是 fixed 吸顶（header v60，z-index:900），
     类型栏 fixed 时 top 必须让出头部实测高度（CSS 变量 --fmhd，JS 写入），
     保持「导航栏在上、类型栏在下」（2026-11-13 用户反馈①） */
  body .container>.RadioStyle.fm-tbfix{position:fixed!important;top:var(--fmhd,0px)!important;left:0!important;right:0!important;z-index:850!important;
    margin:0!important;box-shadow:0 2px 10px rgba(31,46,74,.12)!important;}
  /* JS 已把 .RadioStyle 挪到 .price 之前（.price 有 overflow:hidden 且 .head 仅一行高）；
     选择器用挪移后的真实路径，特异性高于页面自带 v71 样式。
     v20261115c：position 用 static（sticky 实测会被异常下推 78px 压住控制行按钮、
     留出导航下空白），吸顶一律走 JS fixed 兜底 */
  body .container>.RadioStyle{display:flex!important;flex-wrap:nowrap!important;gap:7px!important;
    margin:8px 0 10px!important;padding:8px 12px!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;
    background:#fff!important;position:static!important;z-index:850!important;
    box-shadow:0 1px 0 #e9edf2!important;}
  body .container>.RadioStyle label{flex:0 0 auto!important;height:30px!important;line-height:28px!important;
    padding:0 13px!important;font-size:13px!important;border-radius:15px!important;
    background:#f2f4f7!important;color:#444!important;border:1px solid transparent!important;}
  body .container>.RadioStyle input:checked+label{background:#118fc9!important;color:#fff!important;font-weight:700!important;}

  /* ---------- 7. 冗余文字隐藏（SEO 标题块 / FAQ 长文 / 翻页记录文字；用户拍板移动端隐藏） ---------- */
  .fm-hide{display:none!important;}
  div[style*="margin:6px 0 20px"]{display:none!important;}
  div[style*="26px auto 40px"]{display:none!important;}
  #result .pager>span,.pager>span{display:none!important;}

  /* ---------- 8. 媒体卡片（对齐后台 user/m 报价卡，v20261114） ---------- */
  #result table.fm-tblhide{display:none!important;}
  #fmCards{display:block!important;margin:0 0 12px!important;}
  .fm-card{background:#fff!important;border-radius:10px!important;box-shadow:0 1px 4px rgba(31,46,74,.10)!important;
    padding:12px 13px 11px!important;margin:0 0 10px!important;}
  .fm-card__nm{margin:0!important;font-size:16px!important;font-weight:700!important;color:#111!important;line-height:1.4!important;}
  .fm-card__nm a{color:#111!important;text-decoration:none!important;}
  .fm-card__meta{margin:8px 0 0!important;display:flex!important;flex-wrap:wrap!important;gap:6px!important;}
  .fm-tag{display:inline-block!important;height:22px!important;line-height:20px!important;padding:0 8px!important;
    border-radius:4px!important;font-size:12px!important;background:#f2f4f7!important;color:#555!important;border:1px solid #e7eaf0!important;}
  .fm-tag--p{background:#eef6ff!important;color:#296dc6!important;border-color:#d8e8fa!important;}
  .fm-tag--o{background:#fff4ec!important;color:#e07830!important;border-color:#f8dfc8!important;}
  .fm-card__bz{margin:8px 0 0!important;font-size:12.5px!important;color:#666!important;line-height:1.6!important;
    display:-webkit-box!important;-webkit-line-clamp:1!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
  .fm-card__bz.open{display:block!important;-webkit-line-clamp:unset!important;}
  .fm-card__row{margin:10px 0 0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;}
  .fm-price{display:flex!important;align-items:baseline!important;gap:9px!important;flex-wrap:wrap!important;min-width:0!important;}
  .fm-price__i{display:inline-flex!important;align-items:baseline!important;gap:3px!important;}
  .fm-price__v{font-size:18px!important;font-weight:800!important;color:#e02e2e!important;font-style:normal!important;}
  .fm-price__v--sub{font-size:14px!important;color:#333!important;font-weight:700!important;}
  .fm-price__lb{font-size:12px!important;color:#999!important;font-style:normal!important;}
  .fm-price__pl{font-size:12px!important;color:#888!important;font-style:normal!important;}
  .fm-price__login{font-size:13.5px!important;font-weight:700!important;color:#118fc9!important;text-decoration:none!important;font-style:normal!important;}
  .fm-btn-pri{display:inline-block!important;flex:0 0 auto!important;height:32px!important;line-height:32px!important;padding:0 16px!important;
    border-radius:16px!important;background:#118fc9!important;color:#fff!important;font-size:13.5px!important;font-weight:600!important;
    text-decoration:none!important;text-align:center!important;}
  .fm-empty{background:#fff!important;border-radius:10px!important;box-shadow:0 1px 4px rgba(31,46,74,.10)!important;
    padding:22px 14px!important;text-align:center!important;color:#999!important;font-size:13px!important;margin:0 0 12px!important;}

  /* ---------- 9. v20261114p37：搜索框强化描边 + 筛选值 chip 化（参考后端 m-fg__op，2026-11-14 用户反馈） ----------
     a) 分组布局改「标签独立一行 + 选项流式换行」——原 64px 标签列在 chip 化后被省略号截断（行业类型…）；
     b) chip 胶囊样式对齐后端 user/m（m-fg__op）：999px 圆角 / 浅灰底 / 13px；
     c) 选中态 = 品牌浅底 + 品牌深字 + 品牌描边（对齐后端 is-on）；
     d) ⚠️ 选中态必须带 :hover 变体 —— 页面 v71 有
        .search-condition ul li .list-right a.active:hover{background:transparent!important}
        （0,4,3），电脑浏览器移动模拟点击后鼠标悬停会把选中背景抹成透明（用户截图「选中无背景色」根因）；
        本组 0,5,3 / 0,5,4 特异性 + !important 压制。 */
  .fm-sheet .large-search-box{margin:6px 0 10px!important;}
  .fm-sheet .input-large-search{width:100%!important;box-sizing:border-box!important;height:42px!important;line-height:38px!important;
    border:2px solid #118fc9!important;border-radius:8px!important;background:#fff!important;color:#111!important;
    padding:0 12px!important;font-size:14px!important;outline:none!important;}
  .fm-sheet .input-large-search:focus{box-shadow:0 0 0 3px rgba(17,143,201,.15)!important;}
  /* 分组布局：标签独立一行，选项独立一行 */
  .fm-sheet .search-condition ul li .text-block{display:block!important;}
  .fm-sheet .search-condition ul li .list-left{flex:0 0 auto!important;width:auto!important;max-width:100%!important;
    display:block!important;float:none!important;font-size:13px!important;line-height:1.5!important;color:#666!important;
    font-weight:600!important;white-space:normal!important;overflow:visible!important;text-overflow:unset!important;
    margin:0 0 9px!important;}
  .fm-sheet .search-condition ul li .list-right{display:block!important;width:auto!important;max-width:100%!important;
    flex:0 0 auto!important;float:none!important;padding:0!important;margin:0!important;}
  .fm-sheet .search-condition ul li .list-right .beginning,
  .fm-sheet .search-condition ul li .list-right .text-block p{display:inline!important;margin:0!important;padding:0!important;}
  /* chip 胶囊（对齐后端 m-fg__op） */
  .fm-sheet .search-condition ul li .list-right a,
  .fm-sheet .search-condition ul li .list-right .beginning a,
  .fm-sheet .search-condition ul li .list-right .text-block p a{display:inline-flex!important;align-items:center!important;
    margin:0 9px 9px 0!important;padding:6px 14px!important;height:auto!important;line-height:1.4!important;font-size:13px!important;
    color:#444!important;background:#f2f5f9!important;border:1px solid #e3e8ef!important;border-radius:999px!important;
    box-sizing:border-box!important;text-decoration:none!important;vertical-align:middle!important;}
  .fm-sheet .search-condition ul li .list-right .beginning a:hover,
  .fm-sheet .search-condition ul li .list-right .text-block a:hover{background:#e9eef5!important;color:#333!important;
    border-color:#d6dce6!important;}
  /* 选中态（含 :hover 变体，根除悬停抹底） */
  .fm-sheet .search-condition ul li .list-right .beginning a.active,
  .fm-sheet .search-condition ul li .list-right .beginning a.active:hover,
  .fm-sheet .search-condition ul li .list-right .text-block a.active,
  .fm-sheet .search-condition ul li .list-right .text-block a.active:hover{
    background:#e8f4fa!important;border:1px solid #118fc9!important;color:#0e77a8!important;font-weight:600!important;}
  .fm-sheet .large-search-con .clear{display:none!important;}
  .fm-sheet .search-condition{display:block!important;}

  /* ---------- 9.1 v20261114p39 修复（真机布局问题，2026-11-14 用户截图反馈） ----------
     a) v71 的 li 是 display:flex，无外层 .text-block 的组（综合门户等）标签与「全部」并排同行；
     b) .text-block p 继承 v71 white-space:nowrap，chips 单行横向溢出（宽 2127px）被右缘裁断；
     c) li 改 block 后标签统一独立一行，p 改 normal 后 chips 流式换行、「全部」与选项同行。 */
  .fm-sheet .search-condition ul li{display:block!important;}
  .fm-sheet .search-condition ul li .list-right .text-block p{white-space:normal!important;overflow:visible!important;width:auto!important;max-width:100%!important;}

  /* ---------- 9.2 v20261114p43 修复：「全部」独占一行（2026-11-14 用户截图反馈） ----------
     mjk 页面 mk-skin.css 移动端段有
       .search-condition ul li .list-right .text-block{display:inline!important}（0,3,2）
     而本文件 sec9 通用规则
       .fm-sheet .search-condition ul li .text-block{display:block!important}（0,3,2）
     同特异性且本文件在其后加载 → 组内「全部」旁的选项容器 .list-right .text-block
     被压回 block，inline 的「全部」孤立一行、chips 另起一行。
     此处用 (0,4,2) 更高特异性强制该容器 inline，与「全部」同一内联流；
     外层承载标签的 .text-block（不在 .list-right 内）不受影响，标签仍独立一行。 */
  .fm-sheet .search-condition ul li .list-right .text-block{display:inline!important;}
}

/* -------------------------------------------------------------------
   10. v20261114p45 空状态（筛选 0 结果）——
       端点 0 结果时返回老式空表（表头+“没有找到相关…数据！”+分页），
       壳页 LoadPage 注入处检测到“没有找到相关”即整块替换为 .lms-nodata
       （圆环图标 + 灰字提示，参考 user 端空状态样式）。两端共用。 */
.lms-nodata{padding:54px 16px 60px!important;text-align:center!important;}
.lms-nodata__ico{width:54px!important;height:54px!important;margin:0 auto 14px!important;
  border:2px solid #DCE3ED!important;border-radius:50%!important;box-sizing:border-box!important;}
.lms-nodata__txt{font-size:13px!important;line-height:1.7!important;color:#9AA3AD!important;}

/* -------------------------------------------------------------------
   11. v20261114p46 移动端隐藏媒体卡片最外围框线 ——
       #result 外层的 Bootstrap .panel.panel-default 有 1px #ddd 四边框，
       移动端卡片列表自身已有留白与分组，外框多余（2026-11-14 用户截图反馈）。
       该 class 全站每页仅此一处使用，全局隐藏安全。 */
@media (max-width:768px){
  .panel.panel-default{border:0!important;box-shadow:none!important;background:#F4F6F9!important;border-radius:12px!important;}
}

  /* ---------- sec13 v20261114p48-grayzone：列表区整块灰底（2026-11-14 用户反馈） ----------
     p47 只刷了 .panel.panel-default，筛选条与卡片之间 12px 空隙、以及容器左右两侧（container
     padding 区）仍露白。此处把整个列表容器 .price.clearfix 刷灰并负 margin 延伸到视口边缘：
     灰底覆盖 筛选条 → 卡片列表 → 底部 padding，白卡片浮在灰底上层次分明。桌面端不受影响。 */
  @media(max-width:768px){div.price.clearfix{width:auto!important;max-width:none!important;background:#F4F6F9;margin:0 -12px;padding:12px 12px 16px;border-radius:0 0 14px 14px;}}
  /* ---------- sec13b：搜索与筛选按钮统一搜索图标（放大镜）----------
     前端 #fmFilterBtn 原先无图标；后端按钮已同步 m_ico('filter')→m_ico('search')。 */
  #fmCtlBar #fmFilterBtn::before{content:'';display:inline-block;width:15px;height:15px;margin-right:6px;vertical-align:-3px;background:#fff;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='6.4'/%3E%3Cpath d='M20 20l-4.2-4.2'/%3E%3C/svg%3E") no-repeat center/contain;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='6.4'/%3E%3Cpath d='M20 20l-4.2-4.2'/%3E%3C/svg%3E") no-repeat center/contain;}

/* -------------------------------------------------------------------
   14. v20261114p49 微信 X5 点击黄框消除（2026-11-14 用户反馈：微信内点击
       筛选项莫名多一圈黄线，浏览器端正常）——
       X5（WebKit 系）对 tap 获焦的可激活元素绘制默认焦点框（橙黄）+
       tap-highlight 高亮层；Android Chrome 62+ 已忽略 tap-highlight 属性，
       故浏览器端看不到。该属性不继承、不能写在伪类里，必须显式命中元素本体。
       作用域：弹层 chips/按钮/输入框、控制行按钮、类型栏 label、卡片链接。 */
@media(max-width:768px){
  .fm-sheet a,.fm-sheet button,.fm-sheet label,.fm-sheet input,
  #fmCtlBar .fm-btn,body .container>.RadioStyle label,#fmCards a,#fmCount a{
    -webkit-tap-highlight-color:transparent!important;outline:0!important;}
  .fm-sheet a:focus,.fm-sheet button:focus,.fm-sheet label:focus,
  #fmCtlBar .fm-btn:focus,body .container>.RadioStyle label:focus,#fmCards a:focus,#fmCount a:focus{
    outline:0!important;}
}
