/* ========================================
   BROWSER COMPATIBILITY & VENDOR PREFIXES
   Cross-browser support for modern CSS features
   ======================================== */

/* Flexbox Compatibility */
.produtos-grid,
.produto-content,
.produto-column,
.produto-features,
.modules-grid,
.games-list,
.produto-pricing,
.price-option,
.carousel-btn,
.carousel-indicators,
.btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
}

/* Transform Compatibility */
.carousel-btn,
.carousel-btn:hover,
.carousel-btn:active,
.btn:hover,
.btn:active,
.produto-card:hover {
    -webkit-transform-origin: center;
    -moz-transform-origin: center;
    -ms-transform-origin: center;
    -o-transform-origin: center;
    transform-origin: center;
}

/* Transition Compatibility */
.produtos-grid,
.produto-card,
.carousel-btn,
.btn,
.module-tag,
.carousel-indicator {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

/* Backdrop Filter Compatibility */
.carousel-btn {
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
}

/* Border Radius Compatibility */
.produto-card,
.carousel-btn,
.produto-badge,
.module-tag,
.game-item,
.produto-pricing,
.price-option,
.btn,
.produtos-carousel-wrapper {
    -webkit-border-radius: inherit;
    -moz-border-radius: inherit;
    border-radius: inherit;
}

/* Box Shadow Compatibility */
.carousel-btn,
.carousel-btn:hover,
.carousel-btn:active,
.btn,
.btn:hover,
.produto-card:hover {
    -webkit-box-shadow: inherit;
    -moz-box-shadow: inherit;
    box-shadow: inherit;
}

/* Linear Gradient Compatibility */
.produto-card {
    background: -webkit-linear-gradient(135deg, #1a1a1a 0%, #0a0a0a 100%);
    background: -moz-linear-gradient(135deg, #1a1a1a 0%, #0a0a0a 100%);
    background: -o-linear-gradient(135deg, #1a1a1a 0%, #0a0a0a 100%);
    background: linear-gradient(135deg, #1a1a1a 0%, #0a0a0a 100%);
}

.btn {
    background: -webkit-linear-gradient(135deg, #1a1a1a 0%, #0a0a0a 100%);
    background: -moz-linear-gradient(135deg, #1a1a1a 0%, #0a0a0a 100%);
    background: -o-linear-gradient(135deg, #1a1a1a 0%, #0a0a0a 100%);
    background: linear-gradient(135deg, #1a1a1a 0%, #0a0a0a 100%);
}

.btn:hover {
    background: -webkit-linear-gradient(135deg, #ffffff 0%, #f0f0f0 100%);
    background: -moz-linear-gradient(135deg, #ffffff 0%, #f0f0f0 100%);
    background: -o-linear-gradient(135deg, #ffffff 0%, #f0f0f0 100%);
    background: linear-gradient(135deg, #ffffff 0%, #f0f0f0 100%);
}

/* Grid Compatibility */
.produto-content,
.produto-pricing {
    display: -ms-grid;
    display: grid;
}

/* User Select */
* {
    -webkit-user-select: inherit;
    -moz-user-select: inherit;
    -ms-user-select: inherit;
    user-select: inherit;
}

/* Smooth Scrolling */
html {
    -webkit-scroll-behavior: smooth;
    -moz-scroll-behavior: smooth;
    -ms-scroll-behavior: smooth;
    scroll-behavior: smooth;
}

/* Font Smoothing */
body, .btn, .produto-title, .section-title {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

/* Appearance Reset for Form Elements */
button, .btn, input, select, textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* Performance Optimization */
.produto-card,
.carousel-btn,
.btn {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-perspective: 1000;
    -moz-perspective: 1000;
    perspective: 1000;
}

/* GPU Acceleration */
.produtos-grid,
.carousel-btn:hover,
.btn:hover,
.produto-card:hover {
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
    will-change: transform;
}

/* IE11 Flexbox Fixes */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .produtos-grid {
        display: -ms-flexbox;
    }

    .produto-content {
        display: -ms-grid;
        -ms-grid-columns: 1fr 1fr;
    }

    .produto-card {
        -ms-flex: 0 0 900px;
    }
}

/* Safari-specific fixes */
@media not all and (min-resolution:.001dpcm) {
    @supports (-webkit-appearance:none) {
        .carousel-btn {
            -webkit-transform: translate3d(0, -50%, 0);
        }

        .produtos-grid {
            -webkit-transform: translate3d(0, 0, 0);
        }
    }
}
