/* Normalisation CSS pour compatibilité cross-browser */
/* Support: Chrome, Safari, Firefox, Edge, Opera */

/* Normalisation des propriétés flexbox */
.flexbox-fix {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
}

/* Normalisation des propriétés de transition */
.transition-fix {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

/* Normalisation des propriétés de transformation */
.transform-fix {
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    backface-visibility: hidden;
}

/* Normalisation des box-shadow */
.box-shadow-fix {
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* Normalisation des border-radius */
.border-radius-fix {
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
}

/* Normalisation des user-select */
.user-select-none {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.user-select-all {
    -webkit-user-select: all;
    -moz-user-select: all;
    -ms-user-select: all;
    user-select: all;
}

/* Normalisation des propriétés grid */
.grid-fix {
    display: -ms-grid;
    display: grid;
}

/* Normalisation des animations */
@-webkit-keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

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

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

/* Normalisation des propriétés appearance */
.appearance-none {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* Normalisation des propriétés tap-highlight-color pour mobile */
.tap-highlight-fix {
    -webkit-tap-highlight-color: transparent;
    tap-highlight-color: transparent;
}

/* Fix pour Safari et iOS */
.safari-fix {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    will-change: transform;
}

/* Fix pour les position sticky */
.sticky-fix {
    position: -webkit-sticky;
    position: sticky;
}

/* Normalisation des propriétés scroll-behavior */
.scroll-smooth {
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
}

/* Normalisation des propriétés backdrop-filter */
.backdrop-blur {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

