/* =========================================================
   道县生活网 - 商务蓝门户模板样式 (PC + 移动端响应式)
   ========================================================= */
:root{
    --primary:#3B82F6;          /* 浅蓝主色 */
    --primary-dark:#2563eb;     /* 深蓝 */
    --primary-deep:#1e40af;     /* 更深(渐变用) */
    --primary-light:#e9f2fd;    /* 浅蓝底 */
    --text:#333;
    --text-sub:#888;
    --border:#e4e7eb;
    --bg:#f8fafc;
    --white:#fff;
    --radius:10px;
}

html{ -webkit-text-size-adjust:100%; }
body{ background:var(--bg); color:var(--text); font:14px/1.6 "PingFang SC","Microsoft YaHei",Arial,sans-serif; padding-top:180px; }
.dx-sticky{ position:fixed; top:0; left:0; right:0; z-index:998; }
a{ color:var(--primary); text-decoration:none; }
a:hover{ color:var(--primary-dark); text-decoration:none; }

/* Discuz 默认隐藏一些我们不用的骨架 */
#toptb{ background:#1a4f96; border:none; height:34px; line-height:34px; color:#cfdcf0; }
#toptb a{ color:#d6e4f7; }
#toptb .wp{ position:relative; }

/* ---------- 顶部第一行:周边城市/设为首页 ---------- */
.dx-topbar{ background:#474c53 !important; color:#fff; font-size:14px; height:88px; }
.dx-topbar .inner{ max-width:1200px; margin:0 auto; padding:0 20px; display:flex; justify-content:space-between; align-items:center; height:100%; }
.dx-topbar a{ color:#fff; margin-right:22px; display:inline-flex; align-items:center; font-size:14px; }
.dx-topbar a:hover{ color:#ffd; }
.dx-topbar .left,.dx-topbar .right{ display:flex; align-items:center; }
.dx-topbar .city{ display:flex; align-items:center; }
.dx-topbar .city i{ font-style:normal; margin-right:4px; }
.dx-topbar .city .loc{ color:#fff; font-weight:700; padding:0 8px 0 4px; }
.dx-topbar .right{ display:flex; align-items:center; }

/* ---------- 顶部第二行:logo + 导航 + 搜索 + 发布(白底,品牌蓝点缀) ---------- */
.dx-header{ background:#3B82F6 !important; box-shadow:0 2px 8px rgba(30,64,175,.25); box-sizing:border-box; overflow:visible; }
.dx-header .inner{ max-width:1200px; margin:0 auto; padding:14px 16px; display:flex; align-items:center; gap:24px; }
.dx-logo{ display:flex !important; align-items:center; flex-direction:row !important; gap:16px; flex-shrink:0; }
.dx-logo a{ display:flex !important; align-items:center; flex-direction:row !important; }
.dx-logo .logo-img{ height:54px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.dx-logo .logo-img img{ height:100%; width:auto; object-fit:contain; display:block; }
.dx-logo .logo-txt{ color:#fff; line-height:1; white-space:nowrap; }
.dx-logo .logo-txt .cn{ font-size:22px; font-weight:700; letter-spacing:1px; white-space:nowrap; }
.dx-logo .logo-txt .en{ display:block; font-size:14px; color:rgba(255,255,255,.92); margin-top:5px; letter-spacing:1px; white-space:nowrap; }

.dx-nav{ display:flex; align-items:center; gap:2px; flex:1; justify-content:space-between; flex-wrap:wrap; }
#nv{ background:none !important; height:auto !important; overflow:visible !important; box-shadow:none !important; }
#nv li, #nv li.a, #nv li:hover{ background:none !important; box-shadow:none !important; border:none !important; height:auto !important; line-height:inherit !important; }
#nv a, #nv a:hover, #nv a:visited{ background:none !important; height:auto !important; }
.dx-nav ul{ display:flex; align-items:center; gap:2px; margin:0; padding:0; list-style:none; }
.dx-nav li{ list-style:none; background:none !important; }
.dx-nav a{ color:#fff; font-size:15px; padding:8px 6px; white-space:nowrap; transition:all .2s; background:none !important; position:relative; }
.dx-nav a:hover,.dx-nav a.on{ color:#ffd97a; background:none !important; }
.dx-nav a.on::after{ content:''; position:absolute; left:6px; right:6px; bottom:0; height:3px; background:#ffd97a; border-radius:2px; }

.dx-search{ display:flex; align-items:center; flex-shrink:0; background:#fff; border:1px solid var(--primary); border-radius:22px; padding:3px; overflow:hidden; margin-left:auto; }
.dx-search input{ border:none; outline:none; font-size:14px; padding:6px 10px; width:110px !important; max-width:110px; color:#333; background:transparent; }
.dx-search button{ border:none; background:var(--primary); color:#fff; width:38px; height:32px; border-radius:19px; cursor:pointer; display:flex; align-items:center; justify-content:center; font-size:16px; flex-shrink:0; }

.dx-post{ background:#fff; color:var(--primary); font-weight:600; font-size:15px; padding:10px 22px; border-radius:22px; flex-shrink:0; box-shadow:0 2px 6px rgba(0,0,0,.15); }
.dx-post:hover{ background:#eaf2fd; color:var(--primary-dark); }

/* ---------- 主体通用容器 ---------- */
.dx-container{ max-width:1200px; margin:16px auto; padding:0 16px; }

/* ---------- 上部: 左大图 + 右登录 ---------- */
.dx-hero{ display:flex; gap:16px; margin-top:16px; }
.dx-hero .hero-left{ flex:1; min-width:0; display:flex; }
.dx-banner{ position:relative; width:100%; height:100%; border-radius:var(--radius); overflow:hidden; background:var(--primary-light); box-shadow:0 2px 10px rgba(0,0,0,.08); display:flex; }
.dx-banner .slide{ display:none; width:100%; }
.dx-banner .slide.on{ display:flex; }
.dx-banner .slide > div{ height:100% !important; }
.dx-banner img{ width:100%; height:430px; object-fit:cover; display:block; }
.dx-banner .dots{ position:absolute; bottom:12px; left:0; right:0; display:flex; justify-content:center; gap:8px; }
.dx-banner .dots i{ width:9px; height:9px; border-radius:50%; background:rgba(255,255,255,.6); cursor:pointer; }
.dx-banner .dots i.on{ background:#fff; width:22px; border-radius:5px; }

.dx-hero .hero-right{ width:300px; flex-shrink:0; display:flex; flex-direction:column; gap:12px; }
.dx-hero .hero-right .dx-panel{ flex:1; display:flex; flex-direction:column; }
.dx-panel{ background:#fff; border-radius:var(--radius); padding:16px; box-shadow:0 2px 10px rgba(0,0,0,.06); }
.dx-panel .p-title{ font-size:16px; font-weight:700; color:var(--primary-dark); margin-bottom:12px; display:flex; align-items:center; }
.dx-panel .p-title::before{ content:""; width:4px; height:16px; background:var(--primary); border-radius:2px; margin-right:8px; }
.dx-login-btns{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.dx-login-btns a{ display:block; text-align:center; padding:11px 0; border-radius:8px; font-size:14px; font-weight:600; }
.dx-login-btns .btn-primary{ background:var(--primary); color:#fff; }
.dx-login-btns .btn-primary:hover{ background:var(--primary-dark); }
.dx-login-btns .btn-line{ border:1px solid var(--primary); color:var(--primary); }
.dx-login-btns .btn-line:hover{ background:var(--primary-light); }
.dx-notice-list{ list-style:none; margin:0; padding:0; }
.dx-notice-list li{ padding:7px 0; border-bottom:1px dashed #eef1f5; font-size:13px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dx-notice-list li:last-child{ border:none; }
.dx-notice-list li a{ color:#555; }
.dx-notice-list li a:hover{ color:var(--primary); }

/* ---------- 中部: 精选图文 ---------- */
.dx-section{ background:#fff; border-radius:var(--radius); padding:18px; margin-top:16px; box-shadow:0 2px 10px rgba(0,0,0,.06); }
.dx-section .s-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; }
.dx-section .s-title{ font-size:18px; font-weight:700; color:var(--primary-dark); display:flex; align-items:center; }
.dx-section .s-title::before{ content:""; width:4px; height:18px; background:var(--primary); border-radius:2px; margin-right:9px; }
.dx-section .s-more{ font-size:13px; color:var(--text-sub); }
.dx-section .s-sub{ font-size:13px; color:var(--text-sub); margin-left:14px; margin-right:auto; }
.dx-ads-area{ margin-top:16px; display:flex; flex-wrap:wrap; gap:12px; }
.dx-ad{ position:relative; height:110px; border-radius:var(--radius); overflow:hidden; display:block; text-decoration:none; box-shadow:0 2px 8px rgba(0,0,0,.08); }
.dx-ad.full{ flex:1 1 100%; height:130px; }
.dx-ad.half{ flex:1 1 47%; }
.dx-ad.third{ flex:1 1 30%; }
.dx-ad .ad-body{ width:100%; height:100%; display:flex; align-items:center; justify-content:center; color:#fff; font-size:18px; font-weight:700; letter-spacing:1px; text-shadow:0 1px 4px rgba(0,0,0,.4); }
.dx-ad .ad-tag{ position:absolute; top:0; right:0; z-index:2; background:rgba(0,0,0,.45); color:#fff; font-size:11px; line-height:1; padding:4px 8px; border-radius:0 0 0 8px; }
.dx-feed{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.dx-feed a .thumb{ aspect-ratio:3/2; background-size:cover; background-position:center; }
.dx-feed a .thumb .ph{ display:flex; width:100%; height:100%; align-items:center; justify-content:center; color:#fff; font-size:14px; }
.dx-feed-item{ background:#fff; border:1px solid var(--border); border-radius:8px; overflow:hidden; transition:box-shadow .2s; }
.dx-feed-item:hover{ box-shadow:0 4px 14px rgba(0,0,0,.1); }
.dx-feed-item .thumb{ height:230px; background:var(--primary-light); display:flex; align-items:center; justify-content:center; color:#b9d3f5; font-size:13px; overflow:hidden; }
.dx-feed-item .thumb img{ width:100%; height:100%; object-fit:cover; }
.dx-feed-item .meta, .dx-feed a .meta{ padding:10px 12px; }
.dx-feed-item .meta .t, .dx-feed a .meta .t{ font-size:14px; color:#333; font-weight:600; display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical; overflow:hidden; }
.dx-feed-item .meta .d, .dx-feed a .meta .d{ margin-top:6px; font-size:12px; color:var(--text-sub); display:flex; justify-content:space-between; }
.dx-ride{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.ride-item{ background:#fff; border:1px solid var(--border); border-radius:10px; overflow:hidden; display:flex; align-items:center; gap:12px; padding:10px; text-decoration:none; transition:box-shadow .2s; }
.ride-item:hover{ box-shadow:0 4px 14px rgba(0,0,0,.1); }
.ride-item .ride-thumb{ width:116px; height:82px; border-radius:8px; flex-shrink:0; display:block; }
.ride-item .ride-info{ display:flex; flex-direction:column; gap:6px; min-width:0; }
.ride-item .r-t{ font-size:14px; color:#333; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ride-item .r-d{ display:flex; justify-content:space-between; gap:8px; font-size:12px; color:var(--text-sub); }
/* 首页拼车：Discuz 编译会吃掉 <a> 的 class，样式丢失被拉伸；用独立规则兜底 */
.ride-thumb{ display:inline-flex !important; align-items:center; justify-content:center; width:116px; height:82px; border-radius:8px; flex-shrink:0; vertical-align:middle; overflow:hidden; }
.ride-info{ display:inline-block; vertical-align:middle; margin-left:12px; max-width:calc(100% - 140px); }
.ride-info .r-t{ font-size:14px; color:#333; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ride-info .r-d{ display:flex; justify-content:space-between; gap:8px; font-size:12px; color:var(--text-sub); margin-top:6px; }
a:has(> .ride-thumb){ display:flex; align-items:center; gap:12px; text-decoration:none; color:inherit; }
a:has(> .ride-thumb) .ride-info{ margin-left:0; flex:1; min-width:0; }
.dx-users{ position:relative; overflow:hidden; padding:6px 42px; }
.dx-users-track{ display:flex; gap:24px; width:max-content; }
.dx-users-track .dx-dup{ display:flex; gap:24px; }
.dx-nav-btn{ position:absolute; top:50%; transform:translateY(-50%); width:34px; height:34px; border-radius:50%; background:#3B82F6; color:#fff; border:none; font-size:22px; line-height:1; cursor:pointer; z-index:2; box-shadow:0 2px 8px rgba(30,64,175,.35); }
.dx-nav-btn:hover{ background:#2563EB; }
.dx-nav-btn.prev{ left:4px; }
.dx-nav-btn.next{ right:4px; }
.user-card{ display:flex; flex-direction:column; align-items:center; gap:8px; flex-shrink:0; text-decoration:none; color:inherit; }
.user-ava{ width:70px; height:70px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-size:26px; font-weight:700; box-shadow:0 2px 8px rgba(0,0,0,.12); }
.user-name{ font-size:13px; color:#444; white-space:nowrap; }
@media(max-width:900px){
	.dx-users{ padding:6px 2px; }
	.dx-users-track{ flex-wrap:wrap; width:100%; justify-content:space-around; row-gap:16px; }
	.dx-users-track .dx-dup{ display:none; }
	.dx-nav-btn{ display:none; }
	.user-ava{ width:48px; height:48px; font-size:17px; }
	.user-name{ font-size:12px; }
}
.dy-phones{ display:grid; grid-template-columns:repeat(8,1fr); gap:10px; }
.dy-phone, .dy-phones a{ border-radius:8px; padding:14px 6px; text-align:center; color:#fff; text-decoration:none; display:block; }
.dy-phone .n, .dy-phones a .n{ font-size:13px; font-weight:600; display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dy-phone .t, .dy-phones a .t{ font-size:12px; opacity:.92; display:block; margin-top:4px; letter-spacing:.5px; }
.dy-imgs{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:16px; }
.dy-img{ border:1px solid var(--border); border-radius:10px; overflow:hidden; background:#fff; text-decoration:none; transition:box-shadow .2s; }
.dy-img:hover{ box-shadow:0 4px 14px rgba(0,0,0,.1); }
.dy-img .thumb{ height:150px; background-size:cover; background-position:center; }
.dy-img .meta{ padding:10px 12px; }
.dy-img .meta .n{ font-size:14px; font-weight:600; color:#333; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dy-img .meta .t{ font-size:12px; color:var(--text-sub); margin-top:4px; }
@media(max-width:900px){
	.dy-phones{ grid-template-columns:repeat(4,1fr); gap:8px; }
	.dy-phone{ padding:10px 4px; }
	.dy-phone .n{ font-size:12px; }
	.dy-phone .t{ font-size:11px; }
	.dy-imgs{ grid-template-columns:repeat(2,1fr); gap:10px; }
}
@media(max-width:480px){ .dy-phones{ grid-template-columns:repeat(3,1fr); } }
.dx-jobs{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.job-item{ border:1px solid var(--border); border-radius:10px; overflow:hidden; background:#fff; text-decoration:none; transition:box-shadow .2s; }
.job-item:hover{ box-shadow:0 4px 14px rgba(0,0,0,.1); }
.job-item .thumb{ height:210px; background-size:cover; background-position:center; }
.job-item .meta{ padding:10px 12px; }
.job-item .j-t{ font-size:15px; font-weight:600; color:#333; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.job-item .j-salary{ font-size:14px; color:#ef4444; font-weight:700; margin-top:6px; }
.job-item .j-d{ font-size:12px; color:var(--text-sub); margin-top:5px; display:flex; justify-content:space-between; }
@media(max-width:900px){ .dx-jobs{ grid-template-columns:repeat(2,1fr); gap:10px; } }
@media(max-width:480px){ .dx-jobs{ grid-template-columns:1fr; } }
.dx-resume{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.resume-item{ background:#fff; border:1px solid var(--border); border-radius:10px; padding:14px; text-decoration:none; transition:box-shadow .2s; }
.resume-item:hover{ box-shadow:0 4px 14px rgba(0,0,0,.1); }
.resume-item .r-head{ display:flex; align-items:center; gap:10px; }
.resume-item .r-ava{ width:52px; height:52px; border-radius:50%; color:#fff; font-size:20px; font-weight:700; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.resume-item .r-name{ font-size:15px; font-weight:600; color:#333; }
.resume-item .r-name em{ font-style:normal; font-size:12px; color:var(--text-sub); font-weight:400; margin-left:4px; }
.resume-item .r-tags{ margin-top:4px; display:flex; gap:6px; flex-wrap:wrap; }
.resume-item .r-tags span{ font-size:11px; color:#3B82F6; background:#eef4ff; border:1px solid #d6e4ff; padding:1px 6px; border-radius:4px; }
.resume-item .r-want{ margin-top:10px; font-size:13px; color:#333; }
.resume-item .r-meta{ margin-top:6px; display:flex; justify-content:space-between; gap:8px; font-size:12px; color:var(--text-sub); }
.resume-item .r-meta .r-salary{ color:#ef4444; font-weight:700; font-size:13px; }
.resume-item .r-exp{ margin-top:8px; padding-top:8px; border-top:1px dashed var(--border); font-size:12px; color:#999; }
@media(max-width:900px){ .dx-resume{ grid-template-columns:repeat(2,1fr); gap:10px; } }
@media(max-width:560px){ .dx-resume{ grid-template-columns:1fr; } }
.dx-forums{ display:flex; flex-wrap:wrap; gap:12px; }
.forum-item{ flex:1 1 165px; min-width:150px; max-width:none; background:#fff; border:1px solid var(--border); border-radius:10px; padding:14px 12px; display:flex; align-items:center; gap:10px; text-decoration:none; transition:box-shadow .2s; }
.forum-item:hover{ box-shadow:0 4px 14px rgba(0,0,0,.1); }
.forum-item .f-ico{ width:38px; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.forum-item .f-name{ font-size:14px; color:#333; white-space:nowrap; }
.forum-item > a{ display:flex; align-items:center; gap:10px; flex:1; text-decoration:none; color:inherit; }
@media(max-width:900px){ .forum-item{ flex:1 1 calc(33.33% - 12px); min-width:120px; } }
@media(max-width:560px){ .forum-item{ flex:1 1 calc(50% - 12px); min-width:0; max-width:none; } }
.dx-ann{ background:#fff; border:1px solid var(--border); border-radius:12px; padding:8px 22px; display:grid; grid-template-columns:repeat(2,1fr); column-gap:28px; }
.ann-item{ display:flex; justify-content:space-between; align-items:center; padding:11px 4px; border-bottom:1px dashed #eef0f3; text-decoration:none; }
.ann-item:nth-child(n+7){ border-bottom:none; }
.ann-item:last-child{ border-bottom:none; }
.ann-item .ann-t{ font-size:14px; color:#333; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; flex:1; }
.ann-item:hover .ann-t{ color:#3B82F6; }
.ann-item .ann-d{ font-size:12px; color:#999; margin-left:16px; flex-shrink:0; }
.dx-fl{ background:#fff; border:1px solid var(--border); border-radius:12px; padding:16px 22px; }
.fl-list{ display:flex; flex-wrap:wrap; gap:10px 22px; }
.fl-item{ font-size:14px; color:#666; text-decoration:none; }
.fl-item:hover{ color:#3B82F6; }
.dx-adfull{ margin-top:18px; border-radius:12px; overflow:hidden; }
.dx-adfull img{ width:100%; height:130px; object-fit:cover; display:block; }
@media(max-width:640px){ .dx-adfull img{ height:90px; } .dx-ann{ grid-template-columns:1fr; padding:8px 16px; } .ann-item:nth-child(n+7){ border-bottom:1px dashed #eef0f3; } .ann-item:last-child{ border-bottom:none; } }

/* ---------- 横向广告区(多个广告位,从左到右,可扩展) ---------- */
.dx-ads-row{ display:flex; gap:12px; margin-top:16px; }
.dx-ads-row .ad{ flex:1; min-width:0; min-height:90px; background:var(--primary-light); border:1px dashed #bcd6f3; border-radius:var(--radius); display:flex; align-items:center; justify-content:center; color:#8fb4e4; font-size:14px; overflow:hidden; }
.dx-ads-row .ad img{ width:100%; height:100%; object-fit:cover; display:block; }
.dx-ads-row .ad a{ display:block; width:100%; height:100%; }

/* ---------- 栏目图标墙 ---------- */
.dx-cats{ display:grid; grid-template-columns:repeat(6,1fr); gap:10px; }
.dx-cat, .dx-cats a{ background:#f7faff; border:1px solid var(--border); border-radius:10px; padding:16px 8px; text-align:center; color:#333; transition:all .2s; display:block; }
.dx-cat:hover, .dx-cats a:hover{ border-color:var(--primary); color:var(--primary); background:#fff; box-shadow:0 3px 10px rgba(30,124,232,.12); transform:translateY(-2px); }
.dx-cat .ico, .dx-cats a .ico{ font-size:28px; display:block; margin-bottom:6px; line-height:1; }
.dx-cat .ico svg, .dx-cats a .ico svg{ display:block; margin:0 auto; }
.dx-cat .nm, .dx-cats a .nm{ font-size:14px; font-weight:600; }

/* ---------- 右侧登录面板 ---------- */
.dx-user{ text-align:center; }
.dx-user .u-avatar{ width:56px; height:56px; border-radius:50%; background:var(--primary-light); margin:0 auto 8px; display:flex; align-items:center; justify-content:center; font-size:24px; color:var(--primary); overflow:hidden; }
.dx-user .u-avatar img{ width:100%; height:100%; border-radius:50%; object-fit:cover; }
.dx-user .u-name{ font-weight:600; color:#333; }
.dx-user .u-link{ margin-top:10px; font-size:13px; color:var(--text-sub); }

/* ---------- 页脚 ---------- */
.dx-footer{ background:var(--primary); color:#eaf2fc; margin-top:24px; font-size:13px; }
.dx-footer-inner{ max-width:1200px; margin:0 auto; padding:0 16px; }
.dx-frow{ display:grid; grid-template-columns:repeat(5,1fr); gap:20px; text-align:left; padding:28px 0 12px; }
.dx-fcol h4{ font-size:15px; color:#fff; margin:0 0 12px; font-weight:600; }
.dx-fcol a{ display:block; color:#dbeafe; margin:0 0 8px; text-decoration:none; font-size:13px; }
.dx-fcol a:hover{ color:#ffe9b0; }
.dx-fcol .dx-fwechat{ display:block; color:#dbeafe; font-size:13px; margin-bottom:8px; }
.dx-fbar{ background:rgba(0,0,0,.14); margin-top:14px; padding:14px 0; font-size:12px; color:#dbeafe; text-align:center; }
.dx-fbar-inner{ max-width:1200px; margin:0 auto; padding:0 16px; line-height:1.9; }
.dx-fbar a{ color:#dbeafe; }
.dx-fbar a:hover{ color:#ffe9b0; }
@media(max-width:640px){ .dx-frow{ grid-template-columns:repeat(2,1fr); gap:16px; } }

/* ---------- 移动端底部导航 ---------- */
.dx-mnav{ display:none; }
#scrolltop{ display:none !important; }
.dx-service{ position:fixed; right:12px; top:50%; transform:translateY(-50%); z-index:999; display:flex; flex-direction:column; gap:8px; }
.sv-item{ width:46px; height:46px; border-radius:8px; background:var(--primary); color:#fff; display:flex; align-items:center; justify-content:center; text-decoration:none; box-shadow:0 2px 8px rgba(0,0,0,.25); position:relative; transition:background .2s, box-shadow .2s, transform .2s; }
.sv-item:hover{ background:#5aa9ff; box-shadow:0 4px 14px rgba(0,0,0,.28); transform:translateY(-2px); }
.sv-item svg{ width:22px; height:22px; }
.sv-item .sv-qqtxt{ font-weight:700; font-size:15px; font-style:normal; }
.sv-top svg{ width:27px; height:27px; }
.sv-item .sv-toparr{ font-size:20px; font-style:normal; font-weight:700; }
.sv-wx .sv-wx-qr{ position:absolute; right:56px; top:50%; transform:translateY(-50%); width:128px; background:#fff; color:#333; border-radius:10px; padding:10px; box-shadow:0 4px 14px rgba(0,0,0,.25); display:none; text-align:center; }
.sv-wx .sv-wx-qr img{ width:106px; height:106px; display:block; border-radius:6px; }
.sv-wx .sv-wx-qr em{ display:block; font-style:normal; font-size:12px; color:#666; margin-top:6px; }
.sv-wx:hover .sv-wx-qr{ display:block; }
@media(max-width:640px){ .dx-service{ display:none; } }

/* =========================================================
   响应式: <=900px 平板 / <=640px 手机
   ========================================================= */
@media (max-width:900px){
    .dx-hero{ flex-direction:column; }
    .dx-hero .hero-right{ width:100%; flex-direction:row; flex-wrap:wrap; }
    .dx-hero .hero-right .dx-panel{ flex:1 1 45%; }
    .dx-feed{ grid-template-columns:repeat(2,1fr); }
}

@media (max-width:640px){
    .dx-topbar{ display:none; }            /* 手机隐藏最顶条 */
    .dx-sticky{ position:sticky; top:0; }
    .dx-header{ height:auto; }
    body{ padding-top:0; width:100%; min-width:0; overflow-x:hidden; }
    #mu, #hd, #wp, .dx-sticky, .dx-header, .dx-footer, .dx-fbar{ width:100% !important; max-width:100% !important; box-sizing:border-box; }
    #wp{ width:100vw !important; max-width:100vw !important; }
    .ride-thumb{ width:64px !important; height:48px !important; font-size:15px !important; }
    .ride-info{ max-width:none; margin-left:10px; }
    .ride-info .r-t{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:230px; }
    .dx-header .inner{ padding:10px 12px; flex-wrap:wrap; max-width:100%; }
    .dx-logo{ order:1; }
    .dx-logo .logo-img{ width:38px; height:38px; }
    .dx-logo .logo-txt .cn{ font-size:18px; }
    .dx-logo .logo-txt .en{ display:none; }
    .dx-search{ order:2; flex:1 0 100%; width:100%; max-width:100%; min-width:0; margin-left:0; margin-top:8px; }
    .dx-search input{ width:100% !important; max-width:none; }
    .dx-post-wrap{ order:3; margin-left:auto; }
    .dx-burger{ order:4; }
    .dx-nav{ order:5; width:100%; flex:0 0 100%; justify-content:flex-start; gap:4px; flex-wrap:nowrap; padding:6px 0 2px; overflow-x:auto !important; scrollbar-width:none; }
    .dx-nav ul{ flex-wrap:nowrap; }
    .dx-nav::-webkit-scrollbar{ display:none; }
    .dx-nav a{ font-size:14px; padding:6px 12px; }
    .dx-post{ padding:9px 16px; font-size:14px; }
    .dx-banner img{ height:230px; }
    .dx-banner .slide > div{ height:230px !important; min-height:0 !important; }
    .dx-ad{ flex:1 1 100%; height:88px; }
    .dx-feed{ grid-template-columns:repeat(2,1fr); gap:8px; }
    .dx-feed-item .thumb{ height:110px; }
    .dx-container, #ct{ margin:10px 0 !important; padding:0 10px; width:100vw !important; max-width:100vw !important; box-sizing:border-box; }
    .dx-section{ padding:12px; }
    .dx-ads{ min-height:60px; }
    .dx-cats{ grid-template-columns:repeat(3,1fr); gap:8px; }
    .dx-ads-row{ flex-wrap:wrap; gap:8px; }
    .dx-ads-row .ad{ flex:1 1 45%; min-height:60px; }
    /* 底部导航 */
    .dx-mnav{ display:flex; position:fixed; bottom:0; left:0; right:0; background:#fff; border-top:1px solid var(--border); z-index:99; }
    .dx-mnav a{ flex:1; text-align:center; padding:8px 0 6px; color:#666; font-size:12px; display:flex; flex-direction:column; align-items:center; }
    .dx-mnav a i{ font-size:20px; font-style:normal; line-height:1; margin-bottom:3px; }
    .dx-mnav a.on{ color:var(--primary); }
    .dx-footer{ padding-bottom:64px; }     /* 底部导航不遮页脚 */
}

/* ===== 列表页 ===== */
.boardnav #ct{ max-width:1200px; margin:0 auto; }
.boardnav #ct .mn{ width:100%; }
.boardnav .bm.bml{ border:1px solid var(--border); border-radius:12px; background:#fff; box-shadow:0 1px 6px rgba(16,24,40,.04); border-left:4px solid var(--primary); margin-bottom:14px; }
.boardnav .bm.bml .bm_h{ padding:16px 20px; border-bottom:1px solid #eef0f3; display:flex; align-items:center; }
.boardnav .bm.bml h1.xs2{ font-size:20px; color:#1f2937; display:flex; align-items:center; margin:0; }
.boardnav .bm.bml h1.xs2 a{ color:#1f2937; }
.boardnav .bm.bml .dx-fd-ico{ margin-right:12px; display:inline-flex; align-items:center; }
.boardnav .bm.bml h1.xs2 .xs1{ font-size:12px; color:#8a94a6; font-weight:400; margin-left:14px; }
.boardnav .bm.bml .bm_h .y a{ color:#5a6478; font-size:12px; }
#pgt.pgs{ background:none; border:none; padding:10px 0 14px; }
#pgt .pgsbtn, #pgt .pgb a{ background:var(--primary); color:#fff; border-radius:6px; padding:7px 16px; font-size:14px; line-height:1.4; border:none; }
#pgt .pgsbtn:hover, #pgt .pgb a:hover{ background:#2a6ee0; color:#fff; }
#thread_types.ttp{ background:#fff; border:1px solid var(--border); border-radius:10px; padding:6px 10px; margin-bottom:12px; }
#thread_types.ttp li{ margin:0 4px; }
#thread_types.ttp li a{ color:#5a6478; font-size:13px; }
#thread_types.ttp li.a a, #thread_types.ttp li.xw1 a{ color:var(--primary); font-weight:600; }
#threadlist.tl{ border:1px solid var(--border); border-radius:12px; background:#fff; overflow:hidden; box-shadow:0 1px 6px rgba(16,24,40,.04); }
#threadlist .th{ background:#f5f8fc; border-bottom:1px solid var(--border); }
#threadlist .th th, #threadlist .th td{ color:#5a6478; font-size:12px; }
#threadlist .th .tf a{ color:#5a6478; }
#threadlist .th .tf a.xw1, #threadlist .th .tf .xi2{ color:var(--primary); }
#threadlist #threadlisttableid tr{ border-bottom:1px solid #f0f2f5; }
#threadlist #threadlisttableid tr:hover{ background:#f7faff; }
#threadlist #threadlisttableid th a.s.xst{ color:#1f2937; font-size:14px; }
#threadlist #threadlisttableid th a.s.xst:hover{ color:var(--primary); }
#threadlist #threadlisttableid tr.new th a.s.xst{ color:var(--primary); }
#threadlist td.by{ color:#8a94a6; font-size:12px; }
#threadlist td.by cite a{ color:#5a6478; }
#threadlist td.num{ color:#8a94a6; font-size:12px; }
.pg a, .pg strong{ border:1px solid var(--border); border-radius:6px; padding:4px 10px; margin-left:4px; color:#5a6478; font-size:13px; background:#fff; }
.pg a:hover{ border-color:var(--primary); color:var(--primary); }
.pg strong{ background:var(--primary); border-color:var(--primary); color:#fff; }
.boardnav .sd .bm{ border:1px solid var(--border); border-radius:12px; background:#fff; }
@media(max-width:640px){
  .boardnav .bm.bml .bm_h{ padding:12px 14px; }
  .boardnav .bm.bml h1.xs2{ font-size:17px; }
  .boardnav .bm.bml .dx-fd-ico svg{ width:22px; height:22px; }
}

/* ===== 招聘栏目（fid=7）门户样式 ===== */
.dx-zhaopin{ display:flex; flex-direction:column; gap:16px; margin-top:14px; }
.dx-zp-sec{ background:#fff; border-radius:12px; border:1px solid #eef1f5; padding:20px; box-shadow:0 2px 10px rgba(0,0,0,.03); }
.dx-zp-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; }
.dx-zp-head h2{ font-size:20px; color:#1f2329; font-weight:700; padding-left:10px; border-left:4px solid #3B82F6; line-height:1.2; margin:0; }
.dx-zp-head h3{ font-size:16px; color:#1f2329; font-weight:700; padding-left:9px; border-left:3px solid #3B82F6; line-height:1.2; margin:0; }
.dx-zp-more{ color:#3B82F6; font-size:13px; text-decoration:none; }
.dx-zp-more:hover{ text-decoration:underline; }
.dx-zp-cats{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:16px; }
.dx-zp-cats a{ font-size:13px; color:#4b5563; background:#f4f6f9; padding:5px 12px; border-radius:20px; text-decoration:none; }
.dx-zp-cats a:hover{ color:#fff; background:#3B82F6; }
.dx-zp-cards{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.dx-zp-card{ border:1px solid #eef1f5; border-radius:10px; padding:14px 16px; background:#fafbfc; transition:all .2s; }
.dx-zp-card:hover{ border-color:#3B82F6; box-shadow:0 4px 14px rgba(59,130,246,.12); transform:translateY(-2px); }
.dx-zp-job{ font-size:15px; color:#1f2329; font-weight:600; text-decoration:none; display:block; line-height:1.4; }
.dx-zp-job:hover{ color:#3B82F6; }
.dx-zp-meta{ margin-top:10px; padding-top:10px; border-top:1px dashed #e5e9ef; font-size:12px; color:#98a2b3; display:flex; gap:14px; }
.dx-zp-coms{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.dx-zp-coms li{ border:1px solid #eef1f5; border-radius:10px; padding:16px; text-align:center; background:#fafbfc; }
.dx-zp-coms li b{ display:block; font-size:15px; color:#1f2329; margin-bottom:6px; }
.dx-zp-coms li small{ font-size:12px; color:#98a2b3; }
.dx-zp-news{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.dx-zp-ncol h4{ font-size:15px; color:#3B82F6; font-weight:700; margin:0 0 10px; }
.dx-zp-ncol ul{ list-style:none; margin:0; padding:0; }
.dx-zp-ncol li{ font-size:13px; color:#4b5563; padding:7px 0; border-bottom:1px dashed #eef1f5; }
.dx-zp-ncol li:last-child{ border-bottom:none; }
@media(max-width:900px){
  .dx-zp-cards,.dx-zp-coms,.dx-zp-news{ grid-template-columns:repeat(2,1fr); }
}
@media(max-width:640px){
  .dx-zp-cards,.dx-zp-coms,.dx-zp-news{ grid-template-columns:1fr; }
  .dx-zp-sec{ padding:14px; }
}

/* ===== 房产栏目（fid=9）门户样式 ===== */
.dx-fang{ display:flex; flex-direction:column; gap:16px; margin-top:14px; }
.dx-fang-cats{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:16px; }
.dx-fang-cats a{ font-size:13px; color:#4b5563; background:#f4f6f9; padding:5px 16px; border-radius:20px; text-decoration:none; }
.dx-fang-cats a:hover{ color:#fff; background:#3B82F6; }
.dx-fang-cards{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.dx-fang-card{ border:1px solid #eef1f5; border-radius:10px; overflow:hidden; background:#fff; transition:all .2s; }
.dx-fang-card:hover{ border-color:#3B82F6; box-shadow:0 4px 14px rgba(59,130,246,.12); transform:translateY(-2px); }
.dx-fang-img{ display:block; width:100%; height:0; padding-bottom:66%; position:relative; overflow:hidden; background:#eef1f5; }
.dx-fang-img img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.dx-fang-info{ padding:10px 12px 12px; }
.dx-fang-title{ font-size:14px; color:#1f2329; font-weight:600; text-decoration:none; display:block; line-height:1.4; }
.dx-fang-title:hover{ color:#3B82F6; }
.dx-fang-meta{ margin-top:8px; font-size:12px; color:#98a2b3; display:flex; gap:14px; }
@media(max-width:900px){
  .dx-fang-cards{ grid-template-columns:repeat(2,1fr); }
}
@media(max-width:640px){
  .dx-fang-cards{ grid-template-columns:1fr; }
}

/* ===== 帖子详情页相关推荐 ===== */
.dx-rel{ background:#fff; border-radius:12px; border:1px solid #eef1f5; padding:20px; margin:20px 0; box-shadow:0 2px 10px rgba(0,0,0,.03); }
.dx-rel-cards{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.dx-rel-cards.dx-rel-hycards{ grid-template-columns:repeat(4,1fr); }
.dx-rel-card{ border:1px solid #eef1f5; border-radius:10px; overflow:hidden; background:#fafbfc; transition:all .2s; }
.dx-rel-card:hover{ border-color:#3B82F6; box-shadow:0 4px 14px rgba(59,130,246,.12); transform:translateY(-2px); }
.dx-rel-img{ display:block; width:100%; aspect-ratio:3/2; overflow:hidden; background:#eef1f5; }
.dx-rel-img img{ width:100%; height:100%; object-fit:cover; display:block; }
.dx-rel-img.dx-rel-fang{ aspect-ratio:3/2; height:auto; }
.dx-rel-img.dx-rel-hy{ height:150px; }
.dx-rel-card img{ width:100%; aspect-ratio:3/2; object-fit:cover; display:block; }
.dx-rel-card > a:last-child{ display:block; padding:10px 12px 12px; font-size:14px; color:#333; font-weight:500; text-decoration:none; line-height:1.4; }
.dx-rel-card > a:last-child:hover{ color:#3B82F6; }
.dx-rel-title{ font-size:13px; color:#1f2329; font-weight:600; text-decoration:none; display:block; padding:10px 12px; line-height:1.4; }
.dx-rel-title:hover{ color:#3B82F6; }
@media(max-width:900px){
  .dx-rel-cards{ grid-template-columns:repeat(2,1fr); }
}
@media(max-width:640px){
  .dx-rel-cards{ grid-template-columns:1fr; }
}

/* ===== 详情页清理 ===== */
#modmenu{ display:none !important; }

/* ===== 详情/列表页限宽居中，与门户一致 ===== */
body.pg_viewthread .wp,
body.pg_forumdisplay .wp,
body.pg_forum .wp{ max-width:1200px; margin-left:auto; margin-right:auto; }

/* ===== 详情页门户化 ===== */
.dx-vt-head{ margin:16px 0 0; }
.dx-vt-titlebar{ background:#fff; border-radius:14px; box-shadow:0 2px 12px rgba(0,0,0,.04); padding:22px 26px; }
.dx-vt-title{ font-size:26px; color:#1f2329; line-height:1.45; margin:0 0 10px; font-weight:700; }
.dx-vt-meta{ font-size:13px; color:#88909b; display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.dx-vt-author{ color:#3B82F6; font-weight:600; text-decoration:none; }
.dx-vt-author:hover{ text-decoration:underline; }
@media(max-width:640px){
  .dx-vt-title{ font-size:20px; }
}
/* 顶部工具条(发新帖/回复/返回列表/分页)大气化 */
body.pg_viewthread #pgt{ background:#fff; border-radius:12px; box-shadow:0 2px 10px rgba(0,0,0,.04); padding:14px 18px; margin-top:16px; }
body.pg_viewthread #pgt .pgb{ display:none !important; }
body.pg_viewthread #pgt .pg{ margin:0; }
body.pg_viewthread #pgt .pg a, body.pg_viewthread #pgt .pg strong{ display:inline-block; min-width:34px; height:34px; line-height:34px; text-align:center; padding:0 10px; margin:0 3px; border-radius:8px; background:#f3f4f6; color:#4b5563; text-decoration:none; font-size:13px; }
body.pg_viewthread #pgt .pg a:hover{ background:#dbeafe; color:#3B82F6; }
body.pg_viewthread #pgt .pg strong{ background:#3B82F6; color:#fff; font-weight:600; }
/* 返回列表按钮 */
.dx-vt-tools{ margin-top:14px; padding-top:14px; border-top:1px solid #eef0f3; }
.dx-vt-back{ display:inline-flex; align-items:center; gap:6px; color:#3B82F6; text-decoration:none; font-size:14px; font-weight:600; background:#eff6ff; padding:8px 14px; border-radius:8px; }
.dx-vt-back:hover{ background:#dbeafe; }
/* 快速发帖区下方头像横排 */
.dx-fast-users{ margin-top:14px; padding-top:12px; border-top:1px solid #eef0f3; display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.dx-fu-t{ font-size:12px; color:#88909b; flex-shrink:0; font-weight:600; }
.dx-fu-list{ display:flex; gap:12px; flex-wrap:wrap; }
.dx-fu-item{ display:flex; flex-direction:column; align-items:center; gap:4px; text-decoration:none; }
.dx-fu-item img{ width:36px; height:36px; border-radius:50%; border:2px solid #eef0f3; }
.dx-fu-item:hover img{ border-color:#3B82F6; }
.dx-fu-item span{ font-size:11px; color:#6b7280; max-width:46px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
@media(max-width:640px){ .dx-fu-item img{ width:30px; height:30px; } }

/* ===== 快速发帖/回复输入框自然化(参考站风格) ===== */
body .tedt{ border:1px solid #b9c7d6; border-radius:12px; overflow:hidden; box-shadow:0 2px 10px rgba(0,0,0,.05); }
body .tedt .bar{ background:#f8fafc; border-bottom:1px solid #eef2f7; }
body .tedt .area{ background:#fff; }
body .tedt .area .pt{ border:none; box-shadow:none; background:transparent; padding:14px; font-size:14px; line-height:1.8; color:#333; resize:vertical; }
body .tedt .area .pt:focus{ outline:none; }
body .tedt .area textarea.pt{ border:none; box-shadow:none; }

/* ===== 详情页快速回复：头像移到底部，编辑器全宽 ===== */
body.pg_viewthread #f_pst table td.pls, body.pg_forumdisplay #f_pst table td.pls{ display:none !important; }
body.pg_viewthread #f_pst table td.plc, body.pg_forumdisplay #f_pst table td.plc{ width:100% !important; padding:0 !important; }
body.pg_viewthread #f_pst, body.pg_forumdisplay #f_pst{ width:100%; }
body.pg_viewthread #f_pst .bm_h, body.pg_forumdisplay #f_pst .bm_h, body.pg_viewthread #f_pst .bm_c, body.pg_forumdisplay #f_pst .bm_c{ width:100%; }
body.pg_viewthread #f_pst .tedt, body.pg_forumdisplay #f_pst .tedt{ width:100%; box-sizing:border-box; }

/* ===== 快速发帖/回复：文字与头像避免贴框线 ===== */
body.pg_viewthread #f_pst .bm_c, body.pg_forumdisplay #f_pst .bm_c{ padding:14px 18px !important; }
body.pg_viewthread #f_pst .tedt .bar, body.pg_forumdisplay #f_pst .tedt .bar{ padding:8px 12px !important; }
body.pg_viewthread #f_pst .pbt, body.pg_forumdisplay #f_pst .pbt{ padding:6px 0 !important; }
body.pg_viewthread #f_pst .ptm.pnpost, body.pg_forumdisplay #f_pst .ptm.pnpost{ padding:10px 0 4px !important; }
body.pg_viewthread #f_pst .dx-fast-users, body.pg_forumdisplay #f_pst .dx-fast-users{ margin-top:16px; padding:14px 2px 6px; }
/* 隐藏默认标题/信息，避免重复 */
body.pg_viewthread #postlist .vwthd h1.ts,
body.pg_viewthread #postlist .vwthd .xg1,
body.pg_viewthread #postlist .vwthd .y{ display:none !important; }
/* 隐藏作者侧栏 */
body.pg_viewthread #postlist .pls{ display:none !important; }
body.pg_viewthread #postlist .plc{ width:100% !important; }
/* 主帖卡片 */
body.pg_viewthread #postlist > table:first-child{ background:#fff; border-radius:14px; box-shadow:0 2px 12px rgba(0,0,0,.04); overflow:hidden; }
body.pg_viewthread #postlist .vwthd{ padding:22px 26px !important; }
/* 回帖卡片 */
body.pg_viewthread #postlist table.plhin{ background:#fff; border-radius:12px; box-shadow:0 1px 8px rgba(0,0,0,.03); margin:12px 0; overflow:hidden; }
body.pg_viewthread #postlist table.plhin .pct{ padding:4px 26px 18px; }
/* 内容正文 */
body.pg_viewthread #postlist .pct .t_f{ font-size:15px; line-height:1.9; color:#333; }
/* 隐藏论坛元素 */
body.pg_viewthread #postlist #fj{ display:none !important; }
body.pg_viewthread #postlist .po p{ display:none !important; }
body.pg_viewthread #postlist .authi .pipe, body.pg_viewthread #postlist .authi .show, body.pg_viewthread #postlist .authi a.show{ display:none !important; }
body.pg_viewthread #postlist table.plhin .pi > strong{ display:none !important; }

/* ===== 详情页：标题信息头与正文合成统一内容卡(去掉多线框) ===== */
body.pg_viewthread .dx-vt-titlebar{ border-radius:14px 14px 0 0 !important; box-shadow:0 2px 12px rgba(0,0,0,.04) !important; margin:0 !important; border-bottom:1px solid #edf1f7 !important; }
body.pg_viewthread #postlist{ margin-top:0 !important; }
body.pg_viewthread #postlist > table:first-child{ background:transparent !important; border-radius:0 !important; box-shadow:none !important; }
body.pg_viewthread #postlist .vwthd{ padding:0 !important; border:none !important; }
body.pg_viewthread #postlist .vwthd td{ padding:0 !important; }
body.pg_viewthread #postlist > div[id^="post_"]:first-of-type table.plhin{ border-radius:0 0 14px 14px !important; box-shadow:0 2px 12px rgba(0,0,0,.04) !important; margin:0 !important; }
body.pg_viewthread #postlist > div[id^="post_"]:first-of-type .pct{ padding:14px 28px 26px !important; }

/* 主帖顶部重复的"发表于"信息行隐藏(标题头已有作者/日期/查看/回复) */
body.pg_viewthread #postlist > div[id^="post_"]:first-of-type td.plc .authi{ display:none !important; }
body.pg_viewthread .dx-vt-head{ margin:14px 0 0 !important; }

/* ===== 详情页标题头：作者图标+查看该作者+虚线分隔+紧致上提 ===== */
.dx-vt-authorwrap{ display:inline-flex; align-items:center; gap:8px; margin-right:10px; }
.dx-vt-uico{ width:18px; height:18px; flex-shrink:0; opacity:.8; }
.dx-vt-author{ color:#3B82F6; font-weight:600; }
.dx-vt-authorlink{ color:#8a94a6; font-size:12px; border-left:1px solid #e2e8f0; padding-left:10px; }
.dx-vt-authorlink:hover{ color:#3B82F6; }
body.pg_viewthread .dx-vt-titlebar{ padding:18px 28px 14px !important; }
body.pg_viewthread .dx-vt-title{ margin:0 0 10px !important; }
body.pg_viewthread .dx-vt-meta{ display:flex; flex-wrap:wrap; align-items:center; gap:8px 16px; }
body.pg_viewthread .dx-vt-titlebar{ border-bottom:1px dashed #dbe1ea !important; }

/* ===== 详情页标题头：去掉meta下虚线,文字上提更紧密,只留大卡外框 ===== */
body.pg_viewthread .dx-vt-titlebar{ border-bottom:none !important; padding:18px 28px 6px !important; }
body.pg_viewthread .dx-vt-title{ margin:0 0 6px !important; }
body.pg_viewthread #postlist > div[id^="post_"]:first-of-type .pct{ padding:6px 28px 26px !important; }

/* ===== 查看该作者：个人空间页宽度与其他页面一致(1200居中) ===== */
body.pg_space .wp{ max-width:1200px !important; margin:16px auto !important; }
body.pg_post .wp{ max-width:1200px !important; margin:16px auto !important; }
body.pg_post #ct{ width:100% !important; }
body.pg_space #ct{ padding:16px; box-sizing:border-box; }

/* ===== 详情页标题头+正文：合成一个清晰外框,去掉阴影缝 ===== */
body.pg_viewthread #postlist > table:first-child{ display:none !important; }
body.pg_viewthread .dx-vt-titlebar{ box-shadow:none !important; border:1px solid #e6ebf2 !important; border-bottom:none !important; border-radius:14px 14px 0 0 !important; padding:18px 28px 10px !important; background:#fff !important; }
body.pg_viewthread #postlist > div[id^="post_"]:first-of-type table.plhin{ box-shadow:none !important; border:1px solid #e6ebf2 !important; border-top:none !important; border-radius:0 0 14px 14px !important; margin:0 !important; }

/* ===== 详情页：隐藏标题头与正文之间的广告空表,让标题并入正文框 ===== */
body.pg_viewthread #postlist > table.ad{ display:none !important; }
body.pg_viewthread .dx-vt-titlebar{ padding:16px 28px 6px !important; }
body.pg_viewthread #postlist > div[id^="post_"]:first-of-type .pct{ padding:4px 28px 26px !important; }

/* ===== 详情页：postlist容器去掉自身外框,让标题头border与正文border连续合成一个框 ===== */
body.pg_viewthread #postlist.pl.bm{ background:transparent !important; border:none !important; box-shadow:none !important; border-radius:0 !important; }

/* ===== 详情页:postlist容器去掉自身外框,让标题头border与正文border连续合成一个框 ===== */
body.pg_viewthread #postlist.pl.bm{ background:transparent !important; border:none !important; box-shadow:none !important; border-radius:0 !important; }

/* ===== 详情页：完整外框 + 标题下虚线分隔(虚线靠上,正文贴近标题) ===== */
body.pg_viewthread .dx-vt-titlebar{ border:1px solid #e6ebf2 !important; border-bottom:1px dashed #cbd5e1 !important; border-radius:14px 14px 0 0 !important; padding:16px 28px 6px !important; background:#fff !important; box-shadow:none !important; }
body.pg_viewthread #postlist.pl.bm{ background:#fff !important; border:1px solid #e6ebf2 !important; border-top:none !important; border-radius:0 0 14px 14px !important; box-shadow:none !important; }
body.pg_viewthread #postlist > div[id^="post_"]:first-of-type table.plhin{ border:none !important; border-radius:0 !important; box-shadow:none !important; margin:0 !important; }
body.pg_viewthread #postlist > div[id^="post_"]:first-of-type .pct{ padding:8px 28px 26px !important; }

/* ===== 详情页：去掉标题虚线下方多余的第二条虚线,文字上提 ===== */
body.pg_viewthread #postlist.pl.bm{ border-top:none !important; }
body.pg_viewthread #postlist table.plhin{ border-top:none !important; }
body.pg_viewthread #postlist td.plc{ border-top:none !important; }
body.pg_viewthread #postlist .pct{ border-top:none !important; }
body.pg_viewthread #postlist > div[id^="post_"]:first-of-type .pct{ padding:2px 28px 24px !important; }

/* ===== 详情页：去掉正文上方的第二条虚线(主帖.pi作者信息行底边框),正文上提 ===== */
body.pg_viewthread #postlist > div[id^="post_"]:first-of-type td.plc .pi{ display:none !important; }

/* ===== 详情页：正文与标题虚线拉开一点距离(文字稍下) ===== */
body.pg_viewthread #postlist > div[id^="post_"]:first-of-type .pct{ padding:14px 28px 26px !important; }

/* ===== 详情页：虚线左右留空隙,不接触左右框线 ===== */
body.pg_viewthread .dx-vt-titlebar{ border-bottom:none !important; }
body.pg_viewthread .dx-vt-titlebar::after{ content:""; display:block; height:0; margin-top:8px; border-bottom:1px dashed #cbd5e1; }

/* ===== 快速回复：验证码/人气用户/按钮文字不贴框线 ===== */
body.pg_viewthread #f_pst #seccheck_fastpost, body.pg_forumdisplay #f_pst #seccheck_fastpost{ padding:10px 12px 0 !important; }
body.pg_viewthread #f_pst .ptm.pnpost, body.pg_forumdisplay #f_pst .ptm.pnpost{ padding:8px 12px 4px !important; }
body.pg_viewthread #f_pst .dx-fast-users, body.pg_forumdisplay #f_pst .dx-fast-users{ margin-top:10px; padding:12px 4px 8px; }

/* ===== 快速回复：隐藏左侧头像列,输入框全宽 ===== */
body.pg_viewthread #f_pst table td.pls, body.pg_forumdisplay #f_pst table td.pls{ display:none !important; }

/* ===== 快速回复：表情面板在输入框下方、头像上方,横向一行 ===== */
body.pg_viewthread #f_pst .cl, body.pg_forumdisplay #f_pst .cl{ display:flex; flex-wrap:wrap; align-items:flex-start; }
body.pg_viewthread #f_pst #fastsmiliesdiv, body.pg_forumdisplay #f_pst #fastsmiliesdiv{ order:2; float:none !important; text-align:left !important; width:100% !important; margin-top:8px; }
body.pg_viewthread #f_pst #fastposteditor, body.pg_forumdisplay #f_pst #fastposteditor{ order:1; width:100% !important; }
/* ===== 快速回复：输入框自适应全宽 ===== */
body.pg_viewthread #f_pst #fastpostform, body.pg_forumdisplay #f_pst #fastpostform{ width:100% !important; }
body.pg_viewthread #f_pst #fastposteditor .area, body.pg_forumdisplay #f_pst #fastposteditor .area{ width:100% !important; }
body.pg_viewthread #f_pst #fastpostmessage, body.pg_forumdisplay #f_pst #fastpostmessage{ width:100% !important; box-sizing:border-box; }
/* 验证码+头像区块排在编辑器、表情之后 */
body.pg_viewthread #f_pst .dx-fast-users, body.pg_forumdisplay #f_pst .dx-fast-users{ order:3; width:100% !important; }
body.pg_viewthread #f_pst #seccheck_fastpost, body.pg_forumdisplay #f_pst #seccheck_fastpost{ order:4; width:100% !important; }

/* ===== 快速回复：编辑区与外框贴合,内容输入区变宽大 ===== */
body.pg_viewthread #f_pst table td.plc, body.pg_forumdisplay #f_pst table td.plc{ padding:0 !important; }
body.pg_viewthread #f_pst .bm_c, body.pg_forumdisplay #f_pst .bm_c{ padding:16px 0 10px !important; }
body.pg_viewthread #f_pst .hasfsl, body.pg_forumdisplay #f_pst .hasfsl{ margin-right:0 !important; }
/* ===== 快速回复：表情横向一行排列(多了自动换行) ===== */
body.pg_viewthread #f_pst #fastsmilies table, body.pg_forumdisplay #f_pst #fastsmilies table, body.pg_viewthread #f_pst #fastsmilies tbody, body.pg_forumdisplay #f_pst #fastsmilies tbody, body.pg_viewthread #f_pst #fastsmilies tr, body.pg_forumdisplay #f_pst #fastsmilies tr{ display:contents !important; }
body.pg_viewthread #f_pst #fastsmilies td, body.pg_forumdisplay #f_pst #fastsmilies td{ display:inline-block !important; margin:2px 4px; }

/* ===== 快速回复：表情彻底左对齐,从左到右 ===== */
body.pg_viewthread #f_pst #fastsmiliesdiv_data, body.pg_forumdisplay #f_pst #fastsmiliesdiv_data, body.pg_viewthread #f_pst #fastsmilies, body.pg_forumdisplay #f_pst #fastsmilies{ text-align:left !important; float:none !important; }
body.pg_viewthread #f_pst #fastsmilies td, body.pg_forumdisplay #f_pst #fastsmilies td{ margin-left:0 !important; }

/* ===== 交友征婚列表页(dx-jy) ===== */
.dx-jy{ background:#fff; border-radius:12px; padding:20px; margin-top:16px; border:1px solid #e6ebf2; }
.dx-jy .dx-zp-head{ margin-bottom:14px; }
.dx-jy-cards{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.dx-jy-card{ background:#f8fafc; border-radius:10px; overflow:hidden; border:1px solid #eef2f7; }
.dx-jy-img{ display:block; aspect-ratio:3/2; overflow:hidden; }
.dx-jy-img img{ width:100%; height:100%; object-fit:cover; display:block; }
.dx-jy-card > a > img{ width:100%; aspect-ratio:3/2; object-fit:cover; display:block; }
.dx-jy-info{ padding:10px 12px; }
.dx-jy-title{ font-size:14px; color:#1f2937; font-weight:600; display:block; line-height:1.5; }
.dx-jy-title:hover{ color:#3B82F6; }
.dx-jy-meta{ display:flex; align-items:center; justify-content:space-between; margin-top:8px; }
.dx-jy-ava{ display:flex; align-items:center; gap:6px; font-size:12px; color:#6b7280; }
.dx-jy-ava img{ width:24px; height:24px; border-radius:50%; }
.dx-jy-ava a{ color:#6b7280; text-decoration:none; }
.dx-jy-date{ font-size:12px; color:#9ca3af; }
.dx-jy-page{ margin-top:16px; padding-bottom:20px; text-align:center; }
.dx-jy-page a.dx-jy-pg{ display:inline-block; padding:6px 12px; background:#eef2f7; color:#374151; border-radius:6px; font-size:13px; text-decoration:none; margin:0 3px; transition:background .2s,color .2s; }
.dx-jy-page a.dx-jy-pg:hover{ background:#3B82F6; color:#fff; }
.dx-jy-page .dx-jy-pgcur{ display:inline-block; padding:6px 12px; background:#3B82F6; color:#fff; border-radius:6px; font-size:13px; margin:0 3px; }
.dx-jy-page a.dx-jy-pgback{ background:#fff; border:1px solid #3B82F6; color:#3B82F6; }
.dx-jy-page a.dx-jy-pgback:hover{ background:#3B82F6; color:#fff; }
.dx-jy-users{ margin-top:20px; background:#f8fafc; border-radius:10px; padding:14px; }
.dx-jy-users h4,.dx-jy-interact h4{ margin:0 0 10px; font-size:15px; color:#111827; }
.dx-jy-urow{ display:flex; flex-wrap:wrap; gap:14px; }
.dx-jy-u{ display:flex; flex-direction:column; align-items:center; gap:4px; font-size:12px; color:#6b7280; text-decoration:none; }
.dx-jy-u img{ width:44px; height:44px; border-radius:50%; }
.dx-jy-interact{ margin-top:16px; background:#f8fafc; border-radius:10px; padding:14px; }
.dx-jy-interact ul{ list-style:none; margin:0; padding:0; }
.dx-jy-interact li{ display:flex; justify-content:space-between; padding:8px 0; border-bottom:1px dashed #e5e7eb; }
.dx-jy-interact li:last-child{ border-bottom:none; }
.dx-jy-interact a{ color:#374151; font-size:13px; text-decoration:none; }
.dx-jy-interact a:hover{ color:#3B82F6; }
.dx-jy-interact span{ color:#9ca3af; font-size:12px; }
@media(max-width:768px){ .dx-jy-cards{ grid-template-columns:repeat(2,1fr); } .dx-jy-urow{ gap:10px; } .dx-jy-u img{ width:36px;height:36px; } }

/* ===== 交友互动3x3网格+分页 ===== */
.dx-jy-grid{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.dx-jy-g{ background:#fff; border-radius:8px; overflow:hidden; border:1px solid #eef2f7; }
.dx-jy-gimg{ display:block; aspect-ratio:4/3; overflow:hidden; }
.dx-jy-gimg img{ width:100%; height:100%; object-fit:cover; display:block; }
.dx-jy-gtitle{ display:block; padding:8px; font-size:13px; color:#374151; text-decoration:none; line-height:1.4; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dx-jy-gtitle:hover{ color:#3B82F6; }
.dx-jy-pg{ display:flex; align-items:center; justify-content:center; gap:16px; margin-top:14px; }
.dx-jy-pg a{ font-size:13px; color:#3B82F6; text-decoration:none; }
.dx-jy-pg a:hover{ text-decoration:underline; }
.dx-jy-pg .dx-jy-pgnum{ font-size:13px; color:#6b7280; }
@media(max-width:768px){ .dx-jy-grid{ grid-template-columns:repeat(2,1fr); } }

/* ===== 交友征婚子栏目标签 ===== */
.dx-tag{ display:inline-block; margin-left:6px; padding:1px 6px; border-radius:3px; font-size:11px; color:#fff; line-height:1.6; vertical-align:middle; }
.dx-tag-jy{ background:#EC4899; }
.dx-tag-zm{ background:#3B82F6; }
.dx-jy-gauthor{ display:block; padding:4px 8px 8px; font-size:12px; color:#6b7280; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dx-jy-gauthor img{ width:20px; height:20px; border-radius:50%; vertical-align:middle; margin-right:4px; }
.dx-jy-gauthor a{ color:#6b7280; text-decoration:none; }

/* ===== 交友征婚子栏目切换 ===== */
.dx-zp-head{ display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.dx-zp-head h2{ margin:0; }
.dx-zp-tabs{ display:flex; gap:8px; margin-left:4px; }
.dx-zp-tabs a{ padding:3px 14px; border-radius:16px; font-size:13px; color:#6b7280; border:1px solid #e5e7eb; text-decoration:none; }
.dx-zp-tabs a.on{ background:#3B82F6; color:#fff; border-color:#3B82F6; }
.dx-zp-tabs a:hover{ color:#3B82F6; }
.dx-zp-more{ margin-left:auto; }

/* ===== 交流互动滚动区 ===== */
.dx-jy-interact{ background:#f8fafc; border-radius:10px; padding:14px; margin-top:16px; }
.dx-jy-ih{ display:flex; align-items:center; margin-bottom:12px; }
.dx-jy-ih h4{ margin:0; font-size:15px; color:#111827; }
.dx-jy-imore{ margin-left:auto; font-size:13px; color:#3B82F6; text-decoration:none; }
.dx-jy-scroll{ display:flex; align-items:center; gap:8px; }
.dx-jy-track{ display:flex; gap:14px; overflow-x:auto; scroll-behavior:smooth; padding-bottom:6px; flex:1; }
.dx-jy-track::-webkit-scrollbar{ height:6px; }
.dx-jy-track::-webkit-scrollbar-thumb{ background:#cbd5e1; border-radius:3px; }
.dx-jy-item{ flex:0 0 240px; background:#fff; border-radius:8px; overflow:hidden; border:1px solid #eef2f7; }
.dx-jy-thumb{ display:block; aspect-ratio:16/9; overflow:hidden; }
.dx-jy-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.dx-jy-item > a > img{ width:100%; aspect-ratio:16/9; object-fit:cover; display:block; }
.dx-jy-thumb .dx-ph{ width:100%; height:100%; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#3B82F6,#6366f1); color:#fff; font-size:42px; font-weight:700; letter-spacing:2px; }
.dx-jy-t{ display:block; padding:8px 10px 2px; font-size:13px; color:#374151; text-decoration:none; line-height:1.4; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dx-jy-t:hover{ color:#3B82F6; }
.dx-jy-a{ display:block; padding:4px 10px 10px; font-size:12px; color:#6b7280; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dx-jy-a img{ width:20px;height:20px;border-radius:50%;vertical-align:middle;margin-right:4px; }
.dx-jy-a a{ color:#6b7280; text-decoration:none; }
.dx-jy-arr{ flex:0 0 34px; width:34px; height:34px; border-radius:50%; border:1px solid #dbe3ee; background:#fff; color:#3B82F6; font-size:18px; cursor:pointer; line-height:1; }
.dx-jy-arr:hover{ background:#3B82F6; color:#fff; }
@media(max-width:768px){ .dx-jy-item{ flex:0 0 210px; } .dx-jy-arr{ display:none; } }

/* ===== 主导航子栏目下拉 ===== */
.dx-navli{ position:relative; }
.dx-nav .dx-nav-drop{ position:absolute; left:0; top:calc(100% + 6px); list-style:none; margin:0; padding:8px 0; background:#fff; border:1px solid #e5e7eb; border-radius:6px; box-shadow:0 4px 12px rgba(0,0,0,.08); min-width:120px; z-index:99; display:block; visibility:hidden; opacity:0; transform:translateY(6px); transition:opacity .16s ease, transform .16s ease, visibility 0s linear .38s; }
.dx-nav .dx-navli:hover .dx-nav-drop{ visibility:visible; opacity:1; transform:translateY(0); transition:opacity .14s ease .12s, transform .14s ease .12s, visibility 0s linear .12s; }
.dx-nav .dx-nav-drop a{ display:block; padding:13px 20px !important; font-size:13px; color:#374151 !important; text-decoration:none; white-space:nowrap; background:#fff !important; }
.dx-nav .dx-nav-drop a:hover{ color:#3B82F6 !important; background:#f3f6fb !important; }

/* ===== 首页频道区子栏目 ===== */
.dx-cat-sub{ justify-content:center; opacity:.92; }
.dx-cat-sub .nm{ font-size:13px; margin-top:0; }

/* ===== 游客快速发帖引导板块 ===== */
.dx-guest-post{ background:linear-gradient(135deg,#3B82F6,#2563EB); border-radius:10px; padding:24px 26px; color:#fff; text-align:center; margin:6px 0 4px; box-shadow:0 4px 14px rgba(37,99,235,.25); }
.dx-gp-ic{ margin-bottom:6px; }
.dx-gp-title{ font-size:18px; font-weight:700; margin-bottom:4px; }
.dx-gp-desc{ font-size:13px; opacity:.92; margin-bottom:16px; }
.dx-gp-btns a{ display:inline-block; padding:8px 26px; border-radius:6px; font-size:14px; text-decoration:none; margin:0 6px; transition:all .2s; }
.dx-gp-login{ background:#fff; color:#2563EB; font-weight:700; }
.dx-gp-reg{ border:1px solid rgba(255,255,255,.85); color:#fff; }
.dx-gp-btns a:hover{ opacity:.88; transform:translateY(-1px); }

/* ===== 列表页副题 ===== */
.dx-fd-sub{ font-size:12px; color:#9ca3af; margin-left:8px; font-weight:400; }

/* ===== 拼车列表 ===== */
.dx-pc-list{ list-style:none; margin:0; padding:0; }
.dx-pc-item{ display:flex; align-items:center; gap:12px; padding:12px 14px; background:#fff; border-radius:8px; border:1px solid #eef2f7; margin-bottom:10px; transition:all .2s; }
.dx-pc-item:hover{ border-color:#3B82F6; box-shadow:0 3px 10px rgba(37,99,235,.08); }
.dx-pc-tag{ flex:0 0 36px; width:36px; height:36px; border-radius:50%; background:#3B82F6; color:#fff; display:flex; align-items:center; justify-content:center; font-size:16px; font-weight:700; text-decoration:none; }
.dx-pc-tag-r{ background:#EC4899; }
.dx-pc-tag-c{ background:#3B82F6; }
.dx-pc-thumb{ flex:0 0 120px; width:120px; height:80px; border-radius:6px; overflow:hidden; }
.dx-pc-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.dx-pc-item > a:first-child{ flex:0 0 120px; width:120px; height:80px; border-radius:6px; overflow:hidden; }
.dx-pc-item > a:first-child img{ width:100%; height:100%; object-fit:cover; display:block; }
.dx-pc-info{ flex:1; min-width:0; }
.dx-pc-title{ font-size:15px; color:#1f2937; font-weight:600; text-decoration:none; display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dx-pc-title:hover{ color:#3B82F6; }
.dx-pc-meta{ margin-top:6px; font-size:12px; color:#9ca3af; display:flex; gap:14px; }
@media(max-width:600px){ .dx-pc-thumb{ display:none; } .dx-pc-item{ padding:10px 12px; } }

/* ===== 新闻资讯列表（同城快讯/本地资讯/道县播客） ===== */
.dx-news{ margin-bottom:6px; }
.dx-news-hero{ display:flex; gap:18px; background:#fff; border:1px solid #eef1f5; border-radius:12px; padding:18px; box-shadow:0 2px 10px rgba(0,0,0,.03); margin-bottom:16px; }
.dx-news-himg{ flex:0 0 420px; width:420px; height:220px; border-radius:8px; overflow:hidden; }
.dx-news-himg img{ width:100%; height:100%; object-fit:cover; display:block; }
.dx-news-hinfo{ flex:1; display:flex; flex-direction:column; justify-content:center; min-width:0; }
.dx-news-ht{ font-size:22px; color:#1f2329; font-weight:700; line-height:1.4; text-decoration:none; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.dx-news-ht:hover{ color:#3B82F6; }
.dx-news-hd{ margin-top:10px; color:#5f6672; font-size:14px; line-height:1.7; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.dx-news-hm{ margin-top:14px; display:flex; align-items:center; gap:18px; color:#8a919f; font-size:13px; }
.dx-news-hm a{ color:#8a919f; text-decoration:none; }
.dx-news-list{ margin-top:6px; }
.dx-news-item{ display:flex; gap:16px; padding:14px 16px; background:#fff; border:1px solid #eef1f5; border-radius:12px; box-shadow:0 2px 10px rgba(0,0,0,.03); margin-bottom:12px; transition:box-shadow .2s,border-color .2s; text-decoration:none; }
.dx-news-item:hover{ box-shadow:0 6px 18px rgba(59,130,246,.12); border-color:#dbeafe; }
.dx-news-thumb{ flex:0 0 230px; width:230px; height:140px; border-radius:8px; overflow:hidden; }
.dx-news-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.dx-news-body{ flex:1; min-width:0; display:flex; flex-direction:column; }
.dx-news-body h3{ font-size:17px; color:#1f2329; font-weight:700; margin:0 0 8px; line-height:1.4; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.dx-news-body h3:hover{ color:#3B82F6; }
.dx-news-desc{ flex:1; color:#5f6672; font-size:13px; line-height:1.7; margin:0; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.dx-news-meta{ display:flex; align-items:center; gap:18px; margin-top:10px; color:#8a919f; font-size:13px; }
.dx-news-meta a{ color:#8a919f; text-decoration:none; }
.dx-news-meta .dx-news-ava a{ margin-left:4px; }
@media(max-width:768px){ .dx-news-hero{ flex-direction:column; padding:14px; gap:10px; } .dx-news-himg{ flex:none; width:100%; height:170px; } .dx-news-ht{ font-size:17px; } .dx-news-thumb{ flex:0 0 110px; width:110px; height:82px; } .dx-news-item{ gap:10px; padding:12px; } .dx-news-body h3{ font-size:15px; margin-bottom:6px; } .dx-news-meta{ gap:10px; } }
@media(max-width:480px){ .dx-news-thumb{ flex:0 0 100px; width:100px; height:76px; } .dx-news-desc{ display:none; } }

/* ===== 拼车列表（按日期分组·图文并茂） ===== */
.dx-pc-day{ display:flex; align-items:center; gap:10px; margin:8px 0 10px; padding-left:4px; }
.dx-pc-day-t{ display:inline-block; background:#3B82F6; color:#fff; font-size:12px; padding:4px 14px; border-radius:20px; font-weight:600; }
.dx-pc-line{ display:flex; align-items:center; gap:10px; min-width:0; margin-bottom:8px; }
.dx-pc-line .dx-pc-title{ margin:0; font-weight:600; }
.dx-pc-thumb{ display:block; flex:0 0 170px; width:170px; height:110px; border-radius:8px; overflow:hidden; }
.dx-pc-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.dx-pc-desc{ color:#5f6672; font-size:13px; line-height:1.7; margin:0 0 8px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.dx-pc-ava a{ color:#9ca3af; margin-left:4px; }
@media(max-width:600px){ .dx-pc-thumb{ display:block !important; flex:0 0 100px; width:100px; height:76px; } .dx-pc-line .dx-pc-tag{ flex:0 0 auto; } .dx-pc-desc{ display:none; } }
.dx-pc-ph{ display:none; }

/* ===== 公告列表（左日期右标题） ===== */
.dx-ann-body{ display:block; background:none; border:none; padding:0; }
.dx-ann-list{ margin-top:6px; display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.dx-ann-item{ display:flex; gap:20px; align-items:flex-start; padding:18px 20px; background:#fff; border:1px solid #eef1f5; border-radius:12px; margin-bottom:12px; box-shadow:0 2px 10px rgba(0,0,0,.03); text-decoration:none; transition:all .2s; }
.dx-ann-item:hover{ border-color:#3B82F6; box-shadow:0 6px 18px rgba(59,130,246,.12); transform:translateY(-1px); }
.dx-ann-date{ flex:0 0 72px; width:72px; height:72px; border-radius:10px; background:linear-gradient(135deg,#3B82F6,#6366f1); color:#fff; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.dx-ann-d1{ font-size:26px; font-weight:700; line-height:1; }
.dx-ann-d2{ font-size:12px; opacity:.85; margin-top:4px; }
.dx-ann-info{ flex:1; min-width:0; }
.dx-ann-info h3{ font-size:17px; color:#1f2329; font-weight:700; margin:0 0 8px; line-height:1.4; }
.dx-ann-info h3:hover{ color:#3B82F6; }
.dx-ann-desc{ color:#5f6672; font-size:13px; line-height:1.7; margin:0; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
@media(max-width:640px){ .dx-ann-list{ grid-template-columns:1fr; } .dx-ann-item{ gap:14px; padding:14px; } .dx-ann-date{ flex:0 0 56px; width:56px; height:56px; border-radius:8px; } .dx-ann-d1{ font-size:20px; } .dx-ann-info h3{ font-size:15px; } .dx-rel-txt{ grid-template-columns:1fr; } .dx-rel-txt.dx-rel-jobtxt{ grid-template-columns:1fr; } }

/* ===== 公告详情页相关推荐（纯文字） ===== */
.dx-rel-txt{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,1fr); column-gap:28px; row-gap:0; }
.dx-rel-txt.dx-rel-jobtxt{ grid-template-columns:repeat(4,1fr); column-gap:20px; }
.dx-rel-tag{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-bottom:14px; }
.dx-rel-tag span{ font-size:13px; color:#6b7280; }
.dx-rel-tag a{ font-size:13px; color:#3B82F6; text-decoration:none; border:1px solid #dbe4ff; background:#f5f8ff; padding:4px 12px; border-radius:14px; transition:all .2s; }
.dx-rel-tag a:hover{ background:#3B82F6; color:#fff; }
.dx-rel-txt li{ border-bottom:1px dashed #eef0f3; padding:11px 4px; }
.dx-rel-txt li:last-child{ border-bottom:none; }
.dx-rel-txt a{ font-size:14px; color:#1f2329; text-decoration:none; display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dx-rel-txt a:hover{ color:#3B82F6; }

/* ===== 公司黄页列表 ===== */
.hy-sec-tit{ margin:20px 0 12px; padding-left:10px; border-left:4px solid #0d9488; font-size:16px; font-weight:700; color:#1f2329; line-height:1.2; }
.dx-hy-ava{ display:flex; align-items:center; justify-content:center; height:150px; background:linear-gradient(135deg,#0d9488,#3B82F6); color:#fff; font-size:42px; font-weight:700; }
.hy-list{ margin-top:6px; }
@media(max-width:640px){ .dx-hy-ava{ height:110px; font-size:32px; } }

/* ===== 互动论坛文章列表（话事道县/便民/圈子等） ===== */
.dx-art-list{ margin-top:4px; }
.dx-art-item{ background:#fff; border:1px solid #eef1f5; border-radius:12px; padding:28px 30px; margin-bottom:18px; box-shadow:0 2px 10px rgba(0,0,0,.03); transition:all .2s; }
.dx-art-item:hover{ border-color:#3B82F6; box-shadow:0 8px 22px rgba(59,130,246,.1); transform:translateY(-2px); }
.dx-art-title{ font-size:20px; color:#1f2329; margin:0 0 14px; line-height:1.4; }
.dx-art-title a{ color:#1f2329; text-decoration:none; }
.dx-art-title a:hover{ color:#3B82F6; }
.dx-art-desc{ color:#5f6672; font-size:14px; line-height:1.8; margin:0 0 18px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.dx-art-meta{ display:flex; flex-wrap:wrap; gap:20px; color:#9aa3af; font-size:13px; border-top:1px dashed #eef0f3; padding-top:16px; }
.dx-art-auth{ color:#3B82F6; font-weight:500; }
@media(max-width:640px){ .dx-art-item{ padding:18px 18px; margin-bottom:12px; } .dx-art-title{ font-size:16px; } .dx-art-meta{ gap:12px; } }

/* ===== 汉堡菜单 ===== */
.dx-burger{ display:flex; width:40px; height:40px; border:1px solid #e5e7eb; border-radius:8px; flex:none; justify-content:center; align-items:center; flex-direction:column; gap:5px; background:#fff; cursor:pointer; }
.dx-burger span{ display:block; width:20px; height:2px; background:#3B82F6; border-radius:2px; }
.dx-burger:hover{ border-color:#3B82F6; }
.dx-menu{ position:fixed; left:0; top:0; right:0; bottom:0; z-index:9998; visibility:hidden; pointer-events:none; }
.dx-menu.on{ visibility:visible; pointer-events:auto; }
.dx-menu-mask{ position:absolute; left:0; top:0; right:0; bottom:0; background:rgba(0,0,0,.5); opacity:0; transition:opacity .2s; }
.dx-menu.on .dx-menu-mask{ opacity:1; }
.dx-menu-panel{ position:absolute; right:0; top:0; bottom:0; width:86%; max-width:360px; background:rgba(255,255,255,.97); transform:translateX(100%); transition:transform .28s ease; overflow:auto; box-shadow:-4px 0 20px rgba(0,0,0,.08); padding:70px 24px 40px; }
.dx-menu.on .dx-menu-panel{ transform:translateX(0); }
.dx-menu-close{ display:flex; flex-direction:column; align-items:center; gap:8px; cursor:pointer; margin:0 auto 26px; }
.dx-menu-close .dx-menu-x{ width:46px; height:46px; border-radius:50%; background:#f97316; color:#fff; font-size:26px; line-height:46px; text-align:center; box-shadow:0 3px 10px rgba(249,115,22,.4); }
.dx-menu-close .dx-menu-x:hover{ background:#ea580c; transform:rotate(90deg); transition:transform .2s; }
.dx-menu-close i{ font-style:normal; font-size:12px; color:#64748b; letter-spacing:1px; }
.dx-menu-cols{ display:flex; flex-wrap:wrap; justify-content:center; gap:16px 26px; }
.dx-mg{ text-align:center; }
.dx-mg-main{ display:block; font-size:17px; font-weight:600; color:#0f172a; padding:9px 14px; text-decoration:none; background:rgba(255,255,255,.93); border-radius:10px; box-shadow:0 2px 10px rgba(30,64,175,.08); }
.dx-mg-main:hover{ color:#3B82F6; }
.dx-mg-main.on{ color:#3B82F6; border-bottom:2px solid #3B82F6; box-shadow:0 2px 10px rgba(59,130,246,.22); }
.dx-mg-sub{ display:block; font-size:13px; color:#334155; padding:6px 8px; text-decoration:none; border-radius:8px; }
.dx-mg-sub:hover{ color:#3B82F6; background:rgba(255,255,255,.8); }
/* 发布栏目下拉 */
.dx-post-wrap{ position:relative; display:inline-block; flex-shrink:0; }
.dx-post{ position:relative; white-space:nowrap; }
.dx-post-drop{ position:absolute; top:calc(100% + 8px); right:0; background:#fff; border:1px solid #e4ecfb; border-radius:12px; box-shadow:0 10px 32px rgba(30,64,175,.18); padding:12px; z-index:9999; min-width:380px; display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.dx-post-drop-tit{ grid-column:1/-1; font-size:17px; font-weight:700; color:#0f172a; padding:2px 6px 10px; border-bottom:1px solid #eef1f5; margin-bottom:4px; }
.dx-post-item{ display:flex; align-items:center; gap:8px; font-size:16px; color:#0f172a; padding:10px 12px; border-radius:8px; text-decoration:none; }
.dx-post-item:hover{ background:#eef4ff; color:#3B82F6; }
.dx-post-item span{ font-size:20px; }
/* 桌面编辑器工具栏图标 */
.fpd a{ font-size:15px; line-height:1.1; }
.dx-mg-sub.on{ color:#3B82F6; font-weight:600; background:rgba(240,246,255,.9); }
@media(max-width:480px){ .dx-menu-panel{ padding:70px 16px 40px; } .dx-menu-cols{ gap:14px 18px; } .dx-mg-main{ font-size:15px; } }
@media(min-width:769px){
	.dx-menu-mask{ display:none; }
	.dx-menu-panel{ left:0; right:0; top:0; bottom:0; width:auto; max-width:none; transform:none; background:rgba(240,247,255,.4); backdrop-filter:blur(24px) saturate(150%); -webkit-backdrop-filter:blur(24px) saturate(150%); opacity:0; transition:opacity .22s; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:70px 60px 60px; }
	.dx-menu.on .dx-menu-panel{ opacity:1; }
	.dx-menu-panel::before{ content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,#3B82F6,#8b5cf6,#ec4899); }
	.dx-menu-cols{ gap:22px 34px; }
	.dx-mg-main{ font-size:19px; padding:11px 18px; }
	.dx-mg-sub{ font-size:14px; padding:7px 8px; }
}

/* ===== 移动端窄屏(真机)整体优化 ===== */
@media(max-width:480px){
	body{ font-size:15px; color:#333; line-height:1.6; }
	.wp{ width:100% !important; max-width:100% !important; padding:0 6px; box-sizing:border-box; }
	/* 首页 hero 大图高度适配(不再拉高) */
	.dx-banner img, .dx-banner .slide > div{ height:150px !important; min-height:0 !important; }
	.dx-container{ margin:8px auto; padding:0 8px; }
	.dx-section{ padding:10px 12px; }
	.dx-section .s-title{ font-size:17px; }
	/* 所有宽比例卡片图片手机限高(不随屏幕拉长) */
	.dx-jy-img, .dx-jy-gimg, .dx-jy-thumb, .dx-rel-img, .dx-fang-img{ aspect-ratio:auto; height:150px !important; }
	.dx-fang-img{ padding-bottom:0; }
	.dx-jy-img img, .dx-jy-gimg img, .dx-jy-thumb img, .dx-rel-img img, .dx-fang-img img{ height:100% !important; object-fit:cover; }
	.dx-feed-item .thumb{ height:120px; }
	.dy-img .thumb, .job-item .thumb{ height:120px; }
	/* 列表卡片间距/字号 */
	.dx-jy-item{ padding:12px 10px; }
	.dx-zp-card, .dx-fang-card{ padding:12px; }
	.dx-pc-item{ padding:12px; }
	.dx-art-item{ padding:15px 14px; margin-bottom:11px; }
	.dx-ann-item{ padding:12px; }
	.dx-hy-item{ padding:10px; }
	/* 详情页 */
	.dx-vt-title{ font-size:20px; }
	.dx-vt-titlebar{ padding:16px 14px; }
	.dx-vt-meta{ gap:12px; }
	.dx-rel{ padding:14px; }
	body .tedt .area .pt{ font-size:15px; padding:12px; }
	/* 分页 */
	.pg a, .pg strong{ padding:6px 12px; }
	/* 底部导航图标间距 */
	.dx-mnav a{ padding:7px 0 5px; }
	.dx-mnav a i{ font-size:19px; }
}

