/**
 * Badge Product - Styles front
 * v3.0 - corner (pill) + horizontal + diagonal
 */

/* ===== Conteneurs ===== */
.product-miniature { position: relative; }
.product-miniature .thumbnail-container,
.product-miniature .product-thumbnail,
.product-miniature .thumbnail,
.product-thumbnail,
.images-container,
.product-cover { position: relative; }

/* ===== Base listing ===== */
.badge-product-listing {
    position: absolute;
    z-index: 3;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.1;
    text-transform: uppercase;
    letter-spacing: .4px;
    text-align: center;
    white-space: nowrap;
    pointer-events: none;
}

/* ===== Style CORNER (pill arrondi dans le coin) ===== */
.badge-product-listing.style-corner {
    padding: 5px 11px;
    border-radius: 6px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .18);
}
.badge-product-listing.style-corner.position-top-left     { top: 10px;  left: 10px;  }
.badge-product-listing.style-corner.position-top-right    { top: 10px;  right: 10px; }
.badge-product-listing.style-corner.position-bottom-left  { bottom: 10px; left: 10px; }
.badge-product-listing.style-corner.position-bottom-right { bottom: 10px; right: 10px; }
/* empilement multi-badges (corner) */
.badge-product-listing.style-corner.position-top-left.badge-index-1,
.badge-product-listing.style-corner.position-top-right.badge-index-1   { top: 42px; }
.badge-product-listing.style-corner.position-top-left.badge-index-2,
.badge-product-listing.style-corner.position-top-right.badge-index-2   { top: 74px; }
.badge-product-listing.style-corner.position-bottom-left.badge-index-1,
.badge-product-listing.style-corner.position-bottom-right.badge-index-1 { bottom: 42px; }
.badge-product-listing.style-corner.position-bottom-left.badge-index-2,
.badge-product-listing.style-corner.position-bottom-right.badge-index-2 { bottom: 74px; }

/* ===== Style HORIZONTAL (bandeau) ===== */
.badge-product-listing.style-horizontal {
    padding: 6px 12px;
    left: 0; right: 0; width: 100%;
    box-sizing: border-box;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
}
.badge-product-listing.style-horizontal.position-top-left,
.badge-product-listing.style-horizontal.position-top-right    { top: 0; }
.badge-product-listing.style-horizontal.position-bottom-left,
.badge-product-listing.style-horizontal.position-bottom-right { bottom: 0; }
.badge-product-listing.style-horizontal.position-top-left.badge-index-1,
.badge-product-listing.style-horizontal.position-top-right.badge-index-1 { top: 28px; }
.badge-product-listing.style-horizontal.position-bottom-left.badge-index-1,
.badge-product-listing.style-horizontal.position-bottom-right.badge-index-1 { bottom: 28px; }

/* ===== Style DIAGONAL (ruban) ===== */
.badge-product-listing.style-diagonal {
    padding: 5px 35px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
}
.badge-product-listing.style-diagonal.position-top-left     { top: 15px; left: -30px;  transform: rotate(-45deg); }
.badge-product-listing.style-diagonal.position-top-right    { top: 15px; right: -30px; transform: rotate(45deg);  }
.badge-product-listing.style-diagonal.position-bottom-left  { bottom: 15px; left: -30px;  transform: rotate(45deg);  }
.badge-product-listing.style-diagonal.position-bottom-right { bottom: 15px; right: -30px; transform: rotate(-45deg); }
.badge-product-listing.style-diagonal.position-top-left.badge-index-1   { top: 40px; }
.badge-product-listing.style-diagonal.position-top-right.badge-index-1  { top: 40px; }
.badge-product-listing.style-diagonal.position-bottom-left.badge-index-1  { bottom: 40px; }
.badge-product-listing.style-diagonal.position-bottom-right.badge-index-1 { bottom: 40px; }

/* ===== Base fiche produit ===== */
.badge-product-detail {
    position: absolute;
    z-index: 3;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .4px;
    text-align: center;
    white-space: nowrap;
    pointer-events: none;
}

/* Fiche - identique listing (corner) */
.badge-product-detail.detail-same.style-corner {
    padding: 6px 13px;
    border-radius: 6px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .18);
}
.badge-product-detail.detail-same.style-corner.position-top-left     { top: 14px;  left: 14px;  }
.badge-product-detail.detail-same.style-corner.position-top-right    { top: 14px;  right: 14px; }
.badge-product-detail.detail-same.style-corner.position-bottom-left  { bottom: 14px; left: 14px; }
.badge-product-detail.detail-same.style-corner.position-bottom-right { bottom: 14px; right: 14px; }
.badge-product-detail.detail-same.style-corner.position-top-left.badge-index-1,
.badge-product-detail.detail-same.style-corner.position-top-right.badge-index-1   { top: 48px; }
.badge-product-detail.detail-same.style-corner.position-bottom-left.badge-index-1,
.badge-product-detail.detail-same.style-corner.position-bottom-right.badge-index-1 { bottom: 48px; }

/* Fiche - identique listing (horizontal) */
.badge-product-detail.detail-same.style-horizontal {
    padding: 8px 16px; left: 0; right: 0; width: 100%; box-sizing: border-box;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
}
.badge-product-detail.detail-same.style-horizontal.position-top-left,
.badge-product-detail.detail-same.style-horizontal.position-top-right    { top: 0; }
.badge-product-detail.detail-same.style-horizontal.position-bottom-left,
.badge-product-detail.detail-same.style-horizontal.position-bottom-right { bottom: 0; }

/* Fiche - identique listing (diagonal) */
.badge-product-detail.detail-same.style-diagonal {
    padding: 6px 50px; box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
}
.badge-product-detail.detail-same.style-diagonal.position-top-left     { top: 25px; left: -40px;  transform: rotate(-45deg); }
.badge-product-detail.detail-same.style-diagonal.position-top-right    { top: 25px; right: -40px; transform: rotate(45deg);  }
.badge-product-detail.detail-same.style-diagonal.position-bottom-left  { bottom: 25px; left: -40px;  transform: rotate(45deg);  }
.badge-product-detail.detail-same.style-diagonal.position-bottom-right { bottom: 25px; right: -40px; transform: rotate(-45deg); }

/* Fiche - OUTLINE (fond blanc, bordure colorée) */
.badge-product-detail.detail-outline {
    background-color: #fff !important;
    border-width: 2px; border-style: solid; border-radius: 6px;
    padding: 8px 16px;
}
.badge-product-detail.detail-outline.position-top-left     { top: 12px;  left: 12px;  }
.badge-product-detail.detail-outline.position-top-right    { top: 12px;  right: 12px; }
.badge-product-detail.detail-outline.position-bottom-left  { bottom: 12px; left: 12px; }
.badge-product-detail.detail-outline.position-bottom-right { bottom: 12px; right: 12px; }
.badge-product-detail.detail-outline.position-top-left.badge-index-1,
.badge-product-detail.detail-outline.position-top-right.badge-index-1   { top: 50px; }
.badge-product-detail.detail-outline.position-bottom-left.badge-index-1,
.badge-product-detail.detail-outline.position-bottom-right.badge-index-1 { bottom: 50px; }

/* ===== Responsive ===== */
@media (max-width: 767px) {
    .badge-product-listing { font-size: 9px; }
    .badge-product-listing.style-corner { padding: 4px 8px; border-radius: 5px; }
    .badge-product-listing.style-diagonal { padding: 4px 28px; }
    .badge-product-detail { font-size: 10px; }
}

/* Marqueur invisible */
.badge-product-marker { display: none !important; }
