/**
 * ACEMAN - Styles pour le contenu CMS (compatible Tailwind)
 * Présentation mobile-first du contenu dynamique
 */

/* Contenu CMS - base */
.cms-content img,
.cms-content video,
.cms-content iframe,
.cms-content embed,
.cms-content object {
    max-width: 100% !important;
    height: auto !important;
}

/* Tables responsive - cartes sur mobile */
@media (max-width: 768px) {
    .cms-content table {
        display: block !important;
        width: 100% !important;
    }
    .cms-content table thead,
    .cms-content table colgroup,
    .cms-content table col {
        display: none !important;
    }
    .cms-content table tbody {
        display: block !important;
    }
    .cms-content table tr {
        display: block !important;
        margin-bottom: 1rem;
        padding: 1rem;
        border: 1px solid #e5e7eb;
        border-radius: 0.5rem;
        background: white;
    }
    .cms-content table td,
    .cms-content table th {
        display: block !important;
        width: 100% !important;
        padding: 0.5rem 0 !important;
        border: none !important;
        border-bottom: 1px solid #f3f4f6 !important;
    }
    .cms-content table tr td:last-child,
    .cms-content table tr th:last-child {
        border-bottom: none !important;
    }
}

/* Blocs UAGB/Gutenberg - empilement mobile (ne pas toucher aux boutons CTA) */
@media (max-width: 768px) {
    .cms-content [class*="uagb-"],
    .cms-content [class*="wp-block"],
    .cms-content .row > [class*="col-"] {
        width: 100% !important;
        max-width: 100% !important;
        display: block !important;
        margin-bottom: 1.5rem !important;
    }
    .cms-content .row {
        display: block !important;
    }
    .cms-content .d-flex,
    .cms-content .flex-row {
        flex-direction: column !important;
    }
}

/* Restaurer le layout Bootstrap pour les carousels (priorité sur les règles mobile) */
.cms-content .carousel .row {
    display: flex !important;
}
.cms-content .carousel .row > [class*="col-"] {
    display: block !important;
    flex: none !important;
    margin-bottom: 0 !important;
}
.cms-content .carousel .carousel-inner {
    display: flex !important;
    overflow: hidden !important;
    flex-direction: row !important;
}
.cms-content .carousel .d-flex,
.cms-content .carousel .flex-row {
    flex-direction: row !important;
}

/* Adaptations plateformes (via mobile-adaptive.js) */
body.aceman-ios {
    -webkit-overflow-scrolling: touch;
}
body.aceman-ios .container,
body.aceman-ios nav {
    padding-left: max(1rem, env(safe-area-inset-left));
    padding-right: max(1rem, env(safe-area-inset-right));
}
body.aceman-android button,
body.aceman-android a {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0.1);
}

/* Assurer cliquabilité et curseur sur toute la page */
body, main, nav, footer {
    pointer-events: auto !important;
}
body a[href], body button:not([disabled]), body [role="button"] {
    cursor: pointer !important;
    pointer-events: auto !important;
}

/* Blocs CMS ACEMAN — forcer retours à la ligne en haut de page */
.aceman-cms-block {
    display: block !important;
    width: 100% !important;
    clear: both !important;
    flex-basis: 100% !important;
}

/* Section Découvrez ACEMAN — toujours sur une nouvelle ligne */
.aceman-bienvenue-essai {
    display: block !important;
    width: 100% !important;
    clear: both !important;
    flex-basis: 100% !important;
    margin-top: 2rem !important;
    padding-top: 2rem !important;
    border-top: 1px solid #e2e8f0 !important;
}
.cms-content .aceman-bienvenue-essai {
    margin-top: 2rem !important;
}

/* Contenu INTERNE des cartes — chaque élément sur sa ligne (sans casser la grille) */
.aceman-discovery-30,
.aceman-demo-request,
.aceman-bienvenue-essai .bg-white.rounded-2xl,
.aceman-card-inner,
.aceman-bienvenue-essai .grid > div {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
}
.aceman-discovery-30 > *,
.aceman-demo-request > *,
.aceman-bienvenue-essai .bg-white.rounded-2xl > *,
.aceman-card-inner > *,
.aceman-bienvenue-essai .grid > div > * {
    display: block !important;
    width: 100% !important;
    margin-top: 0.5rem !important;
}
.aceman-discovery-30 > *:first-child,
.aceman-demo-request > *:first-child,
.aceman-bienvenue-essai .bg-white.rounded-2xl > *:first-child,
.aceman-card-inner > *:first-child,
.aceman-bienvenue-essai .grid > div > *:first-child {
    margin-top: 0 !important;
}

/* Grille 2 colonnes sur desktop, 1 sur mobile */
.aceman-cards-grid,
.aceman-discovery-demo-pair .aceman-cards-grid,
.aceman-bienvenue-essai > .grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 1.5rem !important;
}
@media (max-width: 768px) {
    .aceman-cards-grid,
    .aceman-discovery-demo-pair .aceman-cards-grid,
    .aceman-bienvenue-essai > .grid {
        grid-template-columns: 1fr !important;
    }
}

/* Boutons CTA — toujours sur la même ligne */
.aceman-cta-flex {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 1rem !important;
}

/* Boutons CTA avec effet relief 3D (sans transform pour éviter blocage) */
.aceman-btn-relief-emerald {
    cursor: pointer !important;
    pointer-events: auto !important;
    box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.25) inset,
        0 4px 0 #065f46,
        0 6px 12px rgba(0, 0, 0, 0.25),
        0 2px 4px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(0, 0, 0, 0.08);
    transition: box-shadow 0.15s ease;
}
.aceman-btn-relief-emerald:hover {
    box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.3) inset,
        0 5px 0 #065f46,
        0 8px 16px rgba(0, 0, 0, 0.3),
        0 3px 6px rgba(0, 0, 0, 0.15);
}
.aceman-btn-relief-emerald:active {
    box-shadow:
        0 2px 0 rgba(0, 0, 0, 0.15) inset,
        0 2px 0 #065f46,
        0 2px 8px rgba(0, 0, 0, 0.2);
}

.aceman-btn-relief-slate {
    cursor: pointer !important;
    pointer-events: auto !important;
    box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.12) inset,
        0 4px 0 #020617,
        0 6px 12px rgba(0, 0, 0, 0.35),
        0 2px 4px rgba(0, 0, 0, 0.15);
    border: 1px solid rgba(0, 0, 0, 0.2);
    transition: box-shadow 0.15s ease;
}
.aceman-btn-relief-slate:hover {
    box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.15) inset,
        0 5px 0 #020617,
        0 8px 16px rgba(0, 0, 0, 0.4),
        0 3px 6px rgba(0, 0, 0, 0.2);
}
.aceman-btn-relief-slate:active {
    box-shadow:
        0 2px 0 rgba(0, 0, 0, 0.2) inset,
        0 2px 0 #020617,
        0 2px 8px rgba(0, 0, 0, 0.25);
}
