/*
 * Correções para problemas específicos de compatibilidade de navegadores
 * Arquivo criado para resolver avisos de compatibilidade CSS/HTML
 */

/* ============================================================================
 * CORREÇÕES DE PREFIXOS VENDOR
 * ============================================================================ */

/* User Select - Compatibilidade Safari */
.no-select {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.select-all {
    -webkit-user-select: all;
    -moz-user-select: all;
    -ms-user-select: all;
    user-select: all;
}

.select-text {
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
    user-select: text;
}

/* Filter - Compatibilidade Chrome Android */
.filter-effects {
    -webkit-filter: blur(0);
    filter: blur(0);
}

.blur-effect {
    -webkit-filter: blur(5px);
    filter: blur(5px);
}

.drop-shadow-effect {
    -webkit-filter: drop-shadow(0 2px 4px rgba(0,0,0,0.1));
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.1));
}

/* Backdrop Filter - Compatibilidade Safari */
.backdrop-blur {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

.backdrop-saturate {
    -webkit-backdrop-filter: saturate(150%);
    backdrop-filter: saturate(150%);
}

/* Text Size Adjust - Compatibilidade universal */
html, body {
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

/* Forced Color Adjust - Acessibilidade */
.preserve-colors {
    forced-color-adjust: none;
}

.auto-colors {
    forced-color-adjust: auto;
}

/* ============================================================================
 * CORREÇÕES DE IMAGENS E CONTEÚDO
 * ============================================================================ */

/* Image Set - Compatibilidade de imagens responsivas */
.responsive-image {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" fill="%23f8f9fa"/></svg>');
    background-image: -webkit-image-set(
        url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" fill="%23f8f9fa"/></svg>') 1x
    );
    background-image: image-set(
        url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" fill="%23f8f9fa"/></svg>') 1x
    );
}

/* ============================================================================
 * MELHORIAS DE ACESSIBILIDADE
 * ============================================================================ */

/* Melhoria para foco visível */
.focus-visible {
    outline: 2px solid #0d6efd;
    outline-offset: 2px;
}

/* Melhoria para contraste em modo escuro */
@media (prefers-color-scheme: dark) {
    .auto-dark {
        color-scheme: dark;
    }
}

/* Melhoria para redução de movimento */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* ============================================================================
 * CORREÇÕES ESPECÍFICAS PARA ELEMENTOS DO BOOTSTRAP
 * ============================================================================ */

/* Correção para botões em dispositivos touch */
.btn {
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* Correção para inputs em iOS */
.form-control, .form-select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* Correção para checkboxes e radios */
.form-check-input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* ============================================================================
 * FALLBACKS PARA PROPRIEDADES CSS MODERNAS
 * ============================================================================ */

/* Gap property fallback */
.gap-fallback {
    margin: -0.5rem;
}

.gap-fallback > * {
    margin: 0.5rem;
}

/* Aspect ratio fallback */
.aspect-ratio-16-9 {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
}

.aspect-ratio-16-9 > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* ============================================================================
 * OTIMIZAÇÕES DE PERFORMANCE
 * ============================================================================ */

/* GPU acceleration para animações suaves */
.gpu-accelerated {
    -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;
}

/* Scroll suave compatível */
.smooth-scroll {
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
}

/* ============================================================================
 * CORREÇÕES ESPECÍFICAS DO PROJETO
 * ============================================================================ */

/* Correções para o formulário de acolhimento */
.form-floating > .form-control {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

/* Correções para tooltips do Bootstrap */
.tooltip {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* Correções para modais responsivos */
.modal-content {
    -webkit-overflow-scrolling: touch;
}

/* Correções para navegação móvel */
.navbar-toggler {
    -webkit-tap-highlight-color: transparent;
}
