:root {
    /* Light theme */
    --primary-color: #4CAF50;
    --secondary-color: #45a049;
    --background-color: #ffffff;
    --text-color: #212529;
    --card-bg: #ffffff;
    --nav-bg: #ffffff;
    --light-green: #e8f5e9;
    
    /* Dark theme */
    --dark-background: #121212;
    --dark-card: #1E1E1E;
    --dark-text: #ffffff;
    --dark-nav: #1A1A1A;
    --dark-accent: #45a049;
}

/* Dark mode styles */
[data-bs-theme="dark"] {
    --background-color: var(--dark-background);
    --text-color: var(--dark-text);
    --card-bg: var(--dark-card);
    --nav-bg: var(--dark-nav);
    --light-green: var(--dark-accent);
}

/* Apply variables */
body {
    background-color: var(--background-color);
    color: var(--text-color);
    transition: all 0.3s ease;
}

.card {
    background-color: var(--card-bg);
    color: var(--text-color);
    transition: all 0.3s ease;
}

.custom-nav {
    background-color: var(--nav-bg);
    transition: all 0.3s ease;
}
/* Footer Styles */
.footer {
    background-color: var(--bs-body-bg);
    border-top: 1px solid var(--bs-border-color);
    transition: background-color 0.3s ease;
}

.social-icons {
    display: flex;
    gap: 20px;
    justify-content: flex-end;
    align-items: center;
}

.social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    transition: transform 0.3s ease;
}

.social-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform 0.3s ease;
}

.social-icon:hover {
    transform: translateY(-3px);
}

.social-icon:hover img {
    transform: scale(1.1);
}

/* Dark mode styles for footer */
[data-bs-theme="dark"] .footer {
    background-color: #1a1a1a;
    border-color: #373b3e;
}

[data-bs-theme="dark"] .social-icon img {
    filter: brightness(0.8);
}