.faq_cate_tabs { display: flex; gap: 8px; flex-wrap: wrap; border-bottom: 1px solid var(--border2); padding-bottom: 16px; margin-bottom: 10px; }
.faq_cate_tab { height: 34px; padding: 0 16px; border: 1px solid var(--border); border-radius: 17px; background: #fff; color: var(--text-muted); font-size: 13px; cursor: pointer; }
.faq_cate_tab.active { background: var(--text-strong); color: #fff; border-color: var(--text-strong); }

.faq_list { display: flex; flex-direction: column; }
.faq_item { border-bottom: 1px solid var(--border2); }
.faq_q_row { display: flex; align-items: center; gap: 14px; width: 100%; padding: 18px 4px; background: none; border: none; text-align: left; cursor: pointer; }
.faq_mark { flex: 0 0 26px; height: 26px; display: flex; align-items: center; justify-content: center; border-radius: 50%; font-size: 13px; font-weight: 700; }
.faq_mark_q { background: var(--accent2); color: #fff; }
.faq_mark_a { background: #fff; color: var(--accent2); border: 1px solid var(--accent2); }
.faq_q_text { flex: 1; font-size: 14px; color: var(--text-dark); }
.faq_toggle_icon { font-size: 18px; color: var(--text-light); transition: transform .15s; }
.faq_item.open .faq_toggle_icon { transform: rotate(180deg); }

.faq_a_row { display: none; align-items: flex-start; gap: 14px; padding: 16px 18px; background: #fafafa; margin: 0 4px 4px; border-radius: 6px; }
.faq_item.open .faq_a_row { display: flex; }
.faq_a_text { flex: 1; font-size: 13px; color: var(--text-muted); line-height: 1.7; white-space: pre-line; }
