/* Dashboard Performance Optimizations */

/* Prevent layout shifts during loading */
.dashboard-widget {
    min-height: 120px;
    will-change: auto;
}

.task-card {
    min-height: 80px;
    will-change: auto;
}

/* Optimize rendering for large lists */
.task-list {
    contain: layout style;
}

/* Reduce repaints during animations */
.content-fade-in {
    will-change: opacity, transform;
}

.content-fade-in.loaded {
    will-change: auto;
}

/* Navigation menu z-index fix */
.nav-dropdown {
    z-index: 9999 !important;
    position: relative;
}

/* Faster loading states */
.skeleton-loader {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: loading 1.5s infinite;
}

@keyframes loading {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.dark .skeleton-loader {
    background: linear-gradient(90deg, #374151 25%, #4B5563 50%, #374151 75%);
    background-size: 200% 100%;
}

/* Optimize for mobile performance */
@media (max-width: 768px) {
    .dashboard-widget {
        min-height: 100px;
    }
    
    .task-card {
        min-height: 60px;
    }
}

/* CSS-only loading states */
.widget-loading {
    opacity: 0.7;
    pointer-events: none;
}

.widget-loading::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.5);
    border-radius: inherit;
}

.dark .widget-loading::after {
    background: rgba(0, 0, 0, 0.3);
}