/* ==========================================================================
   article-faq-src.css
   سؤالات متداول (آکاردئونی) و کادر منابع برای مقاله‌های دانشنامه
   هم‌ظاهر با صفحه‌های محصول و مقاله «سوله بتنی یا فلزی»
   ========================================================================== */
.bp-faq, .bp-src {
  --bp-navy: #12204c; --bp-blue: #1f4fc9; --bp-blue-soft: #f1f5ff; --bp-blue-line: #d6e1fb;
  --bp-text: #36405f; --bp-muted: #5b6585; --bp-orange: #ffad06; --bp-orange-deep: #b45f06;
}

/* ---------- سؤالات متداول ---------- */
.bp-faq { margin-top: 18px; }
.bp-faq details { background: #fff; border: 1px solid var(--bp-blue-line); border-radius: 14px; overflow: hidden; }
.bp-faq details + details { margin-top: 12px; }
.bp-faq summary {
  padding: 15px 20px; font-size: 14px; font-weight: 800; color: var(--bp-navy); line-height: 1.9;
  cursor: pointer; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 16px;
}
.bp-faq summary::-webkit-details-marker { display: none; }
.bp-faq summary > span { color: var(--bp-orange-deep); transition: transform .2s ease; flex: none; font-size: 18px; }
.bp-faq details[open] { border-color: #aebff0; }
.bp-faq details[open] > summary { background: var(--bp-blue-soft); color: var(--bp-blue); border-bottom: 1px dashed var(--bp-blue-line); }
.bp-faq details[open] > summary > span { transform: rotate(180deg); }
.bp-faq details > p {
  margin: 0; padding: 14px 20px 18px; font-size: 13.6px; line-height: 2.1; color: var(--bp-text); text-align: justify;
}

/* ---------- منابع ---------- */
.bp-src { margin-top: 14px; background: var(--bp-blue-soft); border: 1px solid var(--bp-blue-line); border-radius: 16px; padding: 4px 20px; }
.bp-src + .bp-src { margin-top: 12px; }
.bp-src ol { list-style: none; margin: 0; padding: 0; counter-reset: bpsrc; }
.bp-src li {
  counter-increment: bpsrc; position: relative; margin: 0; padding: 12px 0; padding-inline-start: 32px;
  font-size: 12px; line-height: 1.95; color: var(--bp-text); text-align: start; border-bottom: 1px dashed var(--bp-blue-line);
}
.bp-src li:last-child { border-bottom: 0; }
.bp-src li::before {
  content: counter(bpsrc, persian); position: absolute; inset-inline-start: 0; top: 14px; width: 19px; height: 19px;
  border-radius: 50%; background: var(--bp-blue); color: #fff; font-size: 10.5px; font-weight: 800; display: grid; place-items: center; line-height: 1;
}
.bp-src li a { color: var(--bp-blue); font-weight: 700; text-decoration: underline; text-underline-offset: 4px; text-decoration-color: var(--bp-orange); }
.bp-src li a:hover { color: var(--bp-orange-deep); }

@media (max-width: 640px) {
  .bp-faq summary { padding: 13px 16px; }
  .bp-faq details > p { padding: 12px 16px 16px; }
  .bp-src { padding: 2px 14px; }
}
