/* Stock tag overlay - shared styles */
.stock-tag-4df94956 {
    display: inline-block;
    font-size: 11px;
    font-weight: 600;
    line-height: 1;
    padding: 4px 10px;
    border-radius: 2px;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    z-index: 10;
    pointer-events: none;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* Black background, white text - In Stock */
.stock-tag-4df94956.stock-instock {
    background-color: #000000;
    color: #ffffff;
}

/* White background, black text - Out of Stock */
.stock-tag-4df94956.stock-outofstock {
    background-color: #ffffff;
    color: #000000;
    border: 1px solid #000000;
}

/* Light grey background, dark text - On Backorder */
.stock-tag-4df94956.stock-onbackorder {
    background-color: #f0f0f0;
    color: #333333;
    border: 1px solid #cccccc;
}

/* Dark grey - Contact Us */
.stock-tag-4df94956.stock-contact {
    background-color: #333333;
    color: #ffffff;
}

/* ===== ARCHIVE / LISTING PAGES ===== */

.stock-tag-wrapper-4df94956 {
    position: relative;
    display: block;
    overflow: hidden;
}

.stock-tag-wrapper-4df94956 img {
    display: block;
    width: 100%;
    height: auto;
}

.stock-tag-4df94956.stock-tag-archive {
    position: absolute;
    top: 8px;
    right: 8px;
}

/* Elementor Products / Loop Grid widget support */
.e-loop-item .stock-tag-wrapper-4df94956,
.elementor-widget-wc-products .stock-tag-wrapper-4df94956,
.elementor-widget-woocommerce-products .stock-tag-wrapper-4df94956,
.elementor-widget-loop-grid .stock-tag-wrapper-4df94956 {
    position: relative;
    display: block;
}

/* ===== SINGLE PRODUCT PAGE ===== */

.stock-tag-single-wrapper-4df94956 {
    position: relative;
    display: block;
}

.stock-tag-4df94956.stock-tag-single {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 10;
}

.elementor-widget-woocommerce-product-images {
    position: relative;
}

.elementor-widget-woocommerce-product-images .stock-tag-4df94956.stock-tag-single {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 10;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 767px) {
    .stock-tag-4df94956 {
        font-size: 10px;
        padding: 3px 8px;
    }
}
