/**
 * MOBILE TOUCH OPTIMIZATION
 * Ottimizzazioni per rendere tutti i bottoni e link estremamente reattivi su mobile
 */

/* Rimuove il delay di 300ms su tutti gli elementi interattivi */
* {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}

/* Ottimizzazioni specifiche per bottoni, link e elementi cliccabili */
button,
a,
.btn,
.contact-btn,
.contact-reveal-btn,
.pricing-btn,
input[type="submit"],
input[type="button"],
.dark-mode-toggle,
.floating-tracker-btn,
.pricing-carousel-arrow,
.pricing-indicator,
.contact-modal-close,
.cookie-btn,
[role="button"],
[onclick] {
    /* Rimuove delay tap su iOS e Android */
    touch-action: manipulation;

    /* Rimuove highlight colore predefinito e imposta uno personalizzato sottile */
    -webkit-tap-highlight-color: rgba(118, 75, 162, 0.2);

    /* Migliora la reattività del cursore */
    cursor: pointer;

    /* Previene la selezione del testo durante il tap */
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    /* Accelerazione hardware per transizioni più fluide */
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    will-change: transform;
}

/* Feedback visivo immediato al touch */
button:active,
a:active,
.btn:active,
.contact-btn:active,
.contact-reveal-btn:active {
    transform: scale(0.97);
    transition: transform 0.05s ease-out;
}

/* Ottimizzazioni per input e textarea */
input,
textarea,
select {
    /* Permette zoom e scroll per input fields */
    touch-action: pan-x pan-y pinch-zoom;
}

/* Ottimizzazioni per scroll containers */
.pricing-carousel-wrapper,
.modal,
.overlay {
    /* Migliora scroll performance */
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
}

/* Previene il comportamento di pull-to-refresh in alcune aree */
body {
    overscroll-behavior-y: contain;
}

/* Ottimizzazioni per elementi draggable/swipeable */
[draggable],
.swipeable {
    touch-action: pan-y;
    -webkit-user-drag: none;
}

/* Rimuove lo sfondo grigio al tap su iOS */
a,
button {
    -webkit-touch-callout: none;
}

/* Ottimizzazione per link che contengono immagini */
a img {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    pointer-events: none;
}

/* Fast tap per elementi con data attributes */
[data-type],
[data-index],
[data-action] {
    touch-action: manipulation;
    -webkit-tap-highlight-color: rgba(118, 75, 162, 0.15);
}

/* Ottimizzazione per modal e overlay */
.contact-reveal-overlay,
.docs-overlay,
.modal-overlay {
    touch-action: none;
    -webkit-tap-highlight-color: transparent;
}

/* Performance boost per animazioni durante touch */
@media (hover: none) and (pointer: coarse) {
    /* Questo si applica solo su dispositivi touch */

    * {
        /* Riduce al minimo il delay del tap */
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    }

    button,
    .btn,
    a {
        /* Feedback tattile immediato */
        transition: transform 0.05s ease-out, opacity 0.05s ease-out;
    }

    button:active,
    .btn:active,
    a:active {
        opacity: 0.8;
        transform: scale(0.96);
    }
}

/* Previene il doppio tap zoom su elementi specifici */
.no-double-tap-zoom {
    touch-action: manipulation;
}

/* Ottimizzazioni per viewport mobile */
@media (max-width: 768px) {
    /* Aumenta leggermente l'area di tap per bottoni piccoli */
    button,
    .btn,
    a {
        min-height: 44px;
        min-width: 44px;
    }

    /* Migliora lo spacing per evitare tap accidentali */
    .btn + .btn,
    button + button {
        margin-left: 0.5rem;
    }
}
