/* Container do Accordion */
.ui-accordion {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 1.5rem 0 !important;
  box-sizing: border-box !important;
}

/* Item Individual (<details>) */
.ui-accordion-item {
  border: 1px solid var(--ui-border-color, #e2e8f0) !important;
  border-radius: var(--ui-radius-lg, 8px) !important;
  background-color: var(--ui-bg-card, #ffffff) !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.ui-accordion-item[open] {
  border-color: var(--ui-border-hover, #cbd5e1) !important;
  box-shadow: var(--ui-shadow-xs, 0 1px 2px rgba(0, 0, 0, 0.05)) !important;
}

/* Cabeçalho (<summary>) - Respiro do Texto e do Ícone */
.ui-accordion-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 16px 20px !important; /* Respiro superior/inferior (16px) e laterais (20px) */
  background-color: var(--ui-bg-surface, #f8fafc) !important;
  cursor: pointer !important;
  user-select: none !important;
  list-style: none !important;
  font-family: var(--ui-font-sans, inherit) !important;
  font-size: var(--ui-font-size-base, 16px) !important;
  font-weight: var(--ui-font-weight-semibold, 600) !important;
  color: var(--ui-text-primary, #0f172a) !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  transition: background-color 0.2s ease, color 0.2s ease !important;
}

.ui-accordion-header::-webkit-details-marker {
  display: none !important;
}

.ui-accordion-header:hover {
  background-color: var(--ui-bg-surface-hover, #f1f5f9) !important;
}

.ui-accordion-item[open] > .ui-accordion-header {
  color: var(--ui-primary, #2563eb) !important;
  background-color: var(--ui-bg-card, #ffffff) !important;
  border-bottom: 1px solid var(--ui-border-color, #e2e8f0) !important;
}

.ui-accordion-title {
  flex: 1 !important;
  padding-right: 16px !important; /* Garante que o texto da pergunta nunca encoste no sinal +/- */
  line-height: 1.4 !important;
}

/* Ícone de Chevron / Sinal (+ / -) */
.ui-accordion-icon {
  position: relative !important;
  width: 14px !important;
  height: 14px !important;
  flex-shrink: 0 !important;
  margin-left: auto !important;
}

.ui-accordion-icon::before,
.ui-accordion-icon::after {
  content: "" !important;
  position: absolute !important;
  background-color: currentColor !important;
  border-radius: 2px !important;
  transition: transform 0.2s ease !important;
}

/* Barra Horizontal */
.ui-accordion-icon::before {
  top: 6px !important;
  left: 0 !important;
  width: 14px !important;
  height: 2px !important;
}

/* Barra Vertical */
.ui-accordion-icon::after {
  top: 0 !important;
  left: 6px !important;
  width: 2px !important;
  height: 14px !important;
}

/* Quando aberto, transforma em sinal de "-" */
.ui-accordion-item[open] .ui-accordion-icon::after {
  transform: rotate(90deg) !important;
}

/* Corpo da Resposta (<div class="ui-accordion-body">) */
.ui-accordion-body {
  box-sizing: border-box !important;
}

.ui-accordion-content {
  padding: 18px 20px !important; /* Espaçamento interno completo da resposta */
  color: var(--ui-text-secondary, #475569) !important;
  font-family: var(--ui-font-sans, inherit) !important;
  font-size: var(--ui-font-size-base, 15px) !important;
  line-height: 1.6 !important;
  box-sizing: border-box !important;
}

.ui-accordion-content p:last-child {
  margin-bottom: 0 !important;
}