/* ============================================ */
/* AUFKLAPPBARE SEKTIONEN - CSS */
/* Dateiname: collapsible-sections.css */
/* ============================================ */

/* Haupt-Container für aufklappbare Sektionen */
.collapsible-section {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    margin-bottom: 1rem;
    overflow: hidden;
    transition: all 0.3s ease;
}

.collapsible-section:hover {
    border-color: #E6007E; /* var(--primary) */
    box-shadow: 0 4px 20px rgba(230, 0, 126, 0.15);
}

/* Header (klickbarer Bereich) */
.collapsible-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.5rem;
    cursor: pointer;
    user-select: none;
    transition: all 0.3s ease;
}

.collapsible-header:hover {
    background: rgba(230, 0, 126, 0.1);
}

/* Titel mit Icon */
.collapsible-title {
    font-size: 1.25rem;
    font-weight: 600;
    color: white;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.collapsible-title i {
    color: #E6007E; /* var(--primary) */
    font-size: 1.5rem;
}

/* Chevron-Icon (Pfeil) */
.collapsible-icon {
    font-size: 1.5rem;
    color: #E6007E; /* var(--primary) */
    transition: transform 0.3s ease;
}

/* Wenn geöffnet: Icon rotieren */
.collapsible-section.active .collapsible-icon {
    transform: rotate(180deg);
}

/* Content-Bereich */
.collapsible-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease, padding 0.4s ease;
    padding: 0 1.5rem;
}

/* Wenn geöffnet: Content anzeigen */
.collapsible-section.active .collapsible-content {
    max-height: 3000px; /* Ausreichend hoch für langen Content */
    padding: 0 1.5rem 1.5rem 1.5rem;
}

/* Erste Sektion standardmäßig geöffnet (optional) */
.collapsible-section.default-open .collapsible-content {
    max-height: 3000px;
    padding: 0 1.5rem 1.5rem 1.5rem;
}

.collapsible-section.default-open .collapsible-icon {
    transform: rotate(180deg);
}

/* Responsive Anpassungen für Mobile */
@media (max-width: 768px) {
    .collapsible-title {
        font-size: 1.1rem;
    }
    
    .collapsible-header {
        padding: 1rem;
    }
    
    .collapsible-content {
        padding: 0 1rem;
    }
    
    .collapsible-section.active .collapsible-content {
        padding: 0 1rem 1rem 1rem;
    }
}

/* Smooth Animation für Content */
.collapsible-content p,
.collapsible-content h3,
.collapsible-content ul,
.collapsible-content ol {
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.collapsible-section.active .collapsible-content p,
.collapsible-section.active .collapsible-content h3,
.collapsible-section.active .collapsible-content ul,
.collapsible-section.active .collapsible-content ol {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.1s;
}
