/**
 * WooCommerce Stock & Order Manager - Frontend Styles
 */

/* ========================================
   GENERAL STYLES
======================================== */

.wcsom-icon {
    display: inline-block;
    margin-right: 5px;
    font-style: normal;
}

.wcsom-icon-check {
    color: #28a745;
}

.wcsom-icon-clock {
    color: #ffc107;
}

.wcsom-icon-alert {
    color: #ff9800;
}

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

.wcsom-product-info {
    padding: 12px 15px;
    border-radius: 6px;
    background-color: #f8f9fa;
    border: 1px solid #e9ecef;
    margin-top: 15px !important;
    transition: all 0.3s ease;
    overflow: hidden;
}

.wcsom-product-info:empty {
    display: none !important;
    padding: 0;
    margin: 0;
    border: none;
}

.wcsom-product-info.wcsom-updated {
    background-color: #e7f3ff;
    border-color: #2196f3;
}

.wcsom-in-stock,
.wcsom-on-order {
    padding: 8px 0;
    font-size: 14px;
    line-height: 1.6;
}

.wcsom-in-stock {
    color: #155724;
    font-weight: 500;
}

.wcsom-on-order {
    color: #856404;
    font-weight: 500;
    margin-top: 5px;
    padding-top: 8px;
    border-top: 1px solid #dee2e6;
}

.wcsom-on-order:first-child {
    border-top: none;
    margin-top: 0;
    padding-top: 0;
}

/* ========================================
   CART
======================================== */

.wcsom-cart-item-info {
    margin-top: 10px;
    padding: 10px;
    background-color: #f8f9fa;
    border-radius: 4px;
    font-size: 13px;
}

.wcsom-cart-in-stock,
.wcsom-cart-on-order {
    padding: 4px 0;
}

.wcsom-cart-in-stock {
    color: #155724;
}

.wcsom-cart-on-order {
    color: #856404;
    margin-top: 4px;
    padding-top: 6px;
    border-top: 1px solid #dee2e6;
}

/* Cart notice */
.woocommerce-info {
    border-left-color: #ffb900 !important;
}

.woocommerce-info .wcsom-icon-alert {
    font-size: 18px;
    vertical-align: middle;
}

/* ========================================
   CHECKOUT
======================================== */

.wcsom-checkout-notice {
    margin-bottom: 20px;
    padding: 15px 20px;
    border-radius: 4px;
    background-color: #fff3cd;
    border: 1px solid #ffc107;
    border-left-width: 4px;
    color: #856404;
    font-size: 14px;
    line-height: 1.6;
}

.wcsom-checkout-notice .wcsom-icon-alert {
    font-size: 18px;
    margin-right: 8px;
    vertical-align: middle;
}

.wcsom-checkout-item-info {
    margin-top: 8px;
    padding: 8px 10px;
    background-color: #f8f9fa;
    border-radius: 4px;
    font-size: 12px;
}

.wcsom-checkout-in-stock,
.wcsom-checkout-on-order {
    padding: 3px 0;
    display: block;
}

.wcsom-checkout-in-stock {
    color: #155724;
}

.wcsom-checkout-on-order {
    color: #856404;
    margin-top: 4px;
    padding-top: 5px;
    border-top: 1px solid #dee2e6;
}

/* ========================================
   RESPONSIVE
======================================== */

@media (max-width: 768px) {
    .wcsom-product-info {
        font-size: 13px;
        padding: 10px 12px;
    }

    .wcsom-cart-item-info,
    .wcsom-checkout-item-info {
        font-size: 12px;
        padding: 8px;
    }

    .wcsom-checkout-notice {
        font-size: 13px;
        padding: 12px 15px;
    }
}

/* ========================================
   ANIMATIONS
======================================== */

@keyframes wcsom-highlight {
    0% {
        background-color: #e7f3ff;
    }
    100% {
        background-color: #f8f9fa;
    }
}

.wcsom-product-info.wcsom-updated {
    animation: wcsom-highlight 0.6s ease;
}

/* ========================================
   WOOCOMMERCE STOCK AVAILABILITY (Variations)
======================================== */

/* Remover ::before e ::after antigos */
.stock::before,
.stock::after,
.availability .stock::before,
.availability .stock::after,
p.stock::before,
p.stock::after {
    display: none !important;
    content: none !important;
}

/* Estilos para o contador de estoque das variações */
.stock,
.availability .stock,
p.stock,
.variations_form .stock {
    display: inline-block !important;
    padding: 6px 12px !important;
    border-radius: 4px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #fff !important;
    text-align: center !important;
    line-height: 1.4 !important;
    margin: 5px 0 !important;
    border: none !important;
    box-shadow: none !important;
}

/* Verde - Produto em estoque (acima do limiar) */
.stock.in-stock,
.availability .stock.in-stock,
p.stock.in-stock {
    background-color: #28a745 !important;
    color: #fff !important;
}

/* Amarelo - Estoque baixo (no limiar ou abaixo) */
.stock.low-stock,
.stock.available-on-backorder,
.availability .stock.low-stock,
.availability .stock.available-on-backorder,
p.stock.low-stock,
p.stock.available-on-backorder {
    background-color: #ffc107 !important;
    color: #fff !important;
}

/* Amarelo - Estoque baixo usando atributo data */
.stock[class*="low"],
.availability .stock[class*="low"] {
    background-color: #ffc107 !important;
    color: #fff !important;
}

/* Vermelho - Fora de estoque */
.stock.out-of-stock,
.availability .stock.out-of-stock,
p.stock.out-of-stock {
    background-color: #dc3545 !important;
    color: #fff !important;
}

/* Variações específicas */
.variations_form .stock {
    margin-top: 10px !important;
    display: block !important;
    width: fit-content !important;
}

/* Sobrescrever qualquer estilo do tema */
.product .stock,
.single-product .stock,
div.product .stock {
    background-color: inherit !important;
}

.product .stock.in-stock,
.single-product .stock.in-stock,
div.product .stock.in-stock {
    background-color: #28a745 !important;
}

.product .stock.low-stock,
.single-product .stock.low-stock,
div.product .stock.low-stock,
.product .stock.available-on-backorder,
.single-product .stock.available-on-backorder,
div.product .stock.available-on-backorder {
    background-color: #ffc107 !important;
}

.product .stock.out-of-stock,
.single-product .stock.out-of-stock,
div.product .stock.out-of-stock {
    background-color: #dc3545 !important;
}

/* Mobile responsivo */
@media (max-width: 768px) {
    .stock,
    .availability .stock {
        font-size: 12px !important;
        padding: 5px 10px !important;
    }
}

/* ========================================
   PRINT STYLES (for emails)
======================================== */

@media print {
    .wcsom-icon {
        color: #000 !important;
    }

    .wcsom-in-stock,
    .wcsom-cart-in-stock,
    .wcsom-checkout-in-stock {
        color: #000 !important;
    }

    .wcsom-on-order,
    .wcsom-cart-on-order,
    .wcsom-checkout-on-order {
        color: #000 !important;
    }

    /* Manter stock legível na impressão */
    .stock {
        border: 1px solid #000 !important;
        padding: 4px 8px !important;
    }
}
