/* ============================================================
   易菇网 · 专家频道（moduleid=46）专属样式
   前缀 zj- ｜ 仅 chan_expert_index / chan_article_list /
   chan_article_show 在 $CH_MID == 46 时加载 → 零外溢
   v=zj20261008a
   ============================================================ */

/* ---------- A. 列表页：姓名下方 ~150 字简介 ---------- */
.zj-list .cn-i{ padding:18px 0; }
.zj-list .cn-bd p{
	-webkit-line-clamp:5; line-height:1.78; margin-top:9px;
	font-size:12.5px; color:var(--f-ink2); text-align:justify;
}

/* ---------- B. 右栏「专家位置」：一行 4 个，降高度 ---------- */
.zj-locs{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; }
.zj-locs a{
	display:block; text-align:center; font-size:12px; line-height:1.5;
	color:var(--f-ink2); text-decoration:none;
	padding:6px 2px; border-radius:8px;
	background:#F3F9F6; border:1px solid var(--f-line);
	overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
	transition:.18s;
}
.zj-locs a:hover{
	background:linear-gradient(135deg,var(--f-p1),var(--f-p2));
	color:#fff; border-color:transparent; transform:translateY(-1px);
}

/* ---------- C. 详情页：专家动态（正文下方 / 数据洞察上方） ---------- */
.zj-dyn{
	margin:26px 0 0; border:1px solid var(--f-line); border-radius:18px;
	background:#fff; overflow:hidden;
	box-shadow:0 10px 30px rgba(18,51,42,.045);
}
.zj-dyn-h{
	display:flex; align-items:center; gap:10px;
	padding:14px 18px; border-bottom:1px solid var(--f-line-soft);
	background:linear-gradient(90deg,#F4FBF7,#fff);
}
.zj-dyn-h b{ font-size:15px; font-weight:800; color:var(--f-ink); letter-spacing:.3px; }
.zj-dyn-h b::before{
	content:''; display:inline-block; width:4px; height:15px; margin-right:9px;
	border-radius:3px; background:linear-gradient(180deg,var(--f-p1),var(--f-p2));
	vertical-align:-2px;
}
.zj-dyn-h span{ font-size:12px; color:var(--f-ink4); }
.zj-dyn-h .more{
	margin-left:auto; flex:none; font-size:12px; font-weight:700;
	color:var(--f-p2); text-decoration:none;
}
.zj-dyn-h .more:hover{ color:var(--f-p1); }

.zj-dyn-g{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding:18px; }
.zj-dyn-i{ display:block; min-width:0; text-decoration:none; }
.zj-dyn-th{
	display:block; aspect-ratio:4/3; border-radius:12px; overflow:hidden;
	background:#F3F9F6; border:1px solid var(--f-line);
}
.zj-dyn-th img{ display:block; width:100%; height:100%; object-fit:cover; transition:.35s; }
.zj-dyn-i:hover .zj-dyn-th img{ transform:scale(1.045); }
.zj-dyn-th i{
	display:flex; align-items:center; justify-content:center; height:100%;
	font-style:normal; font-size:12px; letter-spacing:2px; color:var(--f-ink4);
}
.zj-dyn-i b{
	display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
	margin:10px 0 0; font-size:13.5px; font-weight:700; line-height:1.55; color:var(--f-ink);
}
.zj-dyn-i:hover b{ color:var(--f-p2); }
.zj-dyn-i > em{ display:block; margin-top:6px; font-style:normal; font-size:11.5px; color:var(--f-ink4); }
.zj-dyn-i b .zj-hl{ display:inline; font-size:inherit; font-weight:inherit; letter-spacing:inherit; }

/* ---------- 断点 ---------- */
@media(max-width:1400px){
	.zj-locs{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:1240px){
	.zj-dyn-g{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:900px){
	.zj-list .cn-bd p{ -webkit-line-clamp:4; }
}
@media(max-width:640px){
	.zj-locs{ grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }
	.zj-locs a{ font-size:11.5px; padding:6px 1px; }
	.zj-dyn{ margin-top:20px; border-radius:14px; }
	.zj-dyn-h{ padding:12px 14px; }
	.zj-dyn-h span{ display:none; }
	.zj-dyn-g{ grid-template-columns:1fr; gap:14px; padding:14px; }
	.zj-dyn-th{ aspect-ratio:16/9; }
	.zj-dyn-i b{ -webkit-line-clamp:2; font-size:14px; }
}

/* ---------- D. 详情页：专家动态 · 跑马灯（内容导读上方） ---------- */
.zj-hl{ font-style:normal; font-weight:800; color:#E23A3A; }
.zj-tick{
	margin:0 0 18px; border:1px solid var(--f-line); border-radius:16px;
	background:#fff; overflow:hidden;
	box-shadow:0 8px 26px rgba(18,51,42,.05);
}
.zj-tick-h{
	display:flex; align-items:center; gap:10px;
	padding:12px 16px; border-bottom:1px solid var(--f-line-soft);
	background:linear-gradient(90deg,#F4FBF7,#fff);
}
.zj-tick-h b{ flex:none; font-size:14.5px; font-weight:800; color:var(--f-ink); letter-spacing:.3px; }
.zj-tick-h b::before{
	content:''; display:inline-block; width:4px; height:14px; margin-right:8px;
	border-radius:3px; background:linear-gradient(180deg,var(--f-p1),var(--f-p2));
	vertical-align:-2px;
}
.zj-tick-h span{
	font-size:12px; color:var(--f-ink4);
	overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.zj-tick-h .more{ margin-left:auto; flex:none; font-size:12px; font-weight:700; color:var(--f-p2); text-decoration:none; }
.zj-tick-h .more:hover{ color:var(--f-p1); }
.zj-tick-vp{ position:relative; overflow:hidden; padding:12px 0; }
.zj-tick-vp::before,.zj-tick-vp::after{
	content:''; position:absolute; top:0; bottom:0; width:38px; z-index:2; pointer-events:none;
}
.zj-tick-vp::before{ left:0; background:linear-gradient(90deg,#fff 26%,rgba(255,255,255,0)); }
.zj-tick-vp::after{ right:0; background:linear-gradient(270deg,#fff 26%,rgba(255,255,255,0)); }
.zj-tick-trk{
	display:flex; align-items:center; width:max-content;
	animation:zjTickScroll 52s linear infinite;
	will-change:transform;
}
.zj-tick-vp:hover .zj-tick-trk{ animation-play-state:paused; }
@keyframes zjTickScroll{
	from{ transform:translate3d(0,0,0); }
	to{ transform:translate3d(-50%,0,0); }
}
.zj-tick-i{
	display:inline-flex; align-items:center; flex:none; padding:0 2px;
	font-size:13.5px; line-height:1.6; color:var(--f-ink2);
	text-decoration:none; white-space:nowrap; transition:color .18s;
}
.zj-tick-i::before{
	content:''; flex:none; width:5px; height:5px; margin-right:8px; border-radius:50%;
	background:linear-gradient(135deg,var(--f-p1),var(--f-p2)); opacity:.85;
}
.zj-tick-i:hover{ color:var(--f-p2); }
.zj-tick-i em{ font-style:normal; font-weight:800; color:#E23A3A; }
.zj-tick-sep{ flex:none; width:1px; height:12px; margin:0 16px; background:var(--f-line); }
@media(max-width:640px){
	.zj-tick{ margin-bottom:14px; border-radius:14px; }
	.zj-tick-h{ padding:11px 13px; gap:8px; }
	.zj-tick-h span{ display:none; }
	.zj-tick-vp{ padding:10px 0; }
	.zj-tick-vp::before,.zj-tick-vp::after{ width:22px; }
	.zj-tick-i{ font-size:12.5px; }
	.zj-tick-sep{ margin:0 11px; }
}
@media(prefers-reduced-motion:reduce){
	.zj-tick-trk{ animation:none; }
}

/* ---------- E. 全部专家页（list.php?catid=0）：按地区分组的姓名墙 ---------- */
.ea-wall{ padding:2px; }
.ea-sec{ margin-bottom:24px; }
.ea-sec:last-child{ margin-bottom:4px; }
.ea-sec-h{
	display:flex; align-items:center; gap:9px; margin:0 0 12px;
	padding-left:11px; border-left:4px solid var(--f-p1);
}
.ea-sec-h b{ font-size:16px; font-weight:800; color:var(--f-ink); letter-spacing:.3px; }
.ea-sec-h span{ font-size:12px; color:var(--f-ink4); }
.ea-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:11px; }
.ea-i{
	display:flex; align-items:center; gap:10px; min-width:0;
	padding:9px 11px; border:1px solid var(--f-line); border-radius:12px;
	background:#fff; text-decoration:none; transition:.2s;
}
.ea-i:hover{ border-color:var(--f-p1); box-shadow:0 8px 20px rgba(18,51,42,.09); transform:translateY(-2px); }
.ea-i img{
	width:42px; height:42px; flex:none; border-radius:50%;
	object-fit:cover; background:#F3F9F6;
}
.ea-i .ea-ph{
	width:42px; height:42px; flex:none; border-radius:50%;
	display:flex; align-items:center; justify-content:center;
	background:linear-gradient(135deg,var(--f-p1),var(--f-p2)); color:#fff;
	font-size:17px; font-weight:700;
}
.ea-i b{
	min-width:0; font-size:14px; font-weight:600; line-height:1.35; color:var(--f-ink);
	overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
	word-break:normal; overflow-wrap:break-word;
}
.ea-i:hover b{ color:var(--f-p2); }
@media(max-width:900px){
	.ea-grid{ grid-template-columns:repeat(auto-fill,minmax(132px,1fr)); gap:9px; }
	.ea-i{ padding:8px 9px; gap:8px; }
	.ea-i img,.ea-i .ea-ph{ width:36px; height:36px; }
	.ea-i b{ font-size:13px; }
}
@media(max-width:640px){
	.ea-sec{ margin-bottom:18px; }
	.ea-sec-h b{ font-size:15px; }
	.ea-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
}

/* ---------- F. 首页「专家名录」：12 位两行满排（6 列） ---------- */
/* .ch-expert 在 channel2.css 是 5 列公共类 → 用专属 .zj-ml 覆盖（zj.css 后加载，同权重后胜） */
.zj-ml{ grid-template-columns:repeat(6,minmax(0,1fr)); gap:14px; }
@media(max-width:1240px){
	.zj-ml{ grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media(max-width:900px){
	.zj-ml{ grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
}
@media(max-width:640px){
	.zj-ml{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
}
