/* =============================================================================
   SOUL BM PERSONALIZAÇÕES - CSS
   ============================================================================= */

/* -----------------------------------------------------------------------------
   QUANTIDADE E CONTROLES
   ----------------------------------------------------------------------------- */

.woocommerce .e-atc-qty-button-holder {
    flex-direction: column;
}

.woocommerce .quantity {
    display: flex;
    align-items: baseline;
    font-size: 0.9rem;
    width: 100%;
    text-align: left;
    margin-bottom: 12px !important;
}

.woocommerce .quantity > span {
    padding-left: 2px;
}

.woocommerce .quantity input,
.woocommerce input.qty {
    width: 100px !important;
    margin-left: 6px;
    padding: 5px !important;
    color: #191919 !important;
    text-align: center !important;
    background-color: #0000000F !important;
    font-size: 0.8rem;
    border: 0;
}

/* -----------------------------------------------------------------------------
   BOTÕES
   ----------------------------------------------------------------------------- */

.woocommerce .button {
    border-radius: 3px !important;
    margin: 2px 0 !important;
    padding: 12px 0 !important;
}

.woocommerce .single_add_to_cart_button {
    background-color: #F0D595 !important;
    border-color: #F0D595 !important;
    color: #da9c21 !important;
    font-weight: 400 !important;
    padding: 3% 0 !important;
    width: 100%;
    display: block;
    margin: 10px 0 !important;
    margin-left: 0px;
}

.woocommerce .buy-now-button {
    display: block;
    margin: 10px 0 !important;
    padding: 3% 0 !important;
    margin-left: 0px;
    width: 100%;
    background-color: #da9c21 !important;
    border-color: #da9c21 !important;
    color: white !important;
    font-weight: 400 !important;
    border-radius: 3px !important;
    cursor: pointer;
    border: 1px solid #da9c21;
}

.woocommerce .buy-now-button:hover {
    background-color: #c8891e !important;
    border-color: #c8891e !important;
}

.woocommerce .buy-now-button:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* -----------------------------------------------------------------------------
   VARIAÇÕES DE PRODUTO
   ----------------------------------------------------------------------------- */

.woocommerce table.variations {
    margin-bottom: 0 !important;
}

.woocommerce table.variations td, 
.woocommerce table.variations th {
    background-color: transparent !important;
}

.woocommerce table.variations th {
    vertical-align: middle !important;
    text-align: left;
    padding: 0 0 0 2px !important;
}

.woocommerce .reset_variations {
    display: none !important;
}

.woocommerce select#modelo {
    padding: 5px;
    border: 0;
    border-radius: 5px;
    color: #191919;
    background-color: #0000000F !important;
    width: auto;
}

/* -----------------------------------------------------------------------------
   ESTOQUE E DISPONIBILIDADE
   ----------------------------------------------------------------------------- */

.woocommerce p.stock {
    display: none !important;
    visibility: hidden !important;
}

/* Indicador de estoque customizado */
@keyframes inventory-pulse {
    0% {
        opacity: .5;
    }
    to {
        transform: scale(2.5);
        opacity: 0;
    }
}

.ps-stock-status-icon-and-text {
    display: flex;
    align-items: center;
    margin: 10px 0;
}

.ps-stock-icon {
    position: relative;
    width: 25px;
    height: 25px;
    margin-right: 0;
}

.ps-stock-icon:before {
    animation: inventory-pulse 2s linear infinite;
}

.ps-stock-icon:after, 
.ps-stock-icon:before {
    width: 9px;
    height: 9px;
    background: #54c63a;
    border-radius: 9px;
    position: absolute;
    left: 0;
    top: 0;
    content: "";
    margin: 8px;
    margin-left: 3px;
    transform: translateY(-2px);
}

.ps-stock-text {
    margin-left: 26px;
    font-size: 0.8rem;
    color: #54c63a;
    font-weight: 500;
}

/* -----------------------------------------------------------------------------
   INFORMAÇÕES DE ENTREGA
   ----------------------------------------------------------------------------- */

.soulbm-pedido-entrega {
    justify-content: center !important;
    margin: 6px 0 8px !important;
    display: flex !important;
    align-items: center;
}

.soulbm-pedido-entrega .elementor-icon-list-text {
    font-size: 0.8rem;
    color: #7C7C7C;
    margin-left: 8px;
}

.soulbm-pedido-entrega span svg {
    fill: #7C7C7C;
    width: 16px;
    height: 16px;
}

/* -----------------------------------------------------------------------------
   BOTÃO AVISE-ME QUANDO CHEGAR
   ----------------------------------------------------------------------------- */

.soulbm-avise {
    margin: 10px 0 !important;
    width: 100%;
}

.soulbm-avise .elementor-button {
    background-color: #25d366 !important;
    border-color: #25d366 !important;
    color: white !important;
    width: 100%;
    padding: 12px 0 !important;
    border-radius: 3px !important;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

.soulbm-avise .elementor-button:hover {
    background-color: #1ea952 !important;
    border-color: #1ea952 !important;
}

.soulbm-avise .elementor-button-icon svg {
    width: 16px;
    height: 16px;
    margin-right: 8px;
    fill: currentColor;
}

/* -----------------------------------------------------------------------------
   RESPONSIVIDADE
   ----------------------------------------------------------------------------- */

@media (max-width: 768px) {
    .woocommerce .quantity input,
    .woocommerce input.qty {
        width: 80px !important;
    }
    
    .woocommerce .single_add_to_cart_button,
    .woocommerce .buy-now-button {
        padding: 4% 0 !important;
        font-size: 0.9rem;
    }
}

@media (max-width: 480px) {
    .woocommerce .quantity {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .woocommerce .quantity input,
    .woocommerce input.qty {
        margin-left: 0;
        margin-top: 5px;
        width: 60px !important;
    }
}