/* ========================================
   LOGO ENHANCEMENTS
   ======================================== */

/* Header Logo Animation */
header .logo img {
    transition: var(--transition);
    filter: drop-shadow(0 2px 8px rgba(40, 167, 69, 0.2));
}

header .logo:hover img {
    transform: scale(1.1) rotate(5deg);
    filter: drop-shadow(0 4px 12px rgba(40, 167, 69, 0.4));
}

header .logo span {
    transition: var(--transition);
}

header .logo:hover span {
    letter-spacing: 1px;
}

/* Footer Logo */
footer img {
    transition: var(--transition);
}

footer .container>div>div:first-child:hover img {
    transform: scale(1.05) rotate(-5deg);
}

/* Admin Sidebar Logo */
.sidebar-header img {
    transition: var(--transition);
    animation: logoFloat 3s ease-in-out infinite;
}

@keyframes logoFloat {

    0%,
    100% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-5px);
    }
}

.sidebar-header:hover img {
    animation-play-state: paused;
    transform: scale(1.1);
}

/* Dark Mode Logo Adjustments */
[data-theme="dark"] header .logo img {
    filter: brightness(0) invert(1) drop-shadow(0 2px 8px rgba(40, 167, 69, 0.3));
}

[data-theme="dark"] header .logo:hover img {
    filter: brightness(0) invert(1) drop-shadow(0 4px 12px rgba(40, 167, 69, 0.5));
}

/* Mobile Logo Adjustments */
@media (max-width: 768px) {
    header .logo img {
        height: 40px;
    }

    header .logo span {
        font-size: 1.2rem;
    }

    footer img {
        height: 50px;
    }
}

@media (max-width: 576px) {
    header .logo img {
        height: 35px;
    }

    header .logo span {
        font-size: 1rem;
    }
}

/* Loading Animation for Logo */
@keyframes logoLoad {
    0% {
        opacity: 0;
        transform: scale(0.8) rotate(-10deg);
    }

    100% {
        opacity: 1;
        transform: scale(1) rotate(0deg);
    }
}

header .logo img,
footer img,
.sidebar-header img {
    animation: logoLoad 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}