/*!
 * wap-mobile.css —— H5 手机 WAP 适配（详情类页面）
 *
 * 引入方式：
 *   1) shared/_gloabcss.ftl 里统一 link —— 覆盖全部前台页面（121+ 个模板都会 include 它）
 *   2) 个别不走 _gloabcss.ftl 的页面（如 feedback/index.ftl）单独在 <head> 里 link
 *
 * 已单独定制的页面：
 *   templates/info/txt.ftl      动态详情（展圈 / 图文 / 问答 / 图集）
 *   templates/info/show.ftl     展会详情
 *   templates/video/info.ftl    视频详情
 *   templates/user/index.ftl    个人中心
 *   templates/user/info.ftl     用户中心（他人主页）
 *   templates/visa/info.ftl     签证详情
 *   templates/group/info.ftl    展团详情
 *   templates/home/index.ftl    首页（精选瀑布流）
 *   templates/expo/guanzhu.ftl  我的关注（瀑布流 + 右侧「我的关注」用户栏）
 *   templates/expo/pengyou.ftl  我的朋友（同上外壳，右侧为「互相关注」用户栏）
 *   templates/find/index.ftl    找展首页（顶部横幅 + 类目宫格 + 展会卡流）
 * 其余页面走「八～十二」的通用外壳 / 找展 / 创作者 / 登录 规则
 *
 * 设计原则：PC 宽屏布局（ftqnew.css / video.css 里的定宽、双栏、绝对定位）一律不动，
 *           只在 <=1024px 断点内把定宽改自适应、双栏改单列，保证手机上：
 *           ① 不出现横向滚动条 ② 字号可读 ③ 图文自适应 ④ 点击区域够大。
 *
 * 断点说明：取 1024px 而不是 768px，是因为手机横屏（iPhone 14/15 横屏宽 844/852/932）
 *           宽度大于 768px，若断点设 768 横屏会掉回桌面 1120px 定宽布局而横向溢出。
 */

@media screen and (max-width: 1024px) {

    /* ==================================================================
       一、通用基础
       ================================================================== */

    html,
    body {
        min-width: 0 !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
        -webkit-text-size-adjust: 100%;
        text-size-adjust: 100%;
    }

    /* 内容区图片一律不撑破容器（图标由各自 width/height 控制，不受影响） */
    .divviewsin img,
    .showbodyin .info img,
    .proupinfo img,
    .txtcontent img,
    .info img {
        max-width: 100% !important;
        height: auto !important;
    }

    /* 输入框字号 <16px 时 iOS 会自动放大页面，这里统一提到 16px */
    input[type="text"],
    input[type="password"],
    input[type="number"],
    textarea {
        font-size: 16px !important;
    }

    /* 定宽输入控件一律补 box-sizing，避免 padding 撑破容器 */
    .comments-input,
    .mention-search-input,
    .mention-search-box,
    .danmu-input-text {
        box-sizing: border-box !important;
    }

    /* ==================================================================
       二、顶部导航（shared/_top.ftl、shared/_top_bg.ftl）
       ================================================================== */

    .divtop {
        height: 56px !important;
    }

    .divtopin {
        padding: 0 12px;
        box-sizing: border-box;
    }

    .nava {
        margin: 12px 8px 0 0 !important;
    }

    .nava img {
        width: 72px !important;
        height: 32px !important;
    }

    .topsearchdiv {
        width: auto !important;
        flex: 1 1 auto;
        min-width: 0;
    }

    .topsearch {
        width: 100% !important;
        height: 36px !important;
        margin-top: 10px !important;
    }

    .topsearchbox {
        width: 100% !important;
        left: 0 !important;
        top: 44px !important;
    }

    /* 搜索框内部原本是 475px + 400px 定宽，手机上改满宽 */
    .topsearch .searchinput {
        width: 100% !important;
        padding-left: 36px;
        box-sizing: border-box;
    }

    .topsearch .searchinput input {
        width: 100% !important;
    }

    .divtopright {
        margin-top: 14px !important;
    }

    .divtopright .topa {
        width: 24px !important;
        margin-right: 10px !important;
    }

    .divtopright .topspan {
        width: 24px !important;
    }

    .logined {
        width: 32px !important;
        height: 32px !important;
        margin-right: 0 !important;
    }

    .logined img {
        width: 32px !important;
        height: 32px !important;
    }

    /* _top.ftl / _top_bg.ftl 后面那个固定 80px 的占位块，跟随 56px 头部 */
    .divtop + div[style*="height: 80px"] {
        height: 56px !important;
    }

    .ftbodys {
        padding-top: 56px !important;
        min-height: 0 !important;
    }

    /* 右侧固定栏（ftq3.js 滚动时加的 .ftrightfix / .ftrightfixtop）在手机上取消固定 */
    .ftrightfix,
    .ftrightfixtop {
        position: static !important;
        width: auto !important;
    }

    /* ==================================================================
       三、info/txt.ftl —— 动态详情（展圈 / 图文 / 问答 / 图集）
          桌面：左图 + 右 550px 文字栏，默认显示文字栏，点「评论」切成图片全屏（不动）
          手机：默认「图片全屏」；点「评论」把文字 + 评论整屏弹出（同 App 口径）：
                ① .divinfoleft 由 42vh 改 100% → 图片铺满一屏；
                ② .divviews（作者 / 标题 / 正文 / 评论 / 输入框）改成固定整屏浮层，
                   默认 display:none，onload 由 txt.ftl 补 .closes 交给原有
                   「.btnpinglun 切换」逻辑接管（first tap = 弹出）；
                ③ 浮层展开时藏掉图片上的返回 × 与页码（它们 z-index 高于浮层，
                   不藏会压在文字面板上），收起时复原。
       ================================================================== */

    /* 3.1 图片区：铺满整屏 */
    .wap-info-txt .divbody {
        display: block;
        height: 100%;
        overflow: hidden;
    }

    .wap-info-txt .divinfoleft {
        width: 100% !important;
        float: none !important;
        height: 100% !important;
        min-height: 0;
    }

    /* 文字栏容器本身不占位（内容已改为固定浮层，避免下方再撑出一条空白） */
    .wap-info-txt .divinforight {
        width: 100% !important;
        float: none !important;
        height: 0;
        overflow: visible;
    }

    /* 3.2 文字 + 评论浮层：白底整屏，默认收起（= 图片全屏） */
    .wap-info-txt .divviews {
        position: fixed !important;
        left: 0 !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        height: 100% !important;
        background: #ffffff;
        /* 不能用 !important：text.ftl 里 $().show() 要能覆盖回 block */
        display: none;
    }

    /* 浮层展开时，图片上的返回 × / 页码让位（二者 z-index 8000 / 10001 高于浮层的 888） */
    .wap-info-txt .divbody:has(.divviews:not(.closes)) .divclose,
    .wap-info-txt .divbody:has(.divviews:not(.closes)) .divnums {
        display: none !important;
    }

    /* 浮层内滚动区：整屏高度（含内边距，故 box-sizing），底部留 84px 给固定输入条 */
    .wap-info-txt .divviewsin {
        height: 100% !important;
        padding: 12px 16px 84px 16px !important;
        box-sizing: border-box;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .wap-info-txt .reivewtop {
        position: static !important;
        width: 100% !important;
        padding-top: 0 !important;
        padding-bottom: 12px !important;
        line-height: normal !important;
        flex-wrap: wrap;
        align-items: center;
    }

    .wap-info-txt .reivewtop > a {
        font-size: 16px !important;
        margin-right: 8px !important;
    }

    .wap-info-txt .userinfoimg {
        width: 34px !important;
        height: 34px !important;
        margin-right: 8px !important;
    }

    .wap-info-txt .txtclosereview {
        right: 8px !important;
        top: 8px !important;
    }

    .wap-info-txt .divclose {
        left: 12px !important;
        top: 12px !important;
        width: 36px !important;
        height: 36px !important;
    }

    .wap-info-txt .divclose img {
        width: 36px !important;
        height: 36px !important;
    }

    .wap-info-txt .divnums {
        right: 12px !important;
        top: 12px !important;
    }

    .wap-info-txt .infobgright {
        display: none !important;
    }

    .wap-info-txt .rightbtns {
        right: 12px !important;
        bottom: 12px !important;
        height: auto !important;
    }

    .wap-info-txt .rightbtns li {
        margin-bottom: 14px !important;
        font-size: 12px !important;
    }

    .wap-info-txt .rightbtns img {
        width: 26px !important;
        height: 26px !important;
        margin-bottom: 4px !important;
        /* 图片全屏后按钮落在「图片高斯模糊底」上（原 42vh 布局是压在图片上），
           白色图标对比不足，补一层投影保证可读；尺寸 / 色值均不动 */
        filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.45));
    }

    .wap-info-txt .rightbtns li span {
        text-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);
    }

    .wap-info-txt .txttitle {
        padding-top: 0 !important;
        height: auto !important;
        font-size: 18px !important;
        line-height: 25px !important;
        margin-bottom: 12px !important;
    }

    .wap-info-txt .txtcontent {
        font-size: 15px !important;
        line-height: 24px !important;
    }

    .wap-info-txt .itemzhanright {
        width: calc(100% - 75px) !important;
        height: auto !important;
        max-height: 48px;
    }

    /* 底部 84px 让位已由 .divviewsin 的内边距统一给出，这里不再重复留白 */
    .wap-info-txt .comments-list {
        padding: 0 !important;
        max-height: none !important;
        overflow-y: visible !important;
    }

    .wap-info-txt .comments-input-area {
        width: 100% !important;
        left: 0 !important;
        right: 0 !important;
    }

    .wap-info-txt .reply-hint {
        left: 12px !important;
    }

    .wap-info-txt .mention-panel {
        width: 90vw !important;
        height: 70vh !important;
    }

    /* ==================================================================
       四、info/show.ftl —— 展会详情
          桌面：1120px 居中 + 左 830 / 右 210 双栏；手机：单列
       ================================================================== */

    .wap-info-show {
        height: auto !important;
    }

    .wap-info-show .showtop {
        height: 220px !important;
    }

    .wap-info-show .showtopbox {
        width: 100% !important;
        padding: 0 16px;
        box-sizing: border-box;
    }

    .wap-info-show .showtopin {
        left: 16px !important;
        right: 16px !important;
        width: auto !important;
        bottom: 16px !important;
    }

    .wap-info-show .showname {
        font-size: 20px !important;
        height: auto !important;
        line-height: 28px !important;
    }

    /* 顶赞：手机端不再压在横幅右下角，改为和「加入计划 / 分享」同一行的三格等宽按钮
       （模板里已把它从 .showtopin 移进 .showuserbtns；桌面端由 show.ftl 里
       min-width:1025px 的规则摆回横幅原位置） */
    .wap-info-show .showzan {
        position: static !important;
        right: auto !important;
        bottom: auto !important;
        width: auto !important;
        height: auto !important;
        flex: 1 1 0;
        text-align: center;
    }

    .wap-info-show .showzanbox {
        width: 32px !important;
        height: 32px !important;
        line-height: 32px !important;
        margin: 0 auto 8px !important;
    }

    /* 白底上行内的顶赞图标：原为 56px 橙圆内 24px 白手，这里等比缩到 32px 圆内 16px 手 */
    .wap-info-show .showzanbox img {
        width: 16px !important;
        height: 16px !important;
        margin-bottom: 0 !important;
    }

    /* 顶赞文案原为横幅上的白字，移入白底行后改为与「加入计划 / 分享」一致的 #333 */
    .wap-info-show .showzanname {
        color: #333 !important;
    }

    .wap-info-show .showuser {
        height: auto !important;
        margin-bottom: 20px !important;
    }

    .wap-info-show .showuserin {
        width: 100% !important;
        padding: 16px !important;
        box-sizing: border-box;
        flex-wrap: wrap;
        align-items: center;
    }

    .wap-info-show .showuserimgbox {
        width: 64px !important;
        margin-right: 12px !important;
    }

    .wap-info-show .showuserimg,
    .wap-info-show .showuserimg img {
        width: 64px !important;
        height: 64px !important;
    }

    .wap-info-show .showuserimg {
        position: static !important;
        top: auto !important;
    }

    .wap-info-show .showusertime,
    .wap-info-show .showuserview,
    .wap-info-show .showusergoed {
        margin-right: 16px !important;
    }

    .wap-info-show .showuserbtns {
        position: static !important;
        width: 100% !important;
        height: auto !important;
        margin-top: 12px;
    }

    .wap-info-show .showuseraddplan,
    .wap-info-show .showusershare,
    .wap-info-show .showzan {
        width: auto !important;
        flex: 1 1 0;
    }

    .wap-info-show .showbodyin {
        width: 100% !important;
        padding: 0 16px;
        box-sizing: border-box;
    }

    .wap-info-show .showbodyin .left {
        width: 100% !important;
        float: none !important;
        height: auto !important;
        margin-right: 0 !important;
    }

    .wap-info-show .showbodyin .left .tops {
        width: 100% !important;
        height: auto !important;
        margin-bottom: 24px !important;
        padding-bottom: 8px;
    }

    .wap-info-show .showbodyin .left .info {
        padding-bottom: 24px !important;
        margin-bottom: 24px !important;
    }

    .wap-info-show .topstop {
        margin: 16px !important;
    }

    .wap-info-show .topstop li {
        width: 50% !important;
        height: auto !important;
        min-height: 40px;
    }

    .wap-info-show .topstop li div:last-child {
        height: auto !important;
        line-height: 19px !important;
        padding-left: 0;
    }

    .wap-info-show .topsbom li {
        width: 100% !important;
    }

    .wap-info-show .showbodyin .right {
        width: 100% !important;
        float: none !important;
        height: auto !important;
    }

    .wap-info-show .showbodyin .right .btns {
        width: 100% !important;
        height: auto !important;
    }

    .wap-info-show .btns ul {
        margin: 16px !important;
    }

    .wap-info-show .btns li {
        width: 100% !important;
    }

    .wap-info-show .recommendbg {
        width: 100% !important;
        height: 180px !important;
    }

    .wap-info-show .recommendbg img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover;
    }

    .wap-info-show .bottombg {
        width: 100% !important;
    }

    .wap-info-show .bottomtips {
        width: auto !important;
    }

    .wap-info-show .topseyes {
        margin-bottom: 40px;
    }

    .wap-info-show .hottuijian {
        width: 100% !important;
        height: auto !important;
        box-sizing: border-box;
    }

    .wap-info-show .pinglunleft {
        width: 100% !important;
        float: none !important;
    }

    .wap-info-show .pinglunright {
        float: none !important;
        width: 100% !important;
        margin-top: 12px;
    }

    .wap-info-show .pinglunzong {
        height: auto !important;
        margin-bottom: 24px !important;
        padding-bottom: 16px !important;
    }

    .wap-info-show .pltop {
        height: auto !important;
        flex-wrap: wrap;
    }

    .wap-info-show .pltop .plposttext {
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* ---- 用户评价区：PC 是按 830px 定宽双栏设计的，窄屏下要整块自适应 ---- */

    /* 无评论空态：PC 用 margin-left:40% + margin-top:25% 定位（百分比按宽度解析），
       手机上会整体挤到最右侧、并留出 .groupreviewinfo 的 200px 最小高，这里居中并收掉空白 */
    .wap-info-show .groupreviewinfo {
        min-height: 0 !important;
    }

    .wap-info-show .groupreviewinfo .zhanpllist > div > div[style] {
        margin: 32px auto !important;
        text-align: center;
    }

    /* 标题 32px / 筛选胶囊 22px 在手机上比正文（16px）大一倍，按屏宽降到成比例的字号；
       缩小后 5 个胶囊由 4 行回到 2 行（.pinglunzong 随之从 338px 收到约 200px） */
    .wap-info-show .grouptitle2 {
        font-size: 20px !important;
        height: 24px !important;
        line-height: 24px !important;
        margin-bottom: 16px !important;
    }

    .wap-info-show .grouptitle2 span {
        width: 4px !important;
        height: 18px !important;
        margin-right: 8px !important;
        top: 0 !important;
    }

    .wap-info-show .reviewtips li {
        height: 32px !important;
        line-height: 32px !important;
        font-size: 13px !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
        border-radius: 8px !important;
        margin-right: 8px !important;
        margin-bottom: 8px !important;
    }

    .wap-info-show .pinglunright span:nth-child(1) {
        font-size: 32px !important;
        height: 38px !important;
        line-height: 38px !important;
    }

    /* 评论输入框：PC 是 731px 定宽 + content-box，手机宽度改 100% 后
       padding 32px + border 2px 会把框撑出右栏 34px */
    .wap-info-show .pltop .zhanplleft {
        flex-shrink: 0;
    }

    .wap-info-show .pltop .zhanplright {
        flex: 1 1 auto;
        min-width: 0;
    }

    /* 评论列表（.zhanpllist 由 /info/datainforeview_zhan 注入）：
       .zhangpinright / .pllisttxt 是 PC 定宽 830px，子回复还带 inline width:750px ——
       窄屏下必须全部改自适应；否则超出部分被 html/body 的 overflow-x:hidden 直接裁掉，
       评论正文右侧完全看不见（360 视口下实测右边界到 963px） */
    .wap-info-show .zhanpinitem {
        width: 100% !important;
        box-sizing: border-box;
    }

    .wap-info-show .zhanpinleft {
        width: 56px !important;
        margin-right: 12px !important;
        flex-shrink: 0;
    }

    .wap-info-show .zhangpinright {
        width: auto !important;
        flex: 1 1 auto;
        min-width: 0;
        box-sizing: border-box;
    }

    .wap-info-show .pllisttxt {
        width: auto !important;
        word-break: break-word;
        overflow-wrap: anywhere;
    }

    /* 子回复（inline margin-left:0 / padding-left:42px / width:750px）在窄栏里再缩一层 */
    .wap-info-show .zhanpinitem .zhanpinitem {
        margin-left: 0 !important;
        padding-left: 12px !important;
    }

    .wap-info-show .pllistzhan {
        flex-wrap: wrap;
    }

    /* 作者行「关注」10px 在手机上过小（iOS 正文可读下限 12px） */
    .wap-info-show .showuserguanzhu {
        font-size: 12px !important;
    }

    /* 右侧「展位预订 / 门票预订 / 咨询客服」PC 行高 30px，手机上加到 40px 便于点按 */
    .wap-info-show .btns li {
        height: 40px !important;
        line-height: 40px !important;
    }

    /* 评论输入块 PC 是固定 168px 高（作者头像/按钮一行排开），手机上 .pltop 折行后实际 218px，
       定高会让内容溢出到下方的 margin 里，这里改由内容撑开 */
    .wap-info-show .zhanplpost {
        height: auto !important;
    }

    /* ==================================================================
       五、video/info.ftl —— 视频详情
          桌面：全屏 flex 行，评论面板展开 550px；手机：评论面板整屏覆盖
       ================================================================== */

    .comments-panel.show {
        width: 100% !important;
        border-radius: 0 !important;
    }

    .comments-panel.show .comments-input-area {
        width: 100% !important;
        border-radius: 0 !important;
    }

    .video-container .divclose {
        left: 12px !important;
        top: 12px !important;
    }

    .video-container .divclose img {
        width: 36px !important;
        height: 36px !important;
    }

    /* 手机上评论区是整屏覆盖，视频自带的关闭按钮压在标题上，展开时先藏起来（关闭改用评论面板的 ×） */
    .main-content:has(.comments-panel.show) > .divclose {
        display: none !important;
    }

    .video-info-overlay {
        padding: 12px !important;
    }

    .controls-bar {
        flex-wrap: wrap !important;
        row-gap: 8px;
    }

    .controls-left {
        order: 1;
    }

    .controls-right {
        order: 2;
    }

    .controls-center {
        order: 3;
        width: 100%;
        margin-left: 0 !important;
    }

    .interaction-bar {
        right: 8px !important;
        bottom: 150px !important;
        gap: 16px !important;
    }

    .interaction-icon {
        width: 26px !important;
        height: 26px !important;
    }

    .interaction-count {
        font-size: 12px !important;
    }

    .danmu-settings-panel {
        left: 12px !important;
        bottom: 90px !important;
    }

    /* 分享 / 举报 / @好友 弹窗 */
    .share-modal.show,
    .mention-panel {
        width: 90vw !important;
        max-width: 400px;
    }

    .share-divider {
        width: 100% !important;
    }

    .share-link-box,
    .reason-detail,
    .report-submit {
        width: 100% !important;
    }

    /* ==================================================================
       六、user/index.ftl + user/info.ftl —— 个人中心 / 用户中心
          桌面：左侧 212px 固定竖导航 + 955px 内容；手机：隐藏竖导航，内容全宽
       ================================================================== */

    .wap-user .ftleft {
        display: none !important;
    }

    .wap-user .userbg,
    .wap-user .userbg2,
    .wap-user .userbg3 {
        left: 0 !important;
        width: 100% !important;
    }

    .wap-user .userbg_left {
        display: none !important;
    }

    .wap-user .usercomment {
        width: 100% !important;
        float: none !important;
        padding-left: 0 !important;
        margin-right: 0 !important;
        min-height: 0 !important;
    }

    .wap-user .usercommentin {
        width: 100% !important;
        margin-top: 16px !important;
        padding: 0 12px;
        box-sizing: border-box;
    }

    .wap-user .ftcommentbody {
        min-height: 0 !important;
    }

    .wap-user .ftcommenttop,
    .wap-user .ftusertop {
        width: 100% !important;
    }

    /* 个人资料头部 */
    .wap-user .usertop2 .divleft {
        width: 72px !important;
        height: 72px !important;
        /* .usertop2 是 flex：桌面这一格之所以稳，是因为里面的 img 写死 92px（min-width:auto
           兜着）；下面把头图改成定宽后这个兜底就没了，不锁死会被右侧长简介挤扁
           （实测不锁 flex 时被压成 18px，头像只剩一条）。 */
        flex: 0 0 auto !important;
    }

    .wap-user .usertop2 .divright {
        width: auto !important;
        flex: 1 1 auto;
        min-width: 0;
        margin-left: 16px !important;
    }

    /* 头像：桌面 .usertop2 .divleft 是 92px 内容盒 + 4px 白边（ftqnew.css:7410），
       里面 .divleft img 也是 92px，正好填满内容盒、白圈严丝合缝。
       手机把 .divleft 缩到 72px 后没同步缩 img，92px 的图比 80px 的外框还大，
       头像圆和白圈错位（白圈从左上角露一圈、右下角被头像盖住）。
       这里把图定到 72px，与内容盒一致，白圈恢复完整。 */
    .wap-user .usertop2 .divleft img {
        width: 72px !important;
        height: 72px !important;
        border-radius: 100%;
    }

    /* 标签行（♂男 / 其他 / 长标签）：桌面 .divright 有 624px 宽，一行放得下；
       .sextag 在 ftqnew.css:7495 是固定 height:19px 且 overflow 可见，
       手机上 .divright 只 ~270px，长标签会折成 2 行、第二行直接压到下面「简介」上
       （实测 390px：「论坛,AI圈…采购对接」第 2 行与「具备一定全栈…」重叠）。
       放开高度让标签行自然撑开。 */
    .wap-user .usertop2 .sextag {
        height: auto !important;
        min-height: 19px !important;
        margin-bottom: 15px !important;
        line-height: 19px;
    }

    .wap-user .usertop2 .sextag span {
        height: auto !important;
        min-height: 19px;
        line-height: 19px !important;
        vertical-align: top;
    }

    /* 简介：原本写死 height:30px（2 行）且文字溢出可见，长简介会压住右下角
       “编辑资料/关注/发私信”按钮；手机上放开高度并给按钮留出空位 */
    .wap-user .creatremark {
        height: auto !important;
        min-height: 30px;
        padding-bottom: 40px;
        line-height: 18px;
    }

    .wap-user .username {
        font-size: 18px !important;
        height: auto !important;
    }

    /* 作品列表：4 列 -> 2 列 */
    .wap-user .newitem {
        width: calc(50% - 8px) !important;
        height: auto !important;
        min-height: 0 !important;
        margin-right: 16px !important;
        margin-bottom: 16px !important;
        box-sizing: border-box;
    }

    .wap-user .newitem:nth-child(2n) {
        margin-right: 0 !important;
    }

    /* 覆盖页面内 .fttxtbody div:nth-child(4n){margin-right:0} 的 4 列规则 */
    .wap-user .fttxtbody div:nth-child(4n) {
        margin-right: 16px !important;
    }

    .wap-user .fttxtbody .newitem:nth-child(2n) {
        margin-right: 0 !important;
    }

    .wap-user .newitemtop {
        height: auto !important;
    }

    .wap-user .newitemtop a {
        display: block;
        width: 100% !important;
        height: auto !important;
    }

    .wap-user .newitemtop img {
        display: block;
        width: 100% !important;
        height: auto !important;
        border-radius: 12px;
    }

    .wap-user .newitembom {
        height: auto !important;
    }

    .wap-user .newitemtitle {
        width: 100% !important;
        height: auto !important;
        margin: 12px 0 !important;
    }

    /* 个人主页里的群聊卡片 */
    .wap-user .group-card-item {
        width: calc(50% - 8px) !important;
    }

    .wap-user .group-card-item:nth-child(2n) {
        margin-right: 0 !important;
    }

    /* 作品/喜欢/收藏 标签行 + 批量管理/筛选 按钮行：手机上拆成两行 */
    .wap-user .ftcommenttop > div {
        flex-wrap: wrap !important;
        row-gap: 8px;
    }

    .wap-user .ftcommenttop > div > ul {
        flex: 1 1 100% !important;
        margin-bottom: 8px !important;
    }

    .wap-user .ftcommenttop > div > div:last-child {
        flex-wrap: wrap !important;
        width: 100%;
        gap: 8px !important;
    }

    .wap-user .user-search-box {
        width: 100% !important;
    }

    /* ==================================================================
       七、visa/info.ftl + group/info.ftl —— 签证详情 / 展团详情
          桌面：1120px 居中 + 左 830 / 右 210 双栏；手机：单列
       ================================================================== */

    .wap-product .grouptop {
        height: 220px !important;
        margin-bottom: 16px !important;
    }

    .wap-product .groupinfoin {
        width: 100% !important;
        height: 100%;
        padding: 0 16px;
        box-sizing: border-box;
    }

    .wap-product .grouptitle {
        width: calc(100% - 32px) !important;
        height: auto !important;
        font-size: 20px !important;
        line-height: 28px !important;
        bottom: 56px !important;
    }

    .wap-product .groupbtns {
        right: 8px !important;
        bottom: 12px !important;
    }

    .wap-product .groupbtns li {
        width: 72px !important;
    }

    .wap-product .groupbody {
        padding: 0 12px 24px;
        box-sizing: border-box;
    }

    .wap-product .groupinfoin .left {
        width: 100% !important;
        float: none !important;
        margin-right: 0 !important;
    }

    .wap-product .groupinfoin .right {
        width: 100% !important;
        float: none !important;
    }

    /* 价格 / 总价 / 规格信息块 */
    .wap-product .lefttop {
        width: 100% !important;
        height: auto !important;
        padding: 12px 16px;
        box-sizing: border-box;
    }

    .wap-product .leftprice {
        position: static !important;
        height: auto !important;
        line-height: 1.2 !important;
    }

    .wap-product .righttips {
        position: static !important;
        margin-top: 8px;
        text-align: left;
    }

    .wap-product .righttips div:last-child {
        text-align: left !important;
    }

    .wap-product .leftothers,
    .wap-product .leftothersvisa {
        width: 100% !important;
        height: auto !important;
        padding: 16px !important;
        box-sizing: border-box;
    }

    .wap-product .leftothers li,
    .wap-product .leftothersvisa li {
        width: 100% !important;
        float: none !important;
        height: auto !important;
        min-height: 16px;
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .wap-product .leftothers .sname,
    .wap-product .leftothersvisa .sname {
        flex: 0 0 auto;
    }

    .wap-product .leftallprice {
        width: 100% !important;
        height: auto !important;
        line-height: 1.2 !important;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 12px 0 12px 16px;
        box-sizing: border-box;
        position: relative;
    }

    .wap-product .leftallprice span:first-child {
        margin-left: 0 !important;
    }

    .wap-product .leftallprice span:last-child {
        position: static !important;
        width: auto !important;
        height: 48px !important;
        line-height: 48px !important;
        font-size: 18px !important;
        padding: 0 20px;
        border-radius: 8px !important;
    }

    /* 各分块标题 */
    .wap-product .grouptitle2 {
        font-size: 20px !important;
        height: auto !important;
        line-height: 28px !important;
        margin-bottom: 16px !important;
    }

    .wap-product .grouptitle2 span {
        height: 20px !important;
    }

    .wap-product .proupinfo {
        font-size: 15px !important;
    }

    /* 所需资料表格：4 列 -> 纵向堆叠 */
    .wap-product .visaziliaotable {
        width: 100% !important;
        padding-left: 0 !important;
        overflow-x: auto;
    }

    .wap-product .visaziliaotable table,
    .wap-product .visaziliaotable table td {
        width: 100% !important;
    }

    .wap-product .visaziliaotable table td {
        display: block;
        box-sizing: border-box;
        padding: 6px 8px;
        text-align: left;
    }

    .wap-product .visaziliaotable table tr {
        display: block;
        height: auto !important;
        margin-bottom: 12px;
    }

    /* 办签流程：横向 4 步 -> 2 x 2 */
    .wap-product .visaliucheng {
        width: 100% !important;
        height: auto !important;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
    }

    .wap-product .visaliuchengitem {
        margin-right: 8px !important;
    }

    .wap-product .visaliuchengitem img,
    .wap-product .visaliuchengto img {
        margin-right: 8px !important;
    }

    /* 供应商卡片 */
    .wap-product .groupright01in,
    .wap-product .groupright02 {
        width: 100% !important;
        height: auto !important;
        box-sizing: border-box;
    }

    .wap-product .rightin {
        width: 100% !important;
    }

    /* 猜你喜欢 / 相关热点 */
    .wap-product .recommendbg {
        width: 100% !important;
        height: 180px !important;
    }

    .wap-product .recommendbg img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover;
    }

    .wap-product .bottombg {
        width: 100% !important;
    }

    .wap-product .bottomtips {
        width: auto !important;
    }

    .wap-product .hottuijian {
        width: 100% !important;
        height: auto !important;
        box-sizing: border-box;
    }

    /* 用户评价 */
    .wap-product .pinglunleft {
        width: 100% !important;
        float: none !important;
    }

    .wap-product .pinglunright {
        float: none !important;
        width: 100% !important;
        margin-top: 12px;
    }

    .wap-product .pinglunzong {
        height: auto !important;
        margin-bottom: 24px !important;
        padding-bottom: 16px !important;
    }

    .wap-product .reviewtips li {
        padding-left: 14px !important;
        padding-right: 14px !important;
        font-size: 14px !important;
        height: 32px !important;
        line-height: 32px !important;
    }

    .wap-product .pltop {
        height: auto !important;
        flex-wrap: wrap;
    }

    .wap-product .pltop .plposttext {
        width: 100% !important;
    }

    /* 评价列表区域（原本按 830/894px 左栏设计） */
    .wap-product .grouppllist,
    .wap-product .grouppinitem {
        width: 100% !important;
        margin-left: 0 !important;
    }

    .wap-product .visahr {
        width: 100% !important;
        margin-left: 0 !important;
    }

    .wap-product .pinglunusertop {
        width: 100% !important;
    }

    .wap-product .pinglunimg {
        padding-left: 0 !important;
    }

    .wap-product .pinglunimg li {
        width: calc(33.33% - 8px) !important;
        height: auto !important;
        aspect-ratio: 1 / 1;
    }

    .wap-product .pinglunimg li img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover;
    }

    .wap-product .pinglunbottom {
        padding-left: 0 !important;
    }

    .wap-product .grouppllist div,
    .wap-product .grouppllist ul,
    .wap-product .grouppllist li,
    .wap-product .grouppllist img,
    .wap-product .grouppinitem div,
    .wap-product .grouppinitem ul,
    .wap-product .grouppinitem li,
    .wap-product .grouppinitem img,
    .wap-product .pinglunimg div,
    .wap-product .pinglunimg ul,
    .wap-product .pinglunimg img {
        max-width: 100% !important;
    }

    /* ==================================================================
      八、全站通用外壳（.ftbodys > .ftleft + .ftcomment）
          首页/找展/展团/签证/消息/订单/用户/关注朋友等 49+ 个页面共用同一套骨架，
          桌面：左侧 212px 固定竖导航 + 右侧内容区；手机：竖导航改横向可滑动导航条 + 内容满宽
       ================================================================== */

    /* 8.1 左侧固定竖导航 → 横向可滑动导航条 */
    .ftleft {
        position: static !important;
        width: 100% !important;
        height: auto !important;
        z-index: auto !important;
        background: transparent !important;
    }

    .ftleftin {
        flex-direction: row !important;
        align-items: center;
        height: auto !important;
        overflow: visible !important;
        padding: 0 12px;
        box-sizing: border-box;
    }

    .ftlefttop {
        flex: 1 1 auto;
        min-width: 0;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        padding-bottom: 0 !important;
    }

    .leftul {
        display: flex;
        align-items: center;
        gap: 6px;
        padding: 6px 0 !important;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .leftul::-webkit-scrollbar {
        display: none;
    }

    .leftul li {
        float: none !important;
        flex: 0 0 auto;
        width: auto !important;
        height: auto !important;
        line-height: 1.2 !important;
        margin: 0 !important;
        padding: 6px 10px !important;
        border-radius: 10px;
        white-space: nowrap;
    }

    .leftul li a {
        font-size: 13px !important;
    }

    .leftul li img {
        width: 18px !important;
        height: 18px !important;
        margin-right: 4px;
    }

    .leftul li.lihr {
        display: none !important;
    }

    /* 备案信息（桌面靠 100vh 撑开的底部留白）在手机上隐藏 */
    .icp-info {
        display: none !important;
    }

    /* 手机端精简（全站口径）：顶部搜索 / 发布按钮 / 左侧导航“设置”一律不显示 */
    .divtop .topsearchdiv,
    .divtop .topsearch,
    #btntopfabu,
    #toppostbox,
    .bomset,
    #topsetbox {
        display: none !important;
    }

    /* 搜索/发布隐藏后，右侧图标组（计划/通知/私信/头像）推到最右 */
    .divtopin > .divtopright {
        margin-left: auto;
    }

    /* 8.2 主内容区去掉 212px 让位 */
    .ftcomment {
        width: 100% !important;
        float: none !important;
        padding-left: 0 !important;
        margin-right: 0 !important;
        min-height: 0 !important;
    }

    /* 8.3 二级标签（全部/展圈/视频/设计/攻略/话题/问答/展策…）横向滚动 */
    .ftcommenttop {
        width: 100% !important;
        height: auto !important;
        overflow: visible !important;
        padding: 8px 12px 0 !important;
        box-sizing: border-box;
        margin-bottom: 8px !important;
    }

    #listtypeul,
    .ulusernav2 {
        display: flex;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 4px;
        scrollbar-width: none;
    }

    #listtypeul::-webkit-scrollbar,
    .ulusernav2::-webkit-scrollbar {
        display: none;
    }

    #listtypeul li {
        float: none !important;
        flex: 0 0 auto;
        margin-right: 20px !important;
        white-space: nowrap;
    }

    .ulusernav2 li {
        float: none !important;
        flex: 0 0 auto;
        white-space: nowrap;
    }

    /* 8.3.1 展团 / 签证页「大洲」tab（#listtypeulfindzhan）：
            桌面（>1024px）本来就是一行；<=1024px 时这里仍沿用
            float:left + margin-right:32px 会把总宽 400px 的 6 个 tab
            （热门/亚洲/欧洲/非洲/美洲/大洋洲）挤成两行（大洋洲掉到第二行）。
            改成不换行的 flex，行内间距用 clamp(14px,5.2vw,32px)：
            宽屏（>=615px）仍是原来的 32px 间距、左对齐，观感与桌面一致；
            窄屏自动收紧到最小 14px，320px 的机器上 6 个 tab 也放得下，
            全程保持一排。间距极小/以后大洲增多时，overflow-x:auto 兜底可横滑。 */
    #listtypeulfindzhan {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start;
        align-items: flex-start;
        column-gap: clamp(14px, 5.2vw, 32px);
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 4px;
        scrollbar-width: none;
    }

    #listtypeulfindzhan::-webkit-scrollbar {
        display: none;
    }

    #listtypeulfindzhan li {
        float: none !important;
        flex: 0 0 auto;
        margin-right: 0 !important;
        white-space: nowrap;
    }

    /* 8.4 瀑布流容器：2 列、贴边内边距（内容流 / 展团流共用） */
    .fttxtbody,
    .groupbodyin {
        width: 100% !important;
        padding: 0 12px !important;
        box-sizing: border-box;
    }

    .fttxtbody.waterfall-container,
    .groupbodyin.waterfall-container {
        column-count: 2 !important;
        column-gap: 10px !important;
        width: 100% !important;
        padding: 0 12px !important;
        box-sizing: border-box;
    }

    .fttxtbody.waterfall-container .newitem,
    .groupbodyin.waterfall-container .groupitem {
        margin: 0 0 10px 0 !important;
        padding: 6px !important;
        border-radius: 10px;
    }

    /* 万一 waterfall.js 没跑起来（没有 .waterfall-container），退回两列浮动栅格 */
    .fttxtbody:not(.waterfall-container) .newitem,
    .groupbodyin:not(.waterfall-container) .groupitem {
        float: left !important;
        width: calc(50% - 6px) !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 12px 12px 0 !important;
        padding: 6px !important;
        box-sizing: border-box;
        border-radius: 10px;
    }

    .fttxtbody:not(.waterfall-container) .newitem:nth-child(2n),
    .groupbodyin:not(.waterfall-container) .groupitem:nth-child(2n) {
        margin-right: 0 !important;
    }

    .fttxtbody:not(.waterfall-container) .newitemtop,
    .fttxtbody:not(.waterfall-container) .newitemtop a,
    .fttxtbody:not(.waterfall-container) .newitemtop img,
    .groupbodyin:not(.waterfall-container) .groupitemtop,
    .groupbodyin:not(.waterfall-container) .groupitemtop a,
    .groupbodyin:not(.waterfall-container) .groupitemtop img {
        width: 100% !important;
        height: auto !important;
    }

    .fttxtbody:not(.waterfall-container) .newitemtitle {
        width: 100% !important;
        margin: 10px 0 !important;
    }

    /* 8.5 列表容器里的图片一律不撑破卡片（图标有显式宽高，不受影响） */
    .fttxtbody img,
    .groupbodyin img,
    .ftcomment img,
    .rightin img,
    .ftrightin2 img {
        max-width: 100%;
    }

    /* 8.6 运营位卡片（第 18/29 个卡片）手机上去掉 450px/380px 的桌面最小高度 */
    .rightone,
    .righttwo {
        min-height: 0 !important;
        padding: 12px !important;
        margin-bottom: 10px !important;
    }

    .fttipbody,
    .fttipbody2 {
        min-height: 0 !important;
    }

    .rightonebgtop {
        height: 120px !important;
    }

    .btnmorehot {
        width: 100% !important;
    }

    /* 顶部搜索直接挂在 .divtopin 下的页面（shared/_top_bg.ftl）也要能自适应 */
    .topsearch {
        flex: 1 1 auto;
        min-width: 0;
    }

    /* ==================================================================
      九、creator/*.ftl —— 创作者中心（另一套竖导航 .creatorul）
       ================================================================== */
    .ftleftcreator {
        position: static !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 6px 12px !important;
        box-sizing: border-box;
    }

    .creatorul {
        display: flex;
        align-items: center;
        gap: 6px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .creatorul::-webkit-scrollbar {
        display: none;
    }

    .creatorul li {
        flex: 0 0 auto;
        width: auto !important;
        /* flex 项默认 min-width:auto 会顶掉 max-width，先压成 0 才能限宽 */
        min-width: 0 !important;
        max-width: 46vw !important;
        overflow: hidden;
        min-height: 0 !important;
        margin-bottom: 0 !important;
        white-space: nowrap;
    }

    .creatorul li .creatanav {
        width: auto !important;
        padding: 0 8px;
    }

    .creatorul li .creatanav span {
        font-size: 13px !important;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    /* 二级下拉在手机上走绝对定位，不撑开导航条 */
    .creatorul .childnav {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        z-index: 99;
    }

    .liovercreator {
        width: auto !important;
        flex: 0 0 auto;
        margin: 0 6px 0 0 !important;
        padding: 0 14px !important;
        white-space: nowrap;
    }

    .divhrcreator {
        display: none !important;
    }

    /* ==================================================================
      十、find/*.ftl —— 找展
          10.1 展会卡（.fditemzh）通用修复 —— 所有挂 .findzhaninfo 的页面共用
          10.2 find/index.ftl（.findindex-hero）手机端版式重设计
          10.3 「更多」全部类目浮层 → 手机端全屏抽屉
       ================================================================== */

    /* ---- 10.1 展会卡通用修复 ----
       桌面卡内层（.fditemzhtop / .imga / .fditemzhbg）都写死 188×256，
       而手机端外层卡只有 ~174px 宽；再叠加 imgauto() 写进行内的 left/top 负偏移，
       图片会被挤出可视区（只留一条竖边）。这里统一改成：
       外层卡 → 2 列等宽；内层图 → 宽度跟随 + 188:256 定比 + object-fit:cover；
       行内 left/top 用 !important 盖掉，PC 端（>1024px）逻辑完全不变。 */
    .findzhaninfo {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 18px 10px !important;
        overflow: visible !important;
    }

    .fditemzh {
        float: none !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        overflow: visible !important;
        position: relative;
    }

    .fditemzh > .fditemzhtop {
        width: 100% !important;
        height: 0 !important;
        padding-bottom: 136.17% !important; /* 256 / 188 */
        margin-bottom: 10px !important;
        border-radius: 12px;
        overflow: hidden;
        position: relative;
    }

    .fditemzh > .fditemzhtop > a {
        display: block !important;
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
    }

    .fditemzh > .fditemzhtop > a > img {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        max-width: none !important;
        object-fit: cover;
        border-radius: 12px;
    }

    /* 卡内文字层：标题两行截断、关注数左对齐、底部渐变按卡宽自适应 */
    .fditemzh .findzhanname {
        left: 10px !important;
        right: 10px !important;
        bottom: 32px !important;
        height: auto !important;
        margin: 0 !important;
        font-size: 13px !important;
        line-height: 17px !important;
        text-align: left !important;
        overflow: hidden;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
    }

    .fditemzh .fditemgz {
        bottom: 11px !important;
        height: 16px !important;
        line-height: 16px !important;
        font-size: 11px !important;
        text-align: left !important;
        padding: 0 10px;
        box-sizing: border-box;
        opacity: 0.85;
    }

    .fditemzh .fditemzhbg {
        width: 100% !important;
        height: 50% !important;
    }

    /* 排行角标：桌面上是 34×39 的绶带，手机端等比缩到 24px */
    .fditemzh .paihangtips {
        width: 24px !important;
        height: 24px !important;
        right: 8px !important;
        top: 8px !important;
    }

    .fditemzh .paihangtips > div {
        left: 0 !important;
        top: 0 !important;
        width: 24px !important;
        height: 20px !important;
        line-height: 20px !important;
        font-size: 12px !important;
    }

    .fditemzh .paihangtips img {
        left: 0 !important;
        top: 0 !important;
        width: 24px !important;
        height: auto !important;
    }

    /* 底部「预定展位」按钮满宽 */
    .fditemzh > .fditemzhbom {
        width: 100% !important;
        height: 32px !important;
        line-height: 32px !important;
        font-size: 13px !important;
        border-radius: 8px;
        margin: 0 !important;
    }

    /* ---- 10.2 find/index.ftl 手机端版式重设计 ---- */

    /* 顶部通栏横幅 + 底角圆角，随内容滚动（PC 是 fixed 视差，不动） */
    .findindex-hero .ftcomment {
        position: relative;
    }

    .findindex-hero .findbg {
        position: absolute !important;
        left: 0 !important;
        top: 0 !important;
        width: 100% !important;
        height: 232px !important;
        border-radius: 0 0 18px 18px;
        background: url(/statics/wwwroot/icos/findbg.jpg) center 34% / cover no-repeat;
        /* 负 z-index：横幅沉到全站内容之下，同时不给 .findzhanbox 造 stacking context，
           这样「更多」全屏抽屉（z-index:9999）才能压过 .divtop（z-index:1000） */
        z-index: -2;
    }

    .findindex-hero .findbg_left {
        display: none !important;
    }

    .findindex-hero .findbg_bottom {
        position: absolute !important;
        left: 0 !important;
        top: 130px !important;
        width: 100% !important;
        height: 102px !important;
        border-radius: 0 0 18px 18px;
        z-index: -1;
    }

    /* 无横幅的找展列表页（今日榜 / 热门 / 推荐 / 国内 / 国际 / 最新）走纯白底 */
    .findindex:not(.findindex-hero) .findbg,
    .findindex:not(.findindex-hero) .findbg_left,
    .findindex:not(.findindex-hero) .findbg_bottom {
        display: none !important;
    }

    .findzhanbox {
        position: relative;
        width: 100% !important;
        margin: 0 !important;
        padding: 10px 12px 0 !important;
        box-sizing: border-box;
    }

    /* 类目入口：桌面横排 6 张 → 手机 2 列 3 行等宽卡 */
    .fanzhannav {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
        margin: 0 0 26px !important;
    }

    .fanzhannav > li {
        float: none !important;
        width: 100% !important;
        height: auto !important;
        min-height: 62px;
        margin: 0 !important;
        padding: 12px 10px !important;
        box-sizing: border-box;
        border-radius: 12px;
        background: rgba(255, 255, 255, 0.9);
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter: blur(10px);
        box-shadow: 0 6px 18px rgba(16, 24, 40, 0.06);
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .fanzhannav > li a {
        display: block;
        width: 100%;
    }

    .fanzhannav li a div:first-child {
        height: auto !important;
        font-size: 16px !important;
        line-height: 20px !important;
        margin-bottom: 3px !important;
    }

    .fanzhannav li a div:nth-child(2) {
        height: auto !important;
        font-size: 11px !important;
        line-height: 14px !important;
    }

    #btnshowalert {
        width: 100% !important;
    }

    /* 分区标题 / 查看更多 / 分区间距 */
    .findname {
        height: 22px !important;
        font-size: 17px !important;
        line-height: 22px !important;
        margin-bottom: 12px !important;
    }

    .spanmorea {
        height: 20px !important;
        line-height: 20px !important;
        font-size: 12px !important;
    }

    .spanmorea img {
        width: 14px !important;
        height: 14px !important;
        margin-left: 2px;
    }

    .findbody {
        margin-bottom: 30px !important;
    }

    /* ---- 10.3 「更多」全部类目：手机端全屏抽屉 ---- */
    .alerttype1 {
        display: none !important;
    }

    .alerttype1.wap-panel {
        display: block !important;
        position: fixed !important;
        left: 0 !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        height: 100% !important;
        margin: 0 !important;
        border-radius: 0 !important;
        background: #FFF;
        box-shadow: none;
        overflow: hidden !important;
        z-index: 9999 !important;
        visibility: hidden;
        opacity: 0;
        transition: opacity 0.2s ease, visibility 0.2s ease;
    }

    .alerttype1.wap-panel.wap-show {
        visibility: visible;
        opacity: 1;
    }

    .alerttype1.wap-panel .alerttypetitle {
        position: relative;
        height: 52px !important;
        line-height: 52px !important;
        padding: 0 16px !important;
        margin: 0 !important;
        text-align: center;
        font-size: 16px !important;
        font-weight: 600;
        color: #06081B;
        border-bottom: 1px solid rgba(100, 111, 126, 0.1);
        box-sizing: border-box;
    }

    .alerttype1.wap-panel .alerttypetitle::after {
        content: "关闭";
        position: absolute;
        right: 16px;
        top: 0;
        font-size: 14px;
        font-weight: 400;
        color: #646F7E;
    }

    .alerttype1.wap-panel .alerttype1body {
        height: calc(100% - 52px) !important;
        padding: 8px 12px 40px;
        box-sizing: border-box;
        background: #FFF;
        border-radius: 0;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .alerttype1.wap-panel .itemdiv {
        width: 100% !important;
        height: auto !important;
        line-height: 22px !important;
        margin: 0 !important;
        padding: 10px 4px 6px !important;
        font-size: 15px !important;
        color: #06081B !important;
        border-radius: 0;
        overflow: visible !important;
        border-bottom: 1px solid rgba(100, 111, 126, 0.08);
    }

    .alerttype1.wap-panel .itemdiv a {
        color: #06081B !important;
        font-size: 15px !important;
    }

    .alerttype1.wap-panel .alertchild {
        position: static !important;
        width: 100% !important;
        height: auto !important;
        border-left: 0 !important;
        margin-top: 8px;
    }

    .alerttype1.wap-panel .alertchildin {
        height: auto !important;
        padding-top: 0 !important;
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }

    .alerttype1.wap-panel .childitemdiv {
        width: auto !important;
        height: 30px !important;
        line-height: 30px !important;
        margin: 0 !important;
        padding: 0 12px !important;
        border-radius: 15px;
        background: #F1F3F4;
        font-size: 13px !important;
        color: #646F7E !important;
    }

    .alerttype1.wap-panel .childitemdiv a {
        color: #646F7E !important;
    }

    body.wap-panel-open {
        overflow: hidden;
    }

    /* ---- 10.4 find/todaylist|tuijianlist|newlist|guoneilist|guoji
            「查看更多」列表（shared/_findlist.ftl）：
            桌面是 1012px 定宽横排（188px 缩略图 + 776px 文字栏），
            手机上改成满宽 + 缩略图 104×140 + 右侧文字自适应。 ---- */
    .fthotlist ul li,
    .fthotlist li {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 10px;
        box-sizing: border-box;
        border-radius: 12px;
        align-items: flex-start;
    }

    .fthotlist li > .fditemzhtop {
        width: 104px !important;
        height: 140px !important;
        flex: 0 0 104px;
        margin-bottom: 0 !important;
        border-radius: 10px;
    }

    .fthotlist li > .fditemzhtop > a {
        width: 100% !important;
        height: 100% !important;
        display: block;
    }

    .fthotlist li > .fditemzhtop img {
        width: 100% !important;
        height: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        left: 0 !important;
        top: 0 !important;
        object-fit: cover;
    }

    .fthotlist li > .fditemzhtop .findzhanname {
        width: auto !important;
        left: 8px;
        right: 8px;
        margin: 0 !important;
        bottom: 8px !important;
        font-size: 11px !important;
        line-height: 14px !important;
        height: 28px !important;
        text-align: left !important;
    }

    .fthotlist li > .fditemzhtop .fditemgz {
        display: none !important;
    }

    .fthotlist li > .fditemzhtop .fditemzhbg {
        width: 100% !important;
        height: 60% !important;
    }

    .fthotlist .paihangtips {
        width: 18px !important;
        height: 18px !important;
        right: 6px !important;
        top: 6px !important;
    }

    .fthotlist .paihangtips > div {
        left: 0 !important;
        top: 0 !important;
        width: 18px !important;
        height: 15px !important;
        line-height: 15px !important;
        font-size: 11px !important;
    }

    .fthotlist .paihangtips img {
        left: 0 !important;
        top: 0 !important;
        width: 18px !important;
        height: auto !important;
    }

    .fthotlist .hotlistright {
        width: auto !important;
        flex: 1 1 auto;
        min-width: 0;
        margin: 0 0 0 12px !important;
        overflow: hidden;
    }

    .fthotlist .hotlistright div:first-child {
        padding-top: 0 !important;
        height: auto !important;
        font-size: 12px !important;
        line-height: 16px !important;
        margin-bottom: 4px !important;
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        overflow: hidden !important;
    }

    .fthotlist .hotlistright div:nth-child(2) {
        height: auto !important;
        font-size: 15px !important;
        line-height: 20px !important;
        margin-bottom: 6px !important;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden !important;
    }

    .fthotlist .hotlistright div:nth-child(3) {
        height: auto !important;
        font-size: 12px !important;
        line-height: 17px !important;
        margin-bottom: 6px !important;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden !important;
    }

    .fthotlist .hotlistright div:nth-child(4) {
        height: auto !important;
        font-size: 12px !important;
        line-height: 17px !important;
        margin-bottom: 10px !important;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden !important;
    }

    .fthotlist .hotlistright div:nth-child(5) {
        width: 92px !important;
        height: 28px !important;
        line-height: 28px !important;
        font-size: 12px !important;
        border-radius: 8px;
        float: none !important;
    }

    /* 桌面专用的「热度」竖排数字在手机上不显示 */
    .fthotlist .spanhotnums {
        display: none !important;
    }

    /* ==================================================================
      十一、login/*.ftl —— 登录 / 扫码 / 协议页
          桌面 840px：左 312px 品牌卡 + 右 386px 表单；手机上下堆叠
       ================================================================== */    .divforlogin {
        width: 100% !important;
        padding: 0 16px;
        box-sizing: border-box;
    }

    .loginleft,
    .loginright {
        float: none !important;
        width: 100% !important;
        height: auto !important;
        box-sizing: border-box;
    }

    .loginleft {
        min-height: 0 !important;
        padding: 16px !important;
        background-size: cover !important;
        background-position: center !important;
    }

    .loginright {
        padding: 16px !important;
    }

    .righttxt,
    .rightbtn {
        width: 100% !important;
        box-sizing: border-box;
    }

    /* ==================================================================
      十二、layui 表格页（feedback/index.ftl 等）—— 宽表格改容器内横向滚动
       ================================================================== */
    .layui-fluid {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        padding: 10px !important;
    }

    .layui-table {
        min-width: 640px;
    }

    /* ==================================================================
      十三、其余列表 / 表单容器（消息、订单、发布、错误页）——
            桌面都是 600~720px 居中定宽，手机上改满宽
       ================================================================== */
    .ftmessagetop,
    .messagebody,
    .msgtop {
        width: 100% !important;
    }

    /* 13.1 消息页（message/*.ftl：评论和@我 / 点赞收藏 / 我的关注 / 订单通知 / 系统消息）
       页内 JS 用 .topsearch 的位置算内联 margin-left = offset().left - 212
       （桌面把标签栏与列表对齐到搜索框左侧）；手机端 .topsearch 被 §8 隐藏，
       offset().left 变 0 → 内联 margin-left:-212px，把标签栏和整列消息推出屏幕左外
       （实测 390px 下 x=-212，只露出缩略图和日期）。
       这里用 !important 压掉内联负边距，桌面（>1024px）不受影响。 */
    .ftmessagetop,
    .messagebody {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* 13.2 消息行：桌面是 content-box，页面里 height:56px 只是给 56px 右侧缩略图留位，
       实际行高 = 56 + 上下 padding 32 = 88px；这里为了 100% 宽度不溢出加了 border-box，
       若再沿用写死高度就会压成 56px，缩略图（56px）溢出到行外、上下两行图片贴在一起。
       所以 border-box 下必须把高度改回自动，行高同样回到 56+32=88px。
       ★ 页面 <style> 里有 .messageitem{height:56px !important}（pinglun.ftl），
         同权重且源码在后会盖掉本文件，故这里用 .messagebody .messageitem 提权。 */
    .messagebody .messageitem {
        width: 100% !important;
        height: auto !important;
        box-sizing: border-box;
    }

    .msgmiddle {
        width: auto !important;
        flex: 1 1 auto;
        min-width: 0;
    }

    .msgright {
        position: static !important;
        flex: 0 0 auto;
        margin-left: 8px;
    }

    /* 13.3 头像不参与伸缩。.msgleft 是 flex 项，默认 flex:0 1 auto，
       备注文本一长容器就溢出，浏览器按收缩因子把 42px 头像压小：
       实测 390px 下第 3 行 38.9px、第 5 行 33.9px（同一列表里行行不一样），
       且文字左边界跟着从 68px 漂到 64.9 / 59.9px，整列左对齐被破坏。 */
    .messagebody .messageitem .msgleft {
        flex: 0 0 42px;
    }

    .messagebody .messageitem .msgleft img {
        width: 42px;
        height: 42px;
        max-width: none;
    }

    /* 13.4 日期不折行。.spantime 里是 YYYY-MM-dd，宽度不够时会被折成
       “2026-” / “09-21” 两截（实测第 3 行）；折行后 margin-left:16px
       会退化成行首缩进（实测第 5 行日期缩进到 x=75.9），故窄屏收窄到 8px。 */
    .messagebody .msgmiddle .msgremark .spantime {
        white-space: nowrap;
        margin-left: 8px;
    }

    /* 13.4.1 昵称行 / 备注行改按内容撑高。桌面写死 .msgtip{height:17px}、
       .msgremark{height:15px}（单行高度），窄屏换行时是「盒子 15px、文字 30/45px」，
       多出来的行溢出到行盒外：320px 下系统消息三行文案已贴到行底边，
       再长一点就会压到下一行。改 auto 后单行仍等于 17/15px，
       多行则把行高撑开（行盒 88px 是 min-height，撑开时正常变高）。 */
    .messagebody .msgmiddle .msgtip,
    .messagebody .msgmiddle .msgremark {
        height: auto !important;
    }

    /* 13.5 右侧既没缩略图、也没未读红点/关注按钮时，整列不渲染。
       页面 <style> 给 .msgright 写了 min-width:80px（pinglun/zan 80、guanzhu 100），
       空列白吃 80px，把「大福泰@了您，请点击查看！」这类长句挤到第二行、
       日期再被顶到第三行。隐藏后文字可用宽度 306px（68→374），长句一行放得下。
       注意 :has(*) 只看元素子节点，模板里的空白文本节点不影响判断。 */
    .messagebody .messageitem .msgright:not(:has(*)) {
        display: none !important;
    }

    /* 13.5.1 右侧列一消失，该行就只剩文字（44px），行高会从 88 掉到 76，
       同一列表里行高忽高忽低。带缩略图的列表统一按页面原意 56px 内容高
       （=88px 行高，pinglun.ftl 里 .messageitem{height:56px}）；
       我的关注页没有缩略图、桌面行高本来就是 74px，故用 :has(img) 限定，不动它。 */
    .messagebody:has(.msgright img) .messageitem {
        min-height: 88px;
    }

    /* 13.6 未读红点：_top.ftl 里 margin-right:16px 是按桌面 480px 文字列给的，
       窄屏下红点 8px + 16px + gap12 会把缩略图往左推、挤压文字列，收窄到 8px。 */
    .messagebody .messageitem .msgright .message-unread-dot {
        flex: 0 0 auto;
        margin-right: 8px;
    }

    /* 13.7 二级标签与消息内容左对齐。桌面 .ftcomment 留了 212px 让位，
       标签栏才和搜索框对齐；手机端让位归零后 ul 贴到屏幕左边缘（实测 x=0），
       比 16px 的头像列少一个身位。只作用于消息页（.ftmessagetop 仅 message/*.ftl 使用）。 */
    .ftmessagetop #listtypeul {
        padding-left: 16px;
        padding-right: 16px;
    }

    .orderbody,
    .ordertitle,
    .orderlistbody {
        width: 100% !important;
        box-sizing: border-box;
    }

    /* 错误页 / 发布页里的定宽卡片 */
    .error-card,
    .post3,
    .post-body,
    .xuanfudiv {
        width: 100% !important;
        box-sizing: border-box;
    }

    /* ==================================================================
      十四、展团 / 签证列表的“国家筛选”（shared/groupvisacountry.ftl）
            桌面：右上角绝对定位的下拉；WAP：整块隐藏
            （.grouprightsel / #groupcountryhide 都是 absolute，隐藏后不留空位）
       ================================================================== */
    .grouprightsel,
    #groupcountryhide {
        display: none !important;
    }

    /* ==================================================================
      十五、layer 弹窗（type:2 iframe，如登录弹窗 /login/index）
            桌面：ftq_new.js 里写死 area:['840px','480px']，手机屏宽 390 时
                  layer 算出的 left=(390-840)/2=-225 → 弹窗跑到屏幕外（只露一半）
            手机：改成 92vw × 88vh 的近全屏浮层
            （宽高/位置都是 layer 的内联样式，必须 !important 覆盖）
       ================================================================== */
    .layui-layer.layui-layer-iframe {
        left: 4vw !important;
        top: 5vh !important;
        right: auto !important;
        bottom: auto !important;
        width: 92vw !important;
        max-width: 92vw !important;
        height: 90vh !important;
        max-height: 90vh !important;
        margin: 0 !important;
    }

    .layui-layer.layui-layer-iframe .layui-layer-title {
        height: 34px !important;
        line-height: 34px !important;
        padding-right: 40px !important;
        font-size: 14px !important;
    }

    /* 无标题的弹窗（登录弹窗就是 title:''）内容区占满整个浮层 */
    .layui-layer.layui-layer-iframe .layui-layer-content {
        height: 100% !important;
        width: 100% !important;
        box-sizing: border-box;
        -webkit-overflow-scrolling: touch;
    }

    /* 有标题的弹窗内容区要扣掉标题高度（不支持 :has 时退化为占满，不影响可用） */
    .layui-layer.layui-layer-iframe:has(.layui-layer-title) .layui-layer-content {
        height: calc(100% - 34px) !important;
    }

    .layui-layer.layui-layer-iframe .layui-layer-content iframe {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
    }

    /* 例外：滑块验证码弹窗（/login/yanzm，桌面 350×400）本身比手机屏窄，
       不需要占满全屏，给一个中等尺寸居中即可 */
    .layui-layer.layui-layer-iframe:has(iframe[src*="/login/yanzm"]) {
        left: 5vw !important;
        width: 90vw !important;
        max-width: 90vw !important;
        height: 62vh !important;
        max-height: 62vh !important;
        top: 19vh !important;
    }

    /* ==================================================================
      十六、expo/guanzhu.ftl + expo/pengyou.ftl —— 我的关注 / 我的朋友
           桌面：左 212px 竖导航 + 中间瀑布流（width: calc(100% - 494px)
                 + padding-left: 212px）+ 右侧 210px「我的关注 / 互相关注」用户栏
           手机：竖导航 → 横向导航条（见 §8）；
                 ★中间列 calc(100% - 494px) 在手机上是负数，浏览器按 0 截断，
                   整块塌成一条约 12px 宽的竖缝（实测 390px 下卡片只有 12px 宽），
                   这里改成满宽；
                 右侧用户栏从「瀑布流之后的页脚」提到内容上方，
                 改成一行横向可滑动的用户卡（头像 / 昵称 / 状态 / 操作），
                 中间瀑布流满宽 2 列
       ================================================================== */

    /* 16.1 外壳改纵向 flex：把右侧用户栏排到中间内容之前
            （.guanzhumid / .ftright 都是 float，flex 下按 order 排列，忽略 float）
            只对含 .guanzhumid 的外壳生效，不影响 order / creator 等其它用 .ftright 的页面 */
    .ftbodys:has(.guanzhumid) {
        display: flex;
        flex-direction: column;
    }

    .ftbodys:has(.guanzhumid) > .ftleft {
        order: 1;
    }

    /* 16.2 中间内容区去掉 212px 让位与负数宽度 */
    .guanzhumid {
        width: 100% !important;
        float: none !important;
        padding-left: 0 !important;
        min-height: 0 !important;
        margin-bottom: 0 !important;
        order: 3;
    }

    .guanzhumidin {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
    }

    .guanzhumidin .ftcommentbody {
        min-height: 0 !important;
    }

    /* 16.3 右侧「我的关注 / 互相关注」用户栏 → 内容上方一行横向滑动用户卡 */
    .guanzhumid ~ .ftright {
        float: none !important;
        order: 2;
        width: auto !important;
        min-height: 0 !important;
        margin: 0 12px 12px !important;
        padding: 10px 0 12px !important;
        overflow: visible !important;
        background-color: #F9F9F9 !important;
        border-radius: 12px;
    }

    /* 一个人都没关注 / 互相关注时整块不渲染，避免只剩一个标题的空灰卡
       （不支持 :has 的浏览器整条规则被丢弃，退化为原来的「只显示标题」） */
    .guanzhumid ~ .ftright:not(:has(.guanzhuli li)) {
        display: none !important;
    }

    .guanzhumid ~ .ftright .ftrightin {
        position: static !important;
        width: auto !important;
        padding: 0 !important;
    }

    .guanzhumid ~ .ftright .ftguanzhulist {
        position: static !important;
        width: 100% !important;
        height: auto !important;
    }

    .guanzhumid ~ .ftright .ftguanzhulistin,
    .guanzhumid ~ .ftright .ftguanzhulistin:hover {
        height: auto !important;
        overflow: visible !important;
    }

    .guanzhumid ~ .ftright .ftguanzhutitle {
        height: auto !important;
        line-height: 22px !important;
        font-size: 15px !important;
        margin-bottom: 10px !important;
        padding: 0 12px;
    }

    .guanzhumid ~ .ftright .guanzhuli {
        display: flex;
        align-items: flex-start;
        gap: 12px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        padding: 0 12px 6px;
        scrollbar-width: none;
    }

    .guanzhumid ~ .ftright .guanzhuli::-webkit-scrollbar {
        display: none;
    }

    .guanzhumid ~ .ftright .guanzhuli li {
        flex: 0 0 auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 76px !important;
        height: auto !important;
        margin: 0 !important;
    }

    .guanzhumid ~ .ftright .guanzhuimg {
        width: 48px !important;
        height: 48px !important;
        margin: 0 0 6px !important;
    }

    .guanzhumid ~ .ftright .guanzhuimg img {
        width: 48px !important;
        height: 48px !important;
    }

    .guanzhumid ~ .ftright .guanzhuzhongjian {
        width: 100% !important;
        text-align: center;
    }

    .guanzhumid ~ .ftright .guanzhuname {
        height: auto !important;
        line-height: 17px !important;
        margin-bottom: 3px !important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .guanzhumid ~ .ftright .guanzhutips {
        width: 100% !important;
        height: 16px !important;
        line-height: 16px !important;
        margin: 0 0 4px !important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    /* 关注页的「已关注 / 互相关注」按钮、朋友页的「发私信」按钮 */
    .guanzhumid ~ .ftright .guanzhubtn,
    .guanzhumid ~ .ftright .sendmessagebtn {
        width: 64px !important;
        height: 22px !important;
        line-height: 20px !important;
    }

    /* ==================================================================
      十七、expo/plan.ftl —— 我的计划
           桌面：<html class="jihuahtml">，左 196px 白色竖导航 +
                 .ftcomment{margin-left:228px} 让位，标题 88px 高、正文 padding 16px 32px；
                 卡片内「157×205 缩略图 + 500px 定宽文字栏 + 右上角绝对定位评分块」
           手机：① .jihuahtml .ftcomment 的 margin-left:228px 把正文整块推出屏外
                   （实测 390px 下 .ftcomment x=228 / right=618，卡片被裁掉一半）；
                 ② 卡片内 500px 定宽文字栏 + 绝对定位评分块也放不下（实测文字栏
                   被撑到 355px、right=685，评分块压在图上）；
                 这里改成满宽单列 + 小图文卡：88×115 缩略图 + 自适应文字栏，
                 评分块从「右上角绝对定位」改成卡片底部一条（0.0 + 星级 + 共 N 评价）
       ================================================================== */

    /* 17.1 去掉 228px 让位（竖导航已改成横向导航条，见 §8） */
    .jihuahtml .ftcomment {
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-top: 12px !important;
        padding-left: 0 !important;
    }

    /* 17.2 标题：桌面 88px 高 / 左内边距 32px → 手机 56px / 12px */
    .jihuatitle {
        height: 56px !important;
        line-height: 56px !important;
        padding-left: 12px !important;
        font-size: 18px !important;
        box-sizing: border-box;
    }

    /* 17.3 正文：桌面 padding 16px 32px → 手机 12px */
    .jihuabody {
        padding: 0 12px 24px !important;
        box-sizing: border-box;
    }

    /* 17.4 工具条（全选 / 您已选择 N 个计划 / 生成计划表 / 共 N 个计划）：
            桌面单行 + 「共N个计划」绝对定位在右上角；手机 360px 放不下，
            上一行「全选 + 生成计划表」，下一行「您已选择 N 个 + 共 N 个」，
            「共N个计划」改成 static（桌面 right:24px 会压到「生成计划表」按钮上） */
    .ftcommenttop3 {
        height: auto !important;
        min-height: 0 !important;
        padding: 12px !important;
        box-sizing: border-box;
        display: grid !important;
        grid-template-columns: auto auto 1fr auto;
        align-items: center;
        column-gap: 8px;
        row-gap: 10px;
    }

    .ftcommenttop3 > span:nth-child(1) {
        grid-area: 1 / 1 / 2 / 2;
    }

    .ftcommenttop3 > span:nth-child(2) {
        width: auto !important;
        grid-area: 1 / 2 / 2 / 3;
        margin-right: 0 !important;
    }

    .ftcommenttop3 > span:nth-child(3) {
        width: auto !important;
        height: auto !important;
        grid-area: 2 / 1 / 3 / 3;
        margin-right: 0 !important;
    }

    #btndaochuplan {
        width: auto !important;
        padding: 0 14px !important;
        grid-area: 1 / 3 / 2 / 5;
        justify-self: end;
    }

    .ftcommenttop3 > span:nth-child(5) {
        width: auto !important;
        height: auto !important;
        position: static !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        grid-area: 2 / 3 / 3 / 5;
        justify-self: end;
    }

    /* 17.5 分组卡（一个用户一张卡） */
    .planitem {
        padding: 12px !important;
        border-radius: 10px !important;
        box-sizing: border-box;
    }

    .planitemtop {
        height: auto !important;
        min-height: 32px;
        padding-bottom: 12px !important;
        margin-bottom: 12px !important;
        box-sizing: border-box;
    }

    .planitemtop .checkboxdiv {
        margin-right: 10px;
    }

    .planitemtop .userimgbox {
        display: flex;
        margin-right: 10px;
    }

    .planitemtop .userinfobox {
        flex: 1 1 auto;
        min-width: 0;
    }

    .planitemtop .userinfobox span {
        height: auto !important;
        line-height: 18px !important;
        font-size: 14px !important;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .planitemtop .plandel {
        top: 0 !important;
        height: auto !important;
        line-height: 18px !important;
    }

    /* 17.6 展会条目：桌面 205px 高定高 + 157×205 缩略图 + 500px 定宽文字栏 */
    .planchild {
        height: auto !important;
        min-height: 0 !important;
        flex-wrap: wrap;
        align-items: flex-start;
        margin-bottom: 12px !important;
    }

    .planchild .checkboxdiv {
        flex: 0 0 auto;
        margin-right: 10px;
        padding-top: 2px;
    }

    .planchild .myplanimg {
        flex: 0 0 auto;
        width: 88px !important;
        height: 115px !important;
        margin-right: 10px !important;
        border-radius: 8px;
    }

    .planchild .myplanimg img {
        width: 88px !important;
        height: 115px !important;
        object-fit: cover;
        border-radius: 8px;
        /* imgauto() 会给 .liimgheight/.liimgwidth 的图片写内联 left/top 居中偏移
           （按桌面 157×205 的盒子算的），桌面靠它做「等比铺满 + 居中裁切」；
           手机上盒子变成 88×115、图片又被定成 88×115，那个旧偏移会把图片推出盒子
           （实测自然 900×450 的图 left:-71px，只露出 17px 一条，视觉上像被压扁）。
           这里把偏移清零，裁切交给 object-fit:cover 居中完成，结果与桌面构图一致 */
        left: 0 !important;
        top: 0 !important;
    }

    .planchild .planbodyitem {
        /* flex-basis 给 0：桌面 width:500px 会让文字栏按 max-content 撑成 355px 换行 */
        flex: 1 1 0%;
        width: auto !important;
        min-width: 0;
        margin-right: 0 !important;
    }

    .plantitle {
        height: auto !important;
        line-height: 20px !important;
        font-size: 15px !important;
        margin-bottom: 6px !important;
        overflow-wrap: break-word;
        word-break: break-word;
    }

    .planshowtime {
        height: auto !important;
        line-height: 16px !important;
        font-size: 12px !important;
        margin-bottom: 8px !important;
    }

    .planchild .creatortips {
        flex-wrap: wrap;
        row-gap: 6px;
    }

    .planchild .creatortips li {
        width: auto !important;
        height: auto !important;
        margin-right: 14px !important;
        border-right: none !important;
    }

    .planchild .creatortips li:last-child {
        margin-right: 0 !important;
    }

    .planchild .creatortips li span:first-child {
        height: auto !important;
        line-height: 14px !important;
        font-size: 11px !important;
        margin-bottom: 4px !important;
    }

    .planchild .creatortips li span:last-child {
        height: auto !important;
        line-height: 18px !important;
        font-size: 14px !important;
    }

    /* 17.7 评分块：桌面绝对定位在卡片右上（right:24px / top:24px）→ 手机改卡片底部一条 */
    .planchild .planbodyright {
        position: static !important;
        flex: 1 1 100%;
        width: 100% !important;
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        margin-top: 12px;
        padding-top: 10px;
        border-top: 1px solid rgba(100, 111, 126, 0.1);
        box-sizing: border-box;
    }

    .planchild .planbodyright span:nth-child(1) {
        height: auto !important;
        line-height: 1 !important;
        font-size: 30px !important;
        margin-bottom: 0 !important;
        margin-right: 8px !important;
    }

    .planchild .planbodyright span:nth-child(2) {
        margin-bottom: 0 !important;
    }

    .planchild .planbodyright span:nth-child(3) {
        height: auto !important;
        line-height: 15px !important;
        margin-left: auto;
    }
}

/* ==================================================================
  十八、chat/*.ftl —— 私信列表 / 单聊 / 群聊（/chat/index 及同模块页面）
        桌面：.screen 1440px 定宽居中，三个视图全靠绝对定位摆放——
              私信列表 left:403px + width:625px；聊天区 left:310px +
              .chat-container width:820px、高 calc(100vh - 24px)，
              聊天区左侧还有 94px 宽 + 左右各 23px 内边距的会话头像条
        手机：① 三个视图改成 .screen 内 inset:0 的满幅层，不再整块跑到
                 屏幕外（私信列表原本从 x=403 起算，手机上完全看不到）；
              ② 顶部导航条以下的剩余高度整块给 .screen，聊天区固定一屏：
                 消息区滚动、底部输入条常驻（原先输入条被顶到屏幕下方）；
              ③ 头像条 140px → 72px，气泡 468px 定宽改按可用宽度算；
              ④ 「更多选项」弹窗从输入条下方（屏幕外）改到输入条上方；
              ⑤ 「发起群聊 / 创建话题」弹窗 544px / 520px 定宽改满宽。
        注：chat.css 在本文件之后加载（模板里先 wap-mobile.css 后 chat.css），
            且它的 ≤768 断点已给 #message-list-content 等写过
            width:100%!important，所以这里统一带 .screen 前缀提高优先级。
            三个视图的 display 由 JS 内联控制（none/block，弹窗类页面靠它
            切换），所以这里一律不动 display，只用绝对定位 + inset 摆放，
            避免 !important 把内联的 none 顶掉导致视图藏不住。
       ================================================================== */

@media screen and (max-width: 1024px) {

    /* 18.1 私信页外壳：.ftbodys 纵向 flex，导航条以下的剩余高度全给 .screen
           ★必须同时给 .ftbodys 补 box-sizing:border-box：§8 给 .ftbodys 加了
             padding-top:56px（固定顶部导航的让位），而它的 height:100% 是
             content-box，内容区会一直伸到屏幕下方 56px 处，底部输入条正好被切掉 */
    .ftbodys:has(> .screen > #message-list-content) {
        display: flex;
        flex-direction: column;
        height: 100% !important;
        box-sizing: border-box;
    }

    .ftbodys:has(> .screen > #message-list-content) > .ftleft {
        flex: 0 0 auto;
    }

    .ftbodys:has(> .screen > #message-list-content) > .screen {
        flex: 1 1 auto;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        position: relative;
        overflow: hidden !important;
    }

    /* 18.2 私信列表：left:403px / width:625px → .screen 内满幅；
           标题行不吸顶，整块列表一起滚（避免再写死一行的高度） */
    .screen #message-list-content {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: auto !important;
        padding: 12px 10px 16px !important;
        box-sizing: border-box;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch;
    }

    .screen .message-list-container {
        max-height: none !important;
        overflow: visible !important;
        padding-right: 0 !important;
        padding-bottom: 0 !important;
    }

    /* 18.3 单聊 / 群聊：left:310px + .chat-container width:820px → 满幅一屏 */
    .screen #chat-content,
    .screen #group-chat-content {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: auto !important;
    }

    .screen .chat-container {
        width: 100% !important;
        height: 100% !important;
        max-height: none !important;
        box-sizing: border-box;
    }

    /* 「更多选项」展开时不再整体上推聊天区（该弹窗改在输入条上方弹出） */
    .screen #group-chat-content.popup-open .chat-container {
        transform: none;
    }

    /* 18.4 会话头像条：94 + 23 + 23 = 140px → 72px
           （48 头像 + 左 14 让出激活态 68px 底色 + 右 10） */
    .screen .chat-sidebar {
        flex: 0 0 auto;
        width: 72px !important;
        padding: 16px 10px 16px 14px !important;
        gap: 10px;
        max-height: none !important;
        box-sizing: border-box;
    }

    .screen .chat-main {
        min-width: 0;
    }

    /* 18.5 消息区 / 气泡 / 输入条：
           气泡 468px 定宽改按可用宽度算（一行 = 头像 42 + 间距 12 + 气泡） */
    .screen #chat-messages-scroll-container,
    .screen #group-messages-container {
        padding: 16px 12px !important;
        -webkit-overflow-scrolling: touch;
    }

    .screen .chat-msg-bubble {
        max-width: calc(100% - 56px) !important;
        padding: 12px 14px !important;
    }

    .screen .chat-msg-bubble img,
    .screen .chat-msg-text img {
        max-width: 100% !important;
        height: auto !important;
    }

    .screen .chat-image-card,
    .screen .chat-video-card,
    .screen .msg-card,
    .screen .msg-file,
    .screen .msg-group-card,
    .screen .msg-contact-card {
        max-width: 100% !important;
    }

    .screen .chat-read-status {
        padding-right: 12px !important;
    }

    .screen .chat-input-bar {
        padding: 10px 12px !important;
    }

    .screen .chat-input-wrapper {
        padding: 0 10px !important;
    }

    /* 输入框字号 14 → 16：iOS 聚焦时不再自动放大整个页面 */
    .screen #chat-message-input,
    .screen #group-message-input {
        font-size: 16px !important;
    }

    /* 表情 / 图片 / 加号图标点击区 24 → 36（靠内边距撑开，图标本身仍是 24） */
    .screen .chat-input-icon {
        width: 36px !important;
        height: 36px !important;
        padding: 6px;
        box-sizing: border-box;
        flex: 0 0 auto;
    }

    /* 群聊输入条上方的活动标签：可横向滑动，字号收小 */
    .screen .activity-tags {
        padding: 8px 12px !important;
        gap: 8px !important;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .screen .activity-tag {
        flex: 0 0 auto;
    }

    .screen .activity-tag span {
        font-size: 15px !important;
        white-space: nowrap;
    }

    /* 18.6 「更多选项」弹窗：原 absolute top:100% 会掉到输入条下方（屏幕外），
           改贴输入条上方（显隐仍由 JS 的 display + .show 控制） */
    .screen #more-options-popup {
        top: auto !important;
        bottom: 100% !important;
        height: 74px !important;
        padding: 0 12px !important;
        border-top: none;
        border-bottom: 1px solid rgba(100, 111, 126, .1);
    }

    /* 18.7 「发起群聊 / 创建话题」弹窗：544px / 520px 定宽 → 满宽 */
    .screen .modal-dialog {
        /* 同时覆盖「创建话题」弹窗行内写的 width:520px */
        width: calc(100vw - 32px) !important;
        max-width: calc(100vw - 32px) !important;
        max-height: 86vh !important;
    }

    .screen .modal-header,
    .screen .modal-body,
    .screen .modal-footer {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .screen .modal-body {
        padding-top: 16px !important;
        padding-bottom: 16px !important;
    }

    .screen .form-input,
    .screen .form-textarea {
        width: 100% !important;
        box-sizing: border-box;
    }

    /* 「创建话题」上传框 100×100 ×3 + 2×12 间距 = 324，弹窗内宽只有 ~326 → 收到 88 */
    .screen .topic-upload-box {
        width: 88px !important;
        height: 88px !important;
    }

    /* 18.8 同模块其它页（/chat/stranger、/chat/friend、/chat/group-settings、
           /chat/discussion）：容器同样是 left:395px / left:403px 起算的绝对定位，
           手机上整块在屏幕外 → 去掉左右定宽改满宽（这几页仍按整页滚动） */
    .screen #menu-content,
    .screen #activity-discussion-content,
    .screen #group-detail-content,
    .screen .settings-container,
    .screen .friend-container,
    .screen .discussion-wrapper,
    .screen .stranger-list,
    .screen .stranger-header {
        left: 0 !important;
        right: 0 !important;
        width: auto !important;
        box-sizing: border-box;
    }

    /* 陌生人页的返回按钮是 position:fixed left:419px，手机上要挪回左侧 */
    .screen .back-btn {
        left: 12px !important;
    }

    /* 18.9 聊天模块都是「桌面整屏」设计（容器 absolute + top/bottom 铺满 .screen），
           而 chat.css 的 ≤768 断点给 .screen 留了 min-height:100vh——.screen 自己
           已经在顶部导航 56 + §8 横向导航条 42 之后，于是整屏会多出 98px 沉到屏幕
           下方，被 .ftbodys 的 overflow:hidden 切掉（.stranger-list 最后几条就
           滚不上来）。这里直接把 .screen 钉成「视口 - 98px」，
           内部 absolute 容器随之落回可视区，滚动仍交给各自的 overflow-y */
    .ftbodys:has(> .screen) > .screen {
        height: calc(100vh - 98px) !important;
        min-height: 0 !important;
        max-height: none !important;
        width: 100% !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    /* ==================================================================
      十九、个人中心 WAP 精修
            作用页面：templates/user/index.ftl、user/info.ftl、
                      u_zan.ftl、u_shoucang.ftl、u_view.ftl（body.wap-user）
            §6 只做了「桌面定宽 → 手机自适应」，落地后实测 390×844 的问题：
              ① 资料头部 372px：简介不截断，最长一页 9 行 202px；
              ② 作品/喜欢/收藏 tab 行 + 「搜索已加载作品 / 批量管理 / 筛选」
                 各自独占一行，整块 187px，首屏只留 181px 给内容；
              ③ 卡片图片 height:auto → 竖图/横图各撑各的，同一行两列不等高，
                 标题、作者行参差；.newitemname 还是桌面写死的 width:150px，
                 在 149px 的卡片里把点赞图标挤成贴身；
              ④ `.fttxtbody` 浮动没被包住（实测高度 0），且与 `.usercommentin`
                 的内边距叠加 → 卡片整体比头部多缩进 12px。
            本段按手机端阅读习惯重排，PC（>1024px）完全不受影响。
       ================================================================== */

    /* ---- 19.1 资料头部 ---- */

    /* 右下角是 absolute 的「编辑资料 / 发私信 / 关注」，统一在容器底部留 44px */
    .wap-user .usertop2 {
        padding-bottom: 44px !important;
        margin-bottom: 18px !important;
    }

    .wap-user .usertop2 .divleft,
    .wap-user .usertop2 .divleft img {
        width: 68px !important;
        height: 68px !important;
    }

    .wap-user .usertop2 .divright {
        margin-left: 14px !important;
    }

    .wap-user .username {
        font-size: 18px !important;
        font-weight: 600 !important;
        line-height: 24px !important;
        height: auto !important;
        margin-bottom: 4px !important;
    }

    /* 展圈号 / IP属地在窄屏会被折行，改成单行省略 */
    .wap-user .zhanquanhao {
        height: auto !important;
        line-height: 16px !important;
        margin-bottom: 10px !important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .wap-user .zhanquanhao span {
        margin-right: 10px !important;
    }

    .wap-user .guanzhu {
        height: 20px !important;
        line-height: 20px !important;
        margin-bottom: 10px !important;
    }

    .wap-user .guanzhu li {
        height: 20px !important;
        line-height: 20px !important;
        margin-right: 18px !important;
    }

    .wap-user .guanzhu li span:first-child {
        font-size: 12px !important;
        margin-right: 4px !important;
    }

    .wap-user .guanzhu li span:last-child {
        font-size: 15px !important;
    }

    /* 标签：桌面 12px 胶囊，手机保持 12px 但收紧内边距/间距 */
    .wap-user .usertop2 .sextag {
        height: auto !important;
        min-height: 0 !important;
        margin-bottom: 10px !important;
        line-height: 20px !important;
    }

    .wap-user .usertop2 .sextag span {
        height: 20px !important;
        min-height: 20px !important;
        line-height: 20px !important;
        font-size: 12px !important;
        padding: 0 6px !important;
        margin: 0 6px 6px 0 !important;
        vertical-align: top;
    }

    .wap-user .usertop2 .sextag img {
        width: 12px !important;
        height: 12px !important;
        top: 2px !important;
    }

    /* 简介：手机端默认只露 3 行，超出由同一片段里的「展开 / 收起」控制
       （长度不足 3 行时脚本不会显示该按钮，不会留空行） */
    .wap-user .creatremark {
        height: auto !important;
        min-height: 0 !important;
        padding-bottom: 0 !important;
        font-size: 13px !important;
        line-height: 19px !important;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        overflow: hidden;
        word-break: break-word;
    }

    .wap-user .creatremark.creatremark-open {
        -webkit-line-clamp: unset;
        display: block;
        overflow: visible;
    }

    /* 「展开 / 收起」：桌面不渲染，手机端默认隐藏、由脚本按实际行数显示 */
    .creatremark-more {
        display: none;
    }

    .wap-user .creatremark-more {
        display: none;
        margin-top: 2px;
        font-size: 13px;
        line-height: 19px;
        color: #0230EF;
        cursor: pointer;
        user-select: none;
    }

    /* ---- 19.2 一级 tab + 工具行（搜索 / 批量管理 / 筛选）---- */

    /* .usercommentin 已经留了 12px，这里不再叠加，让 tab、卡片和头像左沿对齐 */
    .wap-user .ftcommenttop {
        padding: 0 !important;
        margin-bottom: 10px !important;
    }

    .wap-user .ftcommenttop > div {
        flex-wrap: wrap !important;
        align-items: center !important;
        row-gap: 0 !important;
        margin-bottom: 0 !important;
    }

    .wap-user .ftcommenttop > div > ul {
        flex: 1 1 100% !important;
        margin-bottom: 10px !important;
    }

    .wap-user #listtypeul li {
        margin-right: 22px !important;
        font-size: 15px !important;
    }

    .wap-user #listtypeul li a {
        margin-bottom: 6px !important;
    }

    .wap-user #listtypeul .hr2 {
        width: 18px;
        height: 3px;
    }

    /* 搜索框与「批量管理 / 筛选」同一行：搜索框弹性占满剩余宽度 */
    .wap-user .ftcommenttop > div > div:last-child {
        flex-wrap: wrap !important;
        width: 100% !important;
        gap: 8px !important;
        align-items: center !important;
    }

    .wap-user .user-search-box {
        width: auto !important;
        flex: 1 1 0%;
        min-width: 110px;
        height: 36px !important;
    }

    .wap-user .user-search-box input {
        height: 100% !important;
        padding: 0 34px 0 12px !important;
    }

    .wap-user .user-search-box .search-btn-icon {
        right: 2px;
        width: 30px;
        height: 30px;
    }

    .wap-user .user-action-btn {
        height: 36px !important;
        padding: 0 12px !important;
        font-size: 13px !important;
        border-radius: 8px !important;
        flex: 0 0 auto;
    }

    /* 进入批量管理后才出现的「删除选中的作品」按钮：占满下一行，不挤搜索框 */
    .wap-user .ftcommenttop #deleteBtn {
        flex: 1 1 100% !important;
        order: 9;
        margin-left: 0 !important;
        margin-top: 8px;
        height: 36px !important;
        padding: 0 12px !important;
        font-size: 13px !important;
    }

    /* ---- 19.3 二级 tab（展圈 / 展会 / 展团 / 签证）---- */
    .wap-user .ulusernav2 {
        display: flex !important;
        margin-top: 10px !important;
        gap: 8px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .wap-user .ulusernav2::-webkit-scrollbar {
        display: none;
    }

    .wap-user .ulusernav2 li {
        flex: 0 0 auto;
        width: 56px !important;
        height: 26px !important;
        line-height: 26px !important;
        font-size: 13px !important;
        margin: 0 !important;
        text-align: center;
    }

    /* ---- 19.4 作品 / 喜欢 / 收藏 / 浏览记录 卡片 ---- */

    /* 浮动要包住（原来容器高度 0），内边距交给 .usercommentin 统一给 */
    .wap-user .fttxtbody {
        padding: 0 !important;
        display: flow-root;
    }

    .wap-user .fttxtbody .newitem {
        float: left !important;
        width: calc(50% - 6px) !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 12px 12px 0 !important;
        padding: 0 !important;
        box-sizing: border-box;
        border-radius: 12px;
        background-color: transparent !important;
        overflow: visible;
    }

    .wap-user .fttxtbody .newitem:nth-child(2n) {
        margin-right: 0 !important;
    }

    /* 图片统一 4:3 裁切：padding-bottom 撑比例 + object-fit 居中裁
       （桌面 imgauto() 会写内联 left/top 做居中偏移，这里必须清零） */
    .wap-user .fttxtbody .newitemtop {
        position: relative !important;
        width: 100% !important;
        height: 0 !important;
        padding-bottom: 75% !important;
        margin-bottom: 0 !important;
        overflow: hidden;
        border-radius: 12px;
        background: #F1F3F4;
    }

    .wap-user .fttxtbody .newitemtop a {
        position: absolute !important;
        left: 0 !important;
        top: 0 !important;
        width: 100% !important;
        height: 100% !important;
        display: block !important;
    }

    .wap-user .fttxtbody .newitemtop img {
        position: absolute !important;
        left: 0 !important;
        top: 0 !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        object-fit: cover;
        border-radius: 0 !important;
        display: block;
    }

    /* 卡片下半部分固定高度：标题 2 行 + 作者行，保证两列严格等高 */
    .wap-user .fttxtbody .newitembom {
        height: auto !important;
        padding-top: 8px;
    }

    .wap-user .fttxtbody .newitemtitle {
        width: 100% !important;
        height: 36px !important;
        margin: 0 0 8px !important;
        padding: 0 8px;
        box-sizing: border-box;
        font-size: 13px !important;
        line-height: 18px !important;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
        word-break: break-word;
    }

    .wap-user .fttxtbody .newitemuser {
        height: 24px !important;
        line-height: 24px !important;
        padding: 0 8px 8px;
        box-sizing: border-box;
    }

    .wap-user .fttxtbody .newitemuser img:first-child {
        width: 20px !important;
        height: 20px !important;
        margin-right: 6px !important;
    }

    .wap-user .fttxtbody .newitemname {
        flex: 1 1 auto;
        min-width: 0;
        width: auto !important;
        font-size: 12px !important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        margin-right: 6px;
    }

    .wap-user .fttxtbody .newitemzan {
        position: static !important;
        height: 24px !important;
        line-height: 24px !important;
        font-size: 12px !important;
        flex: 0 0 auto;
        margin-left: auto;
    }

    .wap-user .fttxtbody .newitemzan img {
        width: 14px !important;
        height: 14px !important;
        margin-right: 2px !important;
    }

    .wap-user .fttxtbody .divzhiding {
        right: 6px !important;
        top: 6px !important;
    }

    /* ---- 19.5 展团 / 签证卡片（.groupitem，与作品卡同一套栅格）---- */
    .wap-user .fttxtbody .groupitem {
        position: relative;
        float: left !important;
        width: calc(50% - 6px) !important;
        height: auto !important;
        margin: 0 12px 12px 0 !important;
        border-radius: 12px;
        background: #FFF;
        box-sizing: border-box;
        overflow: hidden;
    }

    .wap-user .fttxtbody .groupitem:nth-child(2n) {
        margin-right: 0 !important;
    }

    .wap-user .fttxtbody .groupitem .groupitemtop {
        position: relative !important;
        width: 100% !important;
        height: 0 !important;
        padding-bottom: 75% !important;
        margin-bottom: 8px !important;
        border-radius: 12px 12px 0 0;
        overflow: hidden;
    }

    .wap-user .fttxtbody .groupitemtop a {
        position: absolute !important;
        left: 0 !important;
        top: 0 !important;
        width: 100% !important;
        height: 100% !important;
        display: block;
    }

    .wap-user .fttxtbody .groupitemtop img {
        position: absolute !important;
        left: 0 !important;
        top: 0 !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        object-fit: cover;
        border-radius: 0 !important;
    }

    .wap-user .fttxtbody .groupitembody {
        height: 36px !important;
        margin: 0 10px 8px !important;
        font-size: 13px !important;
        line-height: 18px !important;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
    }

    .wap-user .fttxtbody .groupitembom {
        height: 24px !important;
        line-height: 24px !important;
        padding: 0 10px 10px;
        box-sizing: content-box;
    }

    /* ---- 19.6 空态 ---- */
    .wap-user .fttxtbody .nolistdata {
        float: none !important;
        clear: both;
        width: 100%;
        text-align: center;
        font-size: 14px;
        color: #646F7E;
    }

    .wap-user .fttxtbody .nolistdata:not(:empty) {
        padding: 64px 0;
    }

    /* ---- 19.7 群聊卡片（user/info.ftl「群聊」tab）---- */
    .wap-user .group-card-item {
        width: calc(50% - 6px) !important;
        margin-right: 12px !important;
        margin-bottom: 12px !important;
    }

    .wap-user .group-card-item:nth-child(2n) {
        margin-right: 0 !important;
    }
}
