/* Replace the core accordion "+" icon with a custom chevron. */

.wp-block-accordion-heading__toggle-icon {
    font-size: 0;
    width: 1.3rem;
    height: 1.3rem;
    margin-left: 10px;
    display: inline-flex;
    position: relative;
    align-items: center;
    justify-content: center;
    line-height: 1;
    align-self: center;
    flex: 0 0 1.3rem;
}

.wp-block-accordion-item.is-open
    > .wp-block-accordion-heading
    .wp-block-accordion-heading__toggle-icon {
    transform: none;
}

/* Animate the custom ::before chevron icon, not the core icon span itself. */
.wp-block-accordion-item > .wp-block-accordion-heading .wp-block-accordion-heading__toggle-icon {
    transition: none;
}

.wp-block-accordion-heading__toggle-icon::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 0.5rem;
    height: 0.5rem;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: translate(-50%, calc(-50% - 1px)) rotate(45deg);
}

.wp-block-accordion-heading__toggle[aria-expanded="true"]
    .wp-block-accordion-heading__toggle-icon::before {
    transform: translate(-50%, calc(-50% + 1px)) rotate(225deg);
}

@media (prefers-reduced-motion: no-preference) {
    .wp-block-accordion-heading__toggle-icon::before {
        transition: transform 0.3s ease;
    }
}