/* Fresh Footer Social Icons - Theme Synced */
:root {
    /* Inherit from theme4.css dark theme variables */
    --jl-footer-social-icon-size: 20px;
    --jl-footer-social-icon-color: var(--text-primary, #333);
    --jl-footer-social-icon-hover-color: var(--primary, #ffc107);
    --jl-footer-social-icon-bg: transparent;
    --jl-footer-social-icon-hover-bg: var(--primary, #ffc107);
    --jl-footer-social-icon-border: 2px solid var(--border, #e0e0e0);
    --jl-footer-social-icon-hover-border: 2px solid var(--primary, #ffc107);
    --jl-footer-social-icon-radius: 50%;
    --jl-footer-social-icon-transition: all 0.3s ease;
    --jl-footer-social-icon-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    --jl-footer-social-icon-hover-shadow: 0 4px 15px rgba(255, 193, 7, 0.3);
    --jl-footer-social-icon-margin: 0 8px;
    --jl-footer-social-icon-padding: 8px;
}

/* Footer Social Icons Container */
.footer .social-icons {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    margin-top: 15px;
    flex-wrap: wrap;
}

/* Individual Social Icon */
.footer .social-icons .social-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(var(--jl-footer-social-icon-size) + 16px);
    height: calc(var(--jl-footer-social-icon-size) + 16px);
    background: var(--jl-footer-social-icon-bg);
    border: var(--jl-footer-social-icon-border);
    border-radius: var(--jl-footer-social-icon-radius);
    color: var(--jl-footer-social-icon-color);
    text-decoration: none;
    transition: var(--jl-footer-social-icon-transition);
    box-shadow: var(--jl-footer-social-icon-shadow);
    position: relative;
    overflow: hidden;
}

/* Social Icon SVG */
.footer .social-icons .social-icon svg {
    width: var(--jl-footer-social-icon-size);
    height: var(--jl-footer-social-icon-size);
    transition: var(--jl-footer-social-icon-transition);
    stroke: currentColor;
    fill: none;
    stroke-width: 2;
}

/* Hover Effects */
.footer .social-icons .social-icon:hover {
    background: var(--jl-footer-social-icon-hover-bg);
    border-color: var(--jl-footer-social-icon-hover-border);
    color: var(--text-primary, #000);
    transform: translateY(-2px);
    box-shadow: var(--jl-footer-social-icon-hover-shadow);
}

.footer .social-icons .social-icon:hover svg {
    transform: scale(1.1);
}

/* Active/Focus States */
.footer .social-icons .social-icon:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(255, 193, 7, 0.3);
}

.footer .social-icons .social-icon:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* Platform-specific colors (optional) */
.footer .social-icons .social-icon[title*="Facebook"]:hover {
    background: #1877f2;
    border-color: #1877f2;
    color: white;
}

.footer .social-icons .social-icon[title*="Instagram"]:hover {
    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
    border-color: #dc2743;
    color: white;
}

.footer .social-icons .social-icon[title*="Twitter"]:hover,
.footer .social-icons .social-icon[title*="X"]:hover {
    background: #000000;
    border-color: #000000;
    color: white;
}

.footer .social-icons .social-icon[title*="YouTube"]:hover {
    background: #ff0000;
    border-color: #ff0000;
    color: white;
}

.footer .social-icons .social-icon[title*="LinkedIn"]:hover {
    background: #0077b5;
    border-color: #0077b5;
    color: white;
}

/* Responsive Design */
@media (max-width: 768px) {
    .footer .social-icons {
        justify-content: flex-start;
        gap: 10px;
    }
    
    .footer .social-icons .social-icon {
        width: calc(var(--jl-footer-social-icon-size) + 12px);
        height: calc(var(--jl-footer-social-icon-size) + 12px);
    }
    
    .footer .social-icons .social-icon svg {
        width: calc(var(--jl-footer-social-icon-size) - 2px);
        height: calc(var(--jl-footer-social-icon-size) - 2px);
    }
}

@media (max-width: 480px) {
    .footer .social-icons {
        gap: 8px;
    }
    
    .footer .social-icons .social-icon {
        width: calc(var(--jl-footer-social-icon-size) + 8px);
        height: calc(var(--jl-footer-social-icon-size) + 8px);
    }
}

/* Dark theme adjustments */
.dark .footer .social-icons .social-icon {
    --jl-footer-social-icon-color: var(--text-primary, #ffffff);
    --jl-footer-social-icon-border: 2px solid var(--border, #444);
    --jl-footer-social-icon-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.dark .footer .social-icons .social-icon:hover {
    color: var(--text-primary, #000);
}

/* Animation for new icons */
@keyframes socialIconAppear {
    from {
        opacity: 0;
        transform: scale(0.8) translateY(10px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

.footer .social-icons .social-icon {
    animation: socialIconAppear 0.3s ease-out;
}

/* Loading state */
.footer .social-icons .social-icon.loading {
    pointer-events: none;
    opacity: 0.6;
}

.footer .social-icons .social-icon.loading svg {
    animation: spin 1s linear infinite;
}

@keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}






