/* Page produit — mobile (max-width: 767px) */

/* ── Reset des overrides de configurateur.css ── */
html, body { overflow: auto; }

.container {
    flex-direction: column !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 0 calc(74px + env(safe-area-inset-bottom, 0px)) !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

.main-content {
    flex-direction: column !important;
    overflow: visible !important;
    height: auto !important;
}

.background {
    padding: 0 !important;
    height: auto !important;
    align-items: stretch !important;
}

/* ── Hero : colonne unique, empilement ── */
.hero {
    display: flex;
    flex-direction: column;
    height: auto;
    gap: 10px;
    padding: 10px 12px;
}

/* Image en premier */
.product-visual-card {
    order: -1;
    height: 260px;
    flex-shrink: 0;
}

.product-visual-card .viewer-wrap {
    padding: 10px !important;
}

/* Info en second */
.product-info {
    order: 0;
    position: relative !important;
    width: auto !important;
    text-align: left !important;
    height: auto !important;
}

.product-info__body {
    overflow: visible !important;
    height: auto !important;
    padding: 14px 16px;
    gap: 12px;
}

/* Masquer le bouton personnaliser dans la card (remplacé par la barre basse) */
.product-customize-section { display: none; }

/* Détails en troisième */
.product-details {
    order: 1;
    position: relative !important;
    width: auto !important;
    height: auto !important;
    text-align: left !important;
}

.product-details__body {
    flex-direction: row;
    flex-wrap: wrap;
    overflow: visible;
    padding: 14px 16px;
    gap: 12px;
}

.price-info,
.delivery-info {
    flex: 1 1 130px;
    min-width: 0;
}

/* Masquer les éléments secondaires */
.trust-badges,
.loyalty-card,
.product-details .product-actions--secondary { display: none; }

/* ── Tab bar ── */
.product-tab-bar {
    height: 54px;
    padding: 0 8px;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
}

.product-tab-bar::-webkit-scrollbar { display: none; }

.product-tab-btn {
    padding: 0 14px;
    font-size: var(--text-xs);
    gap: 6px;
    white-space: nowrap;
    flex-shrink: 0;
}

.product-tab-btn i { font-size: var(--text-sm); }

.product-tab-panels { padding: 0 12px 32px; }

/* ── Barre d'actions bas (sticky) ── */
.product-actions.product-actions--bottom {
    display: flex !important;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 100;
    background: rgba(10, 12, 16, 0.96);
    backdrop-filter: blur(16px);
    border-top: 1px solid rgba(255, 255, 255, 0.09);
    padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px));
    gap: 10px;
    align-items: center;
    justify-content: stretch;
    max-width: none;
}

.product-actions--bottom .design-button {
    flex: 1;
    padding: 14px 18px;
    font-size: var(--text-sm);
}

.product-actions--bottom .add-to-cart-button--icon {
    flex-shrink: 0;
    width: 50px;
    height: 50px;
    border-radius: 12px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ── Avis inline ── */
.reviews-inline {
    grid-template-columns: 1fr;
    gap: 20px;
}

.reviews-inline__left { position: static; }

/* ── Features ── */
.product-tab-panel .product-features {
    grid-template-columns: 1fr;
}

/* ── Hub-layout overflow fix ── */
#customize-main.hub-layout {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
}
