

.box_header h1 .h1_suffix{
  display:block;
  font-size:var(--fs-sm); font-weight:400; color:#8c8070;
  letter-spacing:0; line-height:1.75; margin-top:8px;
}

.tp_lead{ margin:4px 0 18px; }
.tp_lead p{
  margin:0 0 12px;
  font-size:var(--fs-base); line-height:var(--lh-body); color:#444;
  text-align:justify;
}
.tp_lead p:last-child{ margin-bottom:0; }

.tp_toc{
  background:#faf7f2; border:1px solid #efe6d8; border-radius:8px;
  padding:14px 18px; margin:0 0 26px;
}
.tp_toc_t{
  display:block; font-size:var(--fs-sm); font-weight:700; color:#9e2b25;
  letter-spacing:1px; margin-bottom:8px;
}
.tp_toc ol{ margin:0; padding:0; list-style:none; display:flex; flex-wrap:wrap; gap:8px 22px; }
.tp_toc li{ margin:0; font-size:var(--fs-sm); line-height:1.8; }
.tp_toc li a{ color:#444; text-decoration:none; border-bottom:1px dashed #ddd; }
.tp_toc li a:hover{ color:#D0021B; border-bottom-color:#D0021B; }

.tp_sec{
  margin:0 0 30px; padding-top:6px;
}
.tp_sec h2{
  font-size:var(--fs-h2); font-weight:700; color:#2c2622;
  margin:0 0 12px; padding-left:11px;
  border-left:4px solid #D0021B; line-height:1.4;
}
.tp_sec_intro{
  margin:0 0 18px; font-size:var(--fs-base); line-height:1.9; color:#666;
  background:#fcfcfc; border-left:3px solid #f0e4d4; padding:10px 14px;
}

.tp_group{ margin:0 0 22px; }
.tp_group:last-child{ margin-bottom:0; }
.tp_group h3{
  font-size:var(--fs-base); font-weight:700; color:#9e2b25;
  margin:0 0 6px;
}
.tp_note{ margin:0 0 10px; font-size:var(--fs-sm); line-height:1.85; color:#8c8070; }

.tp_zis{ display:flex; flex-wrap:wrap; gap:8px; }
.tp_zi{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  width:78px; padding:9px 4px 8px;
  background:#fff; border:1px solid #ece2d2; border-radius:8px;
  text-decoration:none; transition:.16s;
}
.tp_zi:hover{ border-color:#D0021B; box-shadow:0 4px 12px rgba(208,2,27,.10); transform:translateY(-2px); }
.tp_zi b{
  font-size:var(--fs-h1); line-height:1.2; color:#2c2622; font-weight:700;
  font-family:"STKaiti","KaiTi","Songti SC",serif;
}
.tp_zi i{ font-style:normal; font-size:var(--fs-xs); color:#a09580; line-height:1.45; margin-top:2px; text-align:center; word-break:keep-all; }
.tp_zi em{ font-style:normal; font-size:var(--fs-xs); color:#b5322b; line-height:1.5; }

.tp_zicards{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.tp_zicard{
  display:block; padding:11px 14px;
  background:#fff; border:1px solid #ece2d2; border-radius:8px;
  text-decoration:none; transition:.16s;
}
.tp_zicard:hover{ border-color:#D0021B; box-shadow:0 4px 12px rgba(208,2,27,.10); }
.tp_zc_head{ display:flex; align-items:baseline; gap:9px; }
.tp_zc_head b{
  font-size:var(--fs-h1-sm); color:#2c2622; font-weight:700;
  font-family:"STKaiti","KaiTi","Songti SC",serif;
}
.tp_zc_meta{ font-size:var(--fs-xs); color:#a09580; }
.tp_zc_mean{
  display:block; margin-top:4px;
  font-size:var(--fs-sm); line-height:1.75; color:#666;
}

.tp_item{ margin:0 0 18px; }
.tp_item:last-child{ margin-bottom:0; }
.tp_item h3{
  font-size:var(--fs-base); font-weight:700; color:#2c2622; margin:0 0 6px;
}
.tp_item p{ margin:0; font-size:var(--fs-base); line-height:var(--lh-body); color:#555; text-align:justify; }

.tp_combos{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.tp_combo{
  padding:13px 15px 14px;
  background:#fff; border:1px solid #ece2d2; border-radius:10px;
}
.tp_combo_head{ display:flex; align-items:baseline; gap:9px; flex-wrap:wrap; margin:0 0 7px; }

.tp_combo_name{
  font-size:var(--fs-base); font-weight:700; color:#9e2b25;
  letter-spacing:1px; text-decoration:none;
  border-bottom:1px dashed #d9b6a8;
}
.tp_combo_name:hover{ color:#D0021B; border-bottom-style:solid; }
.tp_combo_tag{
  font-size:var(--fs-xs); font-weight:400; color:#8c8070;
  background:#f6efe1; padding:2px 8px; border-radius:10px;
}
.tp_combo p{ margin:0; font-size:var(--fs-base); line-height:1.95; color:#555; text-align:justify; }

.tp_namelinks{
  margin:12px 0 0; padding:10px 14px;
  background:#fcfaf5; border:1px dashed #ece2d2; border-radius:8px;
  line-height:1.9;
}
.tp_namelinks_t{
  display:block; margin-bottom:4px;
  font-size:var(--fs-xs); color:#8c8070; letter-spacing:1px;
}
.tp_namelinks a{
  display:inline-block; margin-right:14px;
  font-size:var(--fs-base); color:#9e2b25; text-decoration:none;
  border-bottom:1px dashed #d9b6a8;
}
.tp_namelinks a:hover{ color:#D0021B; border-bottom-style:solid; }

.tp_tool{
  margin:0 0 30px; padding:20px 22px;
  background:linear-gradient(180deg,#fffdf8,#faf3e6);
  border:1px solid #efe2cc; border-radius:10px;
}
.tp_tool h2{ font-size:var(--fs-h2); color:#7c1f1b; margin:0 0 6px; }
.tp_tool p{ margin:0 0 14px; font-size:var(--fs-base); line-height:1.85; color:#8c8070; }
.tp_tool_links{ display:flex; flex-wrap:wrap; gap:10px; }
.tp_tool_links a{
  display:inline-block; padding:9px 20px;
  background:linear-gradient(90deg,#b5322b,#8c211c); color:#fff;
  border-radius:20px; font-size:var(--fs-sm); font-weight:700; text-decoration:none;
  letter-spacing:1px; transition:.18s;
}
.tp_tool_links a:hover{ filter:brightness(1.08); transform:translateY(-1px); }

.tp_faq{
  padding:14px 0; border-bottom:1px dashed #eee;
}
.tp_faq:last-child{ border-bottom:none; }
.tp_faq h3{
  font-size:var(--fs-base); font-weight:700; color:#2c2622; margin:0 0 7px;
  position:relative; padding-left:22px;
}
.tp_faq h3:before{
  content:"Q"; position:absolute; left:0; top:1px;
  color:#D0021B; font-size:var(--fs-xs); font-weight:700;
}
.tp_faq p{
  margin:0; font-size:var(--fs-base); line-height:var(--lh-body); color:#555;
  position:relative; padding-left:22px; text-align:justify;
}
.tp_faq p:before{
  content:"A"; position:absolute; left:0; top:0;
  color:#bbb; font-size:var(--fs-xs); font-weight:700;
}

.tp_more{ margin:6px 0 0; padding-top:20px; border-top:2px solid #f2ece2; }
.tp_more h2{
  font-size:var(--fs-h2); font-weight:700; color:#2c2622;
  margin:0 0 12px; padding-left:11px; border-left:4px solid #c8a45c;
  line-height:1.4;
}

.tp_xs{ display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }
.tp_xs_item{
  display:block; padding:10px 12px;
  background:#fff; border:1px solid #ece2d2; border-radius:8px;
  text-decoration:none; transition:.16s;
}
.tp_xs_item:hover{ border-color:#D0021B; box-shadow:0 4px 12px rgba(208,2,27,.10); transform:translateY(-1px); }
.tp_xs_h{ display:flex; align-items:baseline; gap:7px; }
.tp_xs_h b{
  font-size:var(--fs-h1-sm); color:#2c2622; font-weight:700;
  font-family:"STKaiti","KaiTi","Songti SC",serif;
}
.tp_xs_h i{ font-style:normal; font-size:var(--fs-xs); color:#a09580; }
.tp_xs_meta{ display:block; margin-top:3px; font-size:var(--fs-xs); color:#9a8f7c; line-height:1.6; }
.tp_xs_tip{ display:block; margin-top:3px; font-size:var(--fs-xs); color:#b5322b; line-height:1.6; }

@media screen and (max-width:767px){
  .tp_toc{ padding:12px 14px; }
  .tp_toc ol{ gap:6px 16px; }
  .tp_sec h2{ font-size:var(--fs-base); }
  .tp_zi{ width:68px; padding:8px 3px 7px; }
  .tp_zi b{ font-size:var(--fs-h1-sm); }
  .tp_zicards{ grid-template-columns:1fr; }
  .tp_combos{ grid-template-columns:1fr; }
  .tp_xs{ grid-template-columns:1fr 1fr; gap:8px; }
  .tp_xs_h b{ font-size:var(--fs-h2); }
  .tp_tool{ padding:16px; }
  .tp_tool_links a{ padding:8px 16px; }
}
