/* General Styles */
body {
    padding-top: 56px;
    transition: background-color 0.3s, color 0.3s;
}

header {
    min-height: 60vh;
    background-color: var(--bg-color);
    color: var(--text-color);
    display: flex;
    align-items: center;
    justify-content: center;
}

section {
    background-color: var(--bg-color);
    color: var(--text-color);
}

section.bg-light {
    background-color: var(--bg-light-color) !important;
}

.card {
    background-color: var(--card-bg-color);
    border: 1px solid var(--border-color);
    transition: transform 0.2s;
}

.card:hover {
    transform: translateY(-5px);
}

.card-title, .card-text {
    color: var(--text-color);
}

.accordion-button {
    background-color: var(--card-bg-color);
    color: var(--text-color);
}

.accordion-button:not(.collapsed) {
    background-color: var(--accent-color);
    color: white;
}

.accordion-item {
     background-color: var(--card-bg-color);
     border: 1px solid var(--border-color);
}

.accordion-body {
    color: var(--text-color);
}


/* Light Mode */
:root {
    --bg-color: #ffffff;
    --bg-light-color: #f8f9fa;
    --text-color: #212529;
    --card-bg-color: #ffffff;
    --border-color: #dee2e6;
    --accent-color: #6f42c1;
}

/* Dark Mode */
@media (prefers-color-scheme: dark) {
    :root {
        --bg-color: #121212;
        --bg-light-color: #1c1c1c;
        --text-color: #e0e0e0;
        --card-bg-color: #242424;
        --border-color: #444;
    }

    .navbar {
        background-color: #1c1c1c !important;
    }

    .footer {
        background-color: #1c1c1c !important;
    }

    .card {
        border-color: var(--border-color);
    }
    
    .accordion-button {
        background-color: var(--card-bg-color);
        color: var(--text-color);
    }

    .accordion-button:not(.collapsed) {
        background-color: var(--accent-color);
        color: white;
    }

    .accordion-item {
        background-color: var(--card-bg-color);
        border: 1px solid var(--border-color);
    }
}
