/* =========================================================
   新时代商会 PC 主题 - 凤凰网风格
   主色：凤凰红 #C7000B
   适用：sm_mb/pc/smmb_xsdsh/home2 全套模板
   说明：独立主题样式，不依赖旧 Zibll style.css
   ========================================================= */

:root{
    --red:#C7000B;            /* 凤凰红主色 */
    --red-dark:#A00009;       /* 深红 hover */
    --red-light:#FFF1F1;      /* 浅红底 */
    --txt:#222;               /* 主文字 */
    --txt-2:#555;             /* 次要文字 */
    --txt-3:#999;             /* 弱文字 */
    --line:#E6E6E6;           /* 边框 */
    --bg:#F5F5F5;             /* 页面底色 */
    --card:#FFFFFF;           /* 卡片白 */
    --foot:#2B2B2B;           /* 页脚深色 */
}

*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
    font-family:-apple-system,BlinkMacSystemFont,"Microsoft YaHei","PingFang SC","Hiragino Sans GB","Segoe UI",sans-serif;
    font-size:14px;color:var(--txt);background:var(--bg);line-height:1.6;
}
img{max-width:100%;vertical-align:middle;border:0}
a{color:var(--txt);text-decoration:none;transition:color .15s}
a:hover{color:var(--red)}
ul,ol{list-style:none}
h1,h2,h3,h4,h5{font-weight:600;line-height:1.4}
input,button{font-family:inherit;outline:none}
.clearfix:after{content:"";display:block;clear:both}

/* 布局容器（总宽 1400px，2026-08-15 调整） */
.ph-container{width:1400px;margin:0 auto;position:relative}
@media (max-width:1440px){.ph-container{width:auto;margin:0 15px}}

/* ============ 顶部信息条 ============ */
.ph-topbar{
    background:#fff;border-bottom:1px solid var(--line);font-size:12px;color:var(--txt-2);height:34px;line-height:34px;
}
.ph-topbar .ph-container{display:flex;justify-content:space-between;align-items:center;min-height:34px}
.ph-topbar-links a{color:var(--txt-2);margin-right:18px}
.ph-topbar-links a:hover{color:var(--red)}
/* 左侧「联系邮箱」单项（2026-10-10 取代原 4 个导航链接） */
.ph-topbar-mail{color:var(--txt-2)}
.ph-topbar-mail a{margin-right:0}
/* 右侧：未登录「会员登录」/ 已登录「姓名，会员中心 · 退出」（2026-10-10 取代原欢迎语） */
.ph-topbar-user{color:var(--txt-3);flex-shrink:0;margin-left:18px}
.ph-topbar-user a{color:var(--txt-2);margin-left:16px}
.ph-topbar-user a:hover{color:var(--red)}
.ph-topbar-user a:first-child{margin-left:0}
/* 已登录：姓名与逗号紧贴「会员中心」（降低该链接左间距） */
.ph-topbar-uname{color:var(--txt-2)}
.ph-topbar-uname + a{margin-left:6px}

/* ============ 头部 LOGO 区 ============ */
.ph-header{background:#fff;padding:18px 0;border-bottom:1px solid var(--line)}
.ph-header .ph-container{display:flex;align-items:center}
.ph-logo{display:flex;align-items:center;flex-shrink:0}
/* 圆形徽标图（logo.png 685×689，整幅即圆形，边缘几乎铺满）：
   替换原 52×52 红色方印「商」。圆形视觉重量约为同尺寸方形的 78%，
   故取 56px（π·28²≈2463 ≈ 原方形 52²=2704），页头高度 88→92px（无吸顶元素，无连带影响）。 */
.ph-logo .ph-logo-mark{
    width:56px;height:56px;display:block;object-fit:contain;flex-shrink:0;margin-right:12px;
}
.ph-logo .ph-logo-name{display:block;font-size:26px;font-weight:700;color:var(--red);line-height:1.1}
/* 文字块整体下移 5px：用 transform 而非 margin/padding ⇒ 不参与 flex 居中计算、不改变页头高度。
   手机端徽标缩到 44px，断点内按 44/56 等比换成 4px（保持与电脑版相同的视觉比例）。 */
.ph-logo .ph-logo-text{display:block;position:relative;transform:translateY(5px)}
/* 副标题＝域名：与中文「新时代商会」左右两边齐平（左边缘对齐 + 右边墨迹等长）。
   ★ 不变式：副标题墨迹宽 == 5 × .ph-logo-name 的 font-size（CJK 字宽恒 1em，与字体无关）
   反解 www.xsdsh.com（Microsoft YaHei 实测 7.56em 字宽；letter-spacing 会多算末位一个，须扣除）：
     桌面 26px 中文 → 目标 130px ⇒ 16px   + letter-spacing .75px（盒宽 130.69 − .75 = 129.94）
     手机 20px 中文 → 目标 100px ⇒ 12.3px + letter-spacing .58px（盒宽 100.52 − .58 =  99.94，见断点内）
   中文部分不受字体影响；拉丁部分换字体偏差 ≤1px。 */
.ph-logo .ph-logo-sub{display:block;font-size:16px;color:var(--txt-3);letter-spacing:.75px}
.ph-header-right{margin-left:auto;display:flex;align-items:center}
.ph-search{position:relative;display:flex}
.ph-search input{
    width:280px;height:38px;border:2px solid var(--red);border-right:0;border-radius:4px 0 0 4px;
    padding:0 14px;font-size:13px;color:var(--txt);
}
.ph-search button{
    width:56px;height:38px;background:var(--red);border:0;border-radius:0 4px 4px 0;cursor:pointer;
    color:#fff;font-size:16px;
}
.ph-search button:hover{background:var(--red-dark)}
.ph-header-btn{
    margin-left:14px;height:38px;line-height:38px;padding:0 20px;background:var(--red);color:#fff;
    border-radius:4px;font-size:14px;white-space:nowrap;
}
.ph-header-btn:hover{background:var(--red-dark);color:#fff}

/* ============ 主导航（红底） ============ */
.ph-nav{background:var(--red)}
.ph-nav .ph-container{display:flex}
.ph-nav .ph-nav-main{display:flex;flex:1}
.ph-nav a.ph-nav-item{
    color:#fff;display:block;padding:0 26px;height:48px;line-height:48px;font-size:16px;position:relative;
}
.ph-nav a.ph-nav-item:hover{background:var(--red-dark);color:#fff}
.ph-nav a.ph-nav-item.on{background:var(--red-dark);font-weight:600}
.ph-nav a.ph-nav-item.on:after{
    content:"";position:absolute;left:50%;bottom:0;margin-left:-9px;border:9px solid transparent;border-bottom:9px solid #fff;
}
/* 下拉菜单 */
.ph-nav-item-wrap{position:relative}
.ph-nav-drop{
    display:none;position:absolute;left:0;top:48px;background:#fff;box-shadow:0 6px 18px rgba(0,0,0,.15);
    min-width:170px;z-index:99;border-top:3px solid var(--red);
}
.ph-nav-item-wrap:hover .ph-nav-drop{display:block}
.ph-nav-drop a{display:block;padding:10px 18px;font-size:13px;color:var(--txt-2);border-bottom:1px solid #f2f2f2}
.ph-nav-drop a:hover{color:var(--red);background:var(--red-light)}

/* ===== 商协会宽幅下拉（一行 6 家，宽 960px） ===== */
.ph-nav-drop-chambers{
    width:960px;padding:14px 16px;
}
.ph-chambers-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px 10px}
.ph-nav-drop-chambers .ph-chambers-item{
    display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:4px;
    color:var(--txt);font-size:13px;background:#fafafa;border:1px solid #f0f0f0;
}
.ph-nav-drop-chambers .ph-chambers-item:hover{
    color:var(--red);background:var(--red-light);border-color:var(--red);
}
/* 图标改用后台「单Logo」(sm_chamber.single_logo)：可能是非正方形单标图，
   原 object-fit:cover 会裁掉边缘 ⇒ 改 contain 完整显示（2026-10-10） */
.ph-chambers-item img{width:28px;height:28px;object-fit:contain;border-radius:3px;flex-shrink:0;background:#fff}
.ph-chambers-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ph-chambers-empty{padding:20px 0;text-align:center;color:#999;font-size:13px}
.ph-nav-drop-chambers .ph-chambers-more{
    display:block;margin-top:12px;padding:10px 0 0;border-top:1px dashed #e5e5e5;border-bottom:0;
    text-align:center;color:var(--red);font-size:13px;
}
.ph-nav-drop-chambers .ph-chambers-more:hover{background:none;text-decoration:underline}

/* ===== 出海资讯宽幅下拉（1 行 4 列，显示子栏目） ===== */
.ph-nav-drop-cats4{
    width:580px;padding:14px 16px;
}
.ph-cats4-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.ph-nav-drop-cats4 .ph-cats4-item{
    display:block;text-align:center;padding:9px 6px;border-radius:4px;
    background:#fafafa;border:1px solid #f0f0f0;color:var(--txt);font-size:13px;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.ph-nav-drop-cats4 .ph-cats4-item:hover{color:var(--red);background:var(--red-light);border-color:var(--red)}

/* ============ 面包屑 ============ */
.ph-crumb{background:#fff;border-bottom:1px solid var(--line);font-size:12px;color:var(--txt-3);height:34px;line-height:34px}
.ph-crumb a{color:var(--txt-3)}
.ph-crumb a:hover{color:var(--red)}
.ph-crumb .ph-crumb-cur{color:var(--red)}

/* ============ 页面主体 ============ */
.ph-main{padding:18px 0 40px}
.ph-main .ph-container{display:flex;flex-wrap:wrap;align-items:flex-start;gap:18px}
.ph-main .ph-container > .ph-col,
.ph-main .ph-container > .ph-banner,
.ph-main .ph-container > .ph-focus{flex:0 0 100%;max-width:100%;box-sizing:border-box}
.ph-col-main{flex:1;min-width:0}
.ph-col-side{width:320px;flex-shrink:0}
@media (max-width:992px){
    .ph-main .ph-container{flex-direction:column}
    .ph-col-side{width:100%}
}

/* ============ 头条区（凤凰网三列格局：左大图轮播+小图矩阵+热点 / 中要闻大字标题+文字列表 / 右视频卡片+排行） ============ */
.ph-focus{background:#fff;border:1px solid var(--line);border-top:3px solid var(--red);padding:18px;margin-bottom:18px}
.ph-focus .ph-container{display:grid;grid-template-columns:520px 440px minmax(0,1fr);gap:22px;align-items:flex-start;margin:0}
.ph-focus-left,.ph-focus-mid,.ph-focus-right{width:auto;min-width:0}
/* 三列（1400 容器内：520+440+360 + gap44 + padding36 = 1400） */
.ph-focus-left{width:520px;flex-shrink:0}
.ph-focus-mid{width:440px;flex-shrink:0}
.ph-focus-right{width:360px;flex-shrink:0}
@media (max-width:992px){
    .ph-focus .ph-container{grid-template-columns:1fr}
    .ph-focus-left,.ph-focus-mid,.ph-focus-right{width:100%}
}

/* 大图轮播 */
.ph-slider{position:relative;overflow:hidden;border-radius:4px}
.ph-slider .ph-slide{display:none;position:relative}
.ph-slider .ph-slide.on{display:block}
.ph-slider .ph-slide img{width:520px;height:auto;aspect-ratio:4/3;object-fit:cover;display:block}
.ph-slider .ph-slide-cap{
    position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,rgba(0,0,0,.75));
    color:#fff;padding:30px 14px 10px;font-size:15px;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
/* 左右翻页箭头（凤凰网风格） */
.ph-slider-arrow{
    position:absolute;top:50%;transform:translateY(-50%);width:36px;height:46px;line-height:46px;text-align:center;
    background:rgba(0,0,0,.45);color:#fff;font-size:22px;cursor:pointer;user-select:none;display:none;
}
.ph-slider:hover .ph-slider-arrow{display:block}
.ph-slider-arrow.prev{left:0}
.ph-slider-arrow.next{right:0}
.ph-slider-arrow:hover{background:rgba(199,0,11,.85)}
.ph-slider-dots{position:absolute;right:12px;bottom:10px;display:flex;gap:6px;z-index:2}
.ph-slider-dots span{width:22px;height:4px;background:rgba(255,255,255,.5);cursor:pointer;border-radius:2px}
.ph-slider-dots span.on{background:var(--red)}

/* 左列小图矩阵（轮播下方 4 张，4:3 与幻灯片比例一致） */
.ph-mini-grid{display:flex;gap:10px;margin-top:14px}
.ph-mini-grid .ph-mini{flex:1;min-width:0;position:relative;border-radius:3px;overflow:hidden;display:block}
.ph-mini-grid .ph-mini img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .3s}
.ph-mini-grid .ph-mini:hover img{transform:scale(1.05)}
.ph-mini-grid .ph-mini-cap{
    position:absolute;left:0;right:0;bottom:0;background:rgba(0,0,0,.55);color:#fff;font-size:12px;
    padding:12px 5px 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}

/* 「热点·资讯」标题（凤凰网红色下划线式） */
.ph-section-title{
    display:flex;align-items:baseline;border-bottom:2px solid var(--red);padding-bottom:8px;margin:18px 0 10px;
}
.ph-section-title h2{font-size:18px;color:var(--red);font-weight:700}
.ph-section-title .ph-section-tag{font-size:13px;color:var(--txt-2);margin-left:6px;font-weight:400}
.ph-section-title .ph-section-more{margin-left:auto;font-size:12px;color:var(--txt-3);font-weight:400}
.ph-section-title .ph-section-more:hover{color:var(--red)}

/* 左列文字新闻列表（段落式，每条独占一行） */
.ph-news-list p{margin:0;padding:7px 0;line-height:1.7;font-size:14px;border-bottom:1px dashed #EDEDED}
/* 中列要闻列表：行距收紧（20 条时更紧凑） */
.ph-focus-mid .ph-news-list p{padding:5px 0;line-height:1.7}
.ph-news-list p:last-child{border-bottom:0}
.ph-news-list p a{color:var(--txt)}
.ph-news-list p a:hover{color:var(--red)}
.ph-news-list p.hot a{font-weight:600;font-size:15px}
/* 左列「热点·资讯」：标题严格一行、完整显示 35 字（520px 宽 ÷ 14px 汉字 ≈ 37 字，35 字 = 490px 不触省略号） */
.ph-focus-left .ph-news-list p a{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
/* 首条 hot 默认 15px：35 字 × 15px = 525px > 520px 会折行，左列统一压回 14px（保留加粗强调） */
.ph-focus-left .ph-news-list p.hot a{font-size:14px}
/* 左列「热点·资讯」行距：line-height 22px、padding 3px；条目间距 = 3+22+3+1 = 29px；11 条总高 ≈319px（左列 ≈877 < 右列 899.3 ⇒ 头条区零变化） */
.ph-focus-left .ph-news-list p{padding:3px 0;line-height:22px}
.ph-news-list .ph-news-from{color:var(--txt-3);font-size:12px;margin-left:8px}

/* 中列要闻大字标题 */
.ph-headline{margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid #F0F0F0}
.ph-headline h3{margin:0 0 10px;font-size:22px;line-height:1.4}
.ph-headline h3 a{color:var(--txt)}
.ph-headline h3 a:hover{color:var(--red)}
.ph-headline .ph-headline-sub{display:flex;flex-wrap:wrap;gap:0 16px;font-size:13px;color:var(--txt-2)}
.ph-headline .ph-headline-sub a{color:var(--txt-2)}
.ph-headline .ph-headline-sub a:hover{color:var(--red)}
.ph-headline .ph-headline-sub a:before{content:"· ";color:var(--red)}

/* 右列视频卡片 */
.ph-video-card{position:relative;display:block;border-radius:4px;overflow:hidden;margin-bottom:10px}
.ph-video-card img{width:100%;height:170px;object-fit:cover;display:block;transition:transform .3s}
.ph-video-card:hover img{transform:scale(1.05)}
.ph-video-card .ph-video-cap{
    position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,rgba(0,0,0,.75));
    color:#fff;font-size:13px;padding:24px 10px 8px;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.ph-video-card .ph-play{
    position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
    width:48px;height:48px;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;
    display:flex;align-items:center;justify-content:center;font-size:20px;
    border:2px solid rgba(255,255,255,.85);
}

/* 紧凑排行（带 123 红色序号） */
.ph-rank li{display:flex;align-items:center;padding:7px 0;border-bottom:1px dashed #F0F0F0;font-size:13px}
.ph-rank li:last-child{border-bottom:0}
.ph-rank .ph-rank-num{
    width:18px;height:18px;line-height:18px;text-align:center;background:#F0F0F0;color:#888;
    font-size:11px;font-weight:700;border-radius:3px;margin-right:8px;flex-shrink:0;font-style:normal;
}
.ph-rank li:nth-child(1) .ph-rank-num,
.ph-rank li:nth-child(2) .ph-rank-num,
.ph-rank li:nth-child(3) .ph-rank-num{background:var(--red);color:#fff}
/* 右列「热门·排行 TOP10」行距：line-height 19.5px（原始为继承值 20.8px = 13px×1.6）、padding 7px；
   条目间距 = 7+19.5+7+1 = 34.5px；10 条总高 = 34.5×10−1 = 344px（右列 ≈886，仅比中列 884.6 高 1.7px —— 逼近临界） */
.ph-rank li a{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--txt);line-height:19.5px}
.ph-rank li a:hover{color:var(--red)}

/* ===== 首页右列商协会网格（1 行 2 个，带编号，无 logo） ===== */
.ph-sm-rec-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.ph-sm-rec-item{
    display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:4px;
    background:#fafafa;border:1px solid #f0f0f0;color:var(--txt);font-size:13px;
    overflow:hidden;text-decoration:none;
}
.ph-sm-rec-item:hover{color:var(--red);background:var(--red-light);border-color:var(--red)}
.ph-sm-rec-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ph-sm-rec-num{
    width:18px;height:18px;line-height:18px;text-align:center;background:#F0F0F0;color:#888;
    font-size:11px;font-weight:700;border-radius:3px;flex-shrink:0;font-style:normal;
}
.ph-sm-rec-num.hot{background:var(--red);color:#fff}

/* ===== 首页底部「入驻组织」图标墙（只显示后台设置了「单Logo」的商协会，2026-10-10） ===== */
/* 首页 .ph-main .ph-container 是 flex 换行容器（138 行）⇒ 直接子项须显式占满一整行 */
.ph-main .ph-container > .ph-enterprise{flex:0 0 100%;max-width:100%;box-sizing:border-box}
.ph-enterprise{
    background:#fff;border:1px solid var(--line);border-top:3px solid var(--red);
    padding:14px 18px;margin-bottom:18px;
}
.ph-enterprise-head{
    display:flex;align-items:center;justify-content:space-between;
    border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:14px;
}
.ph-enterprise-head h2{font-size:18px;color:var(--red);font-weight:700;line-height:1}
.ph-enterprise-head h2:before{
    content:"";display:inline-block;width:4px;height:16px;background:var(--red);margin-right:8px;vertical-align:-2px;
}
.ph-enterprise-more{font-size:13px;color:var(--txt-2);flex-shrink:0;margin-left:18px}
.ph-enterprise-more:hover{color:var(--red)}
.ph-enterprise-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:10px}
/* ★ 2026-10-10：单Logo 统一按 1000×1000（1:1 方图）展示 —— 每格做成正方形，
   宽度由栅格决定、高度用 aspect-ratio 跟随，图片 object-fit:contain 不裁不拉伸。 */
.ph-enterprise-item{
    display:flex;align-items:center;justify-content:center;padding:8px;
    aspect-ratio:1/1;
    background:#fff;border:1px solid #F0F0F0;border-radius:4px;overflow:hidden;
    transition:border-color .15s,box-shadow .15s;
}
.ph-enterprise-item:hover{border-color:var(--red);box-shadow:0 2px 8px rgba(199,0,11,.12)}
.ph-enterprise-item img{width:100%;height:100%;object-fit:contain;display:block}
@media (max-width:992px){
    .ph-enterprise-grid{grid-template-columns:repeat(4,1fr);gap:8px}
    .ph-enterprise-item{padding:6px}
}

/* 兼容旧类名（沿用旧 css 选择器） */
.ph-focus-head{
    display:flex;align-items:center;border-bottom:2px solid var(--red);padding-bottom:10px;margin-bottom:14px;
}
.ph-focus-head h2{font-size:19px;color:var(--red);position:relative;padding-left:12px}
.ph-focus-head h2:before{content:"";position:absolute;left:0;top:3px;bottom:3px;width:4px;background:var(--red)}
.ph-focus-list li{
    padding:9px 0;border-bottom:1px dashed #EDEDED;display:flex;align-items:baseline;font-size:14px;
}
.ph-focus-list li:last-child{border-bottom:0}
.ph-focus-list .ph-idx{
    color:var(--red);font-weight:700;font-style:normal;margin-right:10px;font-size:15px;flex-shrink:0;width:20px;
}
.ph-focus-list li:first-child .ph-idx,.ph-focus-list li:nth-child(2) .ph-idx{color:var(--red);font-size:19px}
.ph-focus-list li a{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ph-focus-list li.hot a{font-weight:600;font-size:16px;color:var(--txt)}
.ph-focus-list li.hot a:hover{color:var(--red)}
.ph-focus-list .ph-date{color:var(--txt-3);font-size:12px;margin-left:10px;flex-shrink:0}
.ph-focus-tag{
    display:inline-block;background:var(--red);color:#fff;font-size:11px;padding:1px 6px;border-radius:2px;margin-right:8px;
    flex-shrink:0;line-height:1.6;
}

/* ============ 栏目块 ============ */
.ph-col{background:#fff;border:1px solid var(--line);margin-bottom:18px}
.ph-col-head{
    display:flex;align-items:center;justify-content:space-between;
    border-bottom:1px solid var(--line);padding:12px 16px;background:linear-gradient(#fff,#fafafa);
}
.ph-col-head h3{font-size:17px;color:var(--txt);position:relative;padding-left:12px}
.ph-col-head h3:before{content:"";position:absolute;left:0;top:3px;bottom:3px;width:4px;background:var(--red)}
.ph-col-head h3 em{font-style:normal;color:var(--txt-3);font-size:12px;font-weight:400;margin-left:8px}
.ph-col-more{font-size:12px;color:var(--txt-3)}
.ph-col-more:hover{color:var(--red)}
.ph-col-body{padding:16px}

/* 双栏：左图列表 + 右列表 */
.ph-duo{display:flex;gap:22px}
.ph-duo .ph-duo-left{width:280px;flex-shrink:0}
.ph-duo .ph-duo-right{flex:1;min-width:0}
.ph-duo-pic{position:relative;border-radius:4px;overflow:hidden;display:block}
.ph-duo-pic img{width:280px;height:170px;object-fit:cover;display:block;transition:transform .3s}
.ph-duo-pic:hover img{transform:scale(1.05)}
.ph-duo-pic .ph-duo-cap{
    position:absolute;left:0;right:0;bottom:0;background:rgba(0,0,0,.55);color:#fff;font-size:13px;
    padding:18px 10px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.ph-text-list li{
    padding:9px 0;border-bottom:1px dashed #EDEDED;display:flex;align-items:baseline;font-size:14px;
}
.ph-text-list li:last-child{border-bottom:0}
.ph-text-list li:before{
    content:"";width:4px;height:4px;background:var(--red);border-radius:50%;margin-right:10px;flex-shrink:0;transform:translateY(-2px);
}
.ph-text-list li a{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ph-text-list li a:hover{color:var(--red)}
.ph-text-list .ph-date{color:var(--txt-3);font-size:12px;flex-shrink:0;margin-left:10px}
.ph-text-list li.hot:before{width:16px;height:16px;background:var(--red);border-radius:3px;color:#fff;font-size:11px;display:flex;align-items:center;justify-content:center;transform:none;margin-right:8px}

/* 创新创业：一级栏目卡片内嵌 4 个二级栏目列（每列各 10 条） */
.ph-cx-grid{display:flex;gap:20px}
.ph-cx-item{flex:1;min-width:0}
.ph-cx-item h4{
    font-size:14px;color:var(--txt);font-weight:700;position:relative;
    padding:0 0 8px 11px;margin-bottom:2px;border-bottom:1px solid var(--line);
}
.ph-cx-item h4:before{content:"";position:absolute;left:0;top:2px;width:3px;height:13px;background:var(--red);border-radius:2px}
.ph-cx-grid .ph-text-list li{padding:7px 0;font-size:13px}
.ph-cx-grid .ph-text-list li:before{margin-right:8px}
.ph-cx-grid .ph-text-list .ph-date{margin-left:8px}

/* 首页栏目块：顶级栏目的下级栏目分列网格（列数 c3~c6 自适应，越窄字号越小） */
.ph-cx-grid.c3,.ph-cx-grid.c4,.ph-cx-grid.c5,.ph-cx-grid.c6{flex-wrap:wrap}
.ph-cx-grid.c3{gap:20px}
.ph-cx-grid.c3 .ph-cx-item{flex:0 0 calc(33.3333% - 13.34px);max-width:calc(33.3333% - 13.34px)}
.ph-cx-grid.c4{gap:20px}
.ph-cx-grid.c4 .ph-cx-item{flex:0 0 calc(25% - 15px);max-width:calc(25% - 15px)}
.ph-cx-grid.c5{gap:16px}
.ph-cx-grid.c5 .ph-cx-item{flex:0 0 calc(20% - 12.8px);max-width:calc(20% - 12.8px)}
.ph-cx-grid.c6{gap:16px}
.ph-cx-grid.c6 .ph-cx-item{flex:0 0 calc(16.6667% - 13.34px);max-width:calc(16.6667% - 13.34px)}
.ph-cx-grid.c5 .ph-text-list li,.ph-cx-grid.c6 .ph-text-list li{font-size:12.5px}
.ph-cx-grid.c5 .ph-text-list li a,.ph-cx-grid.c6 .ph-text-list li a{max-width:100%}
/* 二级栏目下的三级栏目标签（仅「企业服务」这类栏目命中） */
.ph-cx-item .ph-subtags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 7px}
.ph-cx-item .ph-subtags a{
    font-size:12px;line-height:18px;padding:1px 7px;border-radius:2px;
    background:#F2F3F5;color:var(--txt-2);white-space:nowrap;
}
.ph-cx-item .ph-subtags a:hover{background:var(--red);color:#fff}
.ph-cx-item h4 a{color:inherit}
.ph-cx-item h4 a:hover{color:var(--red)}
.ph-cx-item .ph-cx-none{font-size:12px;color:var(--txt-3);padding:10px 0 14px;text-align:center}
.ph-text-list li.ph-cx-none{border-bottom:0;color:var(--txt-3);font-size:12px;padding:10px 0}
.ph-text-list li.ph-cx-none:before{display:none}

/* ============ 栏目页（category.html / list.html，凤凰网式版式） ============ */
/* 通栏子元素：栏目头 / 焦点区 / 下级栏目网格 需占满容器整行 */
.ph-main .ph-container > .ph-catfocus,
.ph-main .ph-container > .ph-catgrid{flex:0 0 100%;max-width:100%;box-sizing:border-box}

/* 栏目头（白底通栏条，替代原 ph-groupinfo） */
.ph-cathead{background:#fff;border-bottom:1px solid var(--line);padding:16px 0 0}
.ph-cathead-bar{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.ph-cathead-bar h1{font-size:22px;color:var(--txt);margin:0;line-height:1.3}
.ph-cathead-tag{font-size:12px;color:var(--txt-3)}
.ph-cathead-up{margin-left:auto;font-size:12px;color:var(--txt-3)}
.ph-cathead-up:hover{color:var(--red)}
.ph-cathead-desc{color:var(--txt-2);font-size:13px;line-height:1.8;margin-top:6px}

/* 下级/同级栏目导航条（药丸式，横向排列，可换行） */
.ph-cattabs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding:12px 0;border-top:1px dashed #EDEDED}
.ph-cattabs-label{font-size:12px;color:var(--txt-3);flex-shrink:0}
.ph-cattabs a{
    display:inline-block;padding:3px 14px;border:1px solid var(--line);border-radius:14px;
    font-size:13px;color:var(--txt-2);line-height:20px;white-space:nowrap;
}
.ph-cattabs a:hover{border-color:var(--red);color:var(--red)}
.ph-cattabs a.on{background:var(--red);border-color:var(--red);color:#fff}

/* 焦点区：左大图 + 右标题列表 */
.ph-catfocus{background:#fff;border:1px solid var(--line);border-top:3px solid var(--red);padding:18px;margin-bottom:18px}
.ph-catfocus .ph-section-title{margin:0 0 12px}
.ph-catfocus-inner{display:flex;gap:22px;align-items:flex-start}
.ph-catfocus-left{width:520px;flex-shrink:0}
.ph-catfocus-right{flex:1;min-width:0}
.ph-catfocus-pic{position:relative;display:block;border-radius:4px;overflow:hidden}
.ph-catfocus-pic img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .3s}
.ph-catfocus-pic:hover img{transform:scale(1.03)}
.ph-catfocus-cap{
    position:absolute;left:0;right:0;bottom:0;padding:30px 14px 10px;color:#fff;
    font-size:15px;font-weight:600;line-height:1.5;
    background:linear-gradient(transparent,rgba(0,0,0,.78));
}
.ph-catfocus-none{background:#FAFAFA;border:1px dashed #E5E5E5;color:var(--txt-3);font-size:13px;text-align:center;padding:28px 10px;border-radius:4px}

/* 下级栏目区块网格：列数由子栏目数量决定（wide/norm/dense） */
.ph-catgrid{display:grid;gap:18px}
.ph-catgrid-wide{grid-template-columns:repeat(2,minmax(0,1fr))}
.ph-catgrid-norm{grid-template-columns:repeat(3,minmax(0,1fr))}
.ph-catgrid-dense{grid-template-columns:repeat(4,minmax(0,1fr))}
.ph-catgrid{margin-bottom:18px}
.ph-catsub{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;min-width:0}
.ph-catsub-head{display:flex;align-items:center;gap:8px;padding:11px 14px;border-bottom:1px solid #F0F0F0}
.ph-catsub-head h3{flex:1;min-width:0;margin:0;font-size:16px;position:relative;padding-left:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ph-catsub-head h3:before{content:"";position:absolute;left:0;top:3px;bottom:3px;width:4px;background:var(--red)}
.ph-catsub-head h3 a{color:var(--txt)}
.ph-catsub-head h3 a:hover{color:var(--red)}
.ph-catsub-more{font-size:12px;color:var(--txt-3);flex-shrink:0}
.ph-catsub-more:hover{color:var(--red)}
.ph-catsub-body{padding:12px 14px;flex:1;min-height:56px}
.ph-catsub-empty{color:var(--txt-3);font-size:13px;text-align:center;padding:18px 0}

/* 下级栏目的下级栏目（三级）：小方块标签 */
.ph-catsub-sub3{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:10px;margin-bottom:8px;border-bottom:1px dashed #EDEDED}
.ph-catsub-sub3 a{font-size:12px;color:var(--txt-2);background:#F6F6F6;border-radius:3px;padding:2px 9px;line-height:18px}
.ph-catsub-sub3 a:hover{background:var(--red-light);color:var(--red)}

/* 下级栏目卡片内的首条图文（该栏目最新一条带图时启用） */
.ph-catsub-lead{display:flex;gap:10px;padding-bottom:10px;margin-bottom:4px;border-bottom:1px dashed #EDEDED}
.ph-catsub-lead img{width:120px;height:80px;object-fit:cover;border-radius:3px;flex-shrink:0;background:#F5F5F5}
.ph-catsub-lead-t{
    font-size:14px;font-weight:600;color:var(--txt);line-height:1.5;
    display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.ph-catsub-lead:hover .ph-catsub-lead-t{color:var(--red)}

/* 下级栏目卡片内的纯文字条目 */
.ph-catsub-li{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:13px;color:var(--txt);border-bottom:1px dashed #F5F5F5}
.ph-catsub-li:last-child{border-bottom:0}
.ph-catsub-li:before{content:"·";color:var(--red);font-weight:700;flex-shrink:0}
.ph-catsub-li-t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ph-catsub-li:hover{color:var(--red)}
.ph-catdate{margin-left:auto;color:var(--txt-3);font-size:12px;flex-shrink:0}

/* 图文卡网格 */
.ph-grid{display:flex;flex-wrap:wrap;margin:-10px}
.ph-grid .ph-card{width:calc(25% - 20px);margin:10px;border:1px solid #f0f0f0;border-radius:4px;overflow:hidden;background:#fff;transition:box-shadow .2s}
.ph-grid .ph-card:hover{box-shadow:0 4px 14px rgba(0,0,0,.1)}
.ph-card-pic{display:block;overflow:hidden}
.ph-card-pic img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;transition:transform .3s}
.ph-card-pic:hover img{transform:scale(1.05)}
.ph-card-body{padding:10px 12px 12px}
.ph-card-title{font-size:14px;font-weight:600;line-height:1.45;height:40px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.ph-card-title:hover{color:var(--red)}
.ph-card-meta{color:var(--txt-3);font-size:12px;margin-top:8px;display:flex;justify-content:space-between}

/* 通栏广告 */
.ph-banner{background:#fff;border:1px solid var(--line);margin-bottom:18px;border-radius:4px;overflow:hidden}
.ph-banner img{display:block;width:100%}

/* 时间轴 */
.ph-timeline{position:relative;padding-left:16px}
.ph-timeline:before{content:"";position:absolute;left:3px;top:4px;bottom:4px;width:2px;background:#F0F0F0}
.ph-timeline-item{position:relative;padding:0 0 16px 14px}
.ph-timeline-item:before{
    content:"";position:absolute;left:-14px;top:7px;width:8px;height:8px;border-radius:50%;
    background:#fff;border:2px solid var(--red);
}
.ph-timeline-item a{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ph-timeline-item a:hover{color:var(--red)}
.ph-timeline-item .ph-date{color:var(--txt-3);font-size:12px}

/* 排行（1234 红色序号） */
.ph-hots li{display:flex;align-items:center;padding:8px 0;border-bottom:1px dashed #F0F0F0}
.ph-hots li:last-child{border-bottom:0}
.ph-hots .ph-num{
    width:22px;height:22px;line-height:22px;text-align:center;background:#F0F0F0;color:#666;
    font-size:12px;font-weight:700;border-radius:4px;margin-right:10px;flex-shrink:0;font-style:normal;
}
.ph-hots li:nth-child(1) .ph-num,.ph-hots li:nth-child(2) .ph-num,.ph-hots li:nth-child(3) .ph-num{background:var(--red);color:#fff}
.ph-hots li a{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.ph-hots li a:hover{color:var(--red)}

/* 侧边栏图片卡 */
.ph-side-pic{display:block;position:relative;border-radius:4px;overflow:hidden;margin-bottom:10px}
.ph-side-pic img{width:100%;height:110px;object-fit:cover;display:block;transition:transform .3s}
.ph-side-pic:hover img{transform:scale(1.05)}
.ph-side-pic .ph-side-cap{
    position:absolute;left:0;right:0;bottom:0;background:rgba(0,0,0,.55);color:#fff;font-size:12px;
    padding:14px 8px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}

/* ============ 列表页 ============ */
.ph-lists{background:#fff;border:1px solid var(--line);padding:0 18px}
.ph-lists .ph-list-item{
    display:flex;padding:18px 0;border-bottom:1px solid #F0F0F0;gap:16px;
}
.ph-lists .ph-list-item:last-child{border-bottom:0}
.ph-list-item .ph-thumb{width:170px;height:110px;flex-shrink:0;overflow:hidden;border-radius:4px}
.ph-list-item .ph-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.ph-list-item .ph-thumb:hover img{transform:scale(1.06)}
.ph-list-item .ph-info{flex:1;min-width:0;display:flex;flex-direction:column}
.ph-list-item .ph-info h4{font-size:17px;margin-bottom:8px}
.ph-list-item .ph-info h4 a:hover{color:var(--red)}
.ph-list-item .ph-info .ph-desc{color:var(--txt-2);font-size:13px;line-height:1.7;height:42px;overflow:hidden;margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.ph-list-item .ph-info .ph-meta{color:var(--txt-3);font-size:12px;margin-top:auto;display:flex;align-items:center;gap:14px}
.ph-list-item .ph-info .ph-meta a{color:var(--txt-3)}
.ph-list-item .ph-info .ph-meta a:hover{color:var(--red)}

/* ============ 分页 ============ */
/* 框架实际输出：<ul class="pagination"><li><a>…</a></li></ul>
   （标签模板见 config/page/pc/page.php）
   ★ ul 必须 flex 化：li 默认块级，否则每页各占一行 ⇒ 分页竖排多行 */
.ph-page{text-align:center;padding:22px 0 8px}
.ph-page ul{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px}
.ph-page li{list-style:none}
.ph-page a,.ph-page span{
    display:inline-block;min-width:34px;height:34px;line-height:34px;padding:0 8px;
    background:#fff;border:1px solid var(--line);border-radius:4px;color:var(--txt-2);font-size:13px;
}
.ph-page a[href]:hover{border-color:var(--red);color:var(--red)}
/* 当前页：框架给的是 li.active（原 .current 选择器匹配不到，高亮一直是失效的） */
.ph-page li.active a,.ph-page li.active a:hover,
.ph-page .current{background:var(--red);border-color:var(--red);color:#fff}
.ph-page .disabled{color:#ccc;cursor:not-allowed}

/* ============ 内容页 ============ */
.ph-article{background:#fff;border:1px solid var(--line);padding:26px 30px 30px}
.ph-article h1{font-size:24px;line-height:1.5;margin-bottom:14px;text-align:center}
.ph-article .ph-art-meta{
    text-align:center;color:var(--txt-3);font-size:13px;padding-bottom:18px;border-bottom:1px solid #F0F0F0;margin-bottom:22px;
}
.ph-article .ph-art-meta span{margin:0 12px}
.ph-article .ph-art-meta a{color:var(--txt-3)}
.ph-article .ph-art-meta a:hover{color:var(--red)}
.ph-article .entry-content{font-size:15px;line-height:1.9;color:#333}
/* 段落首行缩进两字（中文排版惯例） */
.ph-article .entry-content p{margin:0 0 16px;text-indent:2em}
/* 兼容历史正文里的 <div> 段落：与 <p> 保持同一套排版（2026-10-07）
   背景：后台历史录入的部分文章以 <div> 作段落标签，而上面只写了 <p>，
        导致这批文章段落首行无 2 字缩进、段间距为 0。
   实测：全库 1990 篇中 828 篇含 <div> 段落（纯文字 div 12152 个、嵌套 div 0 个，
        故用 > 直接子级即可全覆盖且不误伤深层结构）。
   约束 1：含图片的 div / 居中·右对齐的 div 不做缩进，与 p 的处理保持一致。
        属性选择器不认空格 ⇒ 写成两个并联条件才能同时匹配
        text-align:center 与 text-align: center。
   约束 2：:not([class]) 必不可少 —— 少数历史正文有未闭合的 <div>（实测 12 篇），
        会吃掉模板自己的闭合 </div>，把 .ph-art-end / .ph-art-edit / .ph-prevnext
        等模板块卷进 .entry-content 内，从而被本规则误加缩进与段间距；
        模板块一律带 class（正文里带 class 的 div 全库仅 5 个），故按 class 排除。 */
.ph-article .entry-content>div:not([class]):not(:has(img)):not([style*="text-align"][style*="center"]):not([style*="text-align"][style*="right"]){
    margin:0 0 16px;text-indent:2em
}
/* 图片：块级 + 左右 auto 居中，块级元素不受 text-indent 影响（图片不缩进）
   height 必须 !important —— 后台正文里的 <img> 常带行内 style="width:1000px;height:749px"，
   行内样式优先级最高会压过这里的 height:auto；窄屏下 max-width:100% 只缩宽不缩高 ⇒ 图被纵向拉伸变形。 */
.ph-article .entry-content img{display:block;max-width:100%;height:auto !important;border-radius:4px;margin:16px auto}
/* 纯图片段落（含 <a> 包图）取消缩进，避免整段偏移 */
.ph-article .entry-content p:has(> img),
.ph-article .entry-content p:has(> a > img),
.ph-article .entry-content p[style*="center"]{text-indent:0;text-align:center}
.ph-article .entry-content h2,.ph-article .entry-content h3{margin:20px 0 10px}
.ph-article .entry-content a{color:var(--red)}
.ph-art-end{text-align:center;color:var(--txt-3);font-size:13px;margin:28px 0;letter-spacing:4px}
.ph-art-edit{background:#FAFAFA;border:1px solid #F0F0F0;border-radius:4px;padding:12px 16px;font-size:12px;color:var(--txt-2);margin-bottom:20px;line-height:2}
/* 微信扫码分享：正文底部二维码，二维码内容=本页 URL（服务端生成的 data URI，不额外发请求）
   视觉语言与 .ph-art-edit 保持一致（浅灰底 + 细边 + 4px 圆角） */
.ph-art-share{display:flex;align-items:center;justify-content:center;gap:18px;background:#FAFAFA;border:1px solid #F0F0F0;border-radius:4px;padding:16px;margin-bottom:20px}
.ph-art-share .ph-share-qr{flex:0 0 auto;width:116px;height:116px;padding:4px;background:#fff;border:1px solid var(--line);border-radius:4px;box-sizing:border-box}
.ph-art-share .ph-share-qr img{display:block;width:100%;height:100%}
.ph-art-share .ph-share-txt strong{display:block;font-size:15px;color:#333;font-weight:600;line-height:1.4}
.ph-art-share .ph-share-txt span{display:block;font-size:12px;color:var(--txt-3);margin-top:5px}
.ph-prevnext{display:flex;justify-content:space-between;gap:30px;border-top:1px solid #F0F0F0;padding-top:18px;font-size:14px}
.ph-prevnext .ph-pn{flex:1;min-width:0}
.ph-prevnext .ph-pn-t{color:var(--txt-3);font-size:12px;margin-bottom:4px}
.ph-prevnext .ph-pn a{color:var(--txt-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}
.ph-prevnext .ph-pn a:hover{color:var(--red)}
.ph-prevnext .ph-pn.right{text-align:right}

/* 相关推荐 */
.ph-related{background:#fff;border:1px solid var(--line);margin-top:18px}
.ph-related .ph-col-body .ph-text-list li:before{background:#ccc}

/* ============ 栏目描述 ============ */
.ph-groupinfo{
    background:#fff;border:1px solid var(--line);border-left:4px solid var(--red);
    padding:16px 20px;margin-bottom:18px;
}
.ph-groupinfo h1{font-size:20px;margin-bottom:4px}
.ph-groupinfo .ph-groupinfo-desc{color:var(--txt-2);font-size:13px}

/* ============ 侧边栏通用 ============ */
.ph-sidebox{background:#fff;border:1px solid var(--line);margin-bottom:18px}
.ph-sidebox .ph-col-head{padding:11px 14px}
.ph-sidebox .ph-col-head h3{font-size:15px}
.ph-sidebox .ph-col-body{padding:14px}

/* ============ 页脚 ============ */
.ph-footer{background:var(--foot);color:#A8A8A8;margin-top:30px}
.ph-footer-top{padding:30px 0 20px;border-bottom:1px solid #3A3A3A}
.ph-footer-top .ph-container{display:flex;gap:60px;flex-wrap:wrap}
.ph-footer-about{max-width:500px}
.ph-footer-about h4{color:#fff;font-size:16px;margin-bottom:12px;position:relative;padding-left:12px}
.ph-footer-about h4:before{content:"";position:absolute;left:0;top:5px;bottom:5px;width:3px;background:var(--red)}
.ph-footer-about p{font-size:12px;line-height:2;color:#A8A8A8}
.ph-footer-links{flex:1;min-width:200px}
.ph-footer-links h4{color:#fff;font-size:16px;margin-bottom:12px;position:relative;padding-left:12px}
.ph-footer-links h4:before{content:"";position:absolute;left:0;top:5px;bottom:5px;width:3px;background:var(--red)}
.ph-footer-links a{color:#A8A8A8;font-size:13px;margin:0 16px 10px 0;display:inline-block}
.ph-footer-links a:hover{color:#fff}
.ph-footer-bottom{padding:16px 0;font-size:12px;color:#8A8A8A;text-align:center;line-height:2}
.ph-footer-bottom a{color:#8A8A8A}
.ph-footer-bottom a:hover{color:#fff}

/* ============ 移动端菜单 ============ */
.ph-mnav-toggle{display:none;color:#fff;font-size:22px;padding:0 12px;cursor:pointer;line-height:48px}
.ph-nav-toggler{display:none;margin-left:14px;width:38px;height:38px;line-height:38px;text-align:center;background:var(--red);color:#fff;border-radius:4px;cursor:pointer;font-size:18px;flex-shrink:0}
@media (max-width:992px){
    .ph-header-right .ph-search{display:none}
    /* 主栏宽度硬约束 —— 容器是 column 方向 flex + align-items:flex-start（138 行），
       子项按「fit-content」取宽；正文里的 <img style="width:1000px"> 会把 min-content 撑到 500+，
       导致内容页/栏目页在窄屏整体横向溢出（375 视口实测 .ph-article 被撑到 582px、documentElement.scrollWidth=597）。
       显式 width:100% 让主栏钉死在容器宽度上，图片再靠 max-width:100% 收缩。 */
    .ph-col-main{width:100%;max-width:100%}
    /* 首页有两处「嵌套 .ph-container」（index.html 419/479 的双栏块，带 inline display:flex）。
       外层 .ph-main .ph-container（138 行）同为 column 方向 flex + align-items:flex-start
       ⇒ 子项按 fit-content 取宽，嵌套容器按 max-content 撑到 382px，375 视口 scrollWidth=412。
       显式 width:100% 钉死；margin:0 去掉与外层重复的 15px 内缩。 */
    .ph-main .ph-container .ph-container{width:100%;max-width:100%;margin:0}
    /* 手机版版心收到 5px：原来 .ph-article 左右内边距 30px（15px 字号下正好=2 字）会把正文
       每一行都推开 2 字，看起来像「所有文字都缩进」；收到 5px 后正文只保留
       .entry-content p{text-indent:2em} 的「段首缩进 2 字」，其余行顶格。
       图片 max-width:100% 自然落在 5px 版心内 ⇒ 左右各留 5px。 */
    .ph-article{padding-left:5px;padding-right:5px}
    /* 顶部栏目「隐藏菜单」：默认收起，点 ☰ 才展开。
       选择器必须带 .ph-nav 前缀 —— 第 78 行 .ph-nav .ph-nav-main{display:flex}(0,2,0)
       会压过裸 .ph-nav-main(0,1,0)，导致手机端 11 条栏目常驻展开、悬空 528px 遮挡首屏。 */
    .ph-nav .ph-nav-main{
        display:none;flex-direction:column;position:absolute;left:0;right:0;top:48px;
        background:var(--red);z-index:100;
        max-height:calc(100vh - 48px);overflow-y:auto;-webkit-overflow-scrolling:touch;
        box-shadow:0 10px 24px rgba(0,0,0,.22);
    }
    .ph-nav .ph-nav-main.open{display:flex}
    .ph-nav a.ph-nav-item{padding:0 20px;border-top:1px solid rgba(255,255,255,.15)}
    /* 桌面端「当前栏目」的白色下三角，在纵向菜单里会被误读成折叠指示 ⇒ 隐藏，靠 .on 深底区分 */
    .ph-nav a.ph-nav-item.on:after{display:none}
    .ph-nav .ph-mnav-toggle{display:block}
    .ph-nav-item-wrap .ph-nav-drop{position:static;box-shadow:none;border:0;background:rgba(0,0,0,.15);display:none}
    /* 触屏 :hover 会残留（第 93 行 hover 规则权重同为 0,3,0）⇒ 二级只允许点击展开 */
    .ph-nav-item-wrap:hover .ph-nav-drop{display:none}
    .ph-nav-item-wrap.open .ph-nav-drop{display:block}
    .ph-nav-item-wrap.open:hover .ph-nav-drop{display:block}
    .ph-nav-drop a{color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}
    .ph-nav-drop-chambers{width:auto;background:rgba(0,0,0,.15)}
    .ph-nav-drop-chambers .ph-chambers-item{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.15)}
    /* 商协会 60+ 家，单列摊开会有 3000+px ⇒ 内部限高滚动，底部保留「查看全部」 */
    .ph-chambers-grid{grid-template-columns:1fr;max-height:44vh;overflow-y:auto;-webkit-overflow-scrolling:touch}
    /* 「查看全部商协会」原本是 color:var(--red)，叠在深红底上不可见 ⇒ 改白字 */
    .ph-nav-drop-chambers .ph-chambers-more{color:#fff;border-top-color:rgba(255,255,255,.28)}
    .ph-nav-drop-cats4{width:auto;background:rgba(0,0,0,.15)}
    .ph-nav-drop-cats4 .ph-cats4-item{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.15)}
    .ph-cats4-grid{grid-template-columns:1fr}
    .ph-focus .ph-container{flex-direction:column}
    .ph-focus-left,.ph-focus-mid,.ph-focus-right{width:100%}
    .ph-slider .ph-slide img{width:100%;height:auto}
    .ph-mini-grid{flex-wrap:wrap}
    .ph-mini-grid .ph-mini{flex:0 0 calc(50% - 5px)}
    .ph-cx-grid{flex-wrap:wrap;gap:18px}
    .ph-cx-item{flex:1 1 calc(50% - 9px)}
    .ph-cx-grid.c3 .ph-cx-item,.ph-cx-grid.c4 .ph-cx-item,
    .ph-cx-grid.c5 .ph-cx-item,.ph-cx-grid.c6 .ph-cx-item{flex:0 0 calc(50% - 9px);max-width:calc(50% - 9px)}
    .ph-cx-grid.c5 .ph-text-list li,.ph-cx-grid.c6 .ph-text-list li{font-size:13px}
    .ph-duo{flex-direction:column}
    .ph-duo .ph-duo-left{width:100%}
    .ph-duo-pic img{width:100%;height:180px}
    .ph-grid .ph-card{width:calc(50% - 20px)}
    .ph-lists .ph-list-item{flex-direction:column}
    .ph-list-item .ph-thumb{width:100%;height:150px}
    .ph-catfocus-inner{flex-direction:column}
    .ph-catfocus-left{width:100%}
    .ph-catgrid-wide,.ph-catgrid-norm,.ph-catgrid-dense{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ============ 手机端页头 / 顶部信息条 ============ */
/* 375 视口实测：文档 scrollWidth 被顶到 454（溢出 79px），两个独立成因：
   ① .ph-header-right（含「在线询价」，min-content 110px）被顶到 x=344
      ⇒ 因为 .ph-logo{flex-shrink:0}（51 行）不收缩，而 logo 内容超宽：
         旧版为 52(红色方印) + 12(间距) + 265(英文副标题 NEW ERA CHAMBER OF COMMERCE，12px/letter-spacing:2px 单行)
         2026-10-07 改为 56(圆形徽标 images/logo.png) + 12 + 130(域名副标题 www.xsdsh.com)
         ⇒ 手机端 44 + 10 + 100.5 = logo 总宽约 154.5px：副标题与中文同宽，显示它不额外占宽
   ② .ph-topbar 4 个链接一行需约 204px，再挤上 .ph-topbar-site（156px，flex-shrink:0）
      ⇒ 链接换成 2 行，而 .ph-topbar 高度写死 34px ⇒ 文字纵向溢出、叠到 LOGO 区
   修法：手机端隐去欢迎语，logo 允许收缩+省略号，页头间距收紧。
   ★ 副标题在手机端「保留显示」（与电脑版一致）——2026-10-07 前那版 265px 的英文才必须隐藏，
     现在域名与中文同宽，隐藏反而与电脑版不一致了。
   2026-10-10：左侧改为「联系邮箱」单项、右侧改为「会员登录 / 会员信息·退出」，
     内容大幅变短（≈140px + 48~88px），≤600px 不再隐藏右侧，只收紧间距。 */
@media (max-width:600px){
    .ph-topbar-links{flex:1;white-space:nowrap}
    .ph-topbar-user{margin-left:8px}
    .ph-topbar-user a{margin-left:10px}
    .ph-header{padding:12px 0}
    .ph-logo > span:last-child{min-width:0;overflow:hidden}
    /* 20px 中文 = 100px ⇒ 副标题 12.3px/.58px（墨迹 99.94px），与电脑版 16/.75 同比 */
    .ph-logo .ph-logo-sub{display:block;font-size:12.3px;letter-spacing:.58px}
    .ph-logo .ph-logo-text{transform:translateY(4px)}
    .ph-logo .ph-logo-mark{width:44px;height:44px;margin-right:10px;flex-shrink:0}
    .ph-logo .ph-logo-name{font-size:20px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .ph-header-right{flex-shrink:0}
    .ph-header-btn{margin-left:10px;padding:0 12px;height:34px;line-height:34px;font-size:13px}
}

/* 创新创业 4 栏在小屏折成单列（每列 13px 字号，两列已不足 160px 宽） */
@media (max-width:600px){
    .ph-cx-grid{flex-direction:column;gap:16px}
    .ph-cx-item{flex:1 1 100%}
    .ph-cx-grid.c3 .ph-cx-item,.ph-cx-grid.c4 .ph-cx-item,
    .ph-cx-grid.c5 .ph-cx-item,.ph-cx-grid.c6 .ph-cx-item{flex:0 0 100%;max-width:100%}
    .ph-catgrid-wide,.ph-catgrid-norm,.ph-catgrid-dense{grid-template-columns:1fr}
    .ph-cathead{padding-top:14px}
    .ph-cathead-bar h1{font-size:19px}
    .ph-catsub-lead img{width:100px;height:67px}
}

/* ============ 返回顶部 ============ */
.ph-totop{
    position:fixed;right:24px;bottom:40px;width:42px;height:42px;background:rgba(199,0,11,.85);color:#fff;
    border-radius:6px;text-align:center;line-height:42px;font-size:20px;cursor:pointer;z-index:200;display:none;
}
.ph-totop:hover{background:var(--red)}

/* ============ 右侧滑出面板 ============ */
.ph-drawer-mask{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:300}
.ph-drawer{
    position:fixed;top:0;right:-340px;width:320px;height:100%;background:#fff;z-index:301;
    transition:right .3s;overflow-y:auto;box-shadow:-4px 0 20px rgba(0,0,0,.15);padding:20px;
}
.ph-drawer.open{right:0}
.ph-drawer-close{float:right;font-size:22px;color:var(--txt-3);cursor:pointer;line-height:1}
.ph-drawer h4{font-size:15px;margin:18px 0 10px;color:var(--red);border-left:3px solid var(--red);padding-left:8px}
.ph-drawer-search{display:flex;margin-top:30px}
.ph-drawer-search input{flex:1;height:36px;border:1px solid var(--line);border-radius:4px 0 0 4px;padding:0 10px;font-size:13px}
.ph-drawer-search button{width:52px;background:var(--red);color:#fff;border:0;border-radius:0 4px 4px 0;cursor:pointer}
.ph-drawer .ph-text-list li{padding:7px 0}
.ph-drawer .ph-tagcloud a{
    display:inline-block;background:#F5F5F5;color:var(--txt-2);font-size:12px;padding:3px 10px;border-radius:3px;margin:0 6px 8px 0;
}
.ph-drawer .ph-tagcloud a:hover{background:var(--red);color:#fff}

/* ============ 移动端侧栏抽屉 ============ */
.ph-mdrawer{position:fixed;top:0;left:-260px;width:250px;height:100%;background:#fff;z-index:301;transition:left .3s;box-shadow:4px 0 20px rgba(0,0,0,.15);overflow-y:auto;padding:20px}
.ph-mdrawer.open{left:0}
.ph-mdrawer h4{font-size:14px;color:var(--red);border-left:3px solid var(--red);padding-left:8px;margin-bottom:12px}
.ph-mdrawer a.ph-mdrawer-item{display:block;padding:11px 0;border-bottom:1px solid #F2F2F2;font-size:15px;color:var(--txt)}
.ph-mdrawer a.ph-mdrawer-item.on{color:var(--red);font-weight:600}

/* ============ 商协会封面页（sh_category.html）：1行3家，框内直接最新10条 ============ */
.ph-org-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ph-org-card{background:#fff;border:1px solid var(--line);border-radius:4px;overflow:hidden;display:flex;flex-direction:column}
.ph-org-head{
    background:var(--red);padding:10px 14px;display:flex;align-items:center;flex-wrap:wrap;gap:6px;
}
.ph-org-name{color:#fff;font-size:16px;font-weight:700;margin-right:auto}
.ph-org-name:hover{color:#fff;opacity:.88}
.ph-org-type{
    color:#fff;background:rgba(255,255,255,.22);font-size:12px;padding:1px 10px;border-radius:10px;
}
.ph-org-more{
    color:#fff;font-size:12px;background:rgba(255,255,255,.18);padding:2px 8px;border-radius:3px;white-space:nowrap;
}
.ph-org-more:hover{color:var(--red-dark);background:#fff}
.ph-org-news{flex:1;padding:8px 14px 10px}
.ph-org-news li{padding:7px 0;border-bottom:1px dashed #F0F0F0;font-size:13px}
.ph-org-news li:last-child{border-bottom:0}
.ph-org-news li a{color:var(--txt);display:inline-block;max-width:72%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}
.ph-org-news li a:hover{color:var(--red)}
.ph-org-empty{padding:24px 20px;text-align:center;color:var(--txt-3);font-size:14px}

/* ============ 商协会独立页（simiao/chamber_show.html） ============ */
.ph-chamber-top{background:#fff;border:1px solid var(--line);border-radius:4px;padding:18px 20px;margin-bottom:16px;display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.ph-chamber-top-name{font-size:22px;font-weight:700;color:var(--red);margin:0}
.ph-chamber-top-type{color:#fff;background:var(--red);font-size:13px;padding:2px 12px;border-radius:12px}
.ph-chamber-top-addr{color:var(--txt-3);font-size:13px}

.ph-org-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ph-org-catbox{
    background:#FAFAFA;border:1px solid #F0F0F0;border-radius:4px;
    padding:10px 12px;box-sizing:border-box;min-width:0;
}
.ph-org-cattitle{
    font-size:14px;font-weight:600;color:var(--red);margin-bottom:6px;
    border-left:3px solid var(--red);padding-left:8px;line-height:1.3;
    display:flex;align-items:center;justify-content:space-between;
}
.ph-org-cattitle a:first-child{color:var(--red)}
.ph-org-cattitle a:hover{color:var(--red-dark)}
.ph-org-catmore{font-size:12px;color:var(--txt-3);font-weight:400}
.ph-org-catmore:hover{color:var(--red)}
.ph-org-catbox .ph-text-list li{padding:6px 0;font-size:13px}

@media (max-width:992px){
    .ph-org-grid{grid-template-columns:repeat(2,1fr)}
    .ph-org-cats{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){
    .ph-org-grid{grid-template-columns:1fr}
    .ph-org-cats{grid-template-columns:1fr}
}

/* ==========================================================================
   会员证书站（cer.xsdsh.com）：验证查询页 cert_index.html + 证书页 cert_show.html
   说明：前端主题唯一 CSS，全部 sm-cert-/sm-roster- 前缀，不依赖 Bootstrap/FA
   ========================================================================== */
.sm-cert-wrap{max-width:1000px;margin:0 auto;padding:24px 0 10px}
.sm-cert-title{
    font-size:22px;font-weight:700;color:var(--txt);text-align:center;
    margin:0 0 22px;padding-bottom:14px;border-bottom:1px solid var(--line);
}
.sm-cert-search{background:#fff;border:1px solid var(--line);border-radius:4px;padding:20px;margin-bottom:20px}
.sm-cert-search h5{
    margin:0 0 14px;font-size:15px;font-weight:600;color:var(--txt);
    border-left:3px solid var(--red);padding-left:8px;line-height:1.3;
}
.sm-cert-form{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.sm-cert-input{
    height:38px;line-height:38px;width:280px;box-sizing:border-box;
    border:1px solid #DDD;border-radius:4px;padding:0 12px;font-size:14px;
    color:var(--txt);outline:none;background:#fff;
}
.sm-cert-input[name="name"]{width:200px}
.sm-cert-input:focus{border-color:var(--red)}
.sm-cert-or{color:var(--txt-3);font-size:13px}
.sm-cert-btn{
    display:inline-block;height:38px;line-height:38px;padding:0 20px;box-sizing:border-box;
    border:1px solid #DDD;background:#fff;color:var(--txt);border-radius:4px;
    font-size:14px;cursor:pointer;transition:all .15s;text-align:center;
}
.sm-cert-btn:hover{border-color:var(--red);color:var(--red)}
.sm-cert-btn-primary{background:var(--red);border-color:var(--red);color:#fff}
.sm-cert-btn-primary:hover{background:var(--red-dark);border-color:var(--red-dark);color:#fff}
.sm-cert-btn-block{display:block;margin-top:14px}
.sm-cert-result{margin-top:16px;border-left:4px solid #CCC;background:#FAFAFA;border-radius:0 4px 4px 0;padding:14px 16px}
.sm-cert-result.valid{border-left-color:#1A7F37;background:#F1FAF3}
.sm-cert-result.expired{border-left-color:#E6A23C;background:#FFFBF0}
.sm-cert-result.void{border-left-color:var(--red);background:#FFF4F4}
.sm-cert-verdict{font-size:15px}
.sm-cert-ok{color:#1A7F37}
.sm-cert-warn{color:#E6A23C}
.sm-cert-bad{color:var(--red)}
.sm-cert-table{width:100%;font-size:14px;margin-top:10px;border-collapse:collapse}
.sm-cert-table td{padding:8px 10px;border-bottom:1px dashed #EEE}
.sm-cert-table td:first-child{color:var(--txt-3);width:110px}
.sm-cert-table tr:last-child td{border-bottom:none}
.sm-cert-box{background:#fff;border:1px solid var(--line);border-radius:4px;padding:20px;margin-bottom:20px}
.sm-cert-box-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.sm-cert-box-head h5{margin:0;font-size:15px;font-weight:600;border-left:3px solid var(--red);padding-left:8px;line-height:1.3}
.sm-cert-select{
    height:34px;line-height:34px;min-width:200px;box-sizing:border-box;
    border:1px solid #DDD;border-radius:4px;padding:0 10px;font-size:13px;
    color:var(--txt);background:#fff;
}
.sm-cert-filter{margin:0}
.sm-roster-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 2px;border-bottom:1px dashed #EEE;font-size:14px}
.sm-roster-item:last-of-type{border-bottom:none}
.sm-roster-name b{color:var(--txt);font-weight:600}
.sm-roster-meta{color:var(--txt-3);margin-left:10px;font-size:12px}
.sm-roster-link a{color:var(--red)}
.sm-roster-link a:hover{color:var(--red-dark)}
.sm-roster-link em{color:var(--txt-3);font-style:normal;font-size:12px}
.sm-verify-badge{display:inline-block;background:#1A7F37;color:#fff;border-radius:3px;font-size:11px;padding:1px 6px;margin-left:6px}
.sm-cert-empty{text-align:center;color:var(--txt-3);padding:34px 0;margin:0;font-size:14px}
.sm-cert-tip{margin:0 0 30px;color:var(--txt-3);font-size:12px;line-height:2;text-align:center}
/* 会员证书正本 */
.sm-cert-page{max-width:820px;margin:0 auto;padding:24px 0 30px}
.sm-cert-sheet{
    border:3px double #C9A227;border-radius:10px;padding:34px 40px;
    background:linear-gradient(180deg,#FFFDF6,#FDF9EC);position:relative;
    box-shadow:0 4px 16px rgba(0,0,0,.06);
}
.sm-cert-sheet:before{
    content:"";position:absolute;left:10px;right:10px;top:10px;bottom:10px;
    border:1px solid #EEDFC0;border-radius:6px;pointer-events:none;
}
.sm-cert-head{text-align:center;margin-bottom:18px;position:relative;z-index:1}
.sm-cert-head .org{font-size:15px;color:#8A6D3B;letter-spacing:2px}
.sm-cert-head .org img{height:44px;vertical-align:middle;margin-right:8px}
.sm-cert-head h1{margin:10px 0 4px;font-size:26px;color:#7A4B16;letter-spacing:6px;font-weight:700}
.sm-cert-badge{display:inline-block;border:1px solid #C9A227;color:#8A6D3B;border-radius:20px;padding:2px 16px;font-size:13px;margin-top:6px}
.sm-cert-body{text-align:center;padding:8px 0 18px;position:relative;z-index:1}
.sm-cert-body .name{font-size:24px;font-weight:700;color:#333;margin:14px 0}
.sm-cert-body .text{font-size:15px;color:#555;line-height:2}
.sm-cert-body .no{margin-top:14px;font-size:14px;color:#8A6D3B;letter-spacing:1px}
.sm-cert-status{text-align:center;position:relative;z-index:1}
.sm-cert-status>span{font-size:16px;font-weight:700}
.sm-cert-status .text{font-size:13px;color:#888;line-height:2;margin-top:4px;font-weight:400}
.sm-cert-footer{display:flex;justify-content:space-between;align-items:flex-end;margin-top:26px;position:relative;z-index:1}
.sm-cert-seal img{height:80px;opacity:.9}
.sm-cert-qr{text-align:center}
.sm-cert-qr img{width:120px;height:120px;padding:2px;background:#fff;border:1px solid #EEE}
.sm-cert-qr small{display:block;color:#999;font-size:12px;margin-top:4px}
.sm-cert-qr-empty{
    width:120px;height:120px;border:1px dashed #CCC;color:#999;font-size:12px;
    display:flex;align-items:center;justify-content:center;
}
.sm-cert-loading{text-align:center;background:#fff;border:1px solid var(--line);border-radius:4px;padding:60px 20px;margin-bottom:20px}
.sm-cert-loading h3{margin:0 0 10px;font-size:20px;color:var(--red)}
.sm-cert-loading p{color:var(--txt-3);font-size:14px;margin:6px 0 0}
.sm-cert-loading .sm-cert-btn{margin-top:20px}
.sm-cert-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center;margin-top:22px}
.sm-cert-url{width:100%;text-align:center;color:var(--txt-3);font-size:12px}

@media (max-width:992px){
    .sm-cert-input,.sm-cert-input[name="name"]{width:100%}
    .sm-cert-form .sm-cert-btn{width:100%}
    .sm-cert-sheet{padding:24px 18px}
}
@media (max-width:600px){
    .sm-roster-item{flex-direction:column;align-items:flex-start;gap:4px}
    .sm-cert-head h1{font-size:20px;letter-spacing:3px}
    .sm-cert-body .name{font-size:20px}
    .sm-cert-qr img{width:96px;height:96px}
    .sm-cert-footer{flex-direction:column;align-items:center;gap:10px}
}
/* ============ 搜索页（home/search.html）============ */
.ph-search-inline{display:flex;margin-bottom:14px}
.ph-search-inline input[type=text]{
    flex:1;height:38px;border:2px solid var(--red);border-right:0;border-radius:4px 0 0 4px;
    padding:0 14px;font-size:13px;color:var(--txt);background:#fff;
}
.ph-search-inline button{
    width:78px;height:38px;background:var(--red);border:0;border-radius:0 4px 4px 0;cursor:pointer;
    color:#fff;font-size:14px;
}
.ph-search-inline button:hover{background:var(--red-dark)}
.ph-filter{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);padding:12px 18px;margin-bottom:14px}
.ph-filter-label{color:var(--txt-3);font-size:13px;margin-right:2px}
.ph-filter a{display:inline-block;padding:3px 14px;border:1px solid var(--line);border-radius:14px;font-size:13px;color:var(--txt-2);line-height:20px}
.ph-filter a:hover{border-color:var(--red);color:var(--red)}
.ph-filter a.on{background:var(--red);border-color:var(--red);color:#fff}
.ph-empty{background:#fff;border:1px solid var(--line);padding:60px 18px;text-align:center;color:var(--txt-3);font-size:14px}
@media (max-width:600px){
    .ph-search-inline button{width:64px;font-size:13px}
    .ph-filter{padding:10px 12px;gap:6px}
    .ph-filter a{padding:3px 10px}
}

/* =========================================================
   会员中心（模板：sm_mb/pc/{主题}/home/simiao/member_*.html）
   说明：前端主题无 Bootstrap / FontAwesome / layer，
         全部 sm- 前缀自包含；不依赖任何外部 UI 库
   新增：2026-09-26
   ========================================================= */

/* ---------- 布局 ---------- */
.sm-mc{flex:0 0 100%;width:100%;max-width:1000px;margin:0 auto;padding:20px 0 10px}
.sm-mc-head{margin-bottom:16px}
.sm-mc-title{
    font-size:22px;font-weight:700;color:var(--txt);
    margin:0 0 14px;padding-bottom:14px;border-bottom:1px solid var(--line);
}
.sm-mc-nav{
    display:flex;flex-wrap:wrap;gap:6px;
    background:#fff;border:1px solid var(--line);border-radius:4px;padding:6px;
}
.sm-mc-nav a{
    display:inline-block;padding:7px 16px;border-radius:3px;
    font-size:14px;color:var(--txt-2);line-height:20px;transition:all .15s;
}
.sm-mc-nav a:hover{background:var(--red-light);color:var(--red)}
.sm-mc-nav a.active{background:var(--red);color:#fff}
.sm-mc-body{margin-top:16px}

/* ---------- 卡片 ---------- */
.sm-card{
    background:#fff;border:1px solid var(--line);border-radius:4px;
    padding:20px;margin-bottom:16px;
}
.sm-card-flat{padding:0;overflow:hidden}
.sm-card-title{
    font-size:15px;font-weight:600;color:var(--txt);
    border-left:3px solid var(--red);padding-left:8px;line-height:1.3;
    margin:0 0 16px;
}

/* ---------- 表单 ---------- */
.sm-field{margin-bottom:16px}
.sm-field > label{
    display:block;font-size:13px;color:var(--txt-2);
    margin-bottom:6px;line-height:1.4;
}
.sm-field > label em{color:var(--red);font-style:normal;margin-left:2px}
.sm-input,.sm-select,.sm-textarea{
    width:100%;box-sizing:border-box;border:1px solid #DDD;border-radius:4px;
    padding:0 10px;font-size:14px;color:var(--txt);background:#fff;
    transition:border-color .15s;
}
.sm-input,.sm-select{height:38px;line-height:38px}
.sm-textarea{height:auto;padding:8px 10px;line-height:1.6;resize:vertical}
.sm-input:focus,.sm-select:focus,.sm-textarea:focus{border-color:var(--red)}
.sm-select:disabled{background:#F7F7F7;color:var(--txt-3);cursor:not-allowed}
.sm-radios{display:flex;flex-wrap:wrap;gap:20px}
.sm-radio{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--txt);cursor:pointer}
.sm-radio input{width:15px;height:15px;margin:0;cursor:pointer;accent-color:var(--red)}
.sm-step{
    font-size:14px;font-weight:600;color:var(--red);
    background:var(--red-light);border-radius:3px;
    padding:8px 12px;margin:0 0 16px;
}
.sm-fee-tip{
    margin-top:8px;padding:8px 12px;border-radius:3px;
    background:#FFFBF0;border-left:3px solid #E6A23C;
    font-size:13px;color:#8A6512;
}

/* ---------- 按钮 ---------- */
.sm-btn{
    display:inline-block;box-sizing:border-box;height:38px;line-height:38px;
    padding:0 20px;border:1px solid #DDD;background:#fff;color:var(--txt);
    border-radius:4px;font-size:14px;font-family:inherit;cursor:pointer;
    transition:all .15s;text-align:center;vertical-align:middle;
}
.sm-btn:hover{border-color:var(--red);color:var(--red)}
.sm-btn-primary{background:var(--red);border-color:var(--red);color:#fff}
.sm-btn-primary:hover{background:var(--red-dark);border-color:var(--red-dark);color:#fff}
.sm-btn-ghost{background:#fff;border-color:#DDD;color:var(--txt-2)}
.sm-btn-ghost:hover{border-color:var(--red);color:var(--red)}
/* ★ 2026-10-10 修复「红底红字」（提权副本，勿删）
   成因：容器后代选择器权重高于组件自身 ——
     .sm-alert a{color:var(--red)}          -> (0,1,1)
     .sm-btn-primary{color:#fff}            -> (0,1,0)   ⇒ 被压成红字 = 红底红字
   铁律：同权重靠「后写覆盖」，跨权重只能靠「提高权重」。
   这里把按钮颜色统一提到 (0,2,0)/(0,2,1)，一次压过所有「容器 a」类规则；
   声明内容与上面 6 条完全一致，仅提权，不改变任何视觉预期。
   ⚠️ 顺序要求：本块必须在 .sm-btn-primary 等原始声明之后，
      否则 .sm-btn.sm-btn 会把 .sm-btn-primary 的白字盖回深色。 */
.sm-btn.sm-btn-primary{background:var(--red);border-color:var(--red);color:#fff}
.sm-btn.sm-btn-primary:hover{background:var(--red-dark);border-color:var(--red-dark);color:#fff}
.sm-btn.sm-btn-ghost{background:#fff;border-color:#DDD;color:var(--txt-2)}
.sm-btn.sm-btn-ghost:hover{border-color:var(--red);color:var(--red)}
.sm-btn.sm-btn{word-break:normal}
.sm-btn-sm{height:32px;line-height:32px;padding:0 14px;font-size:13px}
.sm-btn-block{display:block;width:100%;height:44px;line-height:44px;font-size:15px}
.sm-btn-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
/* 表单两列（完善申请资料页） */
.sm-form-2col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
.sm-form-2col .sm-field-full{grid-column:1 / -1}
@media (max-width:640px){.sm-form-2col{grid-template-columns:1fr}}

/* ---------- 标签 ---------- */
.sm-tags{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.sm-tag{
    display:inline-block;padding:1px 9px;border-radius:10px;
    font-size:12px;line-height:18px;background:#F2F2F2;color:var(--txt-2);
    vertical-align:middle;
}
.sm-tag.ok{background:#F1FAF3;color:#1A7F37}
.sm-tag.warn{background:#FFFBF0;color:#E6A23C}
.sm-tag.bad{background:#FFF4F4;color:var(--red)}
.sm-tag.info{background:#F0F4F9;color:#1F3A5F}
.sm-tag.gray{background:#F2F2F2;color:#95A5A6}
.sm-tag.purple{background:#F7F0FB;color:#8E44AD}

/* ---------- 通用小件 ---------- */
.sm-muted{color:var(--txt-3);font-size:12px;line-height:1.6}
.sm-mt10{margin-top:10px}
.sm-red{color:var(--red)}
.sm-alert{
    background:var(--red-light);border-left:3px solid var(--red);
    border-radius:0 3px 3px 0;padding:11px 14px;font-size:13px;color:var(--txt-2);
    margin-bottom:16px;
}
/* 提示框内的「纯文字链接」用红字并允许换行；
   ⚠️ 必须排除 .sm-btn —— 该规则权重 (0,1,1) 高于 .sm-btn-primary (0,1,0)，
      不排除会把按钮白字压成红字（红底红字）；同时 break-all 会把按钮文字拆断。
      2026-10-10 修复。 */
.sm-alert a:not(.sm-btn){color:var(--red);word-break:break-all}
.sm-empty{
    background:#fff;border:1px solid var(--line);border-radius:4px;
    padding:56px 18px;text-align:center;color:var(--txt-3);font-size:14px;
}
.sm-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.sm-tab{
    display:inline-block;padding:6px 16px;border:1px solid var(--line);border-radius:3px;
    background:#fff;font-size:13px;color:var(--txt-2);line-height:20px;
}
.sm-tab:hover{border-color:var(--red);color:var(--red)}
.sm-tab.active{background:var(--red);border-color:var(--red);color:#fff}

/* ---------- 我的商会 ---------- */
.sm-mc-card{
    display:flex;gap:16px;background:#fff;border:1px solid var(--line);
    border-radius:4px;padding:18px;margin-bottom:14px;
}
.sm-mc-logo{
    width:72px;height:72px;flex-shrink:0;border:1px solid var(--line);border-radius:4px;
    overflow:hidden;display:flex;align-items:center;justify-content:center;background:#FAFAFA;
}
.sm-mc-logo img{max-width:100%;max-height:100%}
.sm-mc-info{flex:1;min-width:0}
.sm-mc-info h3{font-size:16px;font-weight:600;color:var(--txt);margin:0}
.sm-mc-line{font-size:13px;color:var(--txt-2);line-height:1.9;margin:2px 0 0}
.sm-mc-more{color:var(--red);margin-left:10px}
.sm-mc-more:hover{color:var(--red-dark)}

/* 待完善 / 被驳回 高亮卡片 */
.sm-mc-card.is-draft{border-color:#E6A23C;background:#FFFBF0;box-shadow:inset 3px 0 0 #E6A23C}
.sm-mc-card.is-reject{border-color:#E5A2A2;background:#FFF7F7;box-shadow:inset 3px 0 0 var(--red)}
.sm-mc-tip{
    display:flex;align-items:center;flex-wrap:wrap;gap:8px;
    margin:10px 0 0;padding:9px 12px;border-radius:3px;
    font-size:13px;line-height:1.6;
    background:#FFF4E5;border-left:3px solid #E6A23C;color:#9A6B12;
}
.sm-mc-tip.bad{background:#FFF0F0;border-left-color:var(--red);color:var(--red)}
.sm-mc-tip .sm-btn{margin-left:auto;flex-shrink:0}

/* ---------- 我的档案 ---------- */
.sm-archive-head{display:flex;gap:14px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:16px}
.sm-archive-head img{width:56px;height:56px;border:1px solid var(--line);border-radius:4px;flex-shrink:0}
.sm-archive-head h3{font-size:17px;font-weight:600;color:var(--txt);margin:0}
.sm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.sm-grid-item{
    display:flex;gap:10px;padding:10px 0;border-bottom:1px dashed #EEE;font-size:14px;
}
.sm-grid-item label{width:110px;flex-shrink:0;color:var(--txt-3);font-size:13px}
.sm-grid-item b{font-weight:500;color:var(--txt);word-break:break-all}

/* ---------- 我的通知 ---------- */
.sm-notice{
    background:#fff;border:1px solid var(--line);border-radius:4px;
    padding:14px 18px;margin-bottom:10px;cursor:pointer;transition:border-color .15s;
}
.sm-notice:hover{border-color:#CCC}
.sm-notice.unread{border-left:3px solid var(--red)}
.sm-notice-t{font-size:15px;font-weight:500;color:var(--txt);line-height:1.5}
.sm-dot{
    display:inline-block;width:6px;height:6px;border-radius:50%;
    background:var(--red);margin-right:6px;vertical-align:middle;
}
.sm-notice-meta{font-size:12px;color:var(--txt-3);margin-top:4px}
.sm-notice-c{
    display:none;margin-top:10px;padding-top:10px;border-top:1px dashed #EEE;
    font-size:13px;color:var(--txt-2);line-height:1.8;
}

/* ---------- 活动 / 诉求 / 走访 列表项 ---------- */
.sm-act-t{font-size:15px;font-weight:500;color:var(--txt);line-height:1.6}
.sm-act-meta{font-size:13px;color:var(--txt-3);line-height:1.9;margin-top:4px}
.sm-act-c{font-size:13px;color:var(--txt-2);line-height:1.8;margin-top:8px;padding-top:8px;border-top:1px dashed #EEE}
.sm-reply{color:#1A7F37;border-top-color:#E3F2E7}

/* ---------- 会费汇总 + 表格 ---------- */
.sm-sum{
    background:#fff;border:1px solid var(--line);border-radius:4px;
    padding:22px;text-align:center;margin-bottom:16px;
}
.sm-sum-num{font-size:28px;font-weight:700;color:var(--red);line-height:1.3}
.sm-sum-label{font-size:13px;color:var(--txt-3);margin-top:4px}
.sm-table-scroll{overflow-x:auto}
.sm-table{width:100%;border-collapse:collapse;font-size:13px;min-width:760px}
.sm-table th,.sm-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--line)}
.sm-table th{background:#FAFAFA;color:var(--txt-2);font-weight:600;white-space:nowrap}
.sm-table tbody tr:hover{background:#FCFCFC}
.sm-table td{color:var(--txt)}
.sm-table-empty{text-align:center;color:var(--txt-3);padding:40px 12px !important}

/* ---------- 轻量提示（替代 layer.msg）---------- */
.sm-toast{
    position:fixed;left:50%;top:50%;transform:translate(-50%,-50%) scale(.92);
    z-index:99998;max-width:80vw;
    background:rgba(0,0,0,.78);color:#fff;font-size:14px;line-height:1.6;
    padding:11px 22px;border-radius:4px;
    opacity:0;visibility:hidden;transition:all .18s;pointer-events:none;
}
.sm-toast.show{opacity:1;visibility:visible;transform:translate(-50%,-50%) scale(1)}
.sm-toast.err{background:rgba(199,0,11,.92)}

/* ---------- 轻量确认框（替代 layer.confirm）---------- */
.sm-confirm{position:fixed;inset:0;z-index:99999;display:none}
.sm-confirm.show{display:block}
.sm-confirm-mask{position:absolute;inset:0;background:rgba(0,0,0,.35)}
.sm-confirm-box{
    position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
    width:340px;max-width:86vw;background:#fff;border-radius:5px;
    padding:24px 22px 18px;box-shadow:0 6px 30px rgba(0,0,0,.18);
}
.sm-confirm-text{font-size:14px;color:var(--txt);line-height:1.7;text-align:center;margin-bottom:20px}
.sm-confirm-btns{display:flex;gap:10px;justify-content:center}
.sm-confirm-btns .sm-btn{min-width:88px;padding:0 18px}

/* ---------- 响应式 ---------- */
@media (max-width:992px){
    .sm-mc{max-width:none;padding:14px 0 6px}
    .sm-mc-nav a{padding:6px 12px;font-size:13px}
}
@media (max-width:600px){
    .sm-mc-title{font-size:19px}
    .sm-card{padding:16px}
    .sm-grid{grid-template-columns:1fr}
    .sm-grid-item{flex-direction:column;gap:2px}
    .sm-grid-item label{width:auto}
    .sm-mc-card{flex-direction:column;gap:12px}
    .sm-archive-head{flex-direction:column;align-items:flex-start}
    .sm-sum-num{font-size:23px}
    .sm-btn-block{height:42px;line-height:42px}
}

@media print{
    .no-print,.ph-topbar,.ph-header,.ph-nav,.ph-crumb,.ph-footer{display:none !important}
    body{background:#fff}
    .sm-cert-page{max-width:none;padding:0}
    .sm-cert-sheet{box-shadow:none}
}
@page{margin:12mm}

/* =========================================================
   首页视觉优化 · 阶段 1（2026-10-03）
   作用域：全部限定在 .ph-col 及其子级，栏目页 / 侧栏 / 抽屉不受影响
   铁律：改完必须推 header.html 的 ?v= 版本号
   ========================================================= */

/* ---------- 1. 新增设计令牌（既有 10 个变量一个不改） ---------- */
:root{
    --red-a04:#FFF8F8;        /* 行悬停底 */
    --red-a08:#FDEDED;        /* 徽标底 */
    --red-a16:#F9DEDF;        /* 浅描边 */
    --red-a30:#F0C2C4;        /* 渐隐 */
    --ink-4:#ADB2B9;          /* 日期等弱信息 */
    --line-soft:#F1F2F4;      /* 卡内发丝线 */
    --line-hard:#DCE0E5;      /* 卡边框 */
    --r-xs:4px; --r-sm:8px; --r-md:12px; --r-lg:18px; --r-pill:999px;
    --sh-1:0 1px 2px rgba(16,24,40,.04);
    --sh-2:0 2px 6px rgba(16,24,40,.05),0 10px 22px -10px rgba(16,24,40,.12);
    --ease:cubic-bezier(.22,.61,.36,1);
    --dur:.32s;
    /* 流体字阶：只给「区块标题」这类低频元素用，
       列表行/列标题保持原字号（13px/14px），否则长页面会明显变高 */
    --fs-h2:clamp(17px,.2vw + 14.5px,19px);
    --gap-block:clamp(14px,.7vw + 8px,20px);
}

/* ---------- 2. 区块壳：卡片化（圆角 + 极浅边框 + 静置阴影） ---------- */
.ph-col{
    background:#fff;
    border:1px solid var(--line-soft);
    border-radius:var(--r-md);
    box-shadow:var(--sh-1);
    margin-bottom:var(--gap-block);
    overflow:hidden;
    transition:box-shadow var(--dur) var(--ease);
}
.ph-col:hover{box-shadow:var(--sh-2)}

/* ---------- 3. 区块头部：主色渐变顶线 + 标题加粗 + 胶囊「更多」 ---------- */
.ph-col > .ph-col-head{
    position:relative;
    display:flex;align-items:center;gap:10px;
    padding:13px 16px;
    background:linear-gradient(180deg,#fff 0%,#FCFCFD 100%);
    border-bottom:1px solid var(--line-soft);
}
.ph-col > .ph-col-head:before{
    content:"";position:absolute;left:0;right:0;top:0;height:2px;
    background:linear-gradient(90deg,var(--red) 0%,var(--red-a30) 26%,transparent 62%);
}
.ph-col > .ph-col-head h3{
    font-size:var(--fs-h2);font-weight:700;color:var(--txt);
    letter-spacing:-.01em;position:relative;padding-left:0;
    display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;
}
.ph-col > .ph-col-head h3:before{content:none}
.ph-col > .ph-col-head h3 em{
    font-style:normal;color:var(--ink-4);font-size:12px;font-weight:400;
    margin-left:0;letter-spacing:0;
}
.ph-col > .ph-col-head .ph-col-more{
    margin-left:auto;font-size:12px;color:var(--txt-3);flex-shrink:0;
    display:inline-flex;align-items:center;gap:3px;
    padding:3px 9px;border-radius:var(--r-pill);border:1px solid transparent;
    transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease);
}
.ph-col > .ph-col-head .ph-col-more:hover{
    color:var(--red);background:var(--red-a04);border-color:var(--red-a16);
}

/* ---------- 4. 子栏目列标题：编号徽标（counter 自动编号） ---------- */
.ph-col .ph-cx-grid{counter-reset:cxcol}
.ph-col .ph-cx-item h4{
    font-size:14px;color:var(--txt);font-weight:700;
    display:flex;align-items:center;gap:7px;
    padding:0;margin-bottom:9px;border-bottom:0;position:relative;
}
.ph-col .ph-cx-item h4:before{
    counter-increment:cxcol;
    content:counter(cxcol,decimal-leading-zero);
    position:static;left:auto;top:auto;width:auto;height:auto;
    font-size:10.5px;font-weight:700;line-height:1.5;color:var(--red);
    background:var(--red-a08);border:1px solid var(--red-a16);
    border-radius:var(--r-xs);padding:1px 5px;
    font-variant-numeric:tabular-nums;flex-shrink:0;
}
.ph-col .ph-cx-item h4 a{color:inherit;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ---------- 5. 列表行：发丝线分隔 + 整行悬停 + 等宽日期 ---------- */
.ph-col .ph-text-list li{
    display:flex;align-items:baseline;gap:9px;
    padding:7px 0;
    border-bottom:1px solid var(--line-soft);
    border-radius:var(--r-xs);
    font-size:13px;
    transition:background var(--dur) var(--ease);
}
.ph-col .ph-text-list li:last-child{border-bottom:0}
.ph-col .ph-text-list li:before{
    content:"";width:5px;height:5px;background:var(--line-hard);border-radius:50%;
    margin-right:0;flex-shrink:0;transform:translateY(-2px);
    transition:background var(--dur) var(--ease),transform var(--dur) var(--ease);
}
.ph-col .ph-text-list li:hover{background:var(--red-a04)}
.ph-col .ph-text-list li:hover:before{background:var(--red);transform:translateY(-2px) scale(1.35)}
.ph-col .ph-text-list li a{transition:transform var(--dur) var(--ease)}
.ph-col .ph-text-list li:hover a{transform:translateX(2px)}
.ph-col .ph-text-list .ph-date{
    margin-left:0;color:var(--ink-4);font-size:11.5px;
    flex-shrink:0;font-variant-numeric:tabular-nums;letter-spacing:.02em;
}
/* c5/c6 列窄，行内间距同步收紧，避免文字被挤断 */
.ph-col .ph-cx-grid.c5 .ph-text-list li,
.ph-col .ph-cx-grid.c6 .ph-text-list li{padding:7px 0;gap:7px}

/* ---------- 6. 空状态占位：斜纹底，与内容行明显区分 ---------- */
.ph-col .ph-text-list li.ph-cx-none,
.ph-col .ph-cx-item .ph-cx-none{
    border-bottom:0;background:repeating-linear-gradient(45deg,#FAFAFB 0 6px,#F5F6F7 6px 12px);
    border-radius:var(--r-sm);color:var(--txt-3);font-size:12px;
    padding:16px 0;text-align:center;justify-content:center;
}
.ph-col .ph-text-list li.ph-cx-none:before{display:none}

/* ---------- 7. 三级栏目标签：药丸式 ---------- */
.ph-col .ph-cx-item .ph-subtags a{
    font-size:11.5px;background:#F6F7F9;border:1px solid var(--line-soft);
    padding:2px 9px;border-radius:var(--r-pill);line-height:18px;
    transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease);
}
.ph-col .ph-cx-item .ph-subtags a:hover{background:var(--red);border-color:var(--red);color:#fff}

/* ---------- 8. 空块自动折叠（:has()，不支持则整体失效 ⇒ 退回现状） ----------
   注意：规范明确禁止 :has() 嵌套（:has() 内部不得再出现 :has()），
        所以一律用「正向写：有真实内容才保留」，否则整条规则会被解析器丢弃。
   覆盖的边界：
     ① 所有列都空（模板 {if} 只能判断单列，判断不到）   ② 有子栏目但子栏目全空
     ③ 双栏 / 图文卡 / 时间轴 块完全没内容（如「专委会」） */
.ph-col .ph-cx-item:has(.ph-cx-none){display:none}
.ph-col:has(.ph-cx-grid):not(:has(.ph-text-list li:not(.ph-cx-none))){display:none}
.ph-col:has(.ph-duo):not(:has(.ph-text-list li)){display:none}
.ph-col:has(.ph-grid):not(:has(.ph-card)){display:none}
.ph-col:has(.ph-timeline):not(:has(.ph-timeline-item)){display:none}

/* ---------- 9. 图文混排（A 阶段：仅「商机」「云南旅游」两块开了图片输出） ----------
   数据前提：首页「最新一条」常常无图（实测商机 4 列首条全部无图、云南旅游 3/4 列）。
            所以不能只取第 1 条，而是在「前 3 条」里找第一条有图的。
   落地：模板里每条 li 仅在 $hit56.thumb / $hit102.thumb 非空时输出一个 .ph-li-pic。
   ⚠ 本节 :has() 一律不嵌套。CSS 没有「前向兄弟选择器」，无法直接表达「第一个含图的」，
     只能用「父级 :not(:has(...)) 表示前面几行都没有图」逐位穷举（前 3 条 → 3 条并列规则）。 */

/* 9.1 默认全部隐藏 —— 浏览器不支持 :has() 时本节整体失效 ⇒ 维持现状（纯文字），不会破版 */
.ph-col .ph-text-list > li > .ph-li-pic{display:none}

/* 9.2 命中「前 3 条中第一条含图的 li」：图跨整行，标题左·日期右并排
       （注：不能用 flex-direction:column —— 那样 li:before 的圆点会成为首个 flex item 独占一行，
        视觉上变成「圆点/图/标题/日期」4 行；改 grid 后为 2 行） */
.ph-col .ph-text-list > li:nth-child(1):has(> .ph-li-pic),
.ph-col .ph-text-list:not(:has(> li:nth-child(1) > .ph-li-pic)) > li:nth-child(2):has(> .ph-li-pic),
.ph-col .ph-text-list:not(:has(> li:nth-child(1) > .ph-li-pic)):not(:has(> li:nth-child(2) > .ph-li-pic)) > li:nth-child(3):has(> .ph-li-pic){
    display:grid;grid-template-columns:minmax(0,1fr) auto;
    column-gap:10px;row-gap:7px;align-items:baseline;
    padding:8px 10px 11px;
    background:#F8F9FB;border-radius:var(--r-md);border-bottom-color:transparent;
}
.ph-col .ph-text-list > li:nth-child(1):has(> .ph-li-pic) > a,
.ph-col .ph-text-list:not(:has(> li:nth-child(1) > .ph-li-pic)) > li:nth-child(2):has(> .ph-li-pic) > a,
.ph-col .ph-text-list:not(:has(> li:nth-child(1) > .ph-li-pic)):not(:has(> li:nth-child(2) > .ph-li-pic)) > li:nth-child(3):has(> .ph-li-pic) > a{
    font-size:14px;font-weight:700;line-height:1.5;
}

/* 9.3 同一条的图片从隐藏改为显示（16:10 统一裁切，避免老图比例五花八门撑破版；
       实测原图体积 4.8KB~618KB 差 128 倍，必须靠 object-fit 兜底） */
.ph-col .ph-text-list > li:nth-child(1):has(> .ph-li-pic) > .ph-li-pic,
.ph-col .ph-text-list:not(:has(> li:nth-child(1) > .ph-li-pic)) > li:nth-child(2):has(> .ph-li-pic) > .ph-li-pic,
.ph-col .ph-text-list:not(:has(> li:nth-child(1) > .ph-li-pic)):not(:has(> li:nth-child(2) > .ph-li-pic)) > li:nth-child(3):has(> .ph-li-pic) > .ph-li-pic{
    display:block;width:100%;aspect-ratio:16/10;object-fit:cover;
    border-radius:var(--r-sm);background:var(--line-soft);
    grid-column:1 / -1;
}

/* 9.4 图卡行内不再显示列表圆点（5px 圆点在图卡里纯属噪声，且会占掉一行；9.2 已改 grid，
       这里再兜一层，确保 :before 不参与布局） */
.ph-col .ph-text-list > li:nth-child(1):has(> .ph-li-pic):before,
.ph-col .ph-text-list:not(:has(> li:nth-child(1) > .ph-li-pic)) > li:nth-child(2):has(> .ph-li-pic):before,
.ph-col .ph-text-list:not(:has(> li:nth-child(1) > .ph-li-pic)):not(:has(> li:nth-child(2) > .ph-li-pic)) > li:nth-child(3):has(> .ph-li-pic):before{
    display:none;
}

/* ---------- 10. 无障碍：系统「减少动态效果」时关闭全部过渡 ---------- */
@media (prefers-reduced-motion:reduce){
    .ph-col,.ph-col *{transition:none !important}
}

/* ---------- 11. 会员档案页（2026-10-11 新增） ---------- */
/* 档案页 = 账号级可编辑表单 + 多企业卡片 + 智能预填，见
   docs/20261011/会员档案与入会流程_最终可执行方案_20261011.md */

/* 11.1 警告态提示条（档案未完成时置顶） */
.sm-alert.sm-alert-warn{
    background:#FFF8E6;border-left-color:#E6A23C;color:#8A5A00;
}
.sm-alert.sm-alert-warn b{color:#8A5A00}

/* 11.2 可折叠块（更多资料）——用原生 details，无需 JS */
.sm-fold{
    margin-top:10px;border:1px solid var(--line-soft);border-radius:var(--r-sm);
    background:#fff;overflow:hidden;
}
.sm-fold > summary{
    padding:10px 14px;cursor:pointer;font-size:14px;font-weight:600;color:var(--txt);
    list-style:none;user-select:none;
}
.sm-fold > summary::-webkit-details-marker{display:none}
.sm-fold > summary:before{
    content:"\25B8";display:inline-block;margin-right:8px;color:var(--red);
    transition:transform .18s ease;
}
.sm-fold[open] > summary:before{transform:rotate(90deg)}
.sm-fold[open] > summary{border-bottom:1px solid var(--line-soft)}
.sm-fold > .sm-form-grid,
.sm-fold > .sm-sub-title{padding:0 14px}

/* 11.3 小标题（表单分段） */
.sm-sub-title{
    margin:16px 0 10px;font-size:14px;font-weight:600;color:var(--txt);
    padding-left:9px;border-left:3px solid var(--red);line-height:1.2;
}

/* 11.4 智能预填工具条 + 候选列表 */
.sm-pick-bar{
    display:flex;flex-wrap:wrap;align-items:center;gap:8px;
    padding:10px 12px;margin-bottom:8px;
    background:var(--line-soft,#F7F8FA);border:1px dashed var(--line-soft);border-radius:var(--r-sm);
}
.sm-pick-bar .sm-input{width:auto;min-width:180px;flex:0 1 220px}
.sm-pick-result:empty{display:none}
.sm-pick-item{
    padding:10px 12px;margin-bottom:8px;border:1px solid var(--line-soft);
    border-radius:var(--r-sm);background:#fff;
}
.sm-pick-item .sm-btn{margin-top:6px}

/* 11.5 企业卡片（一对多，可增删） */
.sm-company-card{
    padding:12px 14px;margin-bottom:12px;
    border:1px solid var(--line-soft);border-radius:var(--r-sm);background:#fff;
}
.sm-company-card:nth-child(even){background:#FCFCFD}
.sm-company-head{
    display:flex;align-items:center;gap:14px;flex-wrap:wrap;
    padding-bottom:10px;margin-bottom:12px;border-bottom:1px dashed var(--line-soft);
}
.sm-company-head b{font-size:15px;color:var(--red)}
.sm-company-head .sm-btn{margin-left:auto}
.sm-company-removed{display:none}
/* 11.6 全局提醒条（档案未完善）——挂在 page-content 顶部，所有商会中心页可见 */
.sm-arch-bar{
    display:flex;align-items:center;gap:12px;flex-wrap:wrap;
    padding:10px 14px;margin:0 0 14px;
    background:#FFF8E6;border:1px solid #F3D19E;border-left:4px solid #E6A23C;
    border-radius:var(--r-sm);color:#8A5A00;font-size:14px;
}

/* ---------- 11.7 表单网格：短字段同行多列、长字段整行（2026-10-11 新增） ----------
   背景：模板大量使用 .sm-form-grid / .sm-field / .sm-field-full，
         但此前整组类「只有模板、没有样式」，导致每个字段独占一行、纵向拉得很长。
   算宽：.sm-mc 上限 1000px，.sm-card 内边距 20px ⇒ 字段区可用宽 ≈ 960px。
   minmax(220px) ⇒ 宽屏 4 列（每列 ≈226px）/ 窄屏 3~2 列 / ≤560px 单列，全自适应。
   ⚠️ grid 子项 .sm-field 的 margin-bottom 必须归零，否则与 row-gap 叠成双倍间距。
   ⚠️ 模板已标 .sm-field-full 的长字段（通讯地址/企业名称/注册地址/主营业务/简介/成就）
      必须 1 / -1 跨整行，否则会被挤成窄列。 */
.sm-form-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
    gap:12px 18px;
    align-items:start;
}
.sm-form-grid > .sm-field{margin-bottom:0}
.sm-form-grid > .sm-field-full{grid-column:1 / -1}

/* 标签：单行不折行，避免同排字段因标签行数不同而上下错位 */
.sm-form-grid .sm-field-label,
.sm-form-grid > .sm-field > label{
    display:block;margin-bottom:6px;
    font-size:13px;line-height:18px;color:var(--txt-2);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
/* 控件容器：同一格内的多个控件（如「亲属」的姓名+关系、日期+长期勾选）自动并排 */
.sm-form-grid .sm-field-ctl{display:flex;align-items:center;gap:8px}
.sm-form-grid .sm-field-ctl > .sm-input,
.sm-form-grid .sm-field-ctl > .sm-select,
.sm-form-grid .sm-field-ctl > .sm-textarea{flex:1 1 0;width:auto;min-width:0}
.sm-form-grid .sm-field-ctl > .sm-radio{flex:0 0 auto}
/* 日期控件在窄列下不再撑破（Chrome 默认给 date 输入一个固有宽度） */
.sm-form-grid .sm-field-ctl > input[type="date"]{min-width:0}

/* 「档案类型」单行项（不在 grid 内） */
.sm-form-item{margin-bottom:16px}
.sm-form-item > label{display:block;font-size:13px;color:var(--txt-2);margin-bottom:6px}

/* ---------- 11.8 档案信息网格：由固定 2 列改为自适应 2~3 列 ----------
   用于「我在各商会的会员档案」的 会员证号/会员类型/入会日期… 短项列表。 */
.sm-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(290px,1fr));
    gap:0 22px;
}

/* ---------- 11.9 底部保存区：与字段区用分隔线断开，主按钮回归站点红 ---------- */
.sm-form-actions{
    display:flex;align-items:center;gap:12px;flex-wrap:wrap;
    padding-top:16px;margin-top:18px;border-top:1px solid var(--line);
}
.sm-form-actions .btn.btn-primary{
    height:40px;line-height:40px;padding:0 30px;font-size:15px;border-radius:4px;
    background:var(--red);border:1px solid var(--red);color:#fff;
}
.sm-form-actions .btn.btn-primary:hover{
    background:var(--red-dark);border-color:var(--red-dark);color:#fff;
}

/* ---------- 11.10 卡片标题内的说明小字（内联化） ----------
   背景：.sm-mc-tip 在「我的商会」列表里是整行提示条（带底色/左边框），
         但模板把它放进了 .sm-card-title（标题行）里，
         结果标题下多出整行黄条，喧宾夺主。
   处理：限定在 .sm-card-title 内退化为无底色的弱化小字，不改动 .sm-mc-tip 本身。 */
.sm-card-title .sm-mc-tip{
    display:inline;margin:0 0 0 10px;padding:0;border:0;background:none;
    font-size:12px;font-weight:400;line-height:inherit;color:var(--txt-3);
}
.sm-card-title .sm-mc-tip.bad{background:none;color:var(--red)}

@media (max-width:560px){
    .sm-form-grid{grid-template-columns:1fr}
    .sm-grid{grid-template-columns:1fr}
}
.sm-arch-bar .sm-btn{margin-left:auto}

/* ==========================================================================
   商会通用页专用页头（2026-10-16 上线）
   场景：sm_mb/pc/smmb_xsdsh/home/simiao/chamber_show.html（引用 home/chamber_header.html）
   结构：① 主站栏目条（置顶 · 深石墨色）→ ② 双 Logo 品牌区 → ③ 商会子栏目条（凤凰红）
   约束：选择器全部带 --portal / --chamber / .ph-chbrand / .ph-sitelink 修饰，
         只有 chamber_header.html 会输出这些类 ⇒ 对主站其它页面零影响。
   ========================================================================== */

/* ---------- ① 主站栏目条：置顶 + 吸顶，改深色以区别于商会红条 ---------- */
/* ★ 2026-10-16 三改：需求「页面向上滚动时菜单浮动在最顶部」⇒ position:sticky。
   层级取 150：高于正文/卡片（无定位）与 .ph-nav-drop(99)，低于
   .ph-nav-toggler(200)、抽屉遮罩(300)/抽屉(301) ⇒ 搜索面板与抽屉仍能覆盖它。
   html/body 无 overflow 设置（已核 xsdsh.css 22 行起），sticky 不会被裁掉。 */
.ph-nav--portal{background:#2B2B2B;position:sticky;top:0;z-index:150}
.ph-nav--portal a.ph-nav-item{height:42px;line-height:42px;padding:0 20px;font-size:14px}
.ph-nav--portal a.ph-nav-item:hover{background:var(--red)}
.ph-nav--portal a.ph-nav-item.on{background:var(--red)}
/* 桌面端「当前栏目」的白色下三角会扎进下方品牌区 ⇒ 顶部条只保留红底选中态 */
.ph-nav--portal a.ph-nav-item.on:after{display:none}
.ph-nav--portal .ph-nav-drop{top:42px}
.ph-nav--portal .ph-mnav-toggle{line-height:42px;font-size:20px}

/* ---------- ② 双 Logo 品牌区 ---------- */
/* 2026-10-16 二改：商会 Logo 由 56 → 80px 放大；同时删掉商会名 /「XX官方网站」副题
   ⇒ .ph-chbrand 内只剩一个图形元素，间距全交给分隔线，故 margin-right 归零。
   商会名仍保留在 <img alt> / 方印 aria-label / <a title> 上（SEO 与读屏不丢），
   页面内还有面包屑与正文 h1 卡片承载名称。 */
/* ★ 会徽多為「横长条锁标」（实测 id3=500×92 → 5.43:1、id18=420×132 → 3.18:1；
   id3 的单标 logoimg/3.png=1000×1000 才是方形）。若写死 width/height 同值正方形，
   object-fit:contain 会按 80px 宽等比缩 ⇒ 5.43:1 的图只剩 80×15px，等于「放大了个寂寞」。
   改为「**高度驱动**」：height 定死、宽度按原比例、max-width 兜住极宽图 ⇒ 方形图 80×80、
   3.18:1 得 240×75、5.43:1 得 240×44，视觉重量都真正翻倍。 */
/* ★ 2026-10-16 三改（需求 4「logo 美化下距离、左右上下对齐」）：
   原来靠 .ph-chbrand-divider 的左右 margin 撑间距、高度写死 56px，
   与 80px 会徽不齐 ⇒ 改为「统一 gap + 分隔线随行高自适应」：
     ① .ph-container 加 gap:24px 与 min-height:88px，左侧各组间距一致、整行等高居中；
     ② 分隔线 align-self:stretch（高度=内容高-上下各 10px）⇒ 永远与会徽居中对齐；
     ③ 上下 padding 收到 12px，四边留白 = 12px（上/下）/ 15px（左/右，容器统一内缩）。 */
.ph-header--chamber{padding:12px 0}
.ph-header--chamber .ph-container{display:flex;align-items:center;gap:24px;min-height:88px}
.ph-chbrand{display:flex;align-items:center;flex:0 0 auto;min-width:0}
.ph-chbrand__logo{height:80px;width:auto;max-width:240px;object-fit:contain;flex-shrink:0;margin-right:0;display:block}
/* 未上传会徽时的兜底方印：红底白字，字取 商会/协会 首字（上游未配 type 时用「商」） */
.ph-chbrand__seal{
    width:80px;height:80px;flex-shrink:0;margin-right:0;border-radius:8px;
    background:var(--red);color:#fff;font-size:38px;font-weight:700;letter-spacing:0;
    display:flex;align-items:center;justify-content:center;
}
.ph-chbrand-divider{width:1px;height:auto;align-self:stretch;margin:10px 0;background:var(--line);flex-shrink:0}
.ph-sitelink{display:flex;align-items:center;flex-shrink:0}
.ph-sitelink__logo{width:44px;height:44px;object-fit:contain;flex-shrink:0;margin-right:10px;display:block}
.ph-sitelink__name{display:block;font-size:19px;font-weight:700;color:var(--txt);line-height:1.2}
.ph-sitelink__sub{display:block;font-size:12px;color:var(--txt-3);line-height:1.6}
.ph-sitelink:hover .ph-sitelink__name{color:var(--red)}

/* ---------- ③ 商会子栏目条（占据原主站栏目条的位置） ---------- */
.ph-nav--chamber{background:var(--red)}

@media (max-width:992px){
    /* 主站栏目条窄屏落为纵向菜单，底色必须跟着变深（否则回落 --red） */
    .ph-nav--portal .ph-nav-main{background:#2B2B2B;top:42px}
    .ph-chbrand__logo{height:64px;max-width:190px}
    .ph-chbrand__seal{width:64px;height:64px;font-size:30px}
    .ph-header--chamber .ph-container{gap:18px;min-height:72px}
    .ph-chbrand-divider{margin:8px 0}
    .ph-sitelink__logo{width:38px;height:38px;margin-right:8px}
    .ph-sitelink__name{font-size:15px}
    .ph-sitelink__sub{display:none}
}
@media (max-width:600px){
    .ph-header--chamber{padding:10px 0}
    .ph-header--chamber .ph-container{gap:12px;min-height:56px}
    /* 品牌区只剩图形：不能再 flex:1（会把新时代 Logo 顶到中间），保持原宽即可 */
    .ph-chbrand{flex:0 0 auto;overflow:visible}
    .ph-chbrand__logo{height:48px;max-width:140px}
    .ph-chbrand__seal{width:52px;height:52px;font-size:25px;border-radius:6px}
    /* 分隔线改为保留（原来靠商会名文字占位，现在只剩两个图形，需要它区分） */
    .ph-chbrand-divider{margin:6px 0}
    .ph-sitelink{margin-left:0}
    .ph-sitelink__logo{width:34px;height:34px;margin-right:0}
    .ph-sitelink__text{display:none}
}

/* ==========================================================================
   商会版页脚（2026-10-16 上线）
   场景：sm_mb/pc/smmb_xsdsh/home/chamber_footer.html（由 footer.html 在 sm_chamber_ctx 为真时引用）
   结构：关于商会（名+简介）｜快速导航（商会栏目）｜联系我们（地址/电话/传真/邮箱/官网）
   约束：选择器一律带 .ph-footer--chamber / .ph-footer-nav / .ph-footer-contact 前缀
   ========================================================================== */
.ph-footer--chamber .ph-footer-about{flex:1 1 340px;max-width:520px}
.ph-footer--chamber .ph-footer-nav{flex:0 1 220px}
.ph-footer--chamber .ph-footer-contact{flex:1 1 320px}
/* 联系方式逐行：标签定宽（4 字对齐）+ 值可换行，长地址/长邮箱不会撑破版心 */
.ph-fc-row{display:flex;gap:10px;font-size:13px;color:#A8A8A8;line-height:2}
.ph-fc-k{width:34px;flex-shrink:0;color:#8A8A8A}
.ph-fc-v{min-width:0;word-break:break-all}
.ph-fc-v a{color:#A8A8A8}
.ph-fc-v a:hover{color:#fff}
.ph-footer--chamber .ph-footer-bottom a{color:#8A8A8A}
.ph-footer--chamber .ph-footer-bottom a:hover{color:#fff}
@media (max-width:992px){
    .ph-footer--chamber .ph-footer-about,
    .ph-footer--chamber .ph-footer-nav,
    .ph-footer--chamber .ph-footer-contact{flex:1 1 100%;max-width:none}
}
