/* /faq — accordion of Q&A + search box (layout ported from ant.exchange/ru/faq). */
.faq { margin: 8px 0 16px; }
.faq__title { font-size: var(--fs-h2); font-weight: 800; letter-spacing: -0.02em; margin: 0 0 8px; }
.faq__intro { color: var(--muted-foreground); font-size: var(--fs-small); margin: 0 0 22px; max-width: 720px; line-height: 1.55; }
.faq__search { margin-bottom: 18px; }

.faq__list { display: flex; flex-direction: column; gap: 10px; }
.faq-item {
  border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--card); overflow: hidden;
  transition: border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);
}
.faq-item.is-open { border-color: var(--primary); box-shadow: var(--shadow-xs); }

.faq-q {
  display: flex; align-items: center; gap: 14px; width: 100%; text-align: left;
  padding: 17px 20px; border: 0; background: transparent; cursor: pointer; font: inherit; color: var(--foreground);
}
.faq-q__text { flex: 1 1 auto; font-weight: 600; font-size: var(--fs-small); }
.faq-q__icon { width: 22px; height: 22px; flex: 0 0 auto; color: var(--primary); transition: transform .2s var(--ease); }
.faq-item.is-open .faq-q__icon { transform: rotate(45deg); }

.faq-a { display: none; padding: 0 20px 18px; color: var(--muted-foreground); font-size: var(--fs-small); line-height: 1.65; }
.faq-item.is-open .faq-a { display: block; }
.faq-a p { margin: 0 0 10px; }
.faq-a ul, .faq-a ol { margin: 6px 0 12px; padding-left: 22px; }
.faq-a li { margin: 4px 0; }
.faq-a strong { color: var(--foreground); font-weight: 600; }
.faq-a a { color: var(--primary); text-decoration: underline; text-underline-offset: 2px; overflow-wrap: anywhere; }

.faq__empty { padding: 24px; text-align: center; color: var(--muted-foreground); font-size: var(--fs-small); }

@media (max-width: 560px) {
  .faq-q { padding: 14px 16px; gap: 10px; }
  .faq-a { padding: 0 16px 15px; }
}
