/* Accordion */

.accordion-toggle {
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--accordion-toggle-gap);
  width: 100%;
  padding: var(--accordion-toggle-padding);
  font-weight: var(--accordion-toggle-font-weight);
  background: var(--accordion-toggle-background);
  text-align: start;
  color: var(--accordion-toggle-color);
  background: transparent;
  border: none;
  border-radius: var(--accordion-toggle-radius);
  cursor: pointer;
  transition: var(--accordion-toggle-transition);
}

.accordion-toggle:hover {
  opacity: var(--accordion-toggle-hover-opacity);
}

.accordion-toggle:hover.accordion-active {
  opacity: var(--accordion-toggle-active-opacity);
}

.accordion-toggle:disabled {
  opacity: 0.5;
  pointer-events: none;
}

.accordion-active {
  color: var(--accordion-toggle-active-color);
  opacity: var(--accordion-toggle-active-opacity);
}

.accordion-content {
  /* Content container with max-height transition */
  transition: var(--accordion-content-transition);
  overflow: hidden;
  max-height: 0;
}

.accordion-content-wrapper {
  padding: var(--accordion-content-wrapper-padding);
}

/* Smooth icon rotation with easing */
.accordion-toggle .ph {
  transition: var(--accordion-icon-transition);
  width: var(--accordion-icon-size);
  height: var(--accordion-icon-size);
  color: var(--accordion-icon-color);
}

.accordion-toggle.accordion-active .ph {
  transform: scaleY(-1);
  filter: var(--accordion-icon-active-filter);
}

/* Content visibility with max-height transition */
.accordion-content.hidden {
  max-height: 0;
}

.accordion-content.block {
  max-height: var(--accordion-content-max-height);
}

/* Ensure content is visible when expanded */
.accordion-content:not(.hidden) {
  max-height: var(--accordion-content-max-height);
}
