/**
 * Dashboard Animations
 * TondiPedia Admin Panel
 */

/* Navbar Logo Animation */
.brand-logo-animation {
    transition: all 0.3s ease;
    display: inline-block;
}

.brand-logo-animation:hover {
    transform: rotate(360deg) scale(1.1);
}

/* Navbar Brand Hover Effect */
.navbar-brand:hover .brand-logo-animation {
    animation: logoSpin 0.6s ease-in-out;
}

/* Logo Spin Animation */
@keyframes logoSpin {
    0% { 
        transform: rotate(0deg) scale(1);
    }
    50% { 
        transform: rotate(180deg) scale(1.15);
    }
    100% { 
        transform: rotate(360deg) scale(1);
    }
}

/* Navbar Brand Text Animation */
.navbar-brand:hover b {
    animation: textGlow 0.5s ease-in-out;
}

@keyframes textGlow {
    0%, 100% { 
        color: inherit;
        text-shadow: none;
    }
    50% { 
        color: #03AC0E;
        text-shadow: 0 0 10px rgba(3, 172, 14, 0.5);
    }
}

/* Navbar Header Animation */
.navbar-header {
    animation: slideInLeft 0.8s ease-out;
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-50px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Navbar User Dropdown Animation */
.navbar-user {
    animation: fadeInRight 0.8s ease-out 0.3s both;
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translateX(30px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Dropdown Menu Animation */
.dropdown-menu {
    animation: dropdownSlide 0.3s ease-out;
    transform-origin: top right;
}

@keyframes dropdownSlide {
    from {
        opacity: 0;
        transform: translateY(-10px) scale(0.95);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Mobile Toggler Animation */
.navbar-mobile-toggler {
    transition: all 0.3s ease;
}

.navbar-mobile-toggler:hover {
    transform: scale(1.1);
}

.navbar-mobile-toggler:active {
    transform: scale(0.95);
}

/* Icon Bar Animation for Mobile Menu */
.navbar-mobile-toggler.active .icon-bar:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
}

.navbar-mobile-toggler.active .icon-bar:nth-child(2) {
    opacity: 0;
}

.navbar-mobile-toggler.active .icon-bar:nth-child(3) {
    transform: rotate(-45deg) translate(7px, -6px);
}

.icon-bar {
    transition: all 0.3s ease;
}

/* Sidebar Animations */
.app-sidebar {
    animation: slideInLeft 0.8s ease-out;
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-100%);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Menu Profile Animation */
.menu-profile {
    animation: fadeInDown 0.8s ease-out 0.2s both;
}

.menu-profile-link {
    transition: all 0.3s ease;
}

.menu-profile-link:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
}

.menu-profile-image img {
    transition: all 0.3s ease;
}

.menu-profile-link:hover .menu-profile-image img {
    transform: scale(1.1);
    border-color: #03AC0E;
}
