<?php
namespace Prodigy\Includes\Support\Addons\Elementor\Widgets\Archive;

use Elementor\Controls_Manager;
use Elementor\Group_Control_Box_Shadow;
use Elementor\Group_Control_Typography;
use Elementor\Widget_Base;
use Prodigy\includes\helpers\Prodigy_Elementor;
use Prodigy\Includes\Helpers\Prodigy_Platform_Settings;
use Prodigy\Includes\Helpers\Prodigy_Widget_Options;
use Prodigy\Includes\Models\Prodigy_Taxonomies;
use Prodigy\Includes\Prodigy;

if ( ! defined( 'ABSPATH' ) ) {
	die( '-1' );
}

/**
 * @version 2.0.7
 */
class Prodigy_Products extends Widget_Base {

	const WIDGET_PREFIX = 'prg_';

	/**
	 * Get widget name.
	 *
	 * Retrieve oEmbed widget name.
	 *
	 * @return string Widget name.
	 * @since 1.0.0
	 * @access public
	 */
	public function get_name() {
		return 'pae-archive-products';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve oEmbed widget title.
	 *
	 * @return string Widget title.
	 * @since 1.0.0
	 * @access public
	 */
	public function get_title() {
		return __( 'Products Archive', 'prodigy-commerce' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve oEmbed widget icon.
	 *
	 * @return string Widget icon.
	 * @since 1.0.0
	 * @access public
	 */
	public function get_icon() {
		return 'prgicon prgicon-products';
	}

	/**
	 * Get widget categories.
	 *
	 * Retrieve the list of categories the oEmbed widget belongs to.
	 *
	 * @return array Widget categories.
	 * @since 1.0.0
	 * @access public
	 */
	public function get_categories() {
		return array( 'prodigy-elements-archive' );
	}


	/**
	 * Register oEmbed widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'prg_content_archive_products',
			array(
				'label' => __( 'Content', 'prodigy-commerce' ),
				'tab'   => Controls_Manager::TAB_CONTENT,
			)
		);

		$this->add_control(
			'prg_content_archive_products_content_order_by',
			array(
				'type'    => Controls_Manager::SELECT,
				'label'   => __( 'Sort By', 'prodigy-commerce' ),
				'default' => 'date',
				'options' => array(
					'date'   => __( 'Date', 'prodigy-commerce' ),
					'title'  => __( 'Title', 'prodigy-commerce' ),
					'price'  => __( 'Price', 'prodigy-commerce' ),
					'rating' => __( 'Avg Rating', 'prodigy-commerce' ),
				),
			)
		);

		$this->add_control(
			'prg_content_archive_products_content_order',
			array(
				'type'    => Controls_Manager::SELECT,
				'label'   => __( 'Order', 'prodigy-commerce' ),
				'default' => 'desc',
				'options' => array(
					'asc'  => __( 'ASC', 'prodigy-commerce' ),
					'desc' => __( 'DESC', 'prodigy-commerce' ),
				),
			)
		);

		$this->add_responsive_control(
			'prg_content_archive_products_content_columns',
			array(
				'label'          => __( 'Columns', 'prodigy-commerce' ),
				'type'           => Controls_Manager::NUMBER,
				'default'        => 3,
				'tablet_default' => 3,
				'mobile_default' => 2,
				'min'            => 1,
				'max'            => 6,
				'device_args'    => array(
					'desktop' => array(
						'max' => 5,
					),
					'tablet'  => array(
						'max' => 3,
					),
					'mobile'  => array(
						'max' => 2,
					),
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__grid' => 'grid-template-columns: repeat({{SIZE}}, 1fr)',
				),
			)
		);

		$this->add_control(
			'prg_content_archive_products_content_items_number',
			array(
				'type'        => Controls_Manager::NUMBER,
				'label'       => __( 'Number of items per page', 'prodigy-commerce' ),
				'placeholder' => 1,
				'min'         => 1,
				'max'         => 30,
				'step'        => 1,
				'default'     => 9,
				'required'    => true,
				'oninput'     => 'validity.valid;',
				'onblur'      => 'validity.valid;',
			)
		);

		$this->add_control(
			'prg_content_archive_products_content_category',
			array(
				'label'        => __( 'Category', 'prodigy-commerce' ),
				'type'         => Controls_Manager::SWITCHER,
				'label_off'    => 'Hide',
				'label_on'     => 'Show',
				'default'      => '',
				'return_value' => 'yes',
			)
		);

		$this->add_control(
			'prg_content_archive_products_content_rating',
			array(
				'label'        => __( 'Rating', 'prodigy-commerce' ),
				'type'         => Controls_Manager::SWITCHER,
				'label_off'    => 'Hide',
				'label_on'     => 'Show',
				'default'      => 'yes',
				'return_value' => 'yes',
			)
		);

		$this->add_control(
			'prg_content_archive_products_content_sale',
			array(
				'label'        => __( 'Sale Badge', 'prodigy-commerce' ),
				'type'         => Controls_Manager::SWITCHER,
				'label_off'    => 'Hide',
				'label_on'     => 'Show',
				'default'      => 'yes',
				'return_value' => 'yes',
			)
		);

		$this->add_responsive_control(
			'prg_content_archive_products_content_quick_view',
			array(
				'label'                => __( 'Quick View', 'prodigy-commerce' ),
				'type'                 => Controls_Manager::SWITCHER,
				'label_on'             => __( 'Show', 'prodigy-commerce' ),
				'label_off'            => __( 'Hide', 'prodigy-commerce' ),
				'return_value'         => 'yes',
				'default'              => 'yes',
				'tablet_default'       => 'yes',
				'mobile_default'       => 'yes',

				'selectors'            => array(
					'{{WRAPPER}} .prodigy-product-list__quick-view' => 'display: {{VALUE}} !important;',
				),

				'selectors_dictionary' => array(
					'yes' => 'block',
					''    => 'none',
				),
			)
		);

		$this->add_control(
			'prg_content_archive_products_content_quick_view_title',
			array(
				'label'       => __( 'Quick View Button Text', 'prodigy-commerce' ),
				'type'        => Controls_Manager::TEXT,
				'default'     => __( 'Quick view', 'prodigy-commerce' ),
				'placeholder' => __( 'Quick view', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_content_archive_products_content_stock_label_content',
			array(
				'label'        => __( 'Category Tag Label', 'prodigy-commerce' ),
				'type'         => Controls_Manager::SWITCHER,
				'label_off'    => 'Hide',
				'label_on'     => 'Show',
				'default'      => 'no',
				'return_value' => 'yes',
			)
		);

		$categories = Prodigy_Taxonomies::get_taxonomies_by_type( Prodigy::get_prodigy_category_type(), Prodigy::PRODIGY_HOSTED_CATEGORY_RELATION, 'assoc' );
		$this->add_control(
			'prg_content_archive_products_content_stock_label_content_category',
			array(
				'label'     => __( 'Select a Category', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => key( $categories ),
				'options'   => $categories,
				'condition' => array(
					'prg_content_archive_products_content_stock_label_content' => 'yes',
				),
			)
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'prg_style_archive_products_general',
			array(
				'label' => __( 'General', 'prodigy-commerce' ),
				'tab'   => Controls_Manager::TAB_STYLE,
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_general_margin',
			array(
				'label'          => __( 'Column Margin', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px' ),
				'default'        => array(
					'size' => 24,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 16,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 16,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__grid' => 'column-gap: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_general_row_margin',
			array(
				'label'          => __( 'Row Bottom Margin', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px' ),
				'default'        => array(
					'size' => 24,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 24,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 24,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__grid' => 'row-gap: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_general_alignment',
			array(
				'label'          => __( 'Alignment', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SELECT,
				'default'        => 'flex-start',
				'tablet_default' => 'flex-start',
				'mobile_default' => 'flex-start',
				'options'        => array(
					'flex-start' => __( 'Left', 'prodigy-commerce' ),
					'center'     => __( 'Center', 'prodigy-commerce' ),
					'flex-end'   => __( 'Right', 'prodigy-commerce' ),
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-container' => 'align-items: {{VALUE}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_general_bottom_margin',
			array(
				'label'          => __( 'Bottom Margin', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px' ),
				'default'        => array(
					'size' => 0,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list' => 'margin-bottom: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_general_top_margin',
			array(
				'label'          => __( 'Top Margin', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px' ),
				'default'        => array(
					'size' => 0,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-custom-template .prodigy-product-list__grid.mt-20' => 'margin-top: {{SIZE}}{{UNIT}} !important',
				),
			)
		);

		$this->end_controls_section();

		/*
		 * Quick View
		 */
		$this->start_controls_section(
			'prg_style_archive_products_quick_view',
			array(
				'label'      => __( 'Quick View', 'prodigy-commerce' ),
				'tab'        => Controls_Manager::TAB_STYLE,

				'conditions' => array(
					'relation' => 'or',
					'terms'    => array(
						array(
							'name'     => 'prg_content_archive_products_content_quick_view',
							'operator' => '===',
							'value'    => 'yes',
						),
						array(
							'name'     => 'prg_content_archive_products_content_quick_view_tablet',
							'operator' => '===',
							'value'    => 'yes',
						),
						array(
							'name'     => 'prg_content_archive_products_content_quick_view_mobile',
							'operator' => '===',
							'value'    => 'yes',
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_btn',
			array(
				'label'     => __( 'Button', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'after',
			)
		);

		$this->add_control(
			'prg_content_archive_products_quick_view_type_position',
			array(
				'label'       => __( 'Quick View Type', 'prodigy-commerce' ),
				'type'        => \Elementor\Controls_Manager::SELECT,
				'default'     => 'absolute',
				'options'     => array(
					'static'   => __( 'Below Product Info (Static)', 'prodigy-commerce' ),
					'absolute' => __( 'Overlay on Image (Absolute)', 'prodigy-commerce' ),
				),
				'description' => __( 'The hover motion effect is available only when Quick View Type is set to Absolute and on desktop screens.', 'prodigy-commerce' ),
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_archive_products_quick_view_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product-list__quick-view',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 600,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.3,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.3,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.3,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
					'text_transform' => array(
						'default' => 'uppercase',
					),
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'none',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product-list__quick-view' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_border_width ',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_style_archive_products_quick_view_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__quick-view' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__quick-view' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_quick_view_margin',
			array(
				'label'          => __( 'Margin', 'prodigy-commerce' ),
				'type'           => Controls_Manager::DIMENSIONS,
				'size_units'     => array( 'px', 'em' ),
				'range'          => array(
					'px' => array(
						'min'  => 0,
						'max'  => 50,
						'step' => 1,
					),
				),
				'default'        => array(
					'unit'     => 'px',
					'top'      => '8',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'isLinked' => false,
				),
				'tablet_default' => array(
					'unit'     => 'px',
					'top'      => '8',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'isLinked' => false,
				),
				'mobile_default' => array(
					'unit'     => 'px',
					'top'      => '8',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'isLinked' => false,
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__quick-view' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
				'condition'      => array(
					'prg_content_archive_products_quick_view_type_position' => array(
						'static',
					),
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_quick_view_padding',
			array(
				'label'          => __( 'Padding', 'prodigy-commerce' ),
				'type'           => Controls_Manager::DIMENSIONS,
				'size_units'     => array( 'px', 'em' ),
				'range'          => array(
					'px' => array(
						'min'  => 0,
						'max'  => 50,
						'step' => 1,
					),
				),
				'default'        => array(
					'unit'     => 'px',
					'top'      => '8',
					'right'    => '16',
					'bottom'   => '8',
					'left'     => '16',
					'isLinked' => false,
				),
				'tablet_default' => array(
					'unit'     => 'px',
					'top'      => '8',
					'right'    => '16',
					'bottom'   => '8',
					'left'     => '16',
					'isLinked' => false,
				),
				'mobile_default' => array(
					'unit'     => 'px',
					'top'      => '8',
					'right'    => '16',
					'bottom'   => '8',
					'left'     => '16',
					'isLinked' => false,
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__quick-view' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_transition',
			array(
				'label'      => __( 'Transition Duration', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'range'      => array(
					'px' => array(
						'min'  => 0,
						'max'  => 1,
						'step' => 0.1,
					),
				),
				'default'    => array(
					'unit' => 'px',
					'size' => 0.2,
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__quick-view' => 'transition-duration: {{SIZE}}s',
				),
			)
		);

		$this->start_controls_tabs( 'archive_products_quick_view_style_tabs' );

		$this->start_controls_tab(
			'archive_products_quick_view_tabs_normal',
			array(
				'label' => __( 'Normal', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_archive_products_quick_view_text_color',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__quick-view' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_archive_products_quick_view_background_color',
			array(
				'label'     => __( 'Background Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => '#2a3658',
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product-list__quick-view' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_archive_products_quick_view_border_color',
			array(
				'label'     => __( 'Border Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => 'transparent',
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product-list__quick-view' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'archive_products_quick_view_tabs_hover',
			array(
				'label' => __( 'Hover', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_archive_products_quick_view_text_color_hover',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__quick-view:hover' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_archive_products_quick_view_background_color_hover',
			array(
				'label'     => __( 'Background Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => '#ffcb27',
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product-list__quick-view:hover' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_archive_products_quick_view_border_color_hover',
			array(
				'label'     => __( 'Border Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => 'transparent',
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product-list__quick-view:hover' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->add_control(
			'tab_separator',
			array(
				'type'      => \Elementor\Controls_Manager::HEADING,
				'label'     => '',
				'separator' => 'before',
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal',
			array(
				'label'     => __( 'Modal', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'after',
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_overlay_color',
			array(
				'label'       => __( 'Overlay Background', 'prodigy-commerce' ),
				'type'        => \Elementor\Controls_Manager::COLOR,
				'default'     => '#00000080',
				'render_type' => 'template',
				'selectors'   => array(
					'{{WRAPPER}} .prodigy-modal__overlay' => 'background-color: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_bg_color',
			array(
				'label'      => __( 'Background', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .quick-view' => 'background-color: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_border_radius',
			array(
				'label'       => __( 'Border Radius', 'prodigy-commerce' ),
				'type'        => Controls_Manager::SLIDER,
				'size_units'  => array( 'px', 'em' ),
				'range'       => array(
					'px' => array(
						'min'  => 0,
						'max'  => 50,
						'step' => 1,
					),
					'em' => array(
						'min'  => 0,
						'max'  => 50,
						'step' => 0.5,
					),
				),
				'default'     => array(
					'unit' => 'px',
					'size' => 0,
				),
				'render_type' => 'template',
				'selectors'   => array(
					'{{WRAPPER}} .quick-view' => 'border-radius: {{SIZE}}{{UNIT}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_close_btn',
			array(
				'label'     => __( 'Close Button', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'after',
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_close_btn_size',
			array(
				'label'      => __( 'Size', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', 'em' ),
				'range'      => array(
					'px' => array(
						'min'  => 0,
						'max'  => 50,
						'step' => 1,
					),
				),
				'default'    => array(
					'unit' => 'px',
					'size' => 24,
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-close__quick-view .close' => 'font-size: {{SIZE}}{{UNIT}} !important',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_quick_view_modal_close_btn_x',
			array(
				'label'          => __( 'X-axis', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'range'          => array(
					'px' => array(
						'min'  => -20,
						'max'  => 900,
						'step' => 1,
					),
				),
				'default'        => array(
					'unit' => 'px',
					'size' => -14,
				),
				'tablet_default' => array(
					'unit' => 'px',
					'size' => -14,
				),
				'mobile_default' => array(
					'unit' => 'px',
					'size' => 0,
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-close__quick-view .close' => 'right: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_quick_view_modal_close_btn_y',
			array(
				'label'          => __( 'Y-axis', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'range'          => array(
					'px' => array(
						'min'  => -20,
						'max'  => 100,
						'step' => 1,
					),
				),
				'default'        => array(
					'unit' => 'px',
					'size' => 0,
				),
				'tablet_default' => array(
					'unit' => 'px',
					'size' => 0,
				),
				'mobile_default' => array(
					'unit' => 'px',
					'size' => 0,
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-close__quick-view .close' => 'top: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_close_btn_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-close__quick-view .close' => 'color: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_close_btn_bg_color',
			array(
				'label'      => __( 'Background', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => 'transparent',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-close__quick-view .close' => 'background-color: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_close_btn_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'solid',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-close__quick-view .close' => 'border-style: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_close_btn_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', 'em' ),
				'range'      => array(
					'px' => array(
						'min'  => 0,
						'max'  => 50,
						'step' => 1,
					),
				),
				'default'    => array(
					'unit' => 'px',
					'size' => 0,
				),
				'condition'  => array(
					'prg_style_archive_products_quick_view_modal_close_btn_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-close__quick-view .close' => 'border-width: {{SIZE}}{{UNIT}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_close_btn_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', 'em' ),
				'range'      => array(
					'px' => array(
						'min'  => 0,
						'max'  => 50,
						'step' => 1,
					),
				),
				'default'    => array(
					'unit' => 'px',
					'size' => 2,
				),
				'condition'  => array(
					'prg_style_archive_products_quick_view_modal_close_btn_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-close__quick-view .close' => 'border-radius: {{SIZE}}{{UNIT}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_close_btn_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#bfc2cc',
				'condition'  => array(
					'prg_style_archive_products_quick_view_modal_close_btn_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-close__quick-view .close' => 'border-color: {{VALUE}} !important',
				),
			)
		);

		/*
		 * Gallery
		 */
		$this->add_control(
			'prg_style_archive_products_quick_view_modal_img',
			array(
				'label'     => __( 'Gallery', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_gallery_gap',
			array(
				'label'          => __( 'Spacing', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'description'    => __( 'Between Gallery and Thumbnails', 'prodigy-commerce' ),
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 20,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 20,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 20,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__gallery-container' => 'gap: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'none',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product__gallery-main-image-container .prodigy-product__gallery > .swiper-wrapper .swiper-slide' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'range'      => array(
					'px' => array(
						'min' => 0,
						'max' => 50,
					),
				),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '1',
					'right'    => '1',
					'bottom'   => '1',
					'left'     => '1',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_style_archive_products_quick_view_modal_images_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-main-image-container .prodigy-product__gallery > .swiper-wrapper .swiper-slide' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 0,
					'unit' => 'px',
				),
				'condition'  => array(
					'prg_style_archive_products_quick_view_modal_images_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-main-image-container .prodigy-product__gallery > .swiper-wrapper .swiper-slide' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#d9dbe1',
				'condition'  => array(
					'prg_style_archive_products_quick_view_modal_images_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-main-image-container .prodigy-product__gallery > .swiper-wrapper .swiper-slide' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_box_ratio',
			array(
				'label'       => __( 'Aspect Ratio Box', 'prodigy-commerce' ),
				'description' => __( 'Aspect Ratio of the image container', 'prodigy-commerce' ),
				'type'        => Controls_Manager::IMAGE_DIMENSIONS,
				'default'     => array(
					'width'  => 4,
					'height' => 5,
				),
				'selectors'   => array(
					'{{WRAPPER}} .prodigy-product__gallery-main-image-container .prodigy-product__gallery > .swiper-wrapper .swiper-slide' => 'aspect-ratio: {{WIDTH}} / {{HEIGHT}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_image',
			array(
				'label'       => __( 'Aspect Ratio Image', 'prodigy-commerce' ),
				'description' => __( 'Aspect Ratio of the image', 'prodigy-commerce' ),
				'type'        => Controls_Manager::IMAGE_DIMENSIONS,
				'default'     => array(
					'width'  => 3,
					'height' => 4,
				),
				'selectors'   => array(
					'{{WRAPPER}} .quick-view .prodigy-product__gallery-main-image-container .prodigy-product__gallery > .swiper-wrapper .swiper-slide .prodigy-product__gallery-img' => 'aspect-ratio: {{WIDTH}} / {{HEIGHT}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_active_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-container .swiper-wrapper .swiper-slide' => 'background-color: {{VALUE}} !important',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_quick_view_modal_images_scale',
			array(
				'label'          => __( 'Scale', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px' ),
				'range'          => array(
					'px' => array(
						'min'  => 0.1,
						'max'  => 5,
						'step' => 0.1,
					),
				),
				'default'        => array(
					'size' => 1,
					'unit' => '',
				),
				'tablet_default' => array(
					'size' => 1,
					'unit' => '',
				),
				'mobile_default' => array(
					'size' => 1,
					'unit' => '',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-img svg' => 'transform: scale({{SIZE}})',
				),
			)
		);

		/*
		 * Sale Badge
		 */
		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_sale_badge',
			array(
				'label'     => __( 'Sale Badge', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'after',
				'condition' => array(
					'prg_content_archive_products_content_sale' => 'yes',
				),
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_archive_products_quick_view_modal_images_sale_badge_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .modal-content .prodigy-product-list__item-label > span.prodigy-product-list__item-label-text',
				'condition'      => array(
					'prg_content_archive_products_content_sale' => 'yes',
				),
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 800,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.4,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.4,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.4,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_sale_badge_color',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-label>span.prodigy-product-list__item-label-text' => 'color: {{VALUE}} !important',
				),
				'condition'  => array(
					'prg_content_archive_products_content_sale' => 'yes',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_sale_badge_back_color',
			array(
				'label'      => __( 'Background Сolor', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#f55454',
				'selectors'  => array(
					'{{WRAPPER}} .modal-content .prodigy-product-list__item-label' => 'background-color: {{VALUE}} !important',
				),
				'condition'  => array(
					'prg_content_archive_products_content_sale' => 'yes',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_quick_view_modal_images_sale_badge_width',
			array(
				'label'          => __( 'Width', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 48,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 48,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 30,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .modal-content .prodigy-product-list__item-label' => 'width: {{SIZE}}{{UNIT}} !important',
				),
				'condition'      => array(
					'prg_content_archive_products_content_sale' => 'yes',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_quick_view_modal_images_sale_badge_height',
			array(
				'label'          => __( 'Height', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 48,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 48,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 30,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .modal-content .prodigy-product-list__item-label' => 'height: {{SIZE}}{{UNIT}} !important',
				),
				'condition'      => array(
					'prg_content_archive_products_content_sale' => 'yes',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_sale_badge_border_radius',
			array(
				'label'      => __( 'Border radius', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 50,
					'unit' => '%',
				),
				'selectors'  => array(
					'{{WRAPPER}} .modal-content .prodigy-product-list__item-label' => 'border-radius: {{SIZE}}{{UNIT}} !important',
				),
				'condition'  => array(
					'prg_content_archive_products_content_sale' => 'yes',
				),
			)
		);

		/*
		 * Gallery Navigation Buttons
		 */
		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_nav',
			array(
				'label'     => __( 'Gallery Navigation Buttons', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'after',
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_quick_view_modal_images_nav_padding',
			array(
				'label'          => __( 'Padding', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 20,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 20,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 20,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__gallery-nav-prev' => 'left: {{SIZE}}{{UNIT}};',
					'{{WRAPPER}} .prodigy-product__gallery-nav-next' => 'right: {{SIZE}}{{UNIT}};',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_quick_view_modal_images_nav_width',
			array(
				'label'          => __( 'Width', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 24,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 24,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 24,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__gallery-nav' => 'width: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_quick_view_modal_images_nav_height',
			array(
				'label'          => __( 'Height', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 24,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 24,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 24,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__gallery-nav' => 'height: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_nav_size',
			array(
				'label'      => __( 'Size', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::SLIDER,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'size' => 24,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-nav' => 'font-size: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_nav_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'none',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product__gallery-nav' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_nav_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'range'      => array(
					'px' => array(
						'min' => 0,
						'max' => 50,
					),
				),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '1',
					'right'    => '1',
					'bottom'   => '1',
					'left'     => '1',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_style_archive_products_quick_view_modal_images_nav_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-nav' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_quick_view_modal_images_nav_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 50,
					'unit' => '%',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-nav' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->start_controls_tabs( 'modal_gallery_nav_style_tabs' );

		$this->start_controls_tab(
			'modal_gallery_nav_normal',
			array(
				'label' => __( 'Normal', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'modal_gallery_nav_text_color',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-nav' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'modal_gallery_nav_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#808285',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-nav' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'modal_gallery_nav_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#808285',
				'condition'  => array(
					'modal_gallery_nav_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-nav' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'modal_gallery_nav_style_hover',
			array(
				'label' => __( 'Hover', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_modal_gallery_nav_text_color_hover',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-nav:hover' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_modal_gallery_nav_bg_color_hover',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#808285',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-nav:hover' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_modal_gallery_nav_border_color_hover',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#808285',
				'condition'  => array(
					'prg_style_navigation_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-nav:hover' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		/*
		 * Gallery Control Buttons
		 */
		$this->add_control(
			'prg_style_modal_gallery_controls',
			array(
				'label'     => __( 'Gallery Navigation Controls', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'after',
			)
		);

		$this->add_control(
			'modal_gallery_controls_description',
			array(
				'type'            => \Elementor\Controls_Manager::RAW_HTML,
				'raw'             => __( 'Fullscreen and Count settings.', 'prodigy-commerce' ),
				'content_classes' => 'elementor-control-field-description',
			)
		);

		$this->add_responsive_control(
			'prg_style_modal_gallery_controls_padding',
			array(
				'label'          => __( 'Padding', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 20,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 20,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 20,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-icon--fullscreen' => 'left: {{SIZE}}{{UNIT}};',
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-count' => 'right: {{SIZE}}{{UNIT}};',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_gallery_controls_bottom_separator',
			array(
				'label'     => __( 'Full Screen Button', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_responsive_control(
			'prg_style_modal_gallery_controls_fullbtn_width',
			array(
				'label'          => __( 'Width', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 24,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 24,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 24,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-icon--fullscreen' => 'width: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_modal_gallery_controls_fullbtn_height',
			array(
				'label'          => __( 'Height', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 24,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 24,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 24,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-icon--fullscreen' => 'height: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_gallery_controls_fullbtn_size',
			array(
				'label'      => __( 'Icon Size', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::SLIDER,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'size' => 24,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-icon--fullscreen' => 'font-size: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_gallery_controls_fullbtn_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'none',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-icon--fullscreen' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_gallery_controls_fullbtn_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'range'      => array(
					'px' => array(
						'min' => 0,
						'max' => 50,
					),
				),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '1',
					'right'    => '1',
					'bottom'   => '1',
					'left'     => '1',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_style_modal_gallery_controls_fullbtn_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-icon--fullscreen' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'style_modal_gallery_controls_fullbtn_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 50,
					'unit' => '%',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-icon--fullscreen' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->start_controls_tabs( 'modal_full_screen_btn_style_tabs' );

		$this->start_controls_tab(
			'modal_full_screen_btn_style_normal',
			array(
				'label' => __( 'Normal', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_style_modal_full_screen_btn_text_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-icon--fullscreen' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_full_screen_btn_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#808285',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-icon--fullscreen' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_full_screen_btn_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#808285',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-icon--fullscreen' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'modal_full_screen_btn_style_hover',
			array(
				'label' => __( 'Hover', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_style_modal_full_screen_btn_text_color_hover',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-icon--fullscreen:hover' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_full_screen_btn_bg_color_hover',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#808285',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-icon--fullscreen:hover' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_full_screen_btn_border_color_hover',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#808285',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-icon--fullscreen:hover' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->add_control(
			'prg_style_modal_count',
			array(
				'label'     => __( 'Gallery Count', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_responsive_control(
			'prg_style_modal_count_height',
			array(
				'label'          => __( 'Height', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 24,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 24,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 24,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-count' => 'height: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_modal_count_padding_left',
			array(
				'label'          => __( 'Padding Left', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 8,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 8,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 8,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-count' => 'padding-left: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_modal_count_padding_right',
			array(
				'label'          => __( 'Padding Right', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 8,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 8,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 8,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-count' => 'padding-right: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_group_control(
			\Elementor\Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_modal_count_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product__gallery-count',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 15,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 15,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 15,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 24,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 24,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 24,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_modal_count_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'none',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-count' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_count_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'range'      => array(
					'px' => array(
						'min' => 0,
						'max' => 50,
					),
				),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '1',
					'right'    => '1',
					'bottom'   => '1',
					'left'     => '1',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_style_modal_count_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-count' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_count_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 12,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-count' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_count_text_color',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-count' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_count_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#808285',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-count' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_count_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#808285',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery .prodigy-product__gallery-count' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_quick_view_thumbnails_title',
			array(
				'label'     => __( 'Thumbnails Gallery', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_control(
			'prg_style_quick_view_thumbnails_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-thumbs .prodigy-product__gallery-img'         => 'border-radius: {{SIZE}}{{UNIT}}',
					'{{WRAPPER}} .prodigy-product__gallery-thumbs .prodigy-product__gallery-img svg'     => 'border-radius: {{SIZE}}{{UNIT}}',
					'{{WRAPPER}} .prodigy-product__gallery-thumbs .prodigy-product__gallery-img svg img' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_image_ratio_thumbnails_quick_view',
			array(
				'label'       => __( 'Aspect Ratio', 'prodigy-commerce' ),
				'description' => 'Aspect Ratio',
				'type'        => Controls_Manager::IMAGE_DIMENSIONS,
				'default'     => array(
					'width'  => 3,
					'height' => 4,
				),
				'selectors'   => array(
					'{{WRAPPER}} .prodigy-product__gallery-thumbs .prodigy-product__gallery-img svg' => 'aspect-ratio: {{WIDTH}} / {{HEIGHT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_thumbnails_quick_view_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => 'transparent',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-thumbs .swiper-slide .prodigy-product__gallery-img svg' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->start_controls_tabs( 'prg_style_thumbnails_quick_view_style_tabs' );

		$this->start_controls_tab(
			'prg_style_thumbnails_quick_view_style_tab_normal',
			array(
				'label' => __( 'Normal', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_style_thumbnails_quick_view_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'solid',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product__gallery-thumbs .swiper-slide:not(.swiper-slide-thumb-active) .prodigy-product__gallery-img' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_thumbnails_quick_view_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'range'      => array(
					'px' => array(
						'min' => 0,
						'max' => 50,
					),
				),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '1',
					'right'    => '1',
					'bottom'   => '1',
					'left'     => '1',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_style_thumbnails_quick_view_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-thumbs .swiper-slide:not(.swiper-slide-thumb-active) .prodigy-product__gallery-img' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_thumbnails_quick_view_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => 'transparent',
				'condition'  => array(
					'prg_style_thumbnails_quick_view_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-thumbs .swiper-slide:not(.swiper-slide-thumb-active) .prodigy-product__gallery-img' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'prg_style_thumbnails_quick_view_style_tab_active',
			array(
				'label' => __( 'Active', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_style_thumbnails_quick_view_border_type_active',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'none',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product__gallery-thumbs .swiper-slide.swiper-slide-thumb-active .prodigy-product__gallery-img' => 'border-style: {{SIZE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_thumbnails_quick_view_border_width_active',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'range'      => array(
					'px' => array(
						'min' => 0,
						'max' => 50,
					),
				),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '1',
					'right'    => '1',
					'bottom'   => '1',
					'left'     => '1',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_style_thumbnails_quick_view_border_type_active' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-thumbs .swiper-slide.swiper-slide-thumb-active .prodigy-product__gallery-img' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_thumbnails_quick_view_border_color_active',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#d9dbe1',
				'condition'  => array(
					'prg_style_thumbnails_quick_view_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__gallery-thumbs .swiper-slide.swiper-slide-thumb-active .prodigy-product__gallery-img' => 'border-color: {{VALUE}} !important',
				),
			)
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->add_control(
			'prg_style_modal_quick_product_title',
			array(
				'label'     => __( 'Product Title', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_group_control(
			\Elementor\Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_modal_quick_product_title_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .quick-view .prodigy-product__name',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 40,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 32,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 26,
						),
					),
					'font_weight'    => array(
						'default' => 600,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.3,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.3,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.3,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_title_text_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#333333',
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__name' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_title_margin_bottom',
			array(
				'label'      => __( 'Bottom Margin', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 8,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__name' => 'margin-bottom: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_price',
			array(
				'label'     => __( 'Product Price', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_group_control(
			\Elementor\Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_modal_quick_product_price_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .quick-view .prodigy-product__main-price',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 28,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 26,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 24,
						),
					),
					'font_weight'    => array(
						'default' => 600,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.3,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.3,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.3,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_price_text_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#333333',
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__main-price' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_price_margin_bottom',
			array(
				'label'      => __( 'Bottom Margin', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 16,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__main-price' => 'margin-bottom: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_rating',
			array(
				'label'     => __( 'Product Rating', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_rating_visibility',
			array(
				'label'     => __( 'Visibility', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'flex',
				'options'   => array(
					'flex' => __( 'visible', 'prodigy-commerce' ),
					'none' => __( 'hidden', 'prodigy-commerce' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .quick-view .prodigy-product__rating' => 'display: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_rating_margin_bottom',
			array(
				'label'      => __( 'Bottom Margin', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 20,
					'unit' => 'px',
				),
				'condition'  => array(
					'prg_style_modal_quick_product_rating_visibility' => 'flex',
				),
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__rating' => 'margin-bottom: {{SIZE}}{{UNIT}}',
				),
			)
		);

		/*
		 * Stars
		 */
		$this->add_control(
			'prg_style_modal_quick_product_rating_star',
			array(
				'label'     => __( 'Stars', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
				'condition' => array(
					'prg_style_modal_quick_product_rating_visibility' => 'flex',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_rating_star_color',
			array(
				'label'      => __( 'Rating Star Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffcb27',
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__rating .prodigy-star-rating__item' => 'color: {{VALUE}}',
				),
				'condition'  => array(
					'prg_style_modal_quick_product_rating_visibility' => 'flex',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_rating_empty_star_color',
			array(
				'label'      => __( 'Empty Start Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#e5e5e5',
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__rating .prodigy-star-rating:before' => 'color: {{VALUE}}',
				),
				'condition'  => array(
					'prg_style_modal_quick_product_rating_visibility' => 'flex',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_modal_quick_product_rating_star_size',
			array(
				'label'          => __( 'Star Size', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 24,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 24,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 24,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .quick-view .prodigy-product__rating .prodigy-star-rating' => 'width: calc({{SIZE}}{{UNIT}} * 5); height: {{SIZE}}{{UNIT}}',
					'{{WRAPPER}} .quick-view .prodigy-product__rating .prodigy-star-rating:before' => 'font-size: {{SIZE}}{{UNIT}}',
					'{{WRAPPER}} .quick-view .prodigy-product__rating .prodigy-star-rating__item' => 'height: {{SIZE}}{{UNIT}}',
					'{{WRAPPER}} .quick-view .prodigy-product__rating .prodigy-star-rating__item:before' => 'font-size: {{SIZE}}{{UNIT}}',
				),
				'condition'      => array(
					'prg_style_modal_quick_product_rating_visibility' => 'flex',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_modal_quick_product_rating_star_margin',
			array(
				'label'          => __( 'Right Margin', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'size_units'     => array( 'px' ),
				'default'        => array(
					'size' => 16,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 16,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 16,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .quick-view .prodigy-product__rating .prodigy-star-rating' => 'margin-right: {{SIZE}}{{UNIT}}',
				),
				'condition'      => array(
					'prg_style_modal_quick_product_rating_visibility' => 'flex',
				),
			)
		);

		/*
		 * Reviews
		 */
		$this->add_control(
			'prg_style_modal_quick_product_rating_reviews',
			array(
				'label'     => __( 'Reviews', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
				'condition' => array(
					'prg_style_modal_quick_product_rating_visibility' => 'flex',
				),
			)
		);

		$this->add_group_control(
			\Elementor\Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_modal_quick_product_rating_reviews_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .quick-view .prodigy-product__rating-info',
				'condition'      => array(
					'prg_style_modal_quick_product_rating_visibility' => 'flex',
				),
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_rating_reviews_color',
			array(
				'label'      => __( 'Reviews Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#0274be',
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__rating-link' => 'color: {{VALUE}}',
				),
				'condition'  => array(
					'prg_style_modal_quick_product_rating_visibility' => 'flex',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_rating_reviews_hover_color',
			array(
				'label'      => __( 'Reviews Color Hover', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__rating-link:hover' => 'color: {{VALUE}}',
				),
				'condition'  => array(
					'prg_style_modal_quick_product_rating_visibility' => 'flex',
				),
			)
		);

		/*
		 * Separator
		 */
		$this->add_control(
			'prg_style_modal_quick_product_rating_reviews_separator',
			array(
				'label'     => __( 'Separator', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
				'condition' => array(
					'prg_style_modal_quick_product_rating_visibility' => 'flex',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_rating_reviews_separator_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#000',
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__rating-divider' => 'background-color: {{VALUE}}',
				),
				'condition'  => array(
					'prg_style_modal_quick_product_rating_visibility' => 'flex',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_rating_reviews_separator_width',
			array(
				'label'      => __( 'Width', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::SLIDER,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'size' => 1,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__rating-divider' => 'width: {{SIZE}}{{UNIT}}',
				),
				'condition'  => array(
					'prg_style_modal_quick_product_rating_visibility' => 'flex',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_modal_quick_product_rating_reviews_separator_margin',
			array(
				'label'          => __( 'Right Margin', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'size_units'     => array( 'px' ),
				'default'        => array(
					'size' => 16,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 16,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 16,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .quick-view .prodigy-product__rating-divider' => 'margin-right: {{SIZE}}{{UNIT}}',
				),
				'condition'      => array(
					'prg_style_modal_quick_product_rating_visibility' => 'flex',
				),
			)
		);

		/*
		 * Description
		 */
		$this->add_control(
			'prg_style_modal_quick_product_description',
			array(
				'label'     => __( 'Description', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'after',
			)
		);

		$this->add_responsive_control(
			'prg_style_modal_quick_product_description_padding',
			array(
				'label'          => __( 'Padding', 'prodigy-commerce' ),
				'type'           => Controls_Manager::DIMENSIONS,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'unit'     => 'px',
					'isLinked' => true,
				),
				'tablet_default' => array(
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'unit'     => 'px',
					'isLinked' => true,
				),
				'mobile_default' => array(
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'unit'     => 'px',
					'isLinked' => true,
				),
				'selectors'      => array(
					'{{WRAPPER}} .quick-view .prodigy-product__description-container' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_modal_quick_product_description_margin_bottom',
			array(
				'label'          => __( 'Bottom Margin', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'size_units'     => array( 'px' ),
				'default'        => array(
					'size' => 16,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 16,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 16,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .quick-view .prodigy-product__description-container' => 'margin-bottom: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_description_bg_color',
			array(
				'label'      => __( 'Background', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => 'transparent',
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__description-container' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_description_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'none',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .quick-view .prodigy-product__description-container' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_description_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'unit'     => 'px',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_style_modal_quick_product_description_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__description-container' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_description_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__description-container' => 'border-radius: {{SIZE}}{{UNIT}}',
				),

			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_description_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => 'transparent',
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__description-container' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->add_group_control(
			\Elementor\Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_modal_quick_product_description_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .quick-view .prodigy-product__description-container',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.2,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.2,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.2,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_description_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#333333',
				'selectors'  => array(
					'{{WRAPPER}} .quick-view .prodigy-product__description-container' => 'color: {{VALUE}}',
				),
			)
		);

		/*
		 * Dropdown View
		 */

		$this->add_control(
			'prg_style_modal_quick_product_attribute',
			array(
				'label'     => __( 'Attributes Dropdown View', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'after',
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_modal_quick_product_attribute_text_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product__attr-text:not(.prodigy-product__logo-text)',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 18,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 18,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 18,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_text_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__attr-text:not(.prodigy-product__logo-text)' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_modal_quick_product_attribute_margin_bottom',
			array(
				'label'          => __( 'Bottom Margin', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px' ),
				'default'        => array(
					'size' => 8,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 8,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 8,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__attr-text:not(.prodigy-no-select):not(.prodigy-product__logo-text)' => 'margin-bottom: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_value_select',
			array(
				'label'     => __( 'Attribute Value Select', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_modal_quick_product_attribute_value_select_text_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-main-select.attribute_values, .ms-dd-header .ms-dd-label',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 15,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 15,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 15,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_value_select_text_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-main-select.attribute_values, .prodigy-product__attr:not(.prodigy-product__logo) .ms-dd .ms-dd-header .ms-dd-label' => 'color: {{VALUE}} !important',
				),
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_modal_quick_product_attribute_value_select_typography_value',
				'label'          => __( 'Option Value Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-main-select.attribute_values option, .ms-options .ms-dd-label',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 15,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 15,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 15,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_value_select_main_select_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__attr:not(.prodigy-product__logo) .ms-dd-header' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_value_select_color_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px' ),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '1',
					'right'    => '1',
					'bottom'   => '1',
					'left'     => '1',
					'isLinked' => true,
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-main-select.attribute_values, .prodigy-product__attr-item:not(.prodigy-product__logo-item) .ms-dd-header' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_value_select_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 2,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-main-select.attribute_values, .prodigy-product__attr-item:not(.prodigy-product__logo-item) .ms-dd-header, .prodigy-product__attr-item button.ms-list-option' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_value_select_color_border',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#bfc2cc',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-main-select.attribute_values'                                      => 'border-color: {{VALUE}}',
					'{{WRAPPER}} .prodigy-product__attr-item:not(.prodigy-product__logo-item) .ms-dd-header' => 'border-color: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_value_select_color_value',
			array(
				'label'      => __( 'Option Value Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#666666',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-main-select.attribute_values option' => 'color: {{VALUE}}',
				),
			)
		);

		$this->start_controls_tabs( 'Options Tabs' );

		$this->start_controls_tab(
			'prg_style_modal_quick_product_attribute_value_select_options_bg_color_tab_normal',
			array(
				'label' => __( 'Normal', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_value_select_options_item_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .ms-dd .ms-option .ms-list-option' => 'background-color: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_value_select_options_color_value',
			array(
				'label'      => __( 'Option Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__attr-item:not(.prodigy-product__logo-item) .ms-options .ms-dd-label' => 'color: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_value_select_dropdown_block_border_radius',
			array(
				'label'      => __( 'Dropdown Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'default'    => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .ms-dd ul.ms-options' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'prg_style_modal_quick_product_attribute_value_select_options_item_tab_hover',
			array(
				'label' => __( 'Hover', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_value_select_options_item_bg_color_tab_hover',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#0274be',
				'selectors'  => array(
					'{{WRAPPER}} .ms-dd .ms-list-option:not(.prodigy-attr__default-value):hover' => 'background-color: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_value_select_options_color_hover_value',
			array(
				'label'      => __( 'Option Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .ms-dd .ms-list-option:not(.prodigy-attr__default-value):hover .ms-dd-label' => 'color: {{VALUE}} !important',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'prg_style_modal_quick_product_attribute_value_select_options_item_tab_selected',
			array(
				'label' => __( 'Selected', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_value_select_options_item_bg_color_tab_selected',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#0274be',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__attr:not(.prodigy-product__logo) li.ms-list-option.option-selected.enabled.attached' => 'background: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_style_modal_quick_product_attribute_value_select_options_color_selected_value',
			array(
				'label'      => __( 'Option Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => 'white',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__attr:not(.prodigy-product__logo) li.ms-list-option.option-selected:not(.prodigy-attr__default-value) .ms-dd-label' => 'color: {{VALUE}} !important',
				),
			)
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		/*
		 * Tag View
		 */

		$this->add_control(
			'prg_style_modal_quick_product_attribute_swatches_item_main_row_styling',
			array(
				'label'     => __( 'Attributes Tag View', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_responsive_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_padding',
			array(
				'label'          => __( 'Padding', 'prodigy-commerce' ),
				'type'           => Controls_Manager::DIMENSIONS,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'unit'     => 'px',
					'top'      => '16',
					'right'    => '0',
					'bottom'   => '16',
					'left'     => '0',
					'isLinked' => false,
				),
				'tablet_default' => array(
					'unit'     => 'px',
					'top'      => '16',
					'right'    => '0',
					'bottom'   => '16',
					'left'     => '0',
					'isLinked' => false,
				),
				'mobile_default' => array(
					'unit'     => 'px',
					'top'      => '16',
					'right'    => '0',
					'bottom'   => '16',
					'left'     => '0',
					'isLinked' => false,
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__attr-item--no-select:not(.prodigy-product__attr-item--logo-select) > .prodigy-product__attr-item--no-select-value' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_main_min_height',
			array(
				'label'      => __( 'Minimum Height', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'default'    => array(
					'size' => 72,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__attr-item--no-select:not(.prodigy-product__attr-item--logo-select) > .prodigy-product__attr-item--no-select-value' => 'min-height: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_main_gap',
			array(
				'label'      => __( 'Spacing', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'default'    => array(
					'size' => 20,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-custom-template .prodigy-product__attr-tags' => 'gap: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_attributes_quantity_count_no_select_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => esc_attr( 'solid' ),
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-custom-template .prodigy-product__attr-item--no-select:not(.prodigy-product__attr-item--logo-select) .prodigy-product__attr-item--no-select-value:not(.prodigy-radio__btn-wrap > .prodigy-product__attr-item--no-select-value)' => 'border-block-style: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_main_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#e9eaee',
				'condition'  => array(
					'prg_attributes_quantity_count_no_select_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-custom-template .prodigy-product__attr-item--no-select:not(.prodigy-product__attr-item--logo-select) .prodigy-product__attr-item--no-select-value:not(.prodigy-radio__btn-wrap > .prodigy-product__attr-item--no-select-value)' => 'border-block-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_main_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'default'    => array(
					'size' => 1,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-custom-template .prodigy-product__attr-item--no-select:not(.prodigy-product__attr-item--logo-select) .prodigy-product__attr-item--no-select-value:not(.prodigy-radio__btn-wrap > .prodigy-product__attr-item--no-select-value)' => 'border-block-width: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_attribute_text',
			array(
				'label'     => __( 'Attribute Name Text', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_prg_style_modal_quick_product_attribute_swatches_attribute_text_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product__attr-item--no-select:not(.prodigy-product__attr-item--logo-select) .prodigy-product__attr-item--no-select-value .prodigy-product__attr-text.prodigy-no-select',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 18,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 18,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 18,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_attribute_text_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#a6abbc',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__attr-item--no-select:not(.prodigy-product__attr-item--logo-select) .prodigy-product__attr-item--no-select-value .prodigy-product__attr-text.prodigy-no-select' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_attribute_selected_text_color',
			array(
				'label'      => __( 'Selected Name Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__attr-item--no-select:not(.prodigy-product__attr-item--logo-select) .prodigy-product__attr-item--no-select-value .prodigy-product__attr-text--name' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_attribute_value_text',
			array(
				'label'     => __( 'Attribute Value Text', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_prg_style_modal_quick_product_attribute_swatches_attribute_value_text_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product__attr-item--no-select:not(.prodigy-product__attr-item--logo-select) .prodigy-product__attr-item--no-select-value input.prodigy-product__btn-no-select',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 18,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 18,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 18,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatch_item_button',
			array(
				'label'     => __( 'Attribute Value', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_responsive_control(
			'prg_prg_style_modal_quick_product_attribute_swatch_item_button_padding',
			array(
				'label'          => __( 'Padding', 'prodigy-commerce' ),
				'type'           => Controls_Manager::DIMENSIONS,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '12',
					'bottom'   => '0',
					'left'     => '12',
					'isLinked' => false,
				),
				'tablet_default' => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '12',
					'bottom'   => '0',
					'left'     => '12',
					'isLinked' => false,
				),
				'mobile_default' => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '12',
					'bottom'   => '0',
					'left'     => '12',
					'isLinked' => false,
				),
				'selectors'      => array(
					'{{WRAPPER}} input[type="button"].prodigy-product__btn-no-select'            => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
					'{{WRAPPER}} .prodigy-custom-template .prodigy-radio__no-swatch-btn > input' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_values_gap',
			array(
				'label'      => __( 'Values Horizontal Gap', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'default'    => array(
					'size' => 8,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-custom-template .prodigy-radio__btn-wrap:not(.prodigy-tooltip)' => 'column-gap: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_values_row_gap',
			array(
				'label'      => __( 'Values Vertical Gap', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'default'    => array(
					'size' => 8,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-custom-template .prodigy-radio__btn-wrap:not(.prodigy-tooltip)' => 'row-gap: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_values_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( '%' ),
				'default'    => array(
					'size' => 50,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-custom-template .prodigy-radio__no-swatch-btn' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->start_controls_tabs( 'swatches_tabs' );

		$this->start_controls_tab(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_button_bg_color_tab_normal',
			array(
				'label' => __( 'Normal', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_attribute_value_normal_text_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__attr-item--no-select-value input.prodigy-product__btn-no-select' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_button_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#e9eaee',
				'selectors'  => array(
					'{{WRAPPER}} input[type="button"].prodigy-product__btn-no-select' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_butto_tab_normal_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'solid',
				'options'   => array(
					'none'   => esc_attr( 'none' ),
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'hidden' => esc_attr( 'hidden' ),
					'solid'  => esc_attr( 'solid' ),
				),
				'selectors' => array(
					'{{WRAPPER}} div.prodigy-radio__no-swatch-btn > input[type="button"].prodigy-product__btn-no-select' => 'border-style: {{SIZE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_butto_tab_normal_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'isLinked' => true,
				),
				'selectors'  => array(
					'{{WRAPPER}} div.prodigy-radio__no-swatch-btn > input[type="button"].prodigy-product__btn-no-select' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_button_normal_border_color_tab',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => 'transparent',
				'selectors'  => array(
					'{{WRAPPER}} div.prodigy-radio__no-swatch-btn > input[type="button"].prodigy-product__btn-no-select' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'subscription_tabs_header_tab_hover',
			array(
				'label' => __( 'Hover', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_attribute_value_hover_text_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} div.prodigy-radio__no-swatch-btn:hover input.prodigy-product__btn-no-select' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_button_bg_color_tab_hover',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#e9eaee',
				'selectors'  => array(
					'{{WRAPPER}} div.prodigy-radio__no-swatch-btn:hover > input[type="button"].prodigy-product__btn-no-select' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_butto_tab_hover_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'solid',
				'options'   => array(
					'none'   => esc_attr( 'none' ),
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'hidden' => esc_attr( 'hidden' ),
					'solid'  => esc_attr( 'solid' ),
				),
				'selectors' => array(
					'{{WRAPPER}} div.prodigy-radio__no-swatch-btn:hover > input[type="button"].prodigy-product__btn-no-select' => 'border-style: {{SIZE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_button_tab_hover_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'isLinked' => true,
				),
				'selectors'  => array(
					'{{WRAPPER}} div.prodigy-radio__no-swatch-btn:hover > input[type="button"].prodigy-product__btn-no-select' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_button_border_color_tab_hover',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => 'transparent',
				'selectors'  => array(
					'{{WRAPPER}} div.prodigy-radio__no-swatch-btn:hover > input[type="button"].prodigy-product__btn-no-select' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'swatches_tabs_header_tab_checked',
			array(
				'label' => __( 'Checked', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_attribute_value_checked_text_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#e9eaee',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-custom-template .prodigy-radio__no-swatch-btn > input:checked ~ input.prodigy-product__btn-no-select[type="button"]' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_button_bg_color_tab_checked',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-radio__no-swatch-btn > input:checked ~ input.prodigy-product__btn-no-select[type="button"]' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_butto_tab_checked_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'solid',
				'options'   => array(
					'none'   => esc_attr( 'none' ),
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'hidden' => esc_attr( 'hidden' ),
					'solid'  => esc_attr( 'solid' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-radio__no-swatch-btn > input:checked ~ input.prodigy-product__btn-no-select[type="button"]' => 'border-style: {{SIZE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_butto_tab_checked_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'isLinked' => true,
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-radio__no-swatch-btn > input:checked ~ input.prodigy-product__btn-no-select[type="button"]' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_button_border_color_tab_checked',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => 'transparent',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-radio__no-swatch-btn > input:checked ~ input.prodigy-product__btn-no-select[type="button"]' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_button_tab_checked_border_outline_type',
			array(
				'label'     => __( 'Outline Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'solid',
				'options'   => array(
					'none'   => esc_attr( 'none' ),
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'hidden' => esc_attr( 'hidden' ),
					'solid'  => esc_attr( 'solid' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-custom-template .prodigy-radio__no-swatch-btn > input:checked ~ input.prodigy-product__btn-no-select[type="button"]' => 'outline-style: {{SIZE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_button_tab_checked_border_outline_width',
			array(
				'label'      => __( 'Outline Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'unit' => 'px',
					'size' => '1',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-custom-template .prodigy-radio__no-swatch-btn > input:checked ~ input.prodigy-product__btn-no-select[type="button"]' => 'outline-width: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_button_tab_checked_border_outline_offset',
			array(
				'label'      => __( 'Outline Offset', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'unit' => 'px',
					'size' => '1',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-custom-template input.prodigy-product__btn-no-select[type="button"]' => 'outline-offset: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_prg_style_modal_quick_product_attribute_swatches_item_button_border_outline_color_tab_checked',
			array(
				'label'      => __( 'Outline Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-custom-template .prodigy-radio__no-swatch-btn > input:checked ~ input.prodigy-product__btn-no-select[type="button"]' => 'outline-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		if ( Prodigy_Platform_Settings::is_enable_subscription_app() ) {

			/*
			 * Subscriptions
			 */
			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs',
				array(
					'label'     => __( 'Subscriptions Tabs', 'prodigy-commerce' ),
					'type'      => Controls_Manager::HEADING,
					'separator' => 'before',
				)
			);

			$this->add_responsive_control(
				'prg_quick_view_modal_product_subscription_tabs_padding',
				array(
					'label'          => __( 'Tab Item Padding', 'prodigy-commerce' ),
					'separator'      => 'before',
					'type'           => Controls_Manager::DIMENSIONS,
					'size_units'     => array( 'px', 'em' ),
					'default'        => array(
						'unit'     => 'px',
						'top'      => '12',
						'right'    => '8',
						'bottom'   => '12',
						'left'     => '8',
						'isLinked' => false,
					),
					'tablet_default' => array(
						'unit'     => 'px',
						'top'      => '12',
						'right'    => '8',
						'bottom'   => '12',
						'left'     => '8',
						'isLinked' => false,
					),
					'mobile_default' => array(
						'unit'     => 'px',
						'top'      => '12',
						'right'    => '8',
						'bottom'   => '12',
						'left'     => '8',
						'isLinked' => false,
					),
					'selectors'      => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
					),
				)
			);

			$this->add_responsive_control(
				'prg_quick_view_modal_product_subscription_tabs_content_padding',
				array(
					'label'          => __( 'Tab Content Padding', 'prodigy-commerce' ),
					'type'           => Controls_Manager::DIMENSIONS,
					'size_units'     => array( 'px', 'em' ),
					'default'        => array(
						'unit'     => 'px',
						'top'      => '12',
						'right'    => '10',
						'bottom'   => '12',
						'left'     => '10',
						'isLinked' => false,
					),
					'tablet_default' => array(
						'unit'     => 'px',
						'top'      => '12',
						'right'    => '10',
						'bottom'   => '12',
						'left'     => '10',
						'isLinked' => false,
					),
					'mobile_default' => array(
						'unit'     => 'px',
						'top'      => '12',
						'right'    => '10',
						'bottom'   => '12',
						'left'     => '10',
						'isLinked' => false,
					),
					'selectors'      => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-content .tab-pane' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_item_sale_background_color',
				array(
					'label'     => __( 'Background Color', 'prodigy-commerce' ),
					'type'      => Controls_Manager::COLOR,
					'default'   => '#ffffff',
					'selectors' => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-content .tab-pane' => 'background-color: {{VALUE}}',
					),
				)
			);

			$this->add_responsive_control(
				'prg_quick_view_modal_product_subscription_tabs_item_sale_alignment',
				array(
					'label'          => __( 'Heading Alignment', 'prodigy-commerce' ),
					'type'           => Controls_Manager::SELECT,
					'default'        => 'flex-start',
					'tablet_default' => 'flex-start',
					'mobile_default' => 'flex-start',
					'options'        => array(
						'flex-start' => __( 'Left', 'prodigy-commerce' ),
						'center'     => __( 'Center', 'prodigy-commerce' ),
						'flex-end'   => __( 'Right', 'prodigy-commerce' ),
					),
					'selectors'      => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item .prodigy-main-radio' => 'justify-content: {{VALUE}}',
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_subscription_tabs_header',
				array(
					'label'     => __( 'Heading Background Color', 'prodigy-commerce' ),
					'type'      => Controls_Manager::HEADING,
					'separator' => 'before',
				)
			);

			$this->start_controls_tabs( 'modal_subscription_tabs_header' );

			$this->start_controls_tab(
				'modal_subscription_tabs_header_tab_normal',
				array(
					'label' => __( 'Normal', 'prodigy-commerce' ),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_header_background_color',
				array(
					'label'      => __( 'Background Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#ffffff',
					'selectors'  => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item:not(.active)' => 'background-color: {{VALUE}}',
					),
				)
			);

			$this->end_controls_tab();

			$this->start_controls_tab(
				'modal_subscription_tabs_header_tab_checked',
				array(
					'label' => __( 'Checked', 'prodigy-commerce' ),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_header_background_color_checked',
				array(
					'label'      => __( 'Background Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#2a3658',
					'selectors'  => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item.active' => 'background-color: {{VALUE}}',
					),
				)
			);

			$this->end_controls_tab();

			$this->end_controls_tabs();

			$this->add_group_control(
				Group_Control_Typography::get_type(),
				array(
					'name'           => 'prg_quick_view_modal_product_subscription_tabs_header_title_typography',
					'label'          => __( 'Header Typography', 'prodigy-commerce' ),
					'selector'       => '{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item .prodigy-main-radio__label',
					'fields_options' => array(
						'typography'     => array( 'default' => 'yes' ),
						'font_size'      => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 14,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 14,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 14,
							),
						),
						'font_weight'    => array(
							'default' => 400,
						),
						'line_height'    => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 24,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 24,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 24,
							),
						),
						'letter_spacing' => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 0,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 0,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 0,
							),
						),
						'word_spacing'   => array(
							'default'        => array(
								'unit' => 'em',
								'size' => 0,
							),
							'tablet_default' => array(
								'unit' => 'em',
								'size' => 0,
							),
							'mobile_default' => array(
								'unit' => 'em',
								'size' => 0,
							),
						),
					),
				)
			);

			$this->add_control(
				'modal_subscription_tabs_header_text',
				array(
					'label'     => __( 'Heading Text', 'prodigy-commerce' ),
					'type'      => Controls_Manager::HEADING,
					'separator' => 'before',
				)
			);

			$this->start_controls_tabs( 'modal_subscription_tabs_header_text_color' );

			$this->start_controls_tab(
				'modal_subscription_tabs_header_text_color_normal',
				array(
					'label' => __( 'Normal', 'prodigy-commerce' ),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_header_text_color',
				array(
					'label'      => __( 'Heading Text Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#2a3658',
					'selectors'  => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item:not(.active)' => 'color: {{VALUE}}',
					),
				)
			);

			$this->end_controls_tab();

			$this->start_controls_tab(
				'modal_subscription_tabs_header_text_color_checked',
				array(
					'label' => __( 'Checked', 'prodigy-commerce' ),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_header_text_color_checked',
				array(
					'label'      => __( 'Heading Text Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#ffffff',
					'selectors'  => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item.active' => 'color: {{VALUE}}',
					),
				)
			);

			$this->end_controls_tab();

			$this->end_controls_tabs();

			$this->add_control(
				'modal_subscription_tabs_main_border',
				array(
					'label'     => __( 'Main Border', 'prodigy-commerce' ),
					'type'      => Controls_Manager::HEADING,
					'separator' => 'before',
				)
			);

			$this->add_control(
				'prg_modal_subscription_tabs_main_border_type',
				array(
					'label'   => __( 'Border Type', 'prodigy-commerce' ),
					'type'    => Controls_Manager::SELECT,
					'default' => esc_attr( 'solid' ),
					'options' => array(
						'dotted' => esc_attr( 'dotted' ),
						'dashed' => esc_attr( 'dashed' ),
						'solid'  => esc_attr( 'solid' ),
						'double' => esc_attr( 'double' ),
						'groove' => esc_attr( 'groove' ),
						'ridge'  => esc_attr( 'ridge' ),
						'inset'  => esc_attr( 'inset' ),
						'outset' => esc_attr( 'outset' ),
						'none'   => esc_attr( 'none' ),
						'hidden' => esc_attr( 'hidden' ),
					),
					'{{WRAPPER}} .prodigy-subscriptions-tab__item.nav-link:not(.active)' => 'border-type: {{VALUE}}',
					'{{WRAPPER}} .prodigy-subscriptions-tab__item.nav-link:not(.active) + .prodigy-subscriptions-content .tab-pane' => 'border-type: {{VALUE}}',
				)
			);

			$this->start_controls_tabs( 'modal_subscription_tabs_main_border_color' );

			$this->start_controls_tab(
				'modal_subscription_tabs_main_border_color_normal',
				array(
					'label' => __( 'Normal', 'prodigy-commerce' ),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_main_border_color',
				array(
					'label'      => __( 'Border Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#bfc2cc',
					'condition'  => array(
						'prg_modal_subscription_tabs_main_border_type' => array(
							'dotted',
							'dashed',
							'solid',
							'double',
							'groove',
							'ridge',
							'inset',
							'outset',
							'hidden',
						),
					),
					'selectors'  => array(
						'{{WRAPPER}} .prodigy-subscriptions-tab__item.nav-link:not(.active)'                                            => 'border-color: {{VALUE}}',
						'{{WRAPPER}} .prodigy-subscriptions-tab__item.nav-link:not(.active) + .prodigy-subscriptions-content .tab-pane' => 'border-color: {{VALUE}}',
					),
				)
			);

			$this->end_controls_tab();

			$this->start_controls_tab(
				'modal_subscription_tabs_main_border_color_checked',
				array(
					'label' => __( 'Checked', 'prodigy-commerce' ),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_main_border_color_checked',
				array(
					'label'      => __( 'Checked Border Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#2a3658',
					'condition'  => array(
						'prg_modal_subscription_tabs_main_border_type' => array(
							'dotted',
							'dashed',
							'solid',
							'double',
							'groove',
							'ridge',
							'inset',
							'outset',
							'hidden',
						),
					),
					'selectors'  => array(
						'{{WRAPPER}} quick-view .prodigy-subscriptions-tab__item.nav-link.active'                                            => 'border-color: {{VALUE}}',
						'{{WRAPPER}} quick-view .prodigy-subscriptions-tab__item.nav-link.active + .prodigy-subscriptions-content .tab-pane' => 'border-color: {{VALUE}}',
					),
				)
			);

			$this->end_controls_tab();

			$this->end_controls_tabs();

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_item_border_width',
				array(
					'label'      => __( 'Border Width', 'prodigy-commerce' ),
					'type'       => Controls_Manager::DIMENSIONS,
					'size_units' => array( 'px', 'em' ),
					'default'    => array(
						'unit'     => 'px',
						'top'      => '1',
						'right'    => '1',
						'bottom'   => '1',
						'left'     => '1',
						'isLinked' => true,
					),
					'selectors'  => array(
						'{{WRAPPER}} quick-view .prodigy-subscriptions-tab__item.nav-link' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
						'{{WRAPPER}} quick-view .prodigy-subscriptions-content .tab-pane'  => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
					),
				)
			);

			// label

			$this->add_control(
				'prg_quick_view_modal_radio_button_style_tabs_radio',
				array(
					'label'     => __( 'Heading Radio Button', 'prodigy-commerce' ),
					'type'      => Controls_Manager::HEADING,
					'separator' => 'before',
				)
			);

			$this->start_controls_tabs( 'radio_button_style_tabs' );

			$this->start_controls_tab(
				'quick_view_modal_radio_button_style_tabs_normal',
				array(
					'label' => __( 'Normal', 'prodigy-commerce' ),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_radio_button_style_tabs_radio_color',
				array(
					'label'      => __( 'Radio Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#bfc2cc',
					'selectors'  => array(
						'{{WRAPPER}} .prodigy-subscriptions-tab__item.nav-link:not(.active) .prodigy-main-radio > .prodigy-main-radio__icon--off.icon-radio-off' => 'color: {{VALUE}}',
					),
				)
			);

			$this->end_controls_tab();

			$this->start_controls_tab(
				'quick_view_modal_radio_button_style_tabs_hover',
				array(
					'label' => __( 'Hover', 'prodigy-commerce' ),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_radio_button_style_tabs_radio_color_hover',
				array(
					'label'      => __( 'Radio Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#2a3658',
					'selectors'  => array(
						'{{WRAPPER}} .prodigy-subscriptions-tab__item.nav-link:not(.active) .prodigy-main-radio:hover > .prodigy-main-radio__icon--off.icon-radio-off' => 'color: {{VALUE}}',
						'{{WRAPPER}} .prodigy-subscriptions-tab__item.nav-link:not(.active) .prodigy-main-radio:hover > .prodigy-main-radio__label'                    => 'color: {{VALUE}}',
					),
				)
			);

			$this->end_controls_tab();

			$this->end_controls_tabs();

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_item_radio_button_active_color',
				array(
					'label'     => __( 'Active Radio Color', 'prodigy-commerce' ),
					'type'      => Controls_Manager::COLOR,
					'default'   => '#ffffff',
					'selectors' => array(
						'{{WRAPPER}} .prodigy-subscriptions-tab__item.nav-link.active .prodigy-main-radio > .prodigy-main-radio__icon--on.icon-radio-on' => 'color: {{VALUE}}',
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_title',
				array(
					'label'     => __( 'Tab Item Title', 'prodigy-commerce' ),
					'type'      => Controls_Manager::HEADING,
					'separator' => 'before',
				)
			);

			$this->add_group_control(
				Group_Control_Typography::get_type(),
				array(
					'name'           => 'prg_quick_view_modal_product_subscription_tabs_title_typography',
					'label'          => __( 'Typography', 'prodigy-commerce' ),
					'selector'       => '{{WRAPPER}} .prodigy-subscriptions-tab__item-title',
					'fields_options' => array(
						'typography'     => array( 'default' => 'yes' ),
						'font_size'      => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 14,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 14,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 14,
							),
						),
						'font_weight'    => array(
							'default' => 400,
						),
						'line_height'    => array(
							'default'        => array(
								'unit' => 'em',
								'size' => 1.1,
							),
							'tablet_default' => array(
								'unit' => 'em',
								'size' => 1.1,
							),
							'mobile_default' => array(
								'unit' => 'em',
								'size' => 1.1,
							),
						),
						'letter_spacing' => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 0,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 0,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 0,
							),
						),
						'word_spacing'   => array(
							'default'        => array(
								'unit' => 'em',
								'size' => 0,
							),
							'tablet_default' => array(
								'unit' => 'em',
								'size' => 0,
							),
							'mobile_default' => array(
								'unit' => 'em',
								'size' => 0,
							),
						),
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_title_color',
				array(
					'label'      => __( 'Text Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#bfc2cc',
					'selectors'  => array(
						'{{WRAPPER}} .prodigy-subscriptions-tab__item-title' => 'color: {{VALUE}}',
					),
				)
			);

			$this->add_responsive_control(
				'prg_quick_view_modal_product_subscription_tabs_margin_bottom',
				array(
					'label'          => __( 'Bottom Margin', 'prodigy-commerce' ),
					'type'           => Controls_Manager::SLIDER,
					'size_units'     => array( 'px', 'em' ),
					'default'        => array(
						'size' => 4,
						'unit' => 'px',
					),
					'tablet_default' => array(
						'size' => 4,
						'unit' => 'px',
					),
					'mobile_default' => array(
						'size' => 4,
						'unit' => 'px',
					),
					'selectors'      => array(
						'{{WRAPPER}} .prodigy-subscriptions-tab__item-title' => 'margin-bottom: {{SIZE}}{{UNIT}}',
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_item_regular_price',
				array(
					'label'     => __( 'Tab Item Regular Price', 'prodigy-commerce' ),
					'type'      => Controls_Manager::HEADING,
					'separator' => 'before',
				)
			);

			$this->add_group_control(
				Group_Control_Typography::get_type(),
				array(
					'name'           => 'prg_quick_view_modal_product_subscription_tabs_item_regular_price_typography',
					'label'          => __( 'Typography', 'prodigy-commerce' ),
					'selector'       => '{{WRAPPER}} .prodigy-subscriptions-tab__item-price',
					'fields_options' => array(
						'typography'     => array( 'default' => 'yes' ),
						'font_size'      => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 16,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 16,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 16,
							),
						),
						'font_weight'    => array(
							'default' => 700,
						),
						'line_height'    => array(
							'default'        => array(
								'unit' => 'em',
								'size' => 1.3,
							),
							'tablet_default' => array(
								'unit' => 'em',
								'size' => 1.3,
							),
							'mobile_default' => array(
								'unit' => 'em',
								'size' => 1.3,
							),
						),
						'letter_spacing' => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 0,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 0,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 0,
							),
						),
						'word_spacing'   => array(
							'default'        => array(
								'unit' => 'em',
								'size' => 0,
							),
							'tablet_default' => array(
								'unit' => 'em',
								'size' => 0,
							),
							'mobile_default' => array(
								'unit' => 'em',
								'size' => 0,
							),
						),
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_attributes_subscription_price_border_type',
				array(
					'label'     => __( 'Subscription Pice Border Type', 'prodigy-commerce' ),
					'type'      => Controls_Manager::SELECT,
					'default'   => 'solid',
					'options'   => array(
						'dotted' => esc_attr( 'dotted' ),
						'dashed' => esc_attr( 'dashed' ),
						'solid'  => esc_attr( 'solid' ),
						'double' => esc_attr( 'double' ),
						'groove' => esc_attr( 'groove' ),
						'ridge'  => esc_attr( 'ridge' ),
						'inset'  => esc_attr( 'inset' ),
						'outset' => esc_attr( 'outset' ),
						'none'   => esc_attr( 'none' ),
						'hidden' => esc_attr( 'hidden' ),
					),
					'selectors' => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item-wrap.prodigy-subscriptions-tab--price' => 'border-style: {{SIZE}}',
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_attributes_subscription_price_border_color',
				array(
					'label'      => __( 'Subscription Price Border Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#e9eaee',
					'condition'  => array(
						'prg_quick_view_modal_attributes_subscription_price_border_type' => array(
							'dotted',
							'dashed',
							'solid',
							'double',
							'groove',
							'ridge',
							'inset',
							'outset',
							'hidden',
						),
					),
					'selectors'  => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item-wrap.prodigy-subscriptions-tab--price' => 'border-color: {{VALUE}}',
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_attributes_subscription_price_border_width ',
				array(
					'label'      => __( 'Subscription Pice Border Width', 'prodigy-commerce' ),
					'type'       => Controls_Manager::DIMENSIONS,
					'size_units' => array( 'px', 'em' ),
					'default'    => array(
						'unit'     => 'px',
						'top'      => '0',
						'right'    => '0',
						'bottom'   => '1',
						'left'     => '0',
						'isLinked' => true,
					),
					'selectors'  => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item-wrap.prodigy-subscriptions-tab--price' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_attributes_add_subscription_price_border_radius',
				array(
					'label'      => __( 'Subscription Pice Border Radius', 'prodigy-commerce' ),
					'type'       => Controls_Manager::SLIDER,
					'size_units' => array( 'px', '%' ),
					'default'    => array(
						'size' => 0,
						'unit' => 'px',
					),
					'selectors'  => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item-wrap.prodigy-subscriptions-tab--price' => 'border-radius: {{SIZE}}{{UNIT}}',
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_item_regular_price_color',
				array(
					'label'      => __( 'Text Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#2a3658',
					'selectors'  => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item-price' => 'color: {{VALUE}}',
					),
				)
			);

			$this->add_responsive_control(
				'prg_quick_view_modal_product_subscription_tabs_item_regular_price_margin_right',
				array(
					'label'          => __( 'Margin Right', 'prodigy-commerce' ),
					'type'           => Controls_Manager::SLIDER,
					'size_units'     => array( 'px' . 'em' ),
					'default'        => array(
						'size' => 0,
						'unit' => 'px',
					),
					'tablet_default' => array(
						'size' => 0,
						'unit' => 'px',
					),
					'mobile_default' => array(
						'size' => 0,
						'unit' => 'px',
					),
					'selectors'      => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item-price' => 'margin-right: {{SIZE}}{{UNIT}}',
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_item_sale',
				array(
					'label'     => __( 'Tab Item Sale Price', 'prodigy-commerce' ),
					'type'      => Controls_Manager::HEADING,
					'separator' => 'before',
				)
			);

			$this->add_group_control(
				Group_Control_Typography::get_type(),
				array(
					'name'           => 'prg_quick_view_modal_product_subscription_tabs_item_sale_typography',
					'label'          => __( 'Typography', 'prodigy-commerce' ),
					'selector'       => '{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item-sale',
					'fields_options' => array(
						'typography'     => array( 'default' => 'yes' ),
						'font_size'      => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 16,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 16,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 16,
							),
						),
						'font_weight'    => array(
							'default' => 700,
						),
						'line_height'    => array(
							'default'        => array(
								'unit' => 'em',
								'size' => 1.3,
							),
							'tablet_default' => array(
								'unit' => 'em',
								'size' => 1.3,
							),
							'mobile_default' => array(
								'unit' => 'em',
								'size' => 1.3,
							),
						),
						'letter_spacing' => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 0,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 0,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 0,
							),
						),
						'word_spacing'   => array(
							'default'        => array(
								'unit' => 'em',
								'size' => 0,
							),
							'tablet_default' => array(
								'unit' => 'em',
								'size' => 0,
							),
							'mobile_default' => array(
								'unit' => 'em',
								'size' => 0,
							),
						),
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_item_sale_color',
				array(
					'label'      => __( 'Text Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#a6abbc',
					'selectors'  => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item-sale' => 'color: {{VALUE}}',
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_content_cell',
				array(
					'label'     => __( 'Tab Content Cell', 'prodigy-commerce' ),
					'type'      => Controls_Manager::HEADING,
					'separator' => 'before',
				)
			);

			$this->add_group_control(
				Group_Control_Typography::get_type(),
				array(
					'name'           => 'prg_quick_view_modal_product_subscription_tabs_content_cell_typography',
					'label'          => __( 'Typography', 'prodigy-commerce' ),
					'selector'       => '{{WRAPPER}} .quick-view .prodigy-subscriptions-content__table-cell .prodigy-subscriptions-content__table-cell-title',
					'fields_options' => array(
						'typography'     => array( 'default' => 'yes' ),
						'font_size'      => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 14,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 14,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 14,
							),
						),
						'font_weight'    => array(
							'default' => 400,
						),
						'line_height'    => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 24,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 24,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 24,
							),
						),
						'letter_spacing' => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 0,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 0,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 0,
							),
						),
						'word_spacing'   => array(
							'default'        => array(
								'unit' => 'em',
								'size' => 0,
							),
							'tablet_default' => array(
								'unit' => 'em',
								'size' => 0,
							),
							'mobile_default' => array(
								'unit' => 'em',
								'size' => 0,
							),
						),
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_content_cell_color',
				array(
					'label'      => __( 'Text Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#57617f',
					'selectors'  => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-content__table-cell .prodigy-subscriptions-content__table-cell-title' => 'color: {{VALUE}} !important',
					),
				)
			);

			$this->add_responsive_control(
				'prg_quick_view_modal_product_subscription_tabs_content_cell_padding_right',
				array(
					'label'          => __( 'Padding Right', 'prodigy-commerce' ),
					'type'           => Controls_Manager::SLIDER,
					'size_units'     => array( 'px' . 'em' ),
					'default'        => array(
						'size' => 8,
						'unit' => 'px',
					),
					'tablet_default' => array(
						'size' => 8,
						'unit' => 'px',
					),
					'mobile_default' => array(
						'size' => 8,
						'unit' => 'px',
					),
					'selectors'      => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-content__table-cell .prodigy-subscriptions-content__table-cell-title' => 'padding-right: {{SIZE}}{{UNIT}}',
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_content_radio',
				array(
					'label'     => __( 'Tab Content Radio Field', 'prodigy-commerce' ),
					'type'      => Controls_Manager::HEADING,
					'separator' => 'before',
				)
			);

			$this->add_group_control(
				Group_Control_Typography::get_type(),
				array(
					'name'           => 'prg_quick_view_modal_product_subscription_tabs_content_radio_typography',
					'label'          => __( 'Typography', 'prodigy-commerce' ),
					'selector'       => '{{WRAPPER}} .quick-view .prodigy-subscriptions-content__table .prodigy-main-radio__label',
					'fields_options' => array(
						'typography'     => array( 'default' => 'yes' ),
						'font_size'      => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 14,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 14,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 14,
							),
						),
						'font_weight'    => array(
							'default' => 400,
						),
						'line_height'    => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 24,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 24,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 24,
							),
						),
						'letter_spacing' => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 0,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 0,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 0,
							),
						),
						'word_spacing'   => array(
							'default'        => array(
								'unit' => 'em',
								'size' => 0,
							),
							'tablet_default' => array(
								'unit' => 'em',
								'size' => 0,
							),
							'mobile_default' => array(
								'unit' => 'em',
								'size' => 0,
							),
						),
					),
				)
			);

			$this->start_controls_tabs( 'quick_view_modal_subscription_tabs_radio_tabs' );

			$this->start_controls_tab(
				'quick_view_modal_subscription_tabs_radio_tab_normal',
				array(
					'label' => __( 'Normal', 'prodigy-commerce' ),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_content_radio_color',
				array(
					'label'      => __( 'Radio Field Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#a6abbc',
					'selectors'  => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-content__table .prodigy-main-radio__label'                                                       => 'color: {{VALUE}}',
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-content__table .prodigy-main-radio__icon'                                                        => 'color: {{VALUE}}',
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-tab__item.nav-link:not(.active)+.prodigy-subscriptions-content .tab-pane .prodigy-main-radio * ' => 'color: {{VALUE}}',
					),
				)
			);

			$this->end_controls_tab();

			$this->start_controls_tab(
				'quick_view_modal_subscription_tabs_radio_tab_checked',
				array(
					'label' => __( 'Checked', 'prodigy-commerce' ),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_tabs_content_radio_color_checked',
				array(
					'label'      => __( 'Radio Field Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#2a3658',
					'selectors'  => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-content__table .prodigy-main-radio__field:checked ~ .prodigy-main-radio__label' => 'color: {{VALUE}}',
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-content__table .prodigy-main-radio__field:checked ~ .prodigy-main-radio__icon'  => 'color: {{VALUE}}',
					),
				)
			);

			$this->end_controls_tab();

			$this->end_controls_tabs();

			$this->add_responsive_control(
				'prg_quick_view_modal_product_subscription_tabs_content_cell_margin_bottom',
				array(
					'label'          => __( 'Margin Bottom', 'prodigy-commerce' ),
					'type'           => Controls_Manager::SLIDER,
					'size_units'     => array( 'px', 'em' ),
					'default'        => array(
						'size' => 8,
						'unit' => 'px',
					),
					'tablet_default' => array(
						'size' => 8,
						'unit' => 'px',
					),
					'mobile_default' => array(
						'size' => 8,
						'unit' => 'px',
					),
					'selectors'      => array(
						'{{WRAPPER}} .quick-view .prodigy-subscriptions-content__table .prodigy-main-radio:not(:last-child)' => 'margin-bottom: {{SIZE}}{{UNIT}}',
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription',
				array(
					'label'     => __( 'Subscriptions Alert', 'prodigy-commerce' ),
					'type'      => Controls_Manager::HEADING,
					'separator' => 'before',
				)
			);

			$this->add_group_control(
				Group_Control_Typography::get_type(),
				array(
					'name'           => 'prg_quick_view_modal_product_subscription_alert_typography',
					'label'          => __( 'Typography', 'prodigy-commerce' ),
					'selector'       => '{{WRAPPER}} .prodigy-subscription-alert .prodigy-cart-dropdown__alert-txt',
					'fields_options' => array(
						'typography'     => array( 'default' => 'yes' ),
						'font_size'      => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 14,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 14,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 14,
							),
						),
						'font_weight'    => array(
							'default' => 400,
						),
						'line_height'    => array(
							'default'        => array(
								'unit' => 'em',
								'size' => 1.3,
							),
							'tablet_default' => array(
								'unit' => 'em',
								'size' => 1.3,
							),
							'mobile_default' => array(
								'unit' => 'em',
								'size' => 1.3,
							),
						),
						'letter_spacing' => array(
							'default'        => array(
								'unit' => 'px',
								'size' => 0,
							),
							'tablet_default' => array(
								'unit' => 'px',
								'size' => 0,
							),
							'mobile_default' => array(
								'unit' => 'px',
								'size' => 0,
							),
						),
						'word_spacing'   => array(
							'default'        => array(
								'unit' => 'em',
								'size' => 0,
							),
							'tablet_default' => array(
								'unit' => 'em',
								'size' => 0,
							),
							'mobile_default' => array(
								'unit' => 'em',
								'size' => 0,
							),
						),
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_alert_text_color',
				array(
					'label'      => __( 'Text Color', 'prodigy-commerce' ),
					'type'       => Controls_Manager::COLOR,
					'input_type' => 'color',
					'default'    => '#2a3658',
					'selectors'  => array(
						'{{WRAPPER}} .prodigy-subscription-alert' => 'color: {{VALUE}}',
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_alert_bg_color',
				array(
					'label'     => __( 'Background Color', 'prodigy-commerce' ),
					'type'      => Controls_Manager::COLOR,
					'default'   => '#e9eaee',
					'selectors' => array(
						'{{WRAPPER}} .prodigy-subscription-alert' => 'background-color: {{VALUE}}',
					),
				)
			);

			$this->add_control(
				'prg_quick_view_modal_product_subscription_alert_icon_position',
				array(
					'label'   => __( 'Icon Position', 'prodigy-commerce' ),
					'type'    => Controls_Manager::SELECT,
					'default' => 'left',
					'options' => array(
						'left'  => __( 'Before', 'prodigy-commerce' ),
						'right' => __( 'After', 'prodigy-commerce' ),
					),
				)
			);

			$this->add_responsive_control(
				'prg_quick_view_modal_style_search_icon_spacing',
				array(
					'label'          => __( 'Icon Spacing', 'prodigy-commerce' ),
					'type'           => Controls_Manager::SLIDER,
					'size_units'     => array( 'px', 'em' ),
					'default'        => array(
						'size' => 8,
						'unit' => 'px',
					),
					'tablet_default' => array(
						'size' => 8,
						'unit' => 'px',
					),
					'mobile_default' => array(
						'size' => 8,
						'unit' => 'px',
					),
					'selectors'      => array(
						'{{WRAPPER}} .prodigy-subscription-alert' => 'column-gap: {{SIZE}}{{UNIT}}',
					),
				)
			);
		}

		/*
		 * Add To Cart Button
		 */
		$this->add_control(
			'prg_quick_view_modal_add_to_cart_buttons',
			array(
				'label'     => __( 'Add to Cart Buttons', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart',
			array(
				'label'     => __( 'Button (Add to Cart)', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_quick_view_modal_add_to_cart_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product__values-submit',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 600,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.3,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.3,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.3,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'none',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product__values-submit' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart_border_width ',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_quick_view_modal_add_to_cart_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__values-submit' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__values-submit' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_quick_view_modal_add_to_cart_padding',
			array(
				'label'          => __( 'Padding', 'prodigy-commerce' ),
				'type'           => Controls_Manager::DIMENSIONS,
				'size_units'     => array( 'px', 'em' ),
				'range'          => array(
					'px' => array(
						'min'  => 0,
						'max'  => 50,
						'step' => 1,
					),
				),
				'default'        => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '16',
					'bottom'   => '0',
					'left'     => '16',
					'isLinked' => false,
				),
				'tablet_default' => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '16',
					'bottom'   => '0',
					'left'     => '16',
					'isLinked' => false,
				),
				'mobile_default' => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '8',
					'bottom'   => '0',
					'left'     => '8',
					'isLinked' => false,
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__values-submit' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_quick_view_modal_add_to_cart_margin',
			array(
				'label'          => __( 'Margin Left', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 0,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__values-submit' => 'margin-left: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart_transition',
			array(
				'label'      => __( 'Transition Duration', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'range'      => array(
					'px' => array(
						'min'  => 0,
						'max'  => 1,
						'step' => 0.1,
					),
				),
				'default'    => array(
					'unit' => 'px',
					'size' => 0.2,
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__values-submit' => 'transition-duration: {{SIZE}}s',
				),
			)
		);

		$this->start_controls_tabs( 'quick_view_modal_add_to_cart_style_tabs' );

		$this->start_controls_tab(
			'quick_view_modal_add_to_cart_style_tabs_normal',
			array(
				'label' => __( 'Normal', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart_text_color',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__values-submit' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart_background_color',
			array(
				'label'     => __( 'Background Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => '#2a3658',
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product__values-submit' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart_border_color',
			array(
				'label'     => __( 'Border Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => 'transparent',
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product__values-submit' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'quick_view_modal_add_to_cart_style_tabs_hover',
			array(
				'label' => __( 'Hover', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart_text_color_hover',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__values-submit:hover' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart_background_color_hover',
			array(
				'label'     => __( 'Background Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => '#ffcb27',
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product__values-submit:hover' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart_border_color_hover',
			array(
				'label'     => __( 'Border Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => 'transparent',
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product__values-submit:hover' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'quick_view_modal_add_to_cart_style_tabs_disabled',
			array(
				'label' => __( 'Disabled', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart_text_color_disabled',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#49463D',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__values-submit:disabled' => 'color: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart_background_color_disabled',
			array(
				'label'     => __( 'Background Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => '#E9EAEE',
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product__values-submit:disabled' => 'background-color: {{VALUE}} !important;',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart_border_color_disabled',
			array(
				'label'     => __( 'Border Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => 'transparent',
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product__values-submit:disabled' => 'border-color: {{VALUE}} !important',
				),
			)
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		/*
		 * View Cart Button
		 */
		$this->add_control(
			'prg_quick_view_modal_view_cart',
			array(
				'label' => __( 'Button (View Cart)', 'prodigy-commerce' ),
				'type'  => Controls_Manager::HEADING,
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_quick_view_modal_view_cart_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-cart__view-cart-link',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 600,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.3,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.3,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.3,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_view_cart_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'solid',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-cart__view-cart-link' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_view_cart_border_width ',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '1',
					'right'    => '1',
					'bottom'   => '1',
					'left'     => '1',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_quick_view_modal_add_to_cart_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-cart__view-cart-link' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_view_cart_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-cart__view-cart-link' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_quick_view_modal_view_cart_padding',
			array(
				'label'          => __( 'Padding', 'prodigy-commerce' ),
				'type'           => Controls_Manager::DIMENSIONS,
				'size_units'     => array( 'px', 'em' ),
				'range'          => array(
					'px' => array(
						'min'  => 0,
						'max'  => 50,
						'step' => 1,
					),
				),
				'default'        => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '16',
					'bottom'   => '0',
					'left'     => '16',
					'isLinked' => false,
				),
				'tablet_default' => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '16',
					'bottom'   => '0',
					'left'     => '16',
					'isLinked' => false,
				),
				'mobile_default' => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '8',
					'bottom'   => '0',
					'left'     => '8',
					'isLinked' => false,
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-cart__view-cart-link' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_quick_view_modal_view_cart_margin',
			array(
				'label'          => __( 'Margin Left', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 0,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-cart__view-cart-link' => 'margin-left: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_view_cart_transition',
			array(
				'label'      => __( 'Transition Duration', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'range'      => array(
					'px' => array(
						'min'  => 0,
						'max'  => 1,
						'step' => 0.1,
					),
				),
				'default'    => array(
					'unit' => 'px',
					'size' => 0.2,
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-cart__view-cart-link' => 'transition-duration: {{SIZE}}s',
				),
			)
		);

		$this->start_controls_tabs( 'quick_view_modal_view_cart_style_tabs' );

		$this->start_controls_tab(
			'quick_view_modal_view_cart_style_tabs_normal',
			array(
				'label' => __( 'Normal', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_view_cart_text_color',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-cart__view-cart-link' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_view_cart_background_color',
			array(
				'label'     => __( 'Background Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => 'transparent',
				'selectors' => array(
					'{{WRAPPER}} .prodigy-cart__view-cart-link' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_view_cart_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-cart__view-cart-link' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'prg_quick_view_modal_view_cart_style_tabs_hover',
			array(
				'label' => __( 'Hover', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_view_cart_text_color_hover',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-cart__view-cart-link:hover' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_view_cart_background_color_hover',
			array(
				'label'     => __( 'Background Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => '#2a3658',
				'selectors' => array(
					'{{WRAPPER}} .prodigy-cart__view-cart-link:hover' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_view_cart_border_color_hover',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-cart__view-cart-link:hover' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		/*
		 * Quantity
		 */
		$this->add_control(
			'prg_quick_view_modal_quantity',
			array(
				'label' => __( 'Quantity', 'prodigy-commerce' ),
				'type'  => Controls_Manager::HEADING,
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_count',
			array(
				'label'     => __( 'Count', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_quick_view_modal_quantity_count_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} input.prodigy-counter__total',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_count_width',
			array(
				'label'      => __( 'Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'default'    => array(
					'size' => 60,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} input.prodigy-counter__total' => 'width: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_count_height',
			array(
				'label'      => __( 'Height', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'default'    => array(
					'size' => 40,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} input.prodigy-counter__total' => 'height: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_count_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => esc_attr( 'solid' ),
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} input.prodigy-counter__total' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_count_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'range'      => array(
					'px' => array(
						'min'  => 0,
						'max'  => 50,
						'step' => 1,
					),
				),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '1',
					'right'    => '0',
					'bottom'   => '1',
					'left'     => '0',
					'isLinked' => false,
				),
				'condition'  => array(
					'prg_quick_view_modal_quantity_count_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} input.prodigy-counter__total' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_count_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} input.prodigy-counter__total' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->start_controls_tabs( 'quick_view_modal_count_style_tabs' );

		$this->start_controls_tab(
			'quick_view_modal_count_style_tabs_normal',
			array(
				'label' => __( 'Normal', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_count_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} input.prodigy-counter__total' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_count_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} input.prodigy-counter__total' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_count_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#bfc2cc',
				'condition'  => array(
					'prg_quick_view_modal_quantity_count_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} input.prodigy-counter__total' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'quick_view_modal_count_style_tabs_focus',
			array(
				'label' => __( 'Focus', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_count_color_focus',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} input.prodigy-counter__total:focus' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_count_bg_color_focus',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} input.prodigy-counter__total:focus' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_count_border_color_focus',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'condition'  => array(
					'prg_quick_view_modal_quantity_count_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} input.prodigy-counter__total:focus' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->add_control(
			'prg_quick_view_modal_quantity_btns',
			array(
				'label'     => __( 'Counter Buttons', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_quick_view_modal_quantity_btns_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} button.prodigy-main-button--counter',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 600,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.3,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.3,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.3,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_btns_width',
			array(
				'label'      => __( 'Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'default'    => array(
					'size' => 34,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} button.prodigy-main-button--counter' => 'width: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_btns_height',
			array(
				'label'      => __( 'Height', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'default'    => array(
					'size' => 40,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} button.prodigy-main-button--counter' => 'height: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_btns_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'none',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} button.prodigy-main-button--counter' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_btns_border_width ',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'unit'     => 'px',
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_quick_view_modal_quantity_btns_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} button.prodigy-main-button--counter' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_btns_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} button.prodigy-main-button--counter' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_btns_transition',
			array(
				'label'      => __( 'Transition Duration', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'range'      => array(
					'px' => array(
						'min'  => 0,
						'max'  => 1,
						'step' => 0.1,
					),
				),
				'default'    => array(
					'unit' => 'px',
					'size' => 0.2,
				),
				'selectors'  => array(
					'{{WRAPPER}} button.prodigy-main-button--counter' => 'transition-duration: {{SIZE}}s',
				),
			)
		);

		$this->start_controls_tabs( 'quick_view_modal_counter_btns_style_tabs' );

		$this->start_controls_tab(
			'quick_view_modal_counter_btns_style_tabs_normal',
			array(
				'label' => __( 'Normal', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_btns_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} button.prodigy-main-button--counter' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_btns_bg_color',
			array(
				'label'     => __( 'Background Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => '#bfc2cc',
				'selectors' => array(
					'{{WRAPPER}} button.prodigy-main-button--counter' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_btns_border_color',
			array(
				'label'     => __( 'Border Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'condition' => array(
					'prg_quick_view_modal_quantity_btns_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors' => array(
					'{{WRAPPER}} button.prodigy-main-button--counter' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'quick_view_modal_counter_btns_style_tabs_hover',
			array(
				'label' => __( 'Hover', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_btns_color_hover',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} button.prodigy-main-button--counter:hover' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_btns_bg_color_hover',
			array(
				'label'     => __( 'Background Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => '#ffcb27',
				'selectors' => array(
					'{{WRAPPER}} button.prodigy-main-button--counter:hover' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_btns_border_color_hover',
			array(
				'label'     => __( 'Border Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => '#808080',
				'selectors' => array(
					'{{WRAPPER}} button.prodigy-main-button--counter:hover' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'quick_view_modal_counter_btns_style_tabs_disabled',
			array(
				'label' => __( 'Disabled', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_btns_bg_color_disabled',
			array(
				'label'     => __( 'Background Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => '#808080',
				'selectors' => array(
					'{{WRAPPER}} button.prodigy-main-button--counter:disabled' => 'background-color: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_quantity_btns_border_color_disabled',
			array(
				'label'     => __( 'Border Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => '#808080',
				'selectors' => array(
					'{{WRAPPER}} button.prodigy-main-button--counter:disabled' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		/*
		 * Confirmation message
		 */
		$this->add_control(
			'prg_quick_view_modal_product_subscription_confirmation_message',
			array(
				'label'     => __( 'Confirmation Message', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_quick_view_modal_product_subscription_confirmation_message_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-cart-dropdown__alert-added .prodigy-cart-dropdown__alert-txt',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.1,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.1,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.1,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_product_subscription_confirmation_message_text_color',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-cart-dropdown__alert-added' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_product_subscription_confirmation_message_background_color',
			array(
				'label'     => __( 'Background Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => '#93c3344d',
				'selectors' => array(
					'{{WRAPPER}} .prodigy-cart-dropdown__alert-added' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_product_subscription_confirmation_message_icon_position',
			array(
				'label'   => __( 'Icon Position', 'prodigy-commerce' ),
				'type'    => Controls_Manager::SELECT,
				'default' => 'left',
				'options' => array(
					'left'  => __( 'Before', 'prodigy-commerce' ),
					'right' => __( 'After', 'prodigy-commerce' ),
				),
			)
		);

		$this->add_responsive_control(
			'prg_quick_view_modal_product_subscription_confirmation_message_icon_spacing',
			array(
				'label'          => __( 'Icon Spacing', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 8,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 8,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 8,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-cart-dropdown__alert-added' => 'column-gap: {{SIZE}}{{UNIT}}',
				),
			)
		);

		/*
		 * Error message
		 */
		$this->add_control(
			'prg_quick_view_modal_product_error_message',
			array(
				'label'     => __( 'Error Message', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_quick_view_modal_product_error_message_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-cart-dropdown__alert-error .prodigy-cart-dropdown__alert-txt',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.1,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.1,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.1,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_product_error_message_text_color',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-cart-dropdown__alert-error' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_product_error_message_background_color',
			array(
				'label'     => __( 'Background Color', 'prodigy-commerce' ),
				'type'      => Controls_Manager::COLOR,
				'default'   => '#93c3344d',
				'selectors' => array(
					'{{WRAPPER}} .prodigy-cart-dropdown__alert-error' => 'background-color: {{VALUE}}',
				),
			)
		);

		/*
		 * Price
		 */
		$this->add_control(
			'prg_quick_view_modal_price_control',
			array(
				'label'     => __( 'Price', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_quick_view_modal_add_to_cart_label_price_typography',
				'label'          => __( 'Price Label Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product__prop-wrap:first-child .prodigy-product__prop-text',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_add_to_cart_label_price_color',
			array(
				'label'      => __( 'Price Label Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#a6abbc',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__prop-wrap:first-child .prodigy-product__prop-text' => 'color: {{VALUE}} !important',
				),
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_quick_view_modal_label_price_color_default',
				'label'          => __( 'Default Text Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product__prop-txt-price.prodigy-product__prop-txt-price-default',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_label_price_color_default',
			array(
				'label'      => __( 'Default Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__prop-txt-price.prodigy-product__prop-txt-price-default' => 'color: {{VALUE}} !important',
				),
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_quick_view_modal_price_control_regular_price_typography',
				'label'          => __( 'Value Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product__price-wrapper',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 800,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_price_control_regular_price_color',
			array(
				'label'      => __( 'Value Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__price-wrapper' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_quick_view_modal_price_control_regular_price_margin',
			array(
				'label'          => __( 'Price Left Margin', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px' ),
				'default'        => array(
					'size' => 0,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__price-wrapper'          => 'margin-left: {{SIZE}}{{UNIT}}',
					'{{WRAPPER}} .prodigy-product__prop-txt-price-default' => 'margin-left: {{SIZE}}{{UNIT}}',
				),
			)
		);

		/*
		 * Stock
		 */
		$this->add_control(
			'prg_quick_view_modal_stock_control',
			array(
				'label'     => __( 'Stock', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_quick_view_modal_stock_control_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product__stock, .prodigy-product__prop-txt-aval.prodigy-product__prop-default-info',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_stock_control__color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__stock' => 'color: {{VALUE}} !important',
					'{{WRAPPER}} .prodigy-product__prop-txt-aval' => 'color: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_stock_control_label_color',
			array(
				'label'      => __( 'Label Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#a6abbc',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__prop-wrap:nth-child(2) .prodigy-product__prop-text' => 'color: {{VALUE}} !important',
				),
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_quick_view_modal_stock_control_label_typography',
				'label'          => __( 'Label Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product__prop-wrap:nth-child(2) .prodigy-product__prop-text',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		/*
		 * QUICK MODAL PRODUCTS META
		 */
		$this->add_control(
			'prg_quick_view_modal_products_meta_control',
			array(
				'label'     => __( 'Products Meta', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_control(
			'prg_quick_view_modal_label_control',
			array(
				'label'     => __( 'Label', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_quick_view_modal_label_control_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product__tags-label',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_label_control__color',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#a6abbc',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__tags-label' => 'color: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_value_control',
			array(
				'label'     => __( 'Value', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_control(
			'prg_quick_view_modal_sku_control',
			array(
				'label' => __( 'SKU', 'prodigy-commerce' ),
				'type'  => Controls_Manager::HEADING,
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_quick_view_modal_sku_control_value_typography',
				'label'          => __( 'Value Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .product_sku .prodigy-product__tags-text',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_sku_control_value_color',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .product_sku .prodigy-product__tags-text' => 'color: {{VALUE}} !important',
				),
			)
		);

		/*
		 * QUICK MODAL TAGS/CATEGORIES
		 */
		$this->add_control(
			'prg_quick_view_modal_tags_control',
			array(
				'label'     => __( 'Tags/Categories', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_quick_view_modal_tags_control_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product__tags-text:not(.product_sku_value)',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_tags_control__color',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#0170b9',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__tags-text a' => 'color: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_tags_control_value_color_hover',
			array(
				'label'      => __( 'Text Color Hover', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__tags-text a:hover' => 'color: {{VALUE}} !important',
				),
			)
		);

		$this->add_responsive_control(
			'prg_quick_view_modal_tags_control_value_margin',
			array(
				'label'          => __( 'Left Margin', 'prodigy-commerce' ),
				'type'           => \Elementor\Controls_Manager::SLIDER,
				'size_units'     => array( 'px' ),
				'default'        => array(
					'size' => 4,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 4,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 4,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product__tags-text' => 'margin-left: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_tags_control_divider',
			array(
				'label'     => __( 'Divider', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_control(
			'prg_quick_view_modal_tags_link_control_border_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#e9eaee',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__prop-wrap' => 'border-top-color: {{VALUE}} !important',
					'{{WRAPPER}} .prodigy-product__tags-item' => 'border-top-color: {{VALUE}} !important',
				),
			)
		);

		$this->add_control(
			'prg_quick_view_modal_tags_link_control_border_divider_width',
			array(
				'label'      => __( 'Width', 'prodigy-commerce' ),
				'type'       => \Elementor\Controls_Manager::SLIDER,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'size' => 1,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product__prop-wrap' => 'border-top-width: {{SIZE}}{{UNIT}} !important',
					'{{WRAPPER}} .prodigy-product__tags-item' => 'border-top-width: {{SIZE}}{{UNIT}} !important',
				),
			)
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'prg_style_archive_products_box',
			array(
				'label' => __( 'Box', 'prodigy-commerce' ),
				'tab'   => Controls_Manager::TAB_STYLE,
			)
		);

		$this->add_control(
			'prg_style_archive_products_box_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'none',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product-list__item-container' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_box_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'unit'     => 'px',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_style_archive_products_box_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-container' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_box_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-container' => 'border-radius: {{SIZE}}{{UNIT}}',
				),

			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_box_padding',
			array(
				'label'          => __( 'Padding', 'prodigy-commerce' ),
				'type'           => Controls_Manager::DIMENSIONS,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'unit'     => 'px',
					'isLinked' => true,
				),
				'tablet_default' => array(
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'unit'     => 'px',
					'isLinked' => true,
				),
				'mobile_default' => array(
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'unit'     => 'px',
					'isLinked' => true,
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-container' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->start_controls_tabs( 'prg_style_archive_products_box_tabs' );

		$this->start_controls_tab(
			'prg_style_archive_products_box_normal',
			array(
				'label' => __( 'Normal', 'prodigy-commerce' ),
			)
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			array(
				'label'    => __( 'Box Shadow', 'prodigy-commerce' ),
				'name'     => 'prg_style_archive_products_box_shadow',
				'selector' => '{{WRAPPER}} .prodigy-product-list__item-container',
			)
		);

		$this->add_control(
			'prg_style_archive_products_box_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-container' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_box_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'condition'  => array(
					'prg_style_archive_products_box_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-container' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'prg_style_archive_products_box_hover',
			array(
				'label' => __( 'Hover', 'prodigy-commerce' ),
			)
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			array(
				'label'    => __( 'Box Shadow', 'prodigy-commerce' ),
				'name'     => 'prg_style_archive_products_box_shadow_hover',
				'selector' => '{{WRAPPER}} .prodigy-product-list__item-container:hover',
			)
		);

		$this->add_control(
			'prg_style_archive_products_box_bg_color_hover',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-container:hover' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_box_border_color_hover',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'condition'  => array(
					'prg_style_archive_products_box_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-container:hover' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();

		$this->start_controls_section(
			'prg_style_archive_products_image',
			array(
				'label' => __( 'Image', 'prodigy-commerce' ),
				'tab'   => Controls_Manager::TAB_STYLE,
			)
		);

		$this->add_control(
			'prg_style_archive_products_image_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'none',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product-list__link-wrp' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_image_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'unit'     => 'px',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_style_archive_products_image_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__link-wrp' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_image_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#d9dbe1',
				'condition'  => array(
					'prg_style_archive_products_image_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__link-wrp' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_image_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => '0',
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__link-wrp' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_image_spacing',
			array(
				'label'          => __( 'Spacing', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'description'    => __( 'Between bottom of image and text below', 'prodigy-commerce' ),
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 16,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 16,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 16,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__link-wrp' => 'margin-bottom: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_image_aspect_ratio',
			array(
				'label'     => __( 'Aspect Ratio', 'prodigy-commerce' ),
				'type'      => Controls_Manager::IMAGE_DIMENSIONS,
				'default'   => array(
					'width'  => 3,
					'height' => 4,
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product-list__link-wrp' => 'padding-top: calc(100% * {{HEIGHT}} / {{WIDTH}})',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_image_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => 'transparent',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__link-wrp' => 'background-color: {{VALUE}} !important',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_image_scale',
			array(
				'label'          => __( 'Scale', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px' ),
				'range'          => array(
					'px' => array(
						'min'  => 0.1,
						'max'  => 5,
						'step' => 0.05,
					),
				),
				'default'        => array(
					'size' => 1,
					'unit' => '',
				),
				'tablet_default' => array(
					'size' => 1,
					'unit' => '',
				),
				'mobile_default' => array(
					'size' => 1,
					'unit' => '',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-preview svg' => 'transform: scale({{SIZE}})',
				),
			)
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'prg_style_archive_products_category',
			array(
				'label'     => __( 'Category', 'prodigy-commerce' ),
				'tab'       => Controls_Manager::TAB_STYLE,
				'condition' => array(
					'prg_content_archive_products_content_category' => 'yes',
				),
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_archive_products_category_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product-list__item-category',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 12,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 12,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 12,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_category_color',
			array(
				'label'      => __( 'Category Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#a6abbc',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-category' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_category_spacing',
			array(
				'label'          => __( 'Spacing', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'description'    => __( 'Between bottom of category and title', 'prodigy-commerce' ),
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 4,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 4,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 4,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-category' => 'margin-bottom: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'prg_style_archive_products_title',
			array(
				'label' => __( 'Title', 'prodigy-commerce' ),
				'tab'   => Controls_Manager::TAB_STYLE,
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_archive_products_title_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product-list__item-title a',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.4,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.4,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.4,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->start_controls_tabs( 'title_style_tabs' );

		$this->start_controls_tab(
			'title_style_tab_normal',
			array(
				'label' => __( 'Normal', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_style_archive_products_title_color',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#0170b9',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-title a' => 'color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'title_style_tab_hover',
			array(
				'label' => __( 'Hover', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_style_archive_products_title_color_hover',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-title a:hover' => 'color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->add_responsive_control(
			'prg_style_archive_products_title_spacing',
			array(
				'label'          => __( 'Spacing', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'description'    => __( 'Between bottom of title and star rating', 'prodigy-commerce' ),
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 8,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 8,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 8,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-title' => 'margin-bottom: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'prg_style_archive_products_rating',
			array(
				'label'     => __( 'Rating', 'prodigy-commerce' ),
				'tab'       => Controls_Manager::TAB_STYLE,
				'condition' => array(
					'prg_content_archive_products_content_rating' => 'yes',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_rating_star_color',
			array(
				'label'      => __( 'Star Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffcb27',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-rating .prodigy-star-rating__item' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_rating_empty_star_color',
			array(
				'label'      => __( 'Empty Star Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#e5e5e5',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-rating .prodigy-star-rating:before' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_rating_star_size',
			array(
				'label'          => __( 'Star size', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 14,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 14,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 14,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-rating .prodigy-star-rating'              => 'width: calc({{SIZE}}{{UNIT}} * 5); height: {{SIZE}}{{UNIT}}',
					'{{WRAPPER}} .prodigy-product-list__item-rating .prodigy-star-rating:before'       => 'font-size: {{SIZE}}{{UNIT}}',
					'{{WRAPPER}} .prodigy-product-list__item-rating .prodigy-star-rating__item'        => 'height: {{SIZE}}{{UNIT}}',
					'{{WRAPPER}} .prodigy-product-list__item-rating .prodigy-star-rating__item:before' => 'font-size: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_rating_spacing',
			array(
				'label'          => __( 'Spacing', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'description'    => __( 'Between bottom of rating and price', 'prodigy-commerce' ),
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 8,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 8,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 8,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-rating' => 'margin-bottom: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'prg_style_archive_products_price',
			array(
				'label' => __( 'Price', 'prodigy-commerce' ),
				'tab'   => Controls_Manager::TAB_STYLE,
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_archive_products_price_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product-list__item-price',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 15,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 15,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 15,
						),
					),
					'font_weight'    => array(
						'default' => 600,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_price_color',
			array(
				'label'      => __( 'Price Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-price' => 'color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'prg_style_archive_products_stock',
			array(
				'label'     => __( 'Stock Badge', 'prodigy-commerce' ),
				'tab'       => Controls_Manager::TAB_STYLE,
				'condition' => array(
					'prg_content_archive_products_content_stock_label_content' => 'yes',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_stock_position',
			array(
				'label'          => __( 'Position', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SELECT,
				'default'        => 'static',
				'tablet_default' => 'static',
				'mobile_default' => 'static',
				'options'        => array(
					'static'   => __( 'Static', 'prodigy-commerce' ),
					'absolute' => __( 'Absolute', 'prodigy-commerce' ),
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-title-label' => 'position: {{VALUE}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_stock_position_vertical_distance',
			array(
				'label'          => __( 'Position Vertical Distance', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px', '%' ),
				'default'        => array(
					'size' => 0,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'range'          => array(
					'px' => array(
						'min' => -1000,
						'max' => 1000,
					),
					'%'  => array(
						'min' => -100,
						'max' => 100,
					),
				),
				'condition'      => array(
					'prg_style_archive_products_stock_position' => 'absolute',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-title-label--absolute' => 'top: {{SIZE}}{{UNIT}};display: inline-block !important;',
					'{{WRAPPER}} .prodigy-product-list__item-title .prodigy-product-list__item-title-label' => 'display: none;',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_stock_position_horizontal_distance',
			array(
				'label'          => __( 'Position Horizontal Distance', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px', '%' ),
				'default'        => array(
					'size' => 0,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'range'          => array(
					'px' => array(
						'min' => -1000,
						'max' => 1000,
					),
					'%'  => array(
						'min' => -100,
						'max' => 100,
					),
				),
				'condition'      => array(
					'prg_style_archive_products_stock_position' => 'absolute',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-title-label--absolute' => 'left: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_stock_padding',
			array(
				'label'          => __( 'Padding', 'prodigy-commerce' ),
				'type'           => Controls_Manager::DIMENSIONS,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'top'      => '3',
					'right'    => '6',
					'bottom'   => '3',
					'left'     => '6',
					'unit'     => 'px',
					'isLinked' => false,
				),
				'tablet_default' => array(
					'top'      => '3',
					'right'    => '6',
					'bottom'   => '3',
					'left'     => '6',
					'unit'     => 'px',
					'isLinked' => false,
				),
				'mobile_default' => array(
					'top'      => '3',
					'right'    => '6',
					'bottom'   => '3',
					'left'     => '6',
					'unit'     => 'px',
					'isLinked' => false,
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-title-label' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_stock_margin_right',
			array(
				'label'          => __( 'Right Margin', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'range'          => array(
					'px' => array(
						'min'  => 0,
						'max'  => 100,
						'step' => 1,
					),
					'%'  => array(
						'min'  => 0,
						'max'  => 100,
						'step' => 1,
					),
				),
				'default'        => array(
					'size' => 0,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-title-label' => 'margin-right: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_archive_products_stock_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product-list__item-title-label',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 400,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_stock_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-title-label' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_stock_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-title-label' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_stock_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'none',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-product-list__item-title-label' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_stock_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'unit'     => 'px',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_style_archive_products_stock_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-title-label' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_stock_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#2a3658',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-title-label' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_stock_border_radius',
			array(
				'label'      => __( 'Border radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'range'      => array(
					'px' => array(
						'min'  => 0,
						'max'  => 100,
						'step' => 1,
					),
					'%'  => array(
						'min'  => 0,
						'max'  => 100,
						'step' => 1,
					),
				),
				'default'    => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-title-label' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'prg_style_archive_products_sale',
			array(
				'label'     => __( 'Sale Badge', 'prodigy-commerce' ),
				'tab'       => Controls_Manager::TAB_STYLE,
				'condition' => array(
					'prg_content_archive_products_content_sale' => 'yes',
				),
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_archive_products_sale_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-product-list__item-label',
				'fields_options' => array(
					'typography'     => array( 'default' => 'yes' ),
					'font_size'      => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 14,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 14,
						),
					),
					'font_weight'    => array(
						'default' => 800,
					),
					'line_height'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
					),
					'letter_spacing' => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'   => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_sale_color',
			array(
				'label'      => __( 'Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#ffffff',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-label' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_sale_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#f55454',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-label' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_sale_width',
			array(
				'label'          => __( 'Width', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 48,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 48,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 30,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-label' => 'width: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_sale_height',
			array(
				'label'          => __( 'Height', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'size' => 48,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 48,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 30,
					'unit' => 'px',
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-label' => 'height: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_sale_border_radius',
			array(
				'label'      => __( 'Border radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 50,
					'unit' => '%',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-product-list__item-label' => 'border-radius: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_sale_position_vertical',
			array(
				'label'   => __( 'Position Vertical', 'prodigy-commerce' ),
				'type'    => Controls_Manager::SELECT,
				'options' => array(
					'top'    => __( 'Top', 'prodigy-commerce' ),
					'bottom' => __( 'Bottom', 'prodigy-commerce' ),
				),
				'default' => 'top',
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_sale_position_vertical_dist',
			array(
				'label'          => __( 'Position Vertical Distance', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px' ),
				'default'        => array(
					'size' => 10,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 10,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 10,
					'unit' => 'px',
				),
				'range'          => array(
					'px' => array(
						'min' => - 100,
						'max' => 100,
					),
				),
				'render_type'    => 'template',
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-label:not(.prodigy-product-list__item-label--bottom)' => 'top: {{SIZE}}{{UNIT}}',
					'{{WRAPPER}} .prodigy-product-list__item-label--bottom'                                        => 'bottom: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_archive_products_sale_position_horizontal',
			array(
				'label'   => __( 'Position Horizontal', 'prodigy-commerce' ),
				'type'    => Controls_Manager::SELECT,
				'options' => array(
					'left'  => __( 'Left', 'prodigy-commerce' ),
					'right' => __( 'Right', 'prodigy-commerce' ),
				),
				'default' => 'left',
			)
		);

		$this->add_responsive_control(
			'prg_style_archive_products_sale_position_horizontal_dist',
			array(
				'label'          => __( 'Position Horizontal Distance', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SLIDER,
				'size_units'     => array( 'px' ),
				'default'        => array(
					'size' => 0,
					'unit' => 'px',
				),
				'tablet_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'mobile_default' => array(
					'size' => 0,
					'unit' => 'px',
				),
				'range'          => array(
					'px' => array(
						'min' => - 100,
						'max' => 100,
					),
				),
				'render_type'    => 'template',
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-product-list__item-label:not(.prodigy-product-list__item-label--right)' => 'left: {{SIZE}}{{UNIT}}',
					'{{WRAPPER}} .prodigy-product-list__item-label--right'                                        => 'right: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->end_controls_section();

		/*
		 * Pagination
		 */
		$this->start_controls_section(
			'prg_style_pagination',
			array(
				'label' => __( 'Pagination', 'prodigy-commerce' ),
				'tab'   => Controls_Manager::TAB_STYLE,
			)
		);

		$this->add_control(
			'prg_style_pagination_top_margin',
			array(
				'label'      => __( 'Top Margin', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'size' => 40,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination' => 'margin-top: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_responsive_control(
			'prg_style_pagination_alignment',
			array(
				'label'          => __( 'Alignment', 'prodigy-commerce' ),
				'type'           => Controls_Manager::SELECT,
				'default'        => 'center',
				'tablet_default' => 'center',
				'mobile_default' => 'center',
				'options'        => array(
					'flex-start' => __( 'Left', 'prodigy-commerce' ),
					'center'     => __( 'Center', 'prodigy-commerce' ),
					'flex-end'   => __( 'Right', 'prodigy-commerce' ),
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-pagination' => 'justify-content: {{VALUE}}',
				),
			)
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			array(
				'name'           => 'prg_style_pagination_typography',
				'label'          => __( 'Typography', 'prodigy-commerce' ),
				'selector'       => '{{WRAPPER}} .prodigy-pagination .prodigy-pagination__item',
				'fields_options' => array(
					'typography'      => array( 'default' => 'yes' ),
					'font_size'       => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 15,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 15,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 15,
						),
					),
					'font_weight'     => array(
						'default' => 400,
					),
					'text_decoration' => array(
						'default' => 'none',
					),
					'line_height'     => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 1.8,
						),
					),
					'letter_spacing'  => array(
						'default'        => array(
							'unit' => 'px',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'px',
							'size' => 0,
						),
					),
					'word_spacing'    => array(
						'default'        => array(
							'unit' => 'em',
							'size' => 0,
						),
						'tablet_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
						'mobile_default' => array(
							'unit' => 'em',
							'size' => 0,
						),
					),
				),
			)
		);

		$this->add_control(
			'prg_style_pagination_border_type',
			array(
				'label'     => __( 'Border Type', 'prodigy-commerce' ),
				'type'      => Controls_Manager::SELECT,
				'default'   => 'none',
				'options'   => array(
					'dotted' => esc_attr( 'dotted' ),
					'dashed' => esc_attr( 'dashed' ),
					'solid'  => esc_attr( 'solid' ),
					'double' => esc_attr( 'double' ),
					'groove' => esc_attr( 'groove' ),
					'ridge'  => esc_attr( 'ridge' ),
					'inset'  => esc_attr( 'inset' ),
					'outset' => esc_attr( 'outset' ),
					'none'   => esc_attr( 'none' ),
					'hidden' => esc_attr( 'hidden' ),
				),
				'selectors' => array(
					'{{WRAPPER}} .prodigy-pagination__item' => 'border-style: {{SIZE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_pagination_border_width',
			array(
				'label'      => __( 'Border Width', 'prodigy-commerce' ),
				'type'       => Controls_Manager::DIMENSIONS,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'top'      => '0',
					'right'    => '0',
					'bottom'   => '0',
					'left'     => '0',
					'unit'     => 'px',
					'isLinked' => true,
				),
				'condition'  => array(
					'prg_style_pagination_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_pagination_border_radius',
			array(
				'label'      => __( 'Border Radius', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', '%' ),
				'default'    => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item' => 'border-radius: {{SIZE}}{{UNIT}}',
				),

			)
		);

		$this->add_responsive_control(
			'prg_style_pagination_padding',
			array(
				'label'          => __( 'Padding', 'prodigy-commerce' ),
				'type'           => Controls_Manager::DIMENSIONS,
				'size_units'     => array( 'px', 'em' ),
				'default'        => array(
					'top'      => '4',
					'right'    => '8',
					'bottom'   => '4',
					'left'     => '8',
					'unit'     => 'px',
					'isLinked' => false,
				),
				'tablet_default' => array(
					'top'      => '4',
					'right'    => '8',
					'bottom'   => '4',
					'left'     => '8',
					'unit'     => 'px',
					'isLinked' => false,
				),
				'mobile_default' => array(
					'top'      => '4',
					'right'    => '8',
					'bottom'   => '4',
					'left'     => '8',
					'unit'     => 'px',
					'isLinked' => false,
				),
				'selectors'      => array(
					'{{WRAPPER}} .prodigy-pagination__item' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_pagination_spacing',
			array(
				'label'      => __( 'Space Between', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px', 'em' ),
				'default'    => array(
					'size' => 0,
					'unit' => 'px',
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item:not(:last-child)' => 'margin-right: {{SIZE}}{{UNIT}}',
				),
			)
		);

		$this->add_control(
			'prg_style_pagination_item',
			array(
				'label'     => __( 'Item', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_control(
			'prg_style_pagination_item_transition',
			array(
				'label'      => __( 'Transition Duration', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'range'      => array(
					'px' => array(
						'min'  => 0,
						'max'  => 1,
						'step' => 0.1,
					),
				),
				'default'    => array(
					'unit' => 'px',
					'size' => 0.2,
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item' => 'transition-duration: {{SIZE}}s',
				),
			)
		);

		$this->start_controls_tabs( 'pagination_item_style_tabs' );

		$this->start_controls_tab(
			'pagination_item_style_tab_normal',
			array(
				'label' => __( 'Normal', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_style_pagination_item_color',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#0170b9',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_pagination_item_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_pagination_item_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'condition'  => array(
					'prg_style_pagination_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'pagination_item_style_tab_hover',
			array(
				'label' => __( 'Hover', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_style_pagination_item_color_hover',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item:hover' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_pagination_item_bg_color_hover',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item:hover' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_pagination_item_border_color_hover',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'condition'  => array(
					'prg_style_pagination_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item:hover' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->add_control(
			'prg_style_pagination_item_active',
			array(
				'label'     => __( 'Active Item', 'prodigy-commerce' ),
				'type'      => Controls_Manager::HEADING,
				'separator' => 'before',
			)
		);

		$this->add_control(
			'prg_style_pagination_item_active_transition',
			array(
				'label'      => __( 'Transition Duration', 'prodigy-commerce' ),
				'type'       => Controls_Manager::SLIDER,
				'size_units' => array( 'px' ),
				'range'      => array(
					'px' => array(
						'min'  => 0,
						'max'  => 1,
						'step' => 0.1,
					),
				),
				'default'    => array(
					'unit' => 'px',
					'size' => 0.2,
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item.prodigy-pagination__item--active' => 'transition-duration: {{SIZE}}s',
				),
			)
		);

		$this->start_controls_tabs( 'pagination_item_active_style_tabs' );

		$this->start_controls_tab(
			'pagination_item_active_style_tab_normal',
			array(
				'label' => __( 'Normal', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_style_pagination_item_active_color',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item.prodigy-pagination__item--active' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_pagination_item_active_bg_color',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#e9eaee',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item.prodigy-pagination__item--active' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_pagination_item_active_border_color',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'condition'  => array(
					'prg_style_pagination_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item.prodigy-pagination__item--active' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'pagination_item_active_style_tab_hover',
			array(
				'label' => __( 'Hover', 'prodigy-commerce' ),
			)
		);

		$this->add_control(
			'prg_style_pagination_item_active_color_hover',
			array(
				'label'      => __( 'Text Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#3a3a3a',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item.prodigy-pagination__item--active:hover' => 'color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_pagination_item_active_bg_color_hover',
			array(
				'label'      => __( 'Background Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'default'    => '#e9eaee',
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item.prodigy-pagination__item--active:hover' => 'background-color: {{VALUE}}',
				),
			)
		);

		$this->add_control(
			'prg_style_pagination_item_active_border_color_hover',
			array(
				'label'      => __( 'Border Color', 'prodigy-commerce' ),
				'type'       => Controls_Manager::COLOR,
				'input_type' => 'color',
				'condition'  => array(
					'prg_style_pagination_border_type' => array(
						'dotted',
						'dashed',
						'solid',
						'double',
						'groove',
						'ridge',
						'inset',
						'outset',
						'hidden',
					),
				),
				'selectors'  => array(
					'{{WRAPPER}} .prodigy-pagination__item.prodigy-pagination__item--active:hover' => 'border-color: {{VALUE}}',
				),
			)
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();
	}

	/**
	 * @param array $widget_options
	 *
	 * @return array
	 */
	public function get_widget_options( array $widget_options ): array {
		$settings = array_filter(
			$widget_options,
			static function ( $val, $key ) {
				return strpos( $key, 'prg_' ) === 0;
			},
			ARRAY_FILTER_USE_BOTH
		);

		$settings_keys = array_map(
			static function ( $value ) {
				return str_replace( self::WIDGET_PREFIX, '', $value );
			},
			array_keys( $settings )
		);

		$settings                         = array_combine( $settings_keys, $settings );
		$settings['idWidget']             = $this->get_id();
		$settings['is_elementor']         = true;
		$settings['stock_label_category'] = Prodigy_Widget_Options::$bool_mapper[ $settings['content_archive_products_content_stock_label_content'] ] ? $settings['content_archive_products_content_stock_label_content_category'] : null;
		$settings['quick_view_title']     = ! empty( $settings['content_archive_products_content_quick_view_title'] ) ? $settings['content_archive_products_content_quick_view_title'] : __( 'Quick view', 'prodigy-commerce' );
		Prodigy_Elementor::set_widget_options( $this->get_name(), $this->get_id(), $settings );

		return $settings;
	}


	/**
	 * Render oEmbed widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @access protected
	 */
	protected function render() {
		$widget_options = $this->get_settings_for_display();
		$options        = $this->get_widget_options( $widget_options );
		// need for sortable widget
		update_option( 'elementor_sort_option', $options['content_archive_products_content_order_by'] );
		update_option( 'elementor_order_option', $options['content_archive_products_content_order'] );

		do_action( 'prodigy_shop_products_loop', $options );
	}
}
