/* Rollindoc - surcharges CSS du thème enfant */

*,
*:focus,
*:focus-visible,
*:focus-within,
*:active {
    outline: none !important;
}

/* Mini-panier CreativeElements */
.elementor-cart__product-name > a {
    font-size: 16px;
    font-weight: 700;
}

.elementor-cart__container .elementor-cart__main {
    width: 500px !important;
}

/* Options choisies : surcharge le style Elementor généré
   (.elementor-XXXX .elementor-element-YYYY .elementor-cart__product-attr). */
.elementor-cart__product-attrs .elementor-cart__product-attr {
    text-transform: none !important;
    font-size: 10px !important;
    color: #333 !important;
}

.elementor-cart__product-attrs .elementor-cart__product-attr + .elementor-cart__product-attr {
    margin-top: 6px !important;
}

/* Espace entre le bloc titre/options et le bloc prix + suppression. */
.elementor-cart__product {
    row-gap: 12px;
}

/* ------------------------------------------------------------------ */
/* Page panier                                                         */
/* ------------------------------------------------------------------ */

/* Zebra léger sur les lignes produit. */
.cart-items .cart-item {
    padding-left: 1rem;
    padding-right: 1rem;
    border-radius: 8px;
}

.cart-items .cart-item:nth-of-type(even) {
    background-color: #f7f7f7;
}

/* Ligne panier : titre à gauche, prix + croix resserrés et ferrés à droite,
   alignés en haut avec le titre. */
.cart-grid-body .product-line-grid {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
}

.cart-grid-body .product-line-grid-body {
    flex: 1;
    max-width: none;
}

.cart-grid-body .product-line-grid-body > .product-line-info > .label {
    font-size: 16px;
}

.cart-grid-body .product-line-grid-right {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex: none;
    width: auto;
}

.cart-grid-body .product-line-grid-right .product-price {
    line-height: 1.5;
    font-size: 16px;
}

.cart-grid-body .product-line-grid-right .remove-from-cart {
    display: inline-flex;
    margin-top: 0;
}

/* Colonne de droite (récap) : descendue sous le titre "Panier" (desktop 2 colonnes). */
@media (min-width: 992px) {
    .cart-grid-right {
        margin-top: 4rem;
    }
}

/* Colonne de droite (récap) : encart gris arrondi — page panier ET checkout. */
.cart-grid-right .cart-summary,
.cart-grid-right #js-checkout-summary {
    background-color: #f7f7f7;
    border-radius: 20px;
    padding: 30px;
}

.cart-grid-right .cart-summary .card-block,
.cart-grid-right #js-checkout-summary .card-block {
    padding: 0;
}

/* Prix de la livraison non utilisé sur ce site. */
#cart-subtotal-shipping {
    display: none;
}

/* Pas de séparateur entre le total et le reste. */
.cart-summary-line.cart-total,
.card-block.cart-detailed-subtotals + .cart-summary-totals .cart-summary-line.cart-total {
    border-top: none;
}

/* Espacement homogène entre les lignes du récap (et avant le bouton commander
   sur le panier). Le 2e sélecteur bat .card-block.cart-summary-totals
   .cart-summary-line.cart-total (0,4,0) qui garde un padding:1rem 0. */
.cart-grid-right .cart-summary-line,
.cart-grid-right .card-block.cart-summary-totals .cart-summary-line.cart-total {
    margin-bottom: 1rem;
    padding-top: 0;
    padding-bottom: 0;
}

.cart-grid-right .cart-detailed-actions {
    margin-top: 0;
    padding: 0;
}

/* ------------------------------------------------------------------ */
/* Checkout : même récap que le panier + colonne sticky                */
/* ------------------------------------------------------------------ */

/* Détail des articles masqué (aussi retiré du template). */
body#checkout .cart-grid-right .cart-summary-products {
    display: none;
}

/* Neutralise les bordures + padding que classic ajoute au conteneur de
   sous-totaux sur le checkout, et aligne l'espacement des lignes sur le panier. */
body#checkout .cart-grid-right #js-checkout-summary .cart-summary-subtotals-container {
    padding: 0;
    border: none;
}

body#checkout .cart-grid-right #js-checkout-summary .cart-summary-subtotals-container .cart-summary-line {
    margin-bottom: 1rem;
}
