/* soapKits Accordion */
.soapkits-accordion { --soapkits-accordion-transition: 0.25s; --soapkits-accordion-easing: ease; display: flex; flex-direction: column; gap: var(--soapkits-accordion-gap, 8px); }
.soapkits-accordion__item { overflow: hidden; background: var(--soapkits-item-background, #fff); border: 1px solid var(--soapkits-border, #e5e7eb); border-radius: var(--soapkits-border-radius, 12px); transition: box-shadow var(--soapkits-accordion-transition) var(--soapkits-accordion-easing), border-color var(--soapkits-accordion-transition) var(--soapkits-accordion-easing); }
.soapkits-accordion__item.is-open { box-shadow: var(--soapkits-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.08)); }
button.soapkits-accordion__header { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 20px; border: 0; background: transparent; color: inherit; cursor: pointer; font: inherit; text-align: left; -webkit-appearance: none; appearance: none; transition: background-color var(--soapkits-accordion-transition) var(--soapkits-accordion-easing), color var(--soapkits-accordion-transition) var(--soapkits-accordion-easing); }
button.soapkits-accordion__header:focus-visible { outline: 2px solid var(--soapkits-accent, #6b7280); outline-offset: -2px; }
.soapkits-accordion__title { flex: 1 1 auto; color: inherit; font-size: 15px; font-weight: 600; }
.soapkits-accordion__icon { display: inline-flex; width: 28px; height: 28px; flex: 0 0 auto; align-items: center; justify-content: center; border-radius: 999px; color: #6b7280; transition: color var(--soapkits-accordion-transition) var(--soapkits-accordion-easing), background-color var(--soapkits-accordion-transition) var(--soapkits-accordion-easing), transform var(--soapkits-accordion-transition) var(--soapkits-accordion-easing); }
.soapkits-accordion__icon svg { width: 55%; height: 55%; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; }
.soapkits-accordion__icon-closed, .soapkits-accordion__icon-open { display: inline-flex; width: 100%; height: 100%; align-items: center; justify-content: center; }
.soapkits-accordion__icon-open { display: none; }
.soapkits-accordion__item.is-open .soapkits-accordion__icon-closed { display: none; }
.soapkits-accordion__item.is-open .soapkits-accordion__icon-open { display: inline-flex; }
.soapkits-accordion__item.is-open .soapkits-accordion__icon { color: #111827; }
.soapkits-accordion__content { padding: 0 20px 18px; color: inherit; font-size: 14px; line-height: 1.6; }
.soapkits-accordion__content:not([hidden]) { animation: soapkits-accordion-slide var(--soapkits-accordion-transition) var(--soapkits-accordion-easing); }
[data-animation-type="fade"] .soapkits-accordion__content:not([hidden]) { animation-name: soapkits-accordion-fade; }
[data-animation-type="flip"] .soapkits-accordion__content:not([hidden]) { animation-name: soapkits-accordion-flip; transform-origin: top; }
[data-animation-type="none"] .soapkits-accordion__content:not([hidden]) { animation: none; }
@keyframes soapkits-accordion-slide { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } }
@keyframes soapkits-accordion-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes soapkits-accordion-flip { from { opacity: 0; transform: perspective(400px) rotateX(-90deg); } to { opacity: 1; transform: perspective(400px) rotateX(0); } }
@media (prefers-reduced-motion: reduce) { .soapkits-accordion__item, .soapkits-accordion__header, .soapkits-accordion__icon, .soapkits-accordion__content:not([hidden]) { animation: none !important; transition-duration: 0.01ms !important; } }
