/*
 * Badge Produto Oferta
 * O JS move o badge para dentro da área visual do produto.
 */

.badge-produto-oferta {
    position: absolute !important;
    top: 18px !important;
    right: 18px !important;
    bottom: auto !important;
    left: auto !important;

    z-index: 30 !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;

    margin: 0 !important;
    padding: 7px 13px !important;

    border: 0 !important;
    border-radius: 6px !important;

    background: #e60023 !important;
    color: #ffffff !important;

    font-family: inherit !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    letter-spacing: .3px !important;

    box-sizing: border-box !important;
    white-space: nowrap !important;

    transform: none !important;
    box-shadow: none !important;
}

/* O elemento que recebe o badge vira sua referência de posicionamento. */
.badge-produto-oferta-anchor {
    position: relative !important;
}

/* Evita que widgets do Elementor criem espaço vazio depois que o badge é movido. */
.elementor-widget-shortcode:has(.badge-produto-oferta-placeholder),
.elementor-shortcode:has(.badge-produto-oferta-placeholder) {
    margin: 0 !important;
    padding: 0 !important;
}

/* Mobile */
@media (max-width: 767px) {
    .badge-produto-oferta {
        top: 12px !important;
        right: 12px !important;
        padding: 6px 10px !important;
        font-size: 11px !important;
    }
}
