/* ==========================================================================
   ESTILOS GERAIS COMPARTILHADOS
   ========================================================================== */
.sidebar-produtos-afiliados, .carrossel-produtos-wrapper {
    font-family: sans-serif;
}

/* ==========================================================================
   ESTILOS DO WIDGET DA SIDEBAR
   ========================================================================== */
.sidebar-produtos-afiliados { 
    display: flex; 
    flex-direction: column; 
    gap: 15px; 
}
.item-produto-sidebar { 
    display: flex; 
    align-items: flex-start; 
    gap: 12px; 
    text-decoration: none !important; 
    color: #333 !important; 
    padding: 10px; 
    border: 1px solid #eee; 
    border-radius: 8px; 
    background-color: #fff; 
    transition: transform 0.2s ease, box-shadow 0.2s ease; 
}
.item-produto-sidebar:hover { 
    transform: translateY(-2px); 
    box-shadow: 0 4px 12px rgba(0,0,0,0.06); 
    border-color: #ddd; 
}
.foto-produto-34 { 
    width: 75px; 
    aspect-ratio: 3 / 4; 
    flex-shrink: 0; 
    overflow: hidden; 
    border-radius: 6px; 
    background-color: #f9f9f9; 
}
.foto-produto-34 img { 
    width: 100%; 
    height: 100%; 
    object-fit: cover; 
}
.info-produto { 
    display: flex; 
    flex-direction: column; 
    gap: 4px; 
    width: 100%; 
}
.titulo-produto { 
    font-size: 13px; 
    font-weight: 500; 
    line-height: 1.3; 
    display: -webkit-box; 
    -webkit-line-clamp: 2; 
    -webkit-box-orient: vertical; 
    overflow: hidden; 
}
.preco-produto .woocommerce-Price-amount { 
    font-size: 14px; 
    font-weight: 700; 
    color: #ff4466 !important; 
}
.preco-produto del .woocommerce-Price-amount { 
    font-size: 11px; 
    font-weight: normal; 
    color: #999 !important; 
}
.botao-produto-sidebar { 
    display: inline-block; 
    text-align: center; 
    background-color: #000; 
    color: #fff !important; 
    font-size: 11px; 
    font-weight: 600; 
    text-transform: uppercase; 
    letter-spacing: 0.5px; 
    padding: 6px 10px; 
    border-radius: 4px; 
    margin-top: 4px; 
    transition: background-color 0.2s ease; 
    width: max-content; 
}
.item-produto-sidebar:hover .botao-produto-sidebar { 
    background-color: #ff4466; 
}

/* ==========================================================================
   ESTILOS DO CARROSSEL (SLIDE DOS POSTS)
   ========================================================================== */
.carrossel-produtos-wrapper { 
    position: relative; 
    width: 100%; 
    margin: 20px 0; 
    display: flex; 
    align-items: center; 
}
.carrossel-produtos-container { 
    width: 100%; 
    overflow: hidden; 
}
.carrossel-produtos-track { 
    display: flex; 
    gap: 15px; 
    overflow-x: auto; 
    scroll-snap-type: x mandatory; 
    padding: 5px 0; 
    -webkit-overflow-scrolling: touch; 
    scroll-behavior: smooth; 
}

/* Oculta barra de rolagem */
.carrossel-produtos-track::-webkit-scrollbar { display: none; }
.carrossel-produtos-track { -ms-overflow-style: none; scrollbar-width: none; }

.card-produto-slide { 
    flex: 0 0 180px; 
    scroll-snap-align: start; 
    display: flex; 
    flex-direction: column; 
    text-decoration: none !important; 
    color: #333 !important; 
    padding: 10px; 
    border: 1px solid #eee; 
    border-radius: 8px; 
    background-color: #fff; 
    transition: transform 0.2s ease, box-shadow 0.2s ease; 
}
@media (max-width: 480px) { 
    .card-produto-slide { flex: 0 0 145px; } 
}
.card-produto-slide:hover { 
    transform: translateY(-3px); 
    box-shadow: 0 5px 15px rgba(0,0,0,0.06); 
    border-color: #ddd; 
}
.foto-slide-34 { 
    width: 100%; 
    aspect-ratio: 3 / 4; 
    overflow: hidden; 
    border-radius: 6px; 
    background-color: #f9f9f9; 
}
.foto-slide-34 img { 
    width: 100%; 
    height: 100%; 
    object-fit: cover; 
}
.info-slide { 
    display: flex; 
    flex-direction: column; 
    gap: 4px; 
    margin-top: 8px; 
    flex-grow: 1; 
    justify-content: space-between; 
}
.titulo-slide { 
    font-size: 12px; 
    font-weight: 500; 
    line-height: 1.3; 
    display: -webkit-box; 
    -webkit-line-clamp: 2; 
    -webkit-box-orient: vertical; 
    overflow: hidden; 
    height: 32px; 
}
.preco-slide .woocommerce-Price-amount { 
    font-size: 13px; 
    font-weight: 700; 
    color: #ff4466 !important; 
}
.preco-slide del .woocommerce-Price-amount { 
    font-size: 10px; 
    font-weight: normal; 
    color: #999 !important; 
}
.botao-slide { 
    display: block; 
    text-align: center; 
    background-color: #000; 
    color: #fff !important; 
    font-size: 10px; 
    font-weight: 600; 
    text-transform: uppercase; 
    letter-spacing: 0.5px; 
    padding: 6px 4px; 
    border-radius: 4px; 
    margin-top: 6px; 
    transition: background-color 0.2s ease; 
}
.card-produto-slide:hover .botao-slide { 
    background-color: #ff4466; 
}
.aviso-no-products { 
    font-size: 13px; 
    color: #999; 
    font-style: italic; 
}

/* Setas flutuantes */
.carrossel-btn { 
    position: absolute; 
    top: 35%; 
    transform: translateY(-50%); 
    background-color: rgba(255, 255, 255, 0.95); 
    border: 1px solid #ddd; 
    color: #333; 
    font-size: 16px; 
    width: 36px; 
    height: 36px; 
    border-radius: 50%; 
    cursor: pointer; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    z-index: 10; 
    box-shadow: 0 2px 5px rgba(0,0,0,0.1); 
    transition: background-color 0.2s, color 0.2s; 
}
.carrossel-btn:hover { 
    background-color: #ff4466; 
    color: #fff; 
    border-color: #ff4466; 
}
.btn-prev { left: -15px; }
.btn-next { right: -15px; }

@media (max-width: 768px) {
    .carrossel-btn { display: none; } /* Mobile foca em touch swipe */
}
