/* Performance CSS - Optimizations for different device capabilities */

/* Base performance classes */
.performance-high {
    --animation-duration: 0.6s;
    --transition-duration: 0.3s;
    --hover-transition: 0.2s;
}

.performance-medium {
    --animation-duration: 0.5s;
    --transition-duration: 0.25s;
    --hover-transition: 0.15s;
}

.performance-low {
    --animation-duration: 0.4s;
    --transition-duration: 0.2s;
    --hover-transition: 0.1s;
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
        scroll-behavior: auto !important;
    }
}

.reduced-motion * {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
}

/* Page visibility optimizations */
.page-hidden .animation-container {
    animation-play-state: paused !important;
}

.page-hidden .parallax {
    transition: none !important;
}

/* Static layouts for low-end devices */
.static-layout {
    display: flex;
    flex-wrap: wrap;
    transform: none !important;
    transition: none !important;
}

.static-layout > * {
    flex: 0 0 auto;
    margin: 1rem;
    transform: none !important;
    transition: none !important;
}

/* Disable parallax for low-end devices */
.parallax-disabled {
    transform: none !important;
    transition: none !important;
}

/* Simplified animations for low-end devices */
.performance-low .card,
.performance-low .button,
.performance-low .nav-link {
    transition-duration: var(--hover-transition);
}

.performance-low .reveal,
.performance-low .reveal-up,
.performance-low .reveal-left,
.performance-low .reveal-right {
    transition: opacity 0.3s ease, transform 0.3s ease;
}

/* Optimize images for different performance levels */
.performance-low img:not(.critical-image) {
    transition: opacity 0.2s ease;
}

/* Optimize 3D elements */
.performance-low .hero-3d {
    opacity: 0.8; /* Slightly reduce opacity for better performance */
}

/* Optimize text rendering */
.performance-low h1,
.performance-low h2,
.performance-low h3 {
    text-rendering: optimizeSpeed;
}

.performance-high h1,
.performance-high h2,
.performance-high h3 {
    text-rendering: optimizeLegibility;
}

/* Optimize box-shadows for low-end devices */
.performance-low .card,
.performance-low .button,
.performance-low .nav {
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1) !important; /* Simpler shadow */
}

/* Optimize backdrop filters */
.performance-low .glass-effect {
    backdrop-filter: none !important;
    background-color: rgba(255, 255, 255, 0.8) !important; /* Fallback without blur */
}