.faq-page {
    background:
        linear-gradient(180deg, #f8fafc 0%, #ecfdf5 48%, #ffffff 100%);
}

.faq-filter-btn,
.faq-lang-btn {
    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.faq-filter-btn.is-active,
.faq-lang-btn.is-active {
    border-color: #047857;
    background: #047857;
    color: #ffffff;
    box-shadow: 0 10px 24px rgba(4, 120, 87, 0.2);
}

.faq-filter-btn:hover,
.faq-lang-btn:hover {
    transform: translateY(-1px);
}

.faq-item {
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.05);
}

.faq-item.is-open {
    border-color: rgba(4, 120, 87, 0.25);
}

.faq-item.is-hidden {
    display: none;
}

.faq-question-toggle {
    cursor: pointer;
}

.faq-question-toggle:hover .faq-toggle-icon {
    background: #047857;
    color: #ffffff;
}

.faq-toggle-icon {
    transition:
        background-color 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
}

.faq-item.is-open .faq-toggle-icon {
    background: #047857;
    color: #ffffff;
    transform: rotate(45deg);
}

.faq-answer-text:not(.hidden) {
    display: block;
    white-space: pre-line;
}

.faq-empty-state.is-hidden {
    display: none;
}
