/**
 * O6 Toolkit - GSAP Pro Accordion
 */
[data-accordion] {
    width: 100%;
}
[data-accordion-header] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    padding: 18px 0;
    border-bottom: 1px solid var(--o6tk-accordion-border, rgba(0,0,0,0.1));
    user-select: none;
    transition: color 0.2s ease;
}
[data-accordion-header]:hover {
    color: var(--o6tk-primary, #6366f1);
}
[data-accordion-header]:focus-visible {
    outline: 2px solid var(--o6tk-primary, #6366f1);
    outline-offset: 2px;
}
[data-accordion-content] {
    overflow: hidden;
    height: 0;
}
[data-accordion-content] > * {
    padding: 0 0 18px;
}
.o6tk-accordion-icon {
    width: 20px;
    height: 20px;
    position: relative;
    flex-shrink: 0;
    margin-left: 16px;
}
.o6tk-accordion-icon span {
    display: block;
    position: absolute;
    background: currentColor;
    border-radius: 1px;
    transition: transform 0.3s ease;
}
.o6tk-accordion-icon span:first-child {
    top: 50%; left: 25%;
    width: 50%; height: 2px;
    transform: translateY(-50%);
}
.o6tk-accordion-icon span:last-child {
    top: 25%; left: 50%;
    width: 2px; height: 50%;
    transform: translateX(-50%);
}
.o6tk-accordion-icon--chevron span:first-child {
    width: 40%; height: 2px;
    top: 50%; left: 20%;
    transform: translateY(-50%) rotate(45deg);
    transform-origin: right center;
}
.o6tk-accordion-icon--chevron span:last-child {
    width: 40%; height: 2px;
    top: 50%; right: 20%; left: auto;
    transform: translateY(-50%) rotate(-45deg);
    transform-origin: left center;
}
[data-accordion-header][aria-expanded="true"] .o6tk-accordion-icon span:last-child {
    transform: translateX(-50%) rotate(90deg);
}
[data-accordion-header][aria-expanded="true"] .o6tk-accordion-icon--chevron span:first-child {
    transform: translateY(-50%) rotate(-45deg);
}
[data-accordion-header][aria-expanded="true"] .o6tk-accordion-icon--chevron span:last-child {
    transform: translateY(-50%) rotate(45deg);
}

@media (prefers-reduced-motion: reduce) {
    [data-accordion-header],
    .o6tk-accordion-icon span { transition: none; }
}

@media print {
    [data-accordion-content] { height: auto !important; overflow: visible !important; }
    .o6tk-accordion-icon { display: none; }
}
