.avvalstock-faq-section {
  --avv-border: #e1e5ea;
  --avv-bg: #fff;
  --avv-soft: #f7f8fa;
  --avv-text: #172033;
  --avv-accent: #1769aa;
  margin: 28px 0;
  color: var(--avv-text);
  direction: rtl;
}
.avv-faq-heading { font-size: 22px; line-height: 1.6; margin: 0 0 14px; }
.avv-accordion { border: 1px solid var(--avv-border); border-radius: 12px; overflow: hidden; background: var(--avv-bg); }
.avv-accordion__item + .avv-accordion__item { border-top: 1px solid var(--avv-border); }
.avv-accordion__question { font: inherit; margin: 0 !important; padding: 0; }
.avv-accordion__button {
  appearance: none; width: 100%; display: flex; align-items: center; justify-content: space-between;
  gap: 16px; text-align: right; border: 0; background: var(--avv-soft); color: var(--avv-text);
  padding: 14px 16px; font: inherit; font-size: 15px; font-weight: 700; line-height: 1.8; cursor: pointer;
}
.avv-accordion__button:focus-visible { outline: 3px solid rgba(23,105,170,.25); outline-offset: -3px; }
.avv-accordion__icon { position: relative; flex: 0 0 18px; width: 18px; height: 18px; }
.avv-accordion__icon:before, .avv-accordion__icon:after {
  content: ""; position: absolute; top: 8px; right: 1px; width: 16px; height: 2px;
  background: currentColor; border-radius: 2px; transition: transform .2s;
}
.avv-accordion__icon:after { transform: rotate(90deg); }
.avv-accordion__button[aria-expanded=true] .avv-accordion__icon:after { transform: rotate(0); }
.avv-accordion__panel { padding: 14px 16px 16px; background: #fff; }
.avv-accordion__panel[hidden] { display: none; }
.avv-accordion__answer { font-size: 14px; line-height: 2; }
.avv-accordion__answer > :first-child { margin-top: 0; }
.avv-accordion__answer > :last-child { margin-bottom: 0; }
.avv-faq-rating {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 14px;
  padding-top: 12px; border-top: 1px solid var(--avv-border); font-size: 12px;
}
.avv-rating-label { font-weight: 600; }
.avv-rate { border: 1px solid var(--avv-border); border-radius: 999px; background: #fff; padding: 5px 9px; cursor: pointer; }
.avv-rate:hover:not(:disabled) { border-color: var(--avv-accent); color: var(--avv-accent); }
.avv-rate:disabled { opacity: .55; cursor: not-allowed; }
.avv-rating-percent { color: #16803b; font-weight: 700; }
.avv-rating-message { color: #555; }
.avv-rating-voted .avv-rating-message { display: inline-flex; align-items: center; color: #6b7280; font-weight: 600; }
.avv-rating-voted .avv-rating-message:before {
  content: "✓"; display: inline-grid; place-items: center; width: 16px; height: 16px;
  margin-left: 4px; border-radius: 50%; background: #e8f5ec; color: #16803b; font-size: 11px;
}
.avv-faq-rating[aria-busy=true] { opacity: .65; }
@media (max-width: 576px) {
  .avvalstock-faq-section { margin: 20px 0; }
  .avv-faq-heading { font-size: 19px; }
  .avv-accordion__button { padding: 12px; font-size: 14px; }
  .avv-accordion__panel { padding: 12px; }
  .avv-rating-label { width: 100%; }
}
