/* Minimal transitions - only for UI elements, not page loads */

/* Smooth navigation link transitions */
.nav-link {
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Stagger animations for lists - visible by default */
.stagger-item {
    opacity: 1; /* Visible by default */
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* No animation delays - everything visible immediately */

/* Smooth chart animations - only if charts explicitly add animation */
.chart-container {
    opacity: 1; /* Default visible */
}

@keyframes fadeInScale {
    from {
        opacity: 0;
        transform: scale(0.98) translateY(6px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

/* Chart canvas - visible by default */
.chart-container canvas {
    opacity: 1; /* Default visible */
}

.metric-card {
    /* No animation by default */
}

/* Loading skeleton animation */
@keyframes shimmer {
    0% {
        background-position: -1000px 0;
    }
    100% {
        background-position: 1000px 0;
    }
}

.skeleton {
    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0.03) 0%,
        rgba(255, 255, 255, 0.06) 50%,
        rgba(255, 255, 255, 0.03) 100%
    );
    background-size: 1000px 100%;
    animation: shimmer 2s infinite;
}

/* Smooth hover transitions */
.interactive-element {
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.interactive-element:hover {
    transform: translateY(-2px);
}

/* Notification badge animation */
@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.1);
    }
}

.notification-badge {
    animation: pulse 2s ease-in-out infinite;
}

/* Smooth scroll */
html {
    scroll-behavior: smooth;
}

/* Reduce motion for users who prefer it */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}
