/* ==========================================================================
   AI dynamic articles (blog-article.html / /blog/<slug>)
   ========================================================================== */
.artcls #ai-body { margin-top: 8px; }
.artcls #ai-body > h2 {
  font-size: clamp(22px, 2.4vw, 30px);
  line-height: 1.25;
  margin: 38px 0 14px;
  font-weight: 800;
  letter-spacing: -0.01em;
}
.artcls #ai-body > h3 {
  font-size: 19px;
  margin: 26px 0 10px;
  font-weight: 700;
}
.artcls #ai-body > p {
  font-size: 16.5px;
  line-height: 1.85;
  color: #2a2a2a;
  margin: 0 0 16px;
}
.artcls #ai-body > ul {
  margin: 4px 0 20px;
  padding-left: 22px;
}
.artcls #ai-body > ul li {
  position: relative;
  font-size: 16px;
  line-height: 1.7;
  margin-bottom: 9px;
  color: #2a2a2a;
  list-style: none;
  padding-left: 18px;
}
.artcls #ai-body > ul li::before {
  content: "";
  position: absolute;
  left: 0; top: 10px;
  width: 7px; height: 7px;
  border-radius: 2px;
  background: #ea4900;
}
.artcls #ai-body > blockquote {
  margin: 26px 0;
  padding: 18px 22px;
  border-left: 4px solid #ea4900;
  background: #f7f6f4;
  font-size: 17px;
  line-height: 1.75;
  color: #333;
  border-radius: 0 8px 8px 0;
}
#ai-faq-wrap { margin-top: 46px; max-width: 860px; margin-left: auto; margin-right: auto; }
.prose-faq {
  border: 1px solid #e6e3de;
  border-radius: 10px;
  padding: 14px 18px;
  margin-bottom: 12px;
  background: #fff;
}
.prose-faq[open] { background: #faf9f7; }
.prose-faq summary {
  cursor: pointer;
  font-weight: 700;
  font-size: 16px;
  list-style: none;
  position: relative;
  padding-right: 26px;
}
.prose-faq summary::-webkit-details-marker { display: none; }
.prose-faq summary::after {
  content: "+";
  position: absolute; right: 2px; top: -1px;
  font-size: 22px; color: #ea4900; font-weight: 400;
}
.prose-faq[open] summary::after { content: "–"; }
.prose-faq p { margin: 10px 0 2px; font-size: 15.5px; line-height: 1.8; color: #444; }

/* AI 文章卡片（博客列表追加） */
.ai-post-card { display: block; }
