/* ============================================================
   dz_ui_pro.css  v1  —  阅读体验与细节增强层
   加载顺序：核心 CSS -> dz_skins.css -> dz_ui_pro.css
   配色全部取自皮肤变量 --dz-*，自动适配 blue/forest/sunset/dark/eyecare 五套皮肤
   ============================================================ */

/* ---------- 字体与渲染 ---------- */
body, td, input, textarea, select, button, .px, .pt {
	font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei UI", "Microsoft YaHei", "Hiragino Sans GB", "Helvetica Neue", Arial, sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
a { transition: color .15s ease, background-color .15s ease, border-color .15s ease; }

/* ---------- 阅读区正文排版 ---------- */
.t_fsz, td.t_f { font-size: 15.5px; line-height: 1.9; letter-spacing: .2px; }
td.t_f p { margin: 0 0 14px; }
td.t_f h1, td.t_f h2, td.t_f h3, td.t_f h4 { margin: 20px 0 10px; line-height: 1.5; font-weight: 600; }
td.t_f h1 { font-size: 22px; }
td.t_f h2 { font-size: 19px; }
td.t_f h3 { font-size: 17px; }
td.t_f h4 { font-size: 15.5px; }
td.t_f ul, td.t_f ol { margin: 0 0 14px; padding-left: 22px; }
td.t_f li { margin: 4px 0; }
td.t_f hr { border: 0; border-top: 1px solid var(--dz-borderc, #c9dcff); margin: 20px 0; }

/* ---------- 引用块 / 代码块 ---------- */
.quote { border-left: 3px solid var(--dz-color, #1a56c4) !important; background: var(--dz-bgb, #e8f1ff) !important; border-radius: 0 12px 12px 0; padding: 12px 16px !important; margin: 14px 0 !important; }
.quote blockquote { background: none !important; padding: 0 !important; }
.blockcode { border-radius: 12px; background: var(--dz-bgf, #fff); border: 1px solid var(--dz-borderc, #c9dcff); padding: 12px 16px; margin: 14px 0; }
.blockcode code, td.t_f code { font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace; font-size: 13.5px; }

/* ---------- 正文表格 ---------- */
td.t_f table { border-collapse: collapse; margin: 14px 0; width: 100%; font-size: 14px; }
td.t_f table th, td.t_f table td { border: 1px solid var(--dz-borderc, #c9dcff); padding: 9px 12px; line-height: 1.7; }
td.t_f table th { background: var(--dz-bgb, #e8f1ff); font-weight: 600; }

/* ---------- 正文图片 ---------- */
td.t_f img, .pcb img { max-width: 100% !important; height: auto !important; border-radius: 12px; margin: 10px 0; }

/* ---------- 帖子标题 ---------- */
#thread_subject { font-size: 22px; font-weight: 600; line-height: 1.45; letter-spacing: .3px; }

/* ---------- 列表条目 ---------- */
.kmlist { border-radius: 14px; }
.kmlist:hover { background: var(--dz-bgb, #eef4ff); }
.kmtit { font-weight: 600; }

/* ---------- 表单聚焦态 ---------- */
.px:focus, .pt:focus, textarea:focus { border-color: var(--dz-color, #1a56c4) !important; box-shadow: 0 0 0 3px var(--dz-bga, #dbe8ff) !important; outline: none; }

/* ---------- 卡片细节 ---------- */
.dz_cards { gap: 12px; }
.dz_fcard { border-radius: 14px; }

/* ---------- 移动端 ---------- */
@media (max-width: 768px) {
	td.t_f, .t_fsz { font-size: 16px; line-height: 1.85; }
	#thread_subject { font-size: 19px; }
	body { padding-bottom: env(safe-area-inset-bottom, 0px); }
	.dz_hero_stats { gap: 10px; }
}

/* ==== 团队群聊 dz_chat（2026-10-14） ==== */
.dz_chat{max-width:1080px;margin:18px auto 0;background:var(--dz-bgf,#fff);border:1px solid var(--dz-borderc,#e6e8eb);border-radius:14px;overflow:hidden;box-shadow:0 6px 24px rgba(15,23,42,.06);}
.dz_chat_head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid var(--dz-borderc,#e6e8eb);background:var(--dz-bgb,#f8f9fb);}
.dz_chat_title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700;color:var(--dz-fa,#333);}
.dz_chat_title em{font-style:normal;font-size:12px;font-weight:400;color:var(--dz-fc,#999);margin-left:4px;}
.dz_chat_live{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.18);animation:dz_chat_pulse 2s infinite;}
@keyframes dz_chat_pulse{0%,100%{opacity:1}50%{opacity:.45}}
.dz_chat_tip{font-size:12px;color:var(--dz-fc,#999);}
.dz_chat_msgs{height:340px;overflow-y:auto;padding:16px 18px;background:var(--dz-bgd,#fff);scroll-behavior:smooth;}
.dz_chat_loading,.dz_chat_empty{text-align:center;color:var(--dz-fc,#999);font-size:13px;padding:40px 0;}
.dz_chat_item{display:flex;gap:10px;margin-bottom:14px;align-items:flex-start;}
.dz_chat_item.mine{flex-direction:row-reverse;}
.dz_chat_avatar{width:36px;height:36px;border-radius:50%;flex:none;border:1px solid var(--dz-borderc,#e6e8eb);background:var(--dz-bgb,#f3f4f6);}
.dz_chat_body{max-width:72%;min-width:0;}
.dz_chat_item.mine .dz_chat_body{display:flex;flex-direction:column;align-items:flex-end;}
.dz_chat_meta{display:flex;gap:8px;align-items:baseline;margin-bottom:4px;font-size:12px;color:var(--dz-fc,#999);}
.dz_chat_meta b{color:var(--dz-fb,#666);font-weight:600;}
.dz_chat_bubble{padding:9px 13px;border-radius:12px;border-top-left-radius:4px;background:var(--dz-bgb,#f3f4f6);color:var(--dz-fa,#333);font-size:14px;line-height:1.6;word-break:break-word;white-space:pre-wrap;border:1px solid var(--dz-borderb,#eee);}
.dz_chat_item.mine .dz_chat_bubble{background:var(--dz-btnbg,#1a73e8);color:var(--dz-btntxt,#fff);border-color:transparent;border-radius:12px;border-top-right-radius:4px;}
.dz_chat_bar{display:flex;gap:10px;padding:12px 18px;border-top:1px solid var(--dz-borderc,#e6e8eb);background:var(--dz-bgf,#fff);}
.dz_chat_bar input{flex:1;height:40px;padding:0 14px;border:1px solid var(--dz-borderc,#dcdfe3);border-radius:20px;font-size:14px;background:var(--dz-bgd,#fff);color:var(--dz-fa,#333);outline:none;transition:border-color .2s, box-shadow .2s;}
.dz_chat_bar input:focus{border-color:var(--dz-btnbg,#1a73e8);box-shadow:0 0 0 3px rgba(26,115,232,.12);}
.dz_chat_bar button{height:40px;padding:0 22px;border:none;border-radius:20px;background:var(--dz-btnbg,#1a73e8);color:var(--dz-btntxt,#fff);font-size:14px;cursor:pointer;transition:background .2s, opacity .2s;}
.dz_chat_bar button:hover{background:var(--dz-btnbga,#1557b0);}
.dz_chat_bar button:disabled{opacity:.55;cursor:default;}
.dz_chat_guest{justify-content:center;}
.dz_chat_guest a{color:var(--dz-color,#1a73e8);font-size:14px;}
@media (max-width:768px){
  .dz_chat{margin:10px 8px 0;border-radius:10px;}
  .dz_chat_tip{display:none;}
  .dz_chat_msgs{height:280px;padding:12px;}
  .dz_chat_body{max-width:82%;}
}
