/**
 * Estilos Oficiais e Unificados para os Blocos Gutenberg & Frontend
 * WooCommerce Product Add-Ons Ultimate (PEWC)
 *
 * @package WooCommerce Product Add-Ons Ultimate
 */

/* ==========================================================================
   1. VARIÁVEIS BASE & HERANÇA DO WOODMART / TEMA
   ========================================================================== */
:root {
	--wd-primary-color: #634432;
	--wd-bordered-color: #d7d1c5;
	--wd-entities-title-color: #161616;
	--pewc-card-bg: #fdfaf7;
	--pewc-card-border: #d7d1c5;
	--pewc-card-border-width: 1px;
	--pewc-card-border-style: solid;
	--pewc-card-active-border: #634432;
	--pewc-card-active-border-width: 2px;
	--pewc-card-active-bg: #fdfaf7;
	--pewc-card-radius: 8px;
	--pewc-card-padding: 16px;
	--pewc-card-align: center;
	--pewc-card-align-text: center;
	--pewc-measure-cols: 2;
	--pewc-measure-cols-mobile: 1;
	--pewc-measure-gap: 16px;
	--pewc-input-cols: 1;
	--pewc-input-height: 44px;
	--pewc-input-font-size: 18px;
	--pewc-input-font-weight: 700;
	--pewc-input-color: #161616;
	--pewc-input-placeholder-color: #a8a096;
	--pewc-input-focus-color: #161616;
	--pewc-input-bg: #ffffff;
	--pewc-input-border: #d7d1c5;
	--pewc-input-border-width: 1px;
	--pewc-input-border-style: solid;
	--pewc-input-focus-border: #634432;
	--pewc-input-focus-border-width: 2px;
	--pewc-input-radius: 6px;
	--pewc-input-padding: 14px;
	--pewc-input-text-align: center;
	--pewc-label-align: left;
	--pewc-label-justify: flex-start;
	--pewc-subtext-align: center;
	--pewc-subtext-color: #8c827a;
	--pewc-subtext-size: 11px;
	--pewc-subtext-margin-top: 6px;
	--pewc-swatch-cols: 3;
	--pewc-swatch-cols-mobile: 2;
	--pewc-swatch-gap: 12px;
	--pewc-swatch-height: 90px;
	--pewc-swatch-align: center;
	--pewc-swatch-align-text: center;
	--pewc-swatch-bg: #ffffff;
	--pewc-swatch-border: #d7d1c5;
	--pewc-swatch-border-width: 1px;
	--pewc-swatch-border-style: solid;
	--pewc-swatch-hover-border: #634432;
	--pewc-swatch-hover-bg: #fdfaf7;
	--pewc-swatch-active-border: #634432;
	--pewc-swatch-active-border-width: 2px;
	--pewc-swatch-active-bg: #fdfaf7;
	--pewc-swatch-radius: 6px;
	--pewc-swatch-padding: 8px;
	--pewc-title-color: #161616;
	--pewc-title-font-size: 20px;
	--pewc-title-font-weight: 700;
	--pewc-desc-color: #666666;
	--pewc-desc-font-size: 14px;
	--pewc-label-color: #161616;
	--pewc-label-font-size: 14px;
	--pewc-label-font-weight: 600;
	--pewc-step-badge-bg: #634432;
	--pewc-step-badge-color: #ffffff;
	--pewc-step-badge-size: 26px;
	--pewc-group-gap: 24px;
	--pewc-group-divider-color: #e8e2d9;
	--pewc-group-divider-width: 1px;
	--pewc-help-color: #999999;
	--pewc-slider-track: #e8e2d9;
	--pewc-slider-thumb: #634432;
	--pewc-slider-thumb-size: 18px;
	--pewc-totals-bg: #fdfaf7;
	--pewc-totals-border: #e8e2d9;
	--pewc-totals-border-width: 1px;
	--pewc-totals-border-style: solid;
	--pewc-totals-radius: 8px;
	--pewc-totals-padding: 16px;
	--pewc-totals-text-color: #161616;
	--pewc-totals-font-size: 15px;
	--pewc-totals-grand-color: #634432;
	--pewc-totals-grand-size: 17px;
	--pewc-totals-divider-color: #e8e2d9;
	--pewc-clear-text: #444444;
	--pewc-clear-bg: #f7f5f0;
	--pewc-clear-border: #d7d1c5;
	--pewc-clear-radius: 4px;
	--pewc-clear-padding: 8px;
	--pewc-clear-font-size: 13px;
	--pewc-tab-active-bg: #634432;
	--pewc-tab-active-color: #ffffff;
	--pewc-tab-bg: #f7f5f0;
	--pewc-tab-color: #444444;
	--pewc-wizard-btn-bg: #634432;
	--pewc-wizard-btn-color: #ffffff;
	--pewc-option-price-color: #634432;
}

/* ==========================================================================
   2. BOX-SIZING & ESTRUTURA GERAL
   ========================================================================== */
.wp-block-pewc-product-addons,
.wp-block-pewc-product-addons-editor-canvas,
.wp-block-pewc-product-addons-totals,
.wp-block-pewc-product-addons-totals-editor,
.wp-block-pewc-product-addons-reset,
.wp-block-pewc-product-addons-reset-editor,
.pewc-elementor-addons-wrapper {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: 100% !important;
}

.wp-block-pewc-product-addons *,
.wp-block-pewc-product-addons-editor-canvas *,
.wp-block-pewc-product-addons-totals *,
.wp-block-pewc-product-addons-totals-editor *,
.wp-block-pewc-product-addons-reset *,
.wp-block-pewc-product-addons-reset-editor *,
.pewc-elementor-addons-wrapper * {
	box-sizing: border-box;
}

/* Destaque e borda de seleção nativa do Gutenberg */
.wp-block-pewc-product-addons-editor-canvas,
.wp-block-pewc-product-addons-totals-editor,
.wp-block-pewc-product-addons-reset-editor {
	cursor: default;
	position: relative;
	transition: outline 0.15s ease-in-out;
}

.wp-block-pewc-product-addons-editor-canvas.is-selected,
.wp-block-pewc-product-addons-totals-editor.is-selected,
.wp-block-pewc-product-addons-reset-editor.is-selected {
	outline: 2px solid #3858e9 !important;
	outline-offset: 3px !important;
}

/* ==========================================================================
   3. GRUPOS, DIVISÓRIAS & ESPAÇAMENTO VERTICAL
   ========================================================================== */
.wp-block-pewc-product-addons .pewc-group-wrap,
.wp-block-pewc-product-addons-editor-canvas .pewc-group-wrap,
.pewc-elementor-addons-wrapper .pewc-group-wrap {
	margin-bottom: var(--pewc-group-gap, 24px) !important;
	position: relative;
}

.pewc-show-divider-yes .pewc-group-wrap:not(:last-child) {
	border-bottom: var(--pewc-group-divider-width, 1px) solid var(--pewc-group-divider-color, #e8e2d9) !important;
	padding-bottom: var(--pewc-group-gap, 24px) !important;
}

.pewc-show-divider-no .pewc-group-wrap {
	border-bottom: none !important;
}

/* ==========================================================================
   4. CABEÇALHOS, TÍTULOS E BADGE NUMÉRICO
   ========================================================================== */
.pewc-group-heading-wrapper {
	margin-bottom: 14px !important;
}

.pewc-show-heading-no .pewc-group-heading-wrapper,
.pewc-show-heading-no .pewc-group-heading {
	display: none !important;
}

.pewc-show-heading-yes .pewc-group-heading-wrapper,
.pewc-show-heading-yes .pewc-group-heading {
	display: block !important;
}

.pewc-group-heading-wrapper h3,
.pewc-group-heading {
	color: var(--pewc-title-color, #161616) !important;
	font-size: var(--pewc-title-font-size, 20px) !important;
	font-weight: var(--pewc-title-font-weight, 700) !important;
	margin: 0 0 6px 0 !important;
	line-height: 1.3 !important;
	display: flex !important;
	align-items: center !important;
}

/* Badge numérico via contador CSS puro (Sem duplicação no DOM) */
.wp-block-pewc-product-addons,
.wp-block-pewc-product-addons-editor-canvas,
.pewc-elementor-addons-wrapper,
.pewc-product-extra-groups-wrap {
	counter-reset: pewc-step-counter;
}

.pewc-show-step-badge-yes .pewc-group-heading-wrapper h3:before {
	counter-increment: pewc-step-counter;
	content: counter(pewc-step-counter);
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: var(--pewc-step-badge-size, 26px) !important;
	height: var(--pewc-step-badge-size, 26px) !important;
	border-radius: var(--pewc-step-badge-radius, 50%) !important;
	background-color: var(--pewc-step-badge-bg, #634432) !important;
	color: var(--pewc-step-badge-color, #ffffff) !important;
	font-size: calc(var(--pewc-step-badge-size, 26px) * 0.48) !important;
	font-weight: 700 !important;
	margin-right: 10px !important;
	flex-shrink: 0 !important;
	vertical-align: middle !important;
}

.pewc-show-step-badge-no .pewc-group-heading-wrapper h3:before {
	display: none !important;
}

.pewc-group-description {
	color: var(--pewc-desc-color, #666666) !important;
	font-size: var(--pewc-desc-font-size, 14px) !important;
	margin: 0 !important;
	line-height: 1.5 !important;
}

.pewc-show-desc-no .pewc-group-description {
	display: none !important;
}

.pewc-show-desc-yes .pewc-group-description {
	display: block !important;
}

/* ==========================================================================
   5. LISTA DE CAMPOS & GRID DE MEDIDAS (1 A 6 COLUNAS)
   Respeita rigorosamente o "Número de Colunas" definido individualmente em cada campo 
   nos Grupos Globais (pewc-field-columns-1 até 6) e usa os padrões do Gutenberg como fallback.
   ========================================================================== */
ul.pewc-product-extra-groups,
ul.pewc-product-extra-groups.cols-2,
ul.pewc-product-extra-groups.cols-3,
ul.pewc-product-extra-groups.cols-4,
ul.pewc-product-extra-groups[class*="cols-"] {
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
	display: flex !important;
	flex-wrap: wrap !important;
	justify-content: flex-start !important;
	grid-template-columns: none !important;
	gap: var(--pewc-measure-gap, 16px) !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

ul.pewc-product-extra-groups > li,
ul.pewc-product-extra-groups > .pewc-item {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	box-sizing: border-box !important;
	float: none !important;
}

/* 1 Coluna (100% de largura total) */
.pewc-field-columns-1,
.pewc-item.pewc-field-columns-1,
.pewc-product-extra-groups .pewc-field-columns-1,
.pewc-product-extra-groups > li.pewc-field-columns-1,
ul.pewc-product-extra-groups > li.pewc-field-columns-1,
ul.pewc-product-extra-groups > li.pewc-item.pewc-field-columns-1,
.wp-block-pewc-product-addons ul.pewc-product-extra-groups > li.pewc-field-columns-1,
.pewc-gutenberg-addons-wrapper ul.pewc-product-extra-groups > li.pewc-field-columns-1,
.pewc-elementor-addons-wrapper ul.pewc-product-extra-groups > li.pewc-field-columns-1,
ul.pewc-product-extra-groups.cols-2 > li.pewc-field-columns-1,
ul.pewc-product-extra-groups.cols-3 > li.pewc-field-columns-1,
ul.pewc-product-extra-groups.cols-4 > li.pewc-field-columns-1,
ul.pewc-product-extra-groups[class*="cols-"] > li.pewc-field-columns-1,
ul.pewc-product-extra-groups > li.pewc-item-range-slider,
ul.pewc-product-extra-groups > li.pewc-item-image_swatch,
ul.pewc-product-extra-groups > li.pewc-item-radio,
ul.pewc-product-extra-groups > li.pewc-item-checkbox,
ul.pewc-product-extra-groups > li.pewc-item-checkbox_group,
ul.pewc-product-extra-groups > li.pewc-item-select,
ul.pewc-product-extra-groups > li.pewc-item-select-box,
ul.pewc-product-extra-groups > li.pewc-item-textarea,
ul.pewc-product-extra-groups > li.pewc-item-upload,
ul.pewc-product-extra-groups > li.pewc-item-date,
ul.pewc-product-extra-groups > li.pewc-item-information,
ul.pewc-product-extra-groups > li.pewc-field-full-width {
	width: 100% !important;
	max-width: 100% !important;
	flex: 0 0 100% !important;
	grid-column: 1 / -1 !important;
}

/* 2 Colunas (50% lado a lado) */
.pewc-field-columns-2:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-item.pewc-field-columns-2:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-product-extra-groups .pewc-field-columns-2:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.wp-block-pewc-product-addons ul.pewc-product-extra-groups > li.pewc-field-columns-2:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-gutenberg-addons-wrapper ul.pewc-product-extra-groups > li.pewc-field-columns-2:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-elementor-addons-wrapper ul.pewc-product-extra-groups > li.pewc-field-columns-2:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
ul.pewc-product-extra-groups > li.pewc-field-columns-2:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
ul.pewc-product-extra-groups > li.pewc-item.pewc-field-columns-2:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload) {
	width: calc((100% - var(--pewc-measure-gap, 16px)) / 2) !important;
	max-width: calc((100% - var(--pewc-measure-gap, 16px)) / 2) !important;
	flex: 0 0 calc((100% - var(--pewc-measure-gap, 16px)) / 2) !important;
}

/* 3 Colunas (33.33% por linha) */
.pewc-field-columns-3:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-item.pewc-field-columns-3:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-product-extra-groups .pewc-field-columns-3:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.wp-block-pewc-product-addons ul.pewc-product-extra-groups > li.pewc-field-columns-3:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-gutenberg-addons-wrapper ul.pewc-product-extra-groups > li.pewc-field-columns-3:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-elementor-addons-wrapper ul.pewc-product-extra-groups > li.pewc-field-columns-3:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
ul.pewc-product-extra-groups > li.pewc-field-columns-3:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
ul.pewc-product-extra-groups > li.pewc-item.pewc-field-columns-3:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload) {
	width: calc((100% - (var(--pewc-measure-gap, 16px) * 2)) / 3) !important;
	max-width: calc((100% - (var(--pewc-measure-gap, 16px) * 2)) / 3) !important;
	flex: 0 0 calc((100% - (var(--pewc-measure-gap, 16px) * 2)) / 3) !important;
}

/* 4 Colunas (25% por linha) */
.pewc-field-columns-4:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-item.pewc-field-columns-4:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-product-extra-groups .pewc-field-columns-4:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.wp-block-pewc-product-addons ul.pewc-product-extra-groups > li.pewc-field-columns-4:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-gutenberg-addons-wrapper ul.pewc-product-extra-groups > li.pewc-field-columns-4:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-elementor-addons-wrapper ul.pewc-product-extra-groups > li.pewc-field-columns-4:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
ul.pewc-product-extra-groups > li.pewc-field-columns-4:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
ul.pewc-product-extra-groups > li.pewc-item.pewc-field-columns-4:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload) {
	width: calc((100% - (var(--pewc-measure-gap, 16px) * 3)) / 4) !important;
	max-width: calc((100% - (var(--pewc-measure-gap, 16px) * 3)) / 4) !important;
	flex: 0 0 calc((100% - (var(--pewc-measure-gap, 16px) * 3)) / 4) !important;
}

/* 5 Colunas (20% por linha) */
.pewc-field-columns-5:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-item.pewc-field-columns-5:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-product-extra-groups .pewc-field-columns-5:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.wp-block-pewc-product-addons ul.pewc-product-extra-groups > li.pewc-field-columns-5:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-gutenberg-addons-wrapper ul.pewc-product-extra-groups > li.pewc-field-columns-5:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-elementor-addons-wrapper ul.pewc-product-extra-groups > li.pewc-field-columns-5:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
ul.pewc-product-extra-groups > li.pewc-field-columns-5:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
ul.pewc-product-extra-groups > li.pewc-item.pewc-field-columns-5:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload) {
	width: calc((100% - (var(--pewc-measure-gap, 16px) * 4)) / 5) !important;
	max-width: calc((100% - (var(--pewc-measure-gap, 16px) * 4)) / 5) !important;
	flex: 0 0 calc((100% - (var(--pewc-measure-gap, 16px) * 4)) / 5) !important;
}

/* 6 Colunas (16.66% por linha) */
.pewc-field-columns-6:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-item.pewc-field-columns-6:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-product-extra-groups .pewc-field-columns-6:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.wp-block-pewc-product-addons ul.pewc-product-extra-groups > li.pewc-field-columns-6:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-gutenberg-addons-wrapper ul.pewc-product-extra-groups > li.pewc-field-columns-6:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
.pewc-elementor-addons-wrapper ul.pewc-product-extra-groups > li.pewc-field-columns-6:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
ul.pewc-product-extra-groups > li.pewc-field-columns-6:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload),
ul.pewc-product-extra-groups > li.pewc-item.pewc-field-columns-6:not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload) {
	width: calc((100% - (var(--pewc-measure-gap, 16px) * 5)) / 6) !important;
	max-width: calc((100% - (var(--pewc-measure-gap, 16px) * 5)) / 6) !important;
	flex: 0 0 calc((100% - (var(--pewc-measure-gap, 16px) * 5)) / 6) !important;
}

/* Fallback para campos de digitação (sem classe explícita) baseados no controle do Gutenberg */
ul.pewc-product-extra-groups > li.pewc-item-text:not([class*="pewc-field-columns-"]) {
	width: calc((100% - (var(--pewc-measure-gap, 16px) * (var(--pewc-input-cols, 1) - 1))) / var(--pewc-input-cols, 1)) !important;
	max-width: calc((100% - (var(--pewc-measure-gap, 16px) * (var(--pewc-input-cols, 1) - 1))) / var(--pewc-input-cols, 1)) !important;
	flex: 0 0 calc((100% - (var(--pewc-measure-gap, 16px) * (var(--pewc-input-cols, 1) - 1))) / var(--pewc-input-cols, 1)) !important;
}

/* Fallback geral para cards de medidas sem classe explícita */
ul.pewc-product-extra-groups > li:not([class*="pewc-field-columns-"]):not(.pewc-stepper-card):not(.pewc-stepper-step):not(.pewc-item-range-slider):not(.pewc-item-image_swatch):not(.pewc-item-radio):not(.pewc-item-checkbox):not(.pewc-item-checkbox_group):not(.pewc-item-textarea):not(.pewc-item-select):not(.pewc-item-upload) {
	width: calc((100% - (var(--pewc-measure-gap, 16px) * (var(--pewc-measure-cols, 2) - 1))) / var(--pewc-measure-cols, 2)) !important;
	max-width: calc((100% - (var(--pewc-measure-gap, 16px) * (var(--pewc-measure-cols, 2) - 1))) / var(--pewc-measure-cols, 2)) !important;
	flex: 0 0 calc((100% - (var(--pewc-measure-gap, 16px) * (var(--pewc-measure-cols, 2) - 1))) / var(--pewc-measure-cols, 2)) !important;
}

/* ==========================================================================
   6. CARD BOX DA MEDIDA (CAIXA EXTERNA & INTERNA)
   ========================================================================== */
.pewc-item-number,
.pewc-item-number:not(.pewc-item-range-slider),
.pewc-stepper-body .pewc-item-number,
ul.pewc-product-extra-groups li.pewc-item-number,
ul.pewc-product-extra-groups > li.pewc-item-number,
ul.pewc-product-extra-groups > li.pewc-measure-card,
.pewc-measure-card {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: center !important;
	width: 100% !important;
	max-width: 100% !important;
	flex: 0 0 100% !important;
	box-sizing: border-box !important;
}

.pewc-item-number .pewc-field-label,
.pewc-item-number .pewc-item-label,
.pewc-item-number label.pewc-field-label,
.pewc-stepper-body .pewc-item-number .pewc-field-label,
.pewc-stepper-body .pewc-item-number label {
	width: 100% !important;
	display: block !important;
	text-align: left !important;
	margin-bottom: 8px !important;
	font-weight: 600 !important;
	float: none !important;
}

.pewc-item-number:not(.pewc-item-range-slider) .pewc-item-field-wrapper,
.pewc-stepper-body .pewc-item-number .pewc-item-field-wrapper,
.pewc-measure-card .pewc-item-field-wrapper {
	width: 100% !important;
	max-width: 100% !important;
	background-color: var(--pewc-card-bg, #fdfaf7) !important;
	border: var(--pewc-card-border-width, 1px) var(--pewc-card-border-style, solid) var(--pewc-card-border, #d7d1c5) !important;
	border-radius: var(--pewc-card-radius, 8px) !important;
	padding: var(--pewc-card-padding, 16px) !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: var(--pewc-card-align-text, center) !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	float: none !important;
	transition: all 0.2s ease !important;
}

.pewc-item-number input[type="number"],
.pewc-item-number input[type="text"],
.pewc-stepper-body .pewc-item-number input[type="number"],
.pewc-stepper-body .pewc-item-number input[type="text"] {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	text-align: center !important;
}

/* Card Ativo / Selecionado / Focado */
.wp-block-pewc-product-addons-editor-canvas ul.pewc-product-extra-groups > li.pewc-item-number.active .pewc-item-field-wrapper,
.wp-block-pewc-product-addons-editor-canvas ul.pewc-product-extra-groups > li.pewc-item-number:focus-within .pewc-item-field-wrapper,
.wp-block-pewc-product-addons-editor-canvas .pewc-item-number.active .pewc-item-field-wrapper,
.wp-block-pewc-product-addons-editor-canvas .pewc-item-number:focus-within .pewc-item-field-wrapper,
ul.pewc-product-extra-groups > li.pewc-item-number.active .pewc-item-field-wrapper,
ul.pewc-product-extra-groups > li.pewc-item-number.checked .pewc-item-field-wrapper,
ul.pewc-product-extra-groups > li.pewc-item-number:focus-within .pewc-item-field-wrapper,
ul.pewc-product-extra-groups > li.pewc-item-number .pewc-item-field-wrapper:focus-within,
ul.pewc-product-extra-groups > li.pewc-item-number:has(input:focus) .pewc-item-field-wrapper,
.wp-block-pewc-product-addons ul.pewc-product-extra-groups > li.pewc-item-number.active .pewc-item-field-wrapper,
.wp-block-pewc-product-addons ul.pewc-product-extra-groups > li.pewc-item-number:focus-within .pewc-item-field-wrapper,
.pewc-gutenberg-addons-wrapper ul.pewc-product-extra-groups > li.pewc-item-number.active .pewc-item-field-wrapper,
.pewc-gutenberg-addons-wrapper ul.pewc-product-extra-groups > li.pewc-item-number:focus-within .pewc-item-field-wrapper,
.pewc-elementor-addons-wrapper ul.pewc-product-extra-groups > li.pewc-item-number.active .pewc-item-field-wrapper,
.pewc-elementor-addons-wrapper ul.pewc-product-extra-groups > li.pewc-item-number:focus-within .pewc-item-field-wrapper,
.pewc-item-number.active .pewc-item-field-wrapper,
.pewc-item-number.checked .pewc-item-field-wrapper,
.pewc-item-number .pewc-item-field-wrapper:focus-within,
.pewc-measure-card.active .pewc-item-field-wrapper,
.pewc-measure-card.checked .pewc-item-field-wrapper,
.pewc-measure-card .pewc-item-field-wrapper:focus-within {
	border-color: var(--pewc-card-active-border, var(--pewc-input-focus-border, #634432)) !important;
	border-width: var(--pewc-card-active-border-width, 2px) !important;
	border-style: var(--pewc-card-border-style, solid) !important;
	background-color: var(--pewc-card-active-bg, var(--pewc-card-bg, #fdfaf7)) !important;
}

.pewc-measure-input-wrap {
	width: 100% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: var(--pewc-card-align, center) !important;
}

/* Sombras Normais dos Cards (cardShadow) */
.pewc-card-shadow-none .pewc-item-number:not(.pewc-item-range-slider) .pewc-item-field-wrapper,
.pewc-card-shadow-none .pewc-measure-card .pewc-item-field-wrapper {
	box-shadow: none !important;
}

.pewc-card-shadow-soft .pewc-item-number:not(.pewc-item-range-slider) .pewc-item-field-wrapper,
.pewc-card-shadow-soft .pewc-measure-card .pewc-item-field-wrapper {
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
}

.pewc-card-shadow-medium .pewc-item-number:not(.pewc-item-range-slider) .pewc-item-field-wrapper,
.pewc-card-shadow-medium .pewc-measure-card .pewc-item-field-wrapper {
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.09) !important;
}

.pewc-card-shadow-elevated .pewc-item-number:not(.pewc-item-range-slider) .pewc-item-field-wrapper,
.pewc-card-shadow-elevated .pewc-measure-card .pewc-item-field-wrapper {
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12) !important;
}

/* Sombras Ativas / Selecionadas dos Cards (cardActiveShadow) */
.pewc-card-active-shadow-none .pewc-item-number .pewc-item-field-wrapper:focus-within,
.pewc-card-active-shadow-none .pewc-measure-card .pewc-item-field-wrapper:focus-within,
.pewc-card-active-shadow-none .pewc-item-number.active .pewc-item-field-wrapper,
.pewc-card-active-shadow-none .pewc-measure-card.active .pewc-item-field-wrapper,
.pewc-card-active-shadow-none .pewc-item-number.checked .pewc-item-field-wrapper,
.pewc-card-active-shadow-none .pewc-measure-card.checked .pewc-item-field-wrapper,
.pewc-card-active-shadow-none .pewc-item-field-wrapper:has(input:focus) {
	box-shadow: none !important;
}

.pewc-card-active-shadow-soft .pewc-item-number .pewc-item-field-wrapper:focus-within,
.pewc-card-active-shadow-soft .pewc-measure-card .pewc-item-field-wrapper:focus-within,
.pewc-card-active-shadow-soft .pewc-item-number.active .pewc-item-field-wrapper,
.pewc-card-active-shadow-soft .pewc-measure-card.active .pewc-item-field-wrapper,
.pewc-card-active-shadow-soft .pewc-item-number.checked .pewc-item-field-wrapper,
.pewc-card-active-shadow-soft .pewc-measure-card.checked .pewc-item-field-wrapper,
.pewc-card-active-shadow-soft .pewc-item-field-wrapper:has(input:focus) {
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08) !important;
}

.pewc-card-active-shadow-medium .pewc-item-number .pewc-item-field-wrapper:focus-within,
.pewc-card-active-shadow-medium .pewc-measure-card .pewc-item-field-wrapper:focus-within,
.pewc-card-active-shadow-medium .pewc-item-number.active .pewc-item-field-wrapper,
.pewc-card-active-shadow-medium .pewc-measure-card.active .pewc-item-field-wrapper,
.pewc-card-active-shadow-medium .pewc-item-number.checked .pewc-item-field-wrapper,
.pewc-card-active-shadow-medium .pewc-measure-card.checked .pewc-item-field-wrapper,
.pewc-card-active-shadow-medium .pewc-item-field-wrapper:has(input:focus) {
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.14) !important;
}

.pewc-card-active-shadow-elevated .pewc-item-number .pewc-item-field-wrapper:focus-within,
.pewc-card-active-shadow-elevated .pewc-measure-card .pewc-item-field-wrapper:focus-within,
.pewc-card-active-shadow-elevated .pewc-item-number.active .pewc-item-field-wrapper,
.pewc-card-active-shadow-elevated .pewc-measure-card.active .pewc-item-field-wrapper,
.pewc-card-active-shadow-elevated .pewc-item-number.checked .pewc-item-field-wrapper,
.pewc-card-active-shadow-elevated .pewc-measure-card.checked .pewc-item-field-wrapper,
.pewc-card-active-shadow-elevated .pewc-item-field-wrapper:has(input:focus) {
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.20) !important;
}

.pewc-card-active-shadow-glow .pewc-item-number .pewc-item-field-wrapper:focus-within,
.pewc-card-active-shadow-glow .pewc-measure-card .pewc-item-field-wrapper:focus-within,
.pewc-card-active-shadow-glow .pewc-item-number.active .pewc-item-field-wrapper,
.pewc-card-active-shadow-glow .pewc-measure-card.active .pewc-item-field-wrapper,
.pewc-card-active-shadow-glow .pewc-item-number.checked .pewc-item-field-wrapper,
.pewc-card-active-shadow-glow .pewc-measure-card.checked .pewc-item-field-wrapper,
.pewc-card-active-shadow-glow .pewc-item-field-wrapper:has(input:focus) {
	box-shadow: 0 0 14px var(--pewc-card-active-border, #634432) !important;
}

.pewc-card-active-shadow-colored .pewc-item-number .pewc-item-field-wrapper:focus-within,
.pewc-card-active-shadow-colored .pewc-measure-card .pewc-item-field-wrapper:focus-within,
.pewc-card-active-shadow-colored .pewc-item-number.active .pewc-item-field-wrapper,
.pewc-card-active-shadow-colored .pewc-measure-card.active .pewc-item-field-wrapper,
.pewc-card-active-shadow-colored .pewc-item-number.checked .pewc-item-field-wrapper,
.pewc-card-active-shadow-colored .pewc-measure-card.checked .pewc-item-field-wrapper,
.pewc-card-active-shadow-colored .pewc-item-field-wrapper:has(input:focus) {
	box-shadow: 0 4px 16px rgba(99, 68, 50, 0.25) !important;
}

/* ==========================================================================
   7. RÓTULOS (FIELD LABELS) & ÍCONE DE AJUDA (?)
   ========================================================================== */
.pewc-field-label,
.pewc-item-label,
.pewc-item-number .pewc-field-label {
	width: 100% !important;
	color: var(--pewc-label-color, #161616) !important;
	font-size: var(--pewc-label-font-size, 14px) !important;
	font-weight: var(--pewc-label-font-weight, 600) !important;
	margin: 0 0 8px 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: var(--pewc-label-justify, flex-start) !important;
	text-align: var(--pewc-label-align, left) !important;
}

.pewc-label-align-left .pewc-field-label,
.pewc-label-align-left .pewc-item-label {
	justify-content: flex-start !important;
	text-align: left !important;
}

.pewc-label-align-center .pewc-field-label,
.pewc-label-align-center .pewc-item-label {
	justify-content: center !important;
	text-align: center !important;
}

.pewc-label-align-right .pewc-field-label,
.pewc-label-align-right .pewc-item-label {
	justify-content: flex-end !important;
	text-align: right !important;
}

/* Ícone de Ajuda (?) */
.dashicons.tooltip,
.pewc-tooltip-button,
.dashicons-editor-help,
.pewc-help-tip {
	color: var(--pewc-help-color, #999999) !important;
	font-size: 14px !important;
	width: 14px !important;
	height: 14px !important;
	margin-left: 6px !important;
	cursor: help !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.pewc-show-tooltip-no .dashicons.tooltip,
.pewc-show-tooltip-no .pewc-tooltip-button,
.pewc-show-tooltip-no .dashicons-editor-help,
.pewc-show-tooltip-no .pewc-help-tip {
	display: none !important;
}

/* ==========================================================================
   8. INPUT DE MEDIDA (MODO DIGITAÇÃO)
   ========================================================================== */
.pewc-measure-input-wrap,
.pewc-number-input-wrapper {
	width: 100% !important;
}

input.pewc-number-field:not(.pewc-range-slider),
input.pewc-form-field.pewc-number-field:not(.pewc-range-slider),
.pewc-number-input-wrapper input[type="number"] {
	width: 100% !important;
	max-width: 100% !important;
	height: var(--pewc-input-height, 44px) !important;
	background-color: var(--pewc-input-bg, #ffffff) !important;
	border: var(--pewc-input-border-width, 1px) var(--pewc-input-border-style, solid) var(--pewc-input-border, #d7d1c5) !important;
	border-radius: var(--pewc-input-radius, 6px) !important;
	padding: 0 var(--pewc-input-padding, 14px) !important;
	margin: 0 auto !important;
	display: block !important;
	font-size: var(--pewc-input-font-size, 18px) !important;
	font-weight: var(--pewc-input-font-weight, 700) !important;
	color: var(--pewc-input-color, #161616) !important;
	text-align: var(--pewc-input-text-align, center) !important;
	box-sizing: border-box !important;
	outline: none !important;
	box-shadow: none !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease !important;
}

input.pewc-number-field:not(.pewc-range-slider),
input.pewc-form-field.pewc-number-field:not(.pewc-range-slider),
input.pewc-form-field:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
textarea.pewc-form-field,
.pewc-item-field-wrapper input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
.pewc-item-field-wrapper textarea,
.pewc-number-input-wrapper input[type="number"] {
	color: var(--pewc-input-color, #161616) !important;
}

input.pewc-number-field:not(.pewc-range-slider):focus,
input.pewc-form-field.pewc-number-field:not(.pewc-range-slider):focus,
input.pewc-form-field:focus,
textarea.pewc-form-field:focus,
.pewc-item-field-wrapper input:focus,
.pewc-item-field-wrapper textarea:focus,
.pewc-number-input-wrapper input[type="number"]:focus {
	border-color: var(--pewc-input-focus-border, var(--pewc-input-border, #d7d1c5)) !important;
	border-width: var(--pewc-input-focus-border-width, var(--pewc-input-border-width, 1px)) !important;
	outline: none !important;
	box-shadow: none !important;
	background-color: var(--pewc-input-bg, #ffffff) !important;
	color: var(--pewc-input-color, #161616) !important;
}

/* Placeholder do Input de Digitação */
input.pewc-number-field::placeholder,
input.pewc-form-field::placeholder,
textarea.pewc-form-field::placeholder,
.pewc-item-field-wrapper input::placeholder,
.pewc-item-field-wrapper textarea::placeholder,
.pewc-number-input-wrapper input[type="number"]::placeholder {
	color: var(--pewc-input-placeholder-color, #a8a096) !important;
	opacity: 1 !important;
}
input.pewc-number-field::-webkit-input-placeholder,
input.pewc-form-field::-webkit-input-placeholder,
textarea.pewc-form-field::-webkit-input-placeholder,
.pewc-item-field-wrapper input::-webkit-input-placeholder,
.pewc-item-field-wrapper textarea::-webkit-input-placeholder,
.pewc-number-input-wrapper input[type="number"]::-webkit-input-placeholder {
	color: var(--pewc-input-placeholder-color, #a8a096) !important;
	opacity: 1 !important;
}
input.pewc-number-field::-moz-placeholder,
input.pewc-form-field::-moz-placeholder,
textarea.pewc-form-field::-moz-placeholder,
.pewc-item-field-wrapper input::-moz-placeholder,
.pewc-item-field-wrapper textarea::-moz-placeholder,
.pewc-number-input-wrapper input[type="number"]::-moz-placeholder {
	color: var(--pewc-input-placeholder-color, #a8a096) !important;
	opacity: 1 !important;
}
input.pewc-number-field:-ms-input-placeholder,
input.pewc-form-field:-ms-input-placeholder,
textarea.pewc-form-field:-ms-input-placeholder,
.pewc-item-field-wrapper input:-ms-input-placeholder,
.pewc-item-field-wrapper textarea:-ms-input-placeholder,
.pewc-number-input-wrapper input[type="number"]:-ms-input-placeholder {
	color: var(--pewc-input-placeholder-color, #a8a096) !important;
	opacity: 1 !important;
}

/* Dica / Subtexto de Medida / Mínimo e Máximo */
.pewc-min-max-subtext,
.pewc-measure-hint,
.pewc-item-number .pewc-item-field-wrapper > small {
	font-size: var(--pewc-subtext-size, 11px) !important;
	color: var(--pewc-subtext-color, #8c827a) !important;
	margin-top: var(--pewc-subtext-margin-top, 6px) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	text-align: var(--pewc-subtext-align, center) !important;
	width: 100% !important;
	opacity: 0.9 !important;
	line-height: 1.4 !important;
}

.pewc-min-max-subtext span,
.pewc-measure-hint span {
	color: var(--pewc-subtext-color, #8c827a) !important;
	font-size: var(--pewc-subtext-size, 11px) !important;
}

.pewc-min-max-subtext .pewc-min-max-sep {
	opacity: 0.5 !important;
	margin: 0 4px !important;
	font-size: 10px !important;
}

/* ==========================================================================
   9. CONTROLE DESLIZANTE (RANGE SLIDER)
   ========================================================================== */
input[type='range'].pewc-range-slider {
	-webkit-appearance: none !important;
	appearance: none !important;
	width: 100% !important;
	height: 28px !important;
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	margin: 8px 0 !important;
	cursor: pointer !important;
	outline: none !important;
}

input[type='range'].pewc-range-slider::-webkit-slider-runnable-track {
	width: 100% !important;
	height: 6px !important;
	cursor: pointer !important;
	background-color: var(--pewc-slider-track, #e8e2d9) !important;
	border-radius: 3px !important;
	border: none !important;
}

input[type='range'].pewc-range-slider::-webkit-slider-thumb {
	height: var(--pewc-slider-thumb-size, 18px) !important;
	width: var(--pewc-slider-thumb-size, 18px) !important;
	border-radius: 50% !important;
	background-color: var(--pewc-slider-thumb, #634432) !important;
	cursor: pointer !important;
	-webkit-appearance: none !important;
	margin-top: calc((6px - var(--pewc-slider-thumb-size, 18px)) / 2) !important;
	border: 2px solid #ffffff !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25) !important;
	transition: transform 0.1s ease !important;
}

input[type='range'].pewc-range-slider:active::-webkit-slider-thumb {
	transform: scale(1.15) !important;
}

/* ==========================================================================
   10. AMOSTRAS DE TECIDO & CORES (SWATCHES GRID)
   ========================================================================== */
.pewc-item-image_swatch,
.pewc-swatches-grid {
	width: 100% !important;
	max-width: 100% !important;
	flex: 0 0 100% !important;
}

/* Amostras com número de colunas definido no painel do campo (Grupos Globais) */
.pewc-radio-images-wrapper.pewc-columns-1,
.pewc-checkboxes-images-wrapper.pewc-columns-1 {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	gap: var(--pewc-swatch-gap, 12px) !important;
}
.pewc-radio-images-wrapper.pewc-columns-2,
.pewc-checkboxes-images-wrapper.pewc-columns-2 {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: var(--pewc-swatch-gap, 12px) !important;
}
.pewc-radio-images-wrapper.pewc-columns-3,
.pewc-checkboxes-images-wrapper.pewc-columns-3 {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: var(--pewc-swatch-gap, 12px) !important;
}
.pewc-radio-images-wrapper.pewc-columns-4,
.pewc-checkboxes-images-wrapper.pewc-columns-4 {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: var(--pewc-swatch-gap, 12px) !important;
}
.pewc-radio-images-wrapper.pewc-columns-5,
.pewc-checkboxes-images-wrapper.pewc-columns-5 {
	display: grid !important;
	grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
	gap: var(--pewc-swatch-gap, 12px) !important;
}
.pewc-radio-images-wrapper.pewc-columns-6,
.pewc-checkboxes-images-wrapper.pewc-columns-6 {
	display: grid !important;
	grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
	gap: var(--pewc-swatch-gap, 12px) !important;
}

/* Fallback para swatches sem classe de colunas explícita */
ul.pewc-ul-image_swatch,
.pewc-swatches-grid ul,
.pewc-radio-images-wrapper:not([class*="pewc-columns-"]),
.pewc-checkboxes-images-wrapper:not([class*="pewc-columns-"]) {
	display: grid !important;
	grid-template-columns: repeat(var(--pewc-swatch-cols, 3), minmax(0, 1fr)) !important;
	gap: var(--pewc-swatch-gap, 12px) !important;
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
}

/* ITENS DO SWATCH: Força preenchimento total de cada célula do Grid e ANULA width percentual do style.css antigo */
.pewc-radio-images-wrapper .pewc-radio-image-wrapper,
.pewc-checkboxes-images-wrapper .pewc-checkbox-image-wrapper,
.pewc-radio-images-wrapper[class*="pewc-columns-"] .pewc-radio-image-wrapper,
.pewc-checkboxes-images-wrapper[class*="pewc-columns-"] .pewc-checkbox-image-wrapper,
ul.pewc-ul-image_swatch > li,
.pewc-radio-image-wrapper,
.pewc-checkbox-image-wrapper {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	float: none !important;
	margin: 0 !important;
	list-style: none !important;
	padding: var(--pewc-swatch-padding, 8px) !important;
	border: var(--pewc-swatch-border-width, 1px) var(--pewc-swatch-border-style, solid) var(--pewc-swatch-border, #d7d1c5) !important;
	border-radius: var(--pewc-swatch-radius, 6px) !important;
	background-color: var(--pewc-swatch-bg, #ffffff) !important;
	cursor: pointer !important;
	text-align: var(--pewc-swatch-align-text, center) !important;
	transition: all 0.2s ease !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: var(--pewc-swatch-align, center) !important;
	justify-content: flex-start !important;
	position: relative;
	box-sizing: border-box !important;
}

.pewc-radio-image-wrapper label,
.pewc-checkbox-image-wrapper label {
	text-align: var(--pewc-swatch-align-text, center) !important;
	width: 100% !important;
	display: block !important;
}

/* Hover no Swatch */
ul.pewc-ul-image_swatch > li:hover,
.pewc-radio-image-wrapper:hover,
.pewc-checkbox-image-wrapper:hover {
	border-color: var(--pewc-swatch-hover-border, var(--pewc-swatch-active-border, #634432)) !important;
	background-color: var(--pewc-swatch-hover-bg, var(--pewc-swatch-active-bg, #fdfaf7)) !important;
}

/* Estado Ativo / Selecionado do Swatch */
.wp-block-pewc-product-addons-editor-canvas .pewc-radio-image-wrapper.checked,
.wp-block-pewc-product-addons-editor-canvas .pewc-checkbox-image-wrapper.checked,
.wp-block-pewc-product-addons-editor-canvas .pewc-radio-image-wrapper.active,
.wp-block-pewc-product-addons-editor-canvas .pewc-checkbox-image-wrapper.active,
.wp-block-pewc-product-addons-editor-canvas .pewc-radio-image-wrapper:has(input:checked),
.wp-block-pewc-product-addons-editor-canvas .pewc-checkbox-image-wrapper:has(input:checked),
.wp-block-pewc-product-addons .pewc-radio-image-wrapper.checked,
.wp-block-pewc-product-addons .pewc-checkbox-image-wrapper.checked,
.wp-block-pewc-product-addons .pewc-radio-image-wrapper.active,
.wp-block-pewc-product-addons .pewc-checkbox-image-wrapper.active,
.wp-block-pewc-product-addons .pewc-radio-image-wrapper:has(input:checked),
.wp-block-pewc-product-addons .pewc-checkbox-image-wrapper:has(input:checked),
.pewc-gutenberg-addons-wrapper .pewc-radio-image-wrapper.checked,
.pewc-gutenberg-addons-wrapper .pewc-checkbox-image-wrapper.checked,
.pewc-gutenberg-addons-wrapper .pewc-radio-image-wrapper.active,
.pewc-gutenberg-addons-wrapper .pewc-checkbox-image-wrapper.active,
.pewc-gutenberg-addons-wrapper .pewc-radio-image-wrapper:has(input:checked),
.pewc-gutenberg-addons-wrapper .pewc-checkbox-image-wrapper:has(input:checked),
.pewc-elementor-addons-wrapper .pewc-radio-image-wrapper.checked,
.pewc-elementor-addons-wrapper .pewc-checkbox-image-wrapper.checked,
.pewc-elementor-addons-wrapper .pewc-radio-image-wrapper.active,
.pewc-elementor-addons-wrapper .pewc-checkbox-image-wrapper.active,
.pewc-elementor-addons-wrapper .pewc-radio-image-wrapper:has(input:checked),
.pewc-elementor-addons-wrapper .pewc-checkbox-image-wrapper:has(input:checked),
ul.pewc-product-extra-groups .pewc-radio-image-wrapper.checked,
ul.pewc-product-extra-groups .pewc-checkbox-image-wrapper.checked,
ul.pewc-product-extra-groups .pewc-radio-image-wrapper.active,
ul.pewc-product-extra-groups .pewc-checkbox-image-wrapper.active,
ul.pewc-product-extra-groups .pewc-radio-image-wrapper:has(input:checked),
ul.pewc-product-extra-groups .pewc-checkbox-image-wrapper:has(input:checked),
ul.pewc-ul-image_swatch > li.checked,
ul.pewc-ul-image_swatch > li.active,
.pewc-radio-image-wrapper.checked,
.pewc-radio-image-wrapper.active,
.pewc-checkbox-image-wrapper.checked,
.pewc-checkbox-image-wrapper.active,
.pewc-radio-image-wrapper:has(input:checked),
.pewc-checkbox-image-wrapper:has(input:checked) {
	border-color: var(--pewc-swatch-active-border, #634432) !important;
	border-width: var(--pewc-swatch-active-border-width, 2px) !important;
	border-style: var(--pewc-swatch-border-style, solid) !important;
	background-color: var(--pewc-swatch-active-bg, #fdfaf7) !important;
}

.pewc-radio-image-wrapper label input:checked + img,
.pewc-checkbox-image-wrapper label input:checked + img,
.pewc-radio-image-wrapper label input:checked + picture,
.pewc-checkbox-image-wrapper label input:checked + picture {
	border-color: var(--pewc-swatch-active-border, #634432) !important;
	border-width: var(--pewc-swatch-active-border-width, 2px) !important;
}

/* Sombras Normais dos Swatches (swatchShadow) */
.pewc-swatch-shadow-none ul.pewc-ul-image_swatch > li,
.pewc-swatch-shadow-none .pewc-radio-image-wrapper,
.pewc-swatch-shadow-none .pewc-checkbox-image-wrapper {
	box-shadow: none !important;
}

.pewc-swatch-shadow-soft ul.pewc-ul-image_swatch > li,
.pewc-swatch-shadow-soft .pewc-radio-image-wrapper,
.pewc-swatch-shadow-soft .pewc-checkbox-image-wrapper {
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05) !important;
}

.pewc-swatch-shadow-medium ul.pewc-ul-image_swatch > li,
.pewc-swatch-shadow-medium .pewc-radio-image-wrapper,
.pewc-swatch-shadow-medium .pewc-checkbox-image-wrapper {
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
}

.pewc-swatch-shadow-elevated ul.pewc-ul-image_swatch > li,
.pewc-swatch-shadow-elevated .pewc-radio-image-wrapper,
.pewc-swatch-shadow-elevated .pewc-checkbox-image-wrapper {
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12) !important;
}

/* Sombras Ativas / Selecionadas dos Swatches (swatchActiveShadow) */
.pewc-swatch-active-shadow-none ul.pewc-ul-image_swatch > li.checked,
.pewc-swatch-active-shadow-none ul.pewc-ul-image_swatch > li.active,
.pewc-swatch-active-shadow-none .pewc-radio-image-wrapper.checked,
.pewc-swatch-active-shadow-none .pewc-radio-image-wrapper.active,
.pewc-swatch-active-shadow-none .pewc-checkbox-image-wrapper.checked,
.pewc-swatch-active-shadow-none .pewc-checkbox-image-wrapper.active,
.pewc-swatch-active-shadow-none .pewc-radio-image-wrapper:has(input:checked),
.pewc-swatch-active-shadow-none .pewc-checkbox-image-wrapper:has(input:checked) {
	box-shadow: none !important;
}

.pewc-swatch-active-shadow-soft ul.pewc-ul-image_swatch > li.checked,
.pewc-swatch-active-shadow-soft ul.pewc-ul-image_swatch > li.active,
.pewc-swatch-active-shadow-soft .pewc-radio-image-wrapper.checked,
.pewc-swatch-active-shadow-soft .pewc-radio-image-wrapper.active,
.pewc-swatch-active-shadow-soft .pewc-checkbox-image-wrapper.checked,
.pewc-swatch-active-shadow-soft .pewc-checkbox-image-wrapper.active,
.pewc-swatch-active-shadow-soft .pewc-radio-image-wrapper:has(input:checked),
.pewc-swatch-active-shadow-soft .pewc-checkbox-image-wrapper:has(input:checked) {
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

.pewc-swatch-active-shadow-medium ul.pewc-ul-image_swatch > li.checked,
.pewc-swatch-active-shadow-medium ul.pewc-ul-image_swatch > li.active,
.pewc-swatch-active-shadow-medium .pewc-radio-image-wrapper.checked,
.pewc-swatch-active-shadow-medium .pewc-radio-image-wrapper.active,
.pewc-swatch-active-shadow-medium .pewc-checkbox-image-wrapper.checked,
.pewc-swatch-active-shadow-medium .pewc-checkbox-image-wrapper.active,
.pewc-swatch-active-shadow-medium .pewc-radio-image-wrapper:has(input:checked),
.pewc-swatch-active-shadow-medium .pewc-checkbox-image-wrapper:has(input:checked) {
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.14) !important;
}

.pewc-swatch-active-shadow-elevated ul.pewc-ul-image_swatch > li.checked,
.pewc-swatch-active-shadow-elevated ul.pewc-ul-image_swatch > li.active,
.pewc-swatch-active-shadow-elevated .pewc-radio-image-wrapper.checked,
.pewc-swatch-active-shadow-elevated .pewc-radio-image-wrapper.active,
.pewc-swatch-active-shadow-elevated .pewc-checkbox-image-wrapper.checked,
.pewc-swatch-active-shadow-elevated .pewc-checkbox-image-wrapper.active,
.pewc-swatch-active-shadow-elevated .pewc-radio-image-wrapper:has(input:checked),
.pewc-swatch-active-shadow-elevated .pewc-checkbox-image-wrapper:has(input:checked) {
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.20) !important;
}

.pewc-swatch-active-shadow-glow ul.pewc-ul-image_swatch > li.checked,
.pewc-swatch-active-shadow-glow ul.pewc-ul-image_swatch > li.active,
.pewc-swatch-active-shadow-glow .pewc-radio-image-wrapper.checked,
.pewc-swatch-active-shadow-glow .pewc-radio-image-wrapper.active,
.pewc-swatch-active-shadow-glow .pewc-checkbox-image-wrapper.checked,
.pewc-swatch-active-shadow-glow .pewc-checkbox-image-wrapper.active,
.pewc-swatch-active-shadow-glow .pewc-radio-image-wrapper:has(input:checked),
.pewc-swatch-active-shadow-glow .pewc-checkbox-image-wrapper:has(input:checked) {
	box-shadow: 0 0 14px var(--pewc-swatch-active-border, #634432) !important;
}

.pewc-swatch-active-shadow-colored ul.pewc-ul-image_swatch > li.checked,
.pewc-swatch-active-shadow-colored ul.pewc-ul-image_swatch > li.active,
.pewc-swatch-active-shadow-colored .pewc-radio-image-wrapper.checked,
.pewc-swatch-active-shadow-colored .pewc-radio-image-wrapper.active,
.pewc-swatch-active-shadow-colored .pewc-checkbox-image-wrapper.checked,
.pewc-swatch-active-shadow-colored .pewc-checkbox-image-wrapper.active,
.pewc-swatch-active-shadow-colored .pewc-radio-image-wrapper:has(input:checked),
.pewc-swatch-active-shadow-colored .pewc-checkbox-image-wrapper:has(input:checked) {
	box-shadow: 0 4px 16px rgba(99, 68, 50, 0.25) !important;
}

.pewc-radio-image-wrapper label img,
.pewc-checkbox-image-wrapper label img,
.pewc-radio-image-wrapper label input:checked + img,
.pewc-checkbox-image-wrapper label input:checked + img {
	border: none !important;
}

/* Imagem ou preview de cor do Swatch */
.pewc-radio-image-wrapper img,
.pewc-radio-image-wrapper .pewc-swatch-preview,
.pewc-item-image_swatch img {
	width: 100% !important;
	height: var(--pewc-swatch-height, 90px) !important;
	object-fit: cover !important;
	border-radius: calc(var(--pewc-swatch-radius, 6px) - 2px) !important;
	display: block !important;
	margin: 0 auto 6px auto !important;
}

/* Rótulo do Swatch */
.pewc-theme-elementor-title,
.pewc-swatch-label {
	display: block !important;
	font-weight: 600 !important;
	font-size: var(--pewc-option-title-size, 13px) !important;
	color: var(--pewc-option-title-color, #161616) !important;
	line-height: 1.3 !important;
	text-align: var(--pewc-swatch-align-text, center) !important;
	width: 100% !important;
}

/* Preço Adicional do Swatch (+ R$) */
.pewc-theme-elementor-price,
.pewc-swatch-price {
	display: block !important;
	font-size: var(--pewc-option-price-size, 12px) !important;
	color: var(--pewc-option-price-color, #634432) !important;
	font-weight: 600 !important;
	margin-top: 3px !important;
	text-align: var(--pewc-swatch-align-text, center) !important;
	width: 100% !important;
}

/* ==========================================================================
   11. MODOS INTERATIVOS: ABAS (TABS), ACORDEÃO E WIZARD
   ========================================================================== */

/* Modo Abas */
.pewc-tabs-nav {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
	margin-bottom: 20px !important;
	border-bottom: 2px solid #e8e2d9;
	padding-bottom: 2px;
}

.pewc-tab-btn {
	background-color: var(--pewc-tab-bg, #f7f5f0) !important;
	color: var(--pewc-tab-color, #444444) !important;
	border: 1px solid #d7d1c5 !important;
	border-bottom: none !important;
	border-radius: 6px 6px 0 0 !important;
	padding: 10px 18px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	transition: all 0.2s ease !important;
}

.pewc-tab-btn.active {
	background-color: var(--pewc-tab-active-bg, #634432) !important;
	color: var(--pewc-tab-active-color, #ffffff) !important;
	border-color: var(--pewc-tab-active-bg, #634432) !important;
}

.pewc-tab-hidden {
	display: none !important;
}

.pewc-tab-active {
	display: block !important;
}

/* Modo Acordeão */
.pewc-accordion-header {
	cursor: pointer !important;
	user-select: none;
	position: relative;
	padding-right: 30px;
}

.pewc-accordion-toggle {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: 18px;
	transition: transform 0.25s ease;
}

.pewc-accordion-closed .pewc-group-content-wrapper {
	display: none !important;
}

.pewc-accordion-closed .pewc-accordion-toggle {
	transform: translateY(-50%) rotate(-90deg);
}

.pewc-accordion-open .pewc-group-content-wrapper {
	display: block !important;
}

/* Modo Wizard (Passo a Passo) */
.pewc-wizard-progress {
	margin-bottom: 22px !important;
}

.pewc-wizard-steps-list {
	display: flex !important;
	gap: 8px !important;
	justify-content: space-between !important;
	overflow-x: auto;
	padding-bottom: 6px;
}

.pewc-wizard-step-indicator {
	flex: 1;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	background: #f7f5f0;
	border: 1px solid #d7d1c5;
	border-radius: 6px;
	font-size: 13px;
	font-weight: 600;
	color: #666;
}

.pewc-wizard-step-indicator.active {
	background: #ffffff;
	border-color: var(--pewc-wizard-btn-bg, #634432);
	color: var(--pewc-wizard-btn-bg, #634432);
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
}

.pewc-wizard-step-indicator.completed {
	background: #e8f5e9;
	border-color: #a5d6a7;
	color: #2e7d32;
}

.pewc-wizard-step-hidden {
	display: none !important;
}

.pewc-wizard-step-active {
	display: block !important;
}

.pewc-wizard-nav-buttons {
	display: flex !important;
	justify-content: space-between !important;
	margin-top: 24px !important;
	padding-top: 16px !important;
	border-top: 1px solid #e8e2d9;
}

.pewc-wizard-nav-buttons button {
	cursor: pointer;
	padding: 10px 20px;
	font-size: 14px;
	font-weight: 600;
	border-radius: 6px;
	transition: all 0.2s ease;
}

.pewc-wizard-prev-btn {
	background: #f7f5f0;
	color: #444;
	border: 1px solid #d7d1c5;
}

.pewc-wizard-next-btn,
.pewc-wizard-finish-btn {
	background: var(--pewc-wizard-btn-bg, #634432) !important;
	color: var(--pewc-wizard-btn-color, #ffffff) !important;
	border: 1px solid var(--pewc-wizard-btn-bg, #634432) !important;
	margin-left: auto;
}

/* ==========================================================================
   12. RESUMO DE TOTAIS & PREÇO
   ========================================================================== */
.pewc-total-field-wrapper,
.wp-block-pewc-product-addons-totals {
	background-color: var(--pewc-totals-bg, #fdfaf7) !important;
	border: var(--pewc-totals-border-width, 1px) var(--pewc-totals-border-style, solid) var(--pewc-totals-border, #e8e2d9) !important;
	border-radius: var(--pewc-totals-radius, 8px) !important;
	padding: var(--pewc-totals-padding, 16px) !important;
	margin-top: 20px !important;
	box-sizing: border-box !important;
	width: 100% !important;
}

.pewc-total-field-wrapper p,
.wp-block-pewc-product-addons-totals p {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	margin: 6px 0 !important;
	font-size: var(--pewc-totals-font-size, 14px) !important;
	color: var(--pewc-totals-text-color, #333333) !important;
}

.pewc-total-field-wrapper p:not(:last-child),
.wp-block-pewc-product-addons-totals p:not(:last-child) {
	border-bottom: 1px dashed var(--pewc-totals-divider-color, #e8e2d9) !important;
	padding-bottom: 8px !important;
}

.pewc-row-tot-grand,
.wp-block-pewc-product-addons-totals p.pewc-row-tot-grand {
	font-weight: 700 !important;
	font-size: var(--pewc-totals-grand-size, 1.15em) !important;
	border-top: 1px solid var(--pewc-totals-divider-color, #e8e2d9) !important;
	padding-top: 10px !important;
	margin-top: 10px !important;
	color: var(--pewc-totals-grand-color, #634432) !important;
}

.pewc-total-field {
	font-weight: 700 !important;
}

/* Ocultação Condicional dos Totais */
.pewc-show-totals-no .pewc-total-field-wrapper,
.wp-block-pewc-product-addons.pewc-show-totals-no .pewc-total-field-wrapper,
.wp-block-pewc-product-addons-editor-canvas.pewc-show-totals-no .pewc-total-field-wrapper {
	display: none !important;
}

.pewc-show-tot-prod-no .pewc-total-field-wrapper p:has(#pewc-per-product-label),
.pewc-show-tot-prod-no .pewc-total-field-wrapper p:has(#pewc-per-product-total),
.pewc-show-tot-prod-no .pewc-row-tot-prod {
	display: none !important;
}

.pewc-show-tot-opt-no .pewc-total-field-wrapper p:has(#pewc-options-total-label),
.pewc-show-tot-opt-no .pewc-total-field-wrapper p:has(#pewc-options-total),
.pewc-show-tot-opt-no .pewc-row-tot-opt {
	display: none !important;
}

.pewc-show-tot-grand-no .pewc-total-field-wrapper p:has(#pewc-grand-total-label),
.pewc-show-tot-grand-no .pewc-total-field-wrapper p:has(#pewc-grand-total),
.pewc-show-tot-grand-no .pewc-row-tot-grand {
	display: none !important;
}

/* ==========================================================================
   13. BOTÃO LIMPAR SELEÇÕES (RESET)
   ========================================================================== */
.wp-block-pewc-product-addons-reset {
	margin-top: 10px !important;
}

/* Ocultação Condicional do Botão Limpar Opções */
.pewc-show-clear-no button.pewc-clear-all,
.pewc-show-clear-no .wp-block-pewc-product-addons-reset,
.wp-block-pewc-product-addons.pewc-show-clear-no button.pewc-clear-all,
.wp-block-pewc-product-addons.pewc-show-clear-no .wp-block-pewc-product-addons-reset,
.wp-block-pewc-product-addons-editor-canvas.pewc-show-clear-no button.pewc-clear-all,
.wp-block-pewc-product-addons-editor-canvas.pewc-show-clear-no .wp-block-pewc-product-addons-reset {
	display: none !important;
}

.pewc-align-left { text-align: left !important; }
.pewc-align-center { text-align: center !important; }
.pewc-align-right { text-align: right !important; }
.pewc-align-justify { text-align: center !important; width: 100% !important; }

.pewc-clear-all {
	cursor: pointer !important;
	display: inline-block !important;
	font-weight: 600 !important;
	transition: all 0.2s ease !important;
	color: var(--pewc-clear-text, #444444) !important;
	background-color: var(--pewc-clear-bg, #f7f5f0) !important;
	border: 1px solid var(--pewc-clear-border, #d7d1c5) !important;
	border-radius: var(--pewc-clear-radius, 4px) !important;
	padding: var(--pewc-clear-padding, 8px) calc(var(--pewc-clear-padding, 8px) * 2) !important;
	font-size: var(--pewc-clear-font-size, 13px) !important;
}

.pewc-clear-all:hover {
	opacity: 0.88 !important;
	filter: brightness(0.96) !important;
}

/* ==========================================================================
   14. RESPONSIVIDADE & MOBILE (TABLETS & SMARTPHONES)
   ========================================================================== */
@media (max-width: 768px) {
	/* Força colunas mobile configuradas */
	.pewc-measure-cols-mob-1 ul.pewc-product-extra-groups > li:not(.pewc-item-range-slider):not(.pewc-item-image_swatch) {
		width: 100% !important;
		max-width: 100% !important;
		flex: 0 0 100% !important;
	}

	.pewc-measure-cols-mob-2 ul.pewc-product-extra-groups > li.pewc-field-columns-2,
	.pewc-measure-cols-mob-2 ul.pewc-product-extra-groups > li.pewc-field-columns-3,
	.pewc-measure-cols-mob-2 ul.pewc-product-extra-groups > li.pewc-field-columns-4,
	.pewc-measure-cols-mob-2 ul.pewc-product-extra-groups > li.pewc-item-number:not(.pewc-item-range-slider):not(.pewc-field-columns-1) {
		width: calc((100% - var(--pewc-measure-gap, 16px)) / 2) !important;
		max-width: calc((100% - var(--pewc-measure-gap, 16px)) / 2) !important;
		flex: 0 0 calc((100% - var(--pewc-measure-gap, 16px)) / 2) !important;
	}

	ul.pewc-product-extra-groups > li.pewc-field-columns-1,
	.pewc-field-columns-1 {
		width: 100% !important;
		max-width: 100% !important;
		flex: 0 0 100% !important;
		grid-column: 1 / -1 !important;
	}

	.pewc-swatch-cols-mob-1 ul.pewc-ul-image_swatch,
	.pewc-swatch-cols-mob-1 .pewc-radio-images-wrapper,
	.pewc-swatch-cols-mob-1 .pewc-checkboxes-images-wrapper {
		grid-template-columns: repeat(1, 1fr) !important;
	}

	.pewc-swatch-cols-mob-2 ul.pewc-ul-image_swatch,
	.pewc-swatch-cols-mob-2 .pewc-radio-images-wrapper,
	.pewc-swatch-cols-mob-2 .pewc-checkboxes-images-wrapper {
		grid-template-columns: repeat(2, 1fr) !important;
	}

	.pewc-swatch-cols-mob-3 ul.pewc-ul-image_swatch,
	.pewc-swatch-cols-mob-3 .pewc-radio-images-wrapper,
	.pewc-swatch-cols-mob-3 .pewc-checkboxes-images-wrapper {
		grid-template-columns: repeat(3, 1fr) !important;
	}
}

/* ==========================================================================
   15. BARRA FLUTUANTE MOBILE (MOBILE STICKY BAR)
   ========================================================================== */
.pewc-mobile-sticky-bar {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: var(--pewc-sticky-bg, #ffffff) !important;
	border-top: 1px solid #e0deda;
	padding: 10px 16px;
	box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.08);
	z-index: 9999;
	display: none;
}

@media (max-width: 768px) {
	.pewc-mobile-sticky-bar.pewc-sticky-visible {
		display: block !important;
	}
}

.pewc-mobile-sticky-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 600px;
	margin: 0 auto;
}

.pewc-mobile-sticky-info {
	display: flex;
	flex-direction: column;
}

.pewc-mobile-sticky-label {
	font-size: 11px;
	color: #777;
	text-transform: uppercase;
}

.pewc-mobile-sticky-total {
	font-size: 16px;
	font-weight: 700;
	color: var(--pewc-sticky-color, #161616) !important;
}

.pewc-mobile-sticky-cta {
	background-color: var(--pewc-sticky-btn-bg, var(--wd-primary-color, #634432)) !important;
	color: var(--pewc-sticky-btn-color, #ffffff) !important;
	border: none;
	border-radius: 6px;
	padding: 10px 18px;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
}

/* ==========================================================================
   24. ASSISTENTE POR ETAPAS COM CHECKLIST VISUAL (ACCORDION STEPPER)
   ========================================================================== */

/* Suprime o contador numérico CSS padrão quando o Stepper interativo estiver ativo */
[data-pewc-stepper="active"] .pewc-group-heading-wrapper h3:before {
	display: none !important;
}

/* Quando no modo Stepper: remove a moldura externa redundante do grupo para focar nas etapas */
[data-pewc-stepper="active"] .pewc-group-wrap,
.pewc-layout-steps .pewc-group-wrap,
.pewc-layout-accordion-steps .pewc-group-wrap,
.pewc-group-wrap:has(.pewc-stepper-card),
.pewc-product-extra-groups-wrap:has(.pewc-stepper-card) .pewc-group-wrap {
	border: none !important;
	box-shadow: none !important;
	background: transparent !important;
	padding: 0 !important;
	margin-bottom: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	flex: 0 0 100% !important;
	float: none !important;
	clear: both !important;
	box-sizing: border-box !important;
}

[data-pewc-stepper="active"] .pewc-group-heading-wrapper,
.pewc-layout-steps .pewc-group-heading-wrapper,
.pewc-layout-accordion-steps .pewc-group-heading-wrapper,
.pewc-group-wrap:has(.pewc-stepper-card) .pewc-group-heading-wrapper {
	display: none !important;
}

/* Container de Etapas: SEMPRE EM UMA ÚNICA COLUNA VERTICAL */
[data-pewc-stepper="active"] ul.pewc-product-extra-groups,
[data-pewc-stepper="active"] ul.pewc-product-extra-groups.cols-2,
[data-pewc-stepper="active"] ul.pewc-product-extra-groups.cols-3,
[data-pewc-stepper="active"] ul.pewc-product-extra-groups[class*="cols-"],
.pewc-layout-steps ul.pewc-product-extra-groups,
.pewc-layout-steps ul.pewc-product-extra-groups.cols-2,
.pewc-layout-steps ul.pewc-product-extra-groups[class*="cols-"],
.pewc-layout-accordion-steps ul.pewc-product-extra-groups,
.pewc-layout-accordion-steps ul.pewc-product-extra-groups.cols-2,
.pewc-layout-accordion-steps ul.pewc-product-extra-groups[class*="cols-"],
ul.pewc-product-extra-groups:has(.pewc-stepper-card),
ul.pewc-product-extra-groups.cols-2:has(.pewc-stepper-card),
ul.pewc-product-extra-groups[class*="cols-"]:has(.pewc-stepper-card),
ul.pewc-product-extra-groups.pewc-stepper-mode-list,
.pewc-stepper-mode-list {
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	width: 100% !important;
	max-width: 100% !important;
	grid-template-columns: none !important;
	grid-auto-flow: row !important;
	gap: 12px !important;
}

/* Card de Etapa em modo Stepper: SEMPRE NA COLUNA INTEIRA (100% / full width) E ORIENTAÇÃO VERTICAL */
[data-pewc-stepper="active"] .pewc-stepper-card,
.pewc-layout-steps .pewc-stepper-card,
.pewc-layout-accordion-steps .pewc-stepper-card,
ul.pewc-product-extra-groups > .pewc-stepper-card,
ul.pewc-product-extra-groups > li.pewc-stepper-card,
ul.pewc-product-extra-groups.cols-2 > .pewc-stepper-card,
ul.pewc-product-extra-groups.cols-2 > li.pewc-stepper-card,
ul.pewc-product-extra-groups[class*="cols-"] > .pewc-stepper-card,
ul.pewc-product-extra-groups[class*="cols-"] > li.pewc-stepper-card,
.pewc-stepper-card,
.pewc-stepper-card.pewc-step-pending,
.pewc-stepper-card.pewc-step-completed,
.pewc-stepper-card.pewc-step-active {
	display: flex !important;
	flex-direction: column !important;
	grid-column: 1 / -1 !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
	flex: 0 0 100% !important;
	float: none !important;
	clear: both !important;
	box-sizing: border-box !important;
}

/* Card base de cada etapa fechada (Minimizada na coluna inteira) */
.pewc-stepper-card.pewc-step-pending,
.pewc-stepper-card.pewc-step-completed {
	border-width: var(--pewc-stepper-border-width, 1px) !important;
	border-style: solid !important;
	border-color: var(--pewc-stepper-border-color, #d7d1c5) !important;
	border-radius: var(--pewc-stepper-border-radius, 8px) !important;
	margin-bottom: 12px !important;
	background: var(--pewc-stepper-bg-color, #ffffff) !important;
	background-color: var(--pewc-stepper-bg-color, #ffffff) !important;
	cursor: pointer !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	transition: border-color 0.2s ease, background-color 0.2s ease !important;
}

.pewc-stepper-card.pewc-step-pending:hover {
	border-color: var(--pewc-stepper-hover-border-color, #baa998) !important;
	background-color: var(--pewc-stepper-hover-bg-color, #faf8f5) !important;
}

.pewc-stepper-card.pewc-step-completed {
	border-color: var(--pewc-stepper-completed-border-color, #c8e6c9) !important;
	background-color: var(--pewc-stepper-completed-bg-color, #fafdfa) !important;
}

.pewc-stepper-card.pewc-step-completed:hover {
	border-color: var(--pewc-stepper-completed-hover-border-color, var(--pewc-stepper-hover-border-color, #baa998)) !important;
	background-color: var(--pewc-stepper-hover-bg-color, #faf8f5) !important;
}

/* Estado Ativo / Clicado: */
.pewc-stepper-card.pewc-step-active {
	border-width: var(--pewc-stepper-active-border-width, var(--pewc-stepper-border-width, 1px)) !important;
	border-style: solid !important;
	border-color: var(--pewc-stepper-active-border-color, var(--pewc-stepper-border-color, #d7d1c5)) !important;
	border-radius: var(--pewc-stepper-border-radius, 8px) !important;
	background: var(--pewc-stepper-active-bg-color, var(--pewc-stepper-bg-color, #ffffff)) !important;
	background-color: var(--pewc-stepper-active-bg-color, var(--pewc-stepper-bg-color, #ffffff)) !important;
	margin-bottom: 24px !important;
	box-sizing: border-box !important;
	transition: border-color 0.2s ease, background-color 0.2s ease !important;
}

/* Cabeçalho Interativo / Clicável */
.pewc-stepper-header {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 12px !important;
	width: 100% !important;
	padding: 12px 16px !important;
	cursor: pointer !important;
	user-select: none !important;
	box-sizing: border-box !important;
	transition: background-color 0.2s ease, border-color 0.2s ease !important;
}

.pewc-step-active .pewc-stepper-header {
	border-bottom: 1px solid #ede8e1 !important;
	background: transparent !important;
	padding: 12px 16px !important;
	margin-bottom: 16px !important;
}

/* Badge circular de etapa: SEMPRE NA ESQUERDA */
.pewc-stepper-badge {
	width: var(--pewc-step-badge-size, 28px) !important;
	height: var(--pewc-step-badge-size, 28px) !important;
	min-width: var(--pewc-step-badge-size, 28px) !important;
	max-width: var(--pewc-step-badge-size, 28px) !important;
	border-radius: var(--pewc-step-badge-radius, 50%) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: calc(var(--pewc-step-badge-size, 28px) * 0.48) !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	flex-shrink: 0 !important;
	margin: 0 !important;
	border-width: var(--pewc-step-badge-border-width, 1px) !important;
	border-style: solid !important;
	border-color: var(--pewc-step-badge-border-pending, transparent) !important;
	background-color: var(--pewc-step-badge-bg-pending, #e8e2d8) !important;
	color: var(--pewc-step-badge-color-pending, #6d6459) !important;
	box-sizing: border-box !important;
	transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, transform 0.25s ease !important;
}

/* Hover na etapa pendente */
.pewc-stepper-card.pewc-step-pending:hover .pewc-stepper-badge {
	border-color: var(--pewc-step-badge-hover-border, var(--pewc-step-badge-border-pending, transparent)) !important;
	background-color: var(--pewc-step-badge-hover-bg, var(--pewc-step-badge-bg-pending, #e8e2d8)) !important;
}

/* Badge Ativo / Clicado */
.pewc-step-active .pewc-stepper-badge {
	background-color: var(--pewc-step-badge-bg, var(--wd-primary-color, #634432)) !important;
	color: var(--pewc-step-badge-color, #ffffff) !important;
	border-color: var(--pewc-step-badge-border-active, transparent) !important;
	box-shadow: 0 0 0 3px rgba(99, 68, 50, 0.16) !important;
}

/* Badge Concluído: Checkmark (com check) */
.pewc-step-completed .pewc-stepper-badge {
	background-color: var(--pewc-step-badge-completed-bg, #2e7d32) !important;
	color: var(--pewc-step-badge-completed-color, #ffffff) !important;
	border-color: var(--pewc-step-badge-border-completed, transparent) !important;
	box-shadow: 0 0 0 2px var(--pewc-step-badge-completed-shadow, rgba(46, 125, 50, 0.2)) !important;
}

/* Hover na etapa concluída */
.pewc-stepper-card.pewc-step-completed:hover .pewc-stepper-badge {
	border-color: var(--pewc-step-badge-hover-border, var(--pewc-step-badge-border-completed, transparent)) !important;
}

.pewc-stepper-badge-check {
	display: none;
	width: 14px !important;
	height: 14px !important;
	vertical-align: middle !important;
	line-height: 1 !important;
}

.pewc-stepper-badge-check svg {
	width: 14px !important;
	height: 14px !important;
	max-width: 14px !important;
	max-height: 14px !important;
	display: block !important;
	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 3px !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
}

.pewc-stepper-badge-check svg polyline,
.pewc-stepper-badge-check svg path {
	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 3px !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
}

.pewc-step-completed .pewc-stepper-badge-num {
	display: none !important;
}

.pewc-step-completed .pewc-stepper-badge-check {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	animation: pewcCheckPop 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards !important;
}

@keyframes pewcCheckPop {
	0% { transform: scale(0.6); opacity: 0; }
	100% { transform: scale(1); opacity: 1; }
}

/* Título da Etapa: SEMPRE NA DIREITA DO BADGE, NA MESMA LINHA */
.pewc-stepper-title-wrap {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	margin: 0 !important;
	flex: 1 !important;
	min-width: 0 !important;
}

.pewc-stepper-title {
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #212121 !important;
	margin: 0 !important;
	line-height: 1.3 !important;
	display: inline-block !important;
}

/* Suprime totalmente pills de resumo ou textos de marcação do cabeçalho */
.pewc-stepper-summary-pill {
	display: none !important;
}

/* Corpo / Conteúdo da Etapa */
.pewc-stepper-body {
	padding: 0 !important;
	background: transparent !important;
	box-sizing: border-box !important;
	width: 100% !important;
}

.pewc-stepper-card.pewc-step-pending .pewc-stepper-body,
.pewc-stepper-card.pewc-step-completed .pewc-stepper-body {
	display: none !important;
}

.pewc-stepper-card.pewc-step-active .pewc-stepper-body {
	display: block !important;
	padding: 0 16px 16px 16px !important;
	animation: pewcStepperFade 0.25s ease-out !important;
}

@keyframes pewcStepperFade {
	from { opacity: 0.3; transform: translateY(-4px); }
	to { opacity: 1; transform: translateY(0); }
}

/* Remove margens e estilos de lista dos itens dentro do stepper */
.pewc-stepper-body .pewc-item {
	list-style: none !important;
	margin-bottom: 16px !important;
}

.pewc-stepper-body .pewc-item:last-child {
	margin-bottom: 0 !important;
}

/* Barra de Navegação de Etapas - Botões pegam a coluna inteira */
.pewc-stepper-nav-buttons {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	margin-top: 22px !important;
	padding-top: 0 !important;
	border-top: none !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.pewc-stepper-prev-btn,
.pewc-stepper-next-btn,
.pewc-stepper-finish-btn {
	flex: 1 1 0% !important;
	width: 100% !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 13px 20px !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	border-radius: 6px !important;
	cursor: pointer !important;
}

.pewc-stepper-prev-btn {
	background-color: #ffffff !important;
	border: 1px solid #d5cec5 !important;
	color: #555555 !important;
	font-weight: 600 !important;
	transition: background-color 0.15s ease, border-color 0.15s ease !important;
}

.pewc-stepper-prev-btn:hover {
	background-color: #f7f5f1 !important;
	border-color: #b8aea2 !important;
	color: #222222 !important;
}

.pewc-stepper-next-btn,
.pewc-stepper-finish-btn {
	background-color: var(--pewc-step-badge-bg, var(--wd-primary-color, #634432)) !important;
	color: #ffffff !important;
	border: none !important;
	font-weight: 700 !important;
	transition: background-color 0.15s ease, opacity 0.15s ease, transform 0.1s ease !important;
}

.pewc-stepper-next-btn:hover,
.pewc-stepper-finish-btn:hover {
	filter: brightness(1.08) !important;
}

.pewc-stepper-next-btn:active,
.pewc-stepper-finish-btn:active {
	transform: scale(0.98) !important;
}

/* Caixa de Totais: Oculta rigorosamente até concluir todas as etapas */
.pewc-stepper-hide-totals-active ~ .pewc-total-field-wrapper:not(.pewc-stepper-totals-visible),
.pewc-stepper-hide-totals-active ~ p.pewc-total-only:not(.pewc-stepper-totals-visible),
.pewc-stepper-hide-totals-active .pewc-total-field-wrapper:not(.pewc-stepper-totals-visible),
.pewc-stepper-hide-totals-active p.pewc-total-only:not(.pewc-stepper-totals-visible),
.pewc-stepper-hide-totals-active .wp-block-pewc-product-addons-totals:not(.pewc-stepper-totals-visible),
.pewc-stepper-hide-totals-active #pewc-totals-box:not(.pewc-stepper-totals-visible),
.pewc-stepper-hide-totals-active .pewc-totals-wrapper:not(.pewc-stepper-totals-visible),
body:has([data-pewc-stepper="active"][data-stepper-hide-totals="yes"]) .pewc-total-field-wrapper:not(.pewc-stepper-totals-visible),
body:has([data-pewc-stepper="active"][data-stepper-hide-totals="yes"]) p.pewc-total-only:not(.pewc-stepper-totals-visible),
form.cart:has([data-pewc-stepper="active"][data-stepper-hide-totals="yes"]) .pewc-total-field-wrapper:not(.pewc-stepper-totals-visible),
form.cart:has([data-pewc-stepper="active"][data-stepper-hide-totals="yes"]) p.pewc-total-only:not(.pewc-stepper-totals-visible),
.pewc-stepper-totals-hidden {
	display: none !important;
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
	height: 0 !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
}

body .pewc-total-field-wrapper.pewc-stepper-totals-visible,
body p.pewc-total-only.pewc-stepper-totals-visible,
form.cart .pewc-total-field-wrapper.pewc-stepper-totals-visible,
form.cart p.pewc-total-only.pewc-stepper-totals-visible,
#pewc-totals-box.pewc-stepper-totals-visible,
.pewc-totals-wrapper.pewc-stepper-totals-visible,
.wp-block-pewc-product-addons-totals.pewc-stepper-totals-visible,
.pewc-stepper-totals-visible {
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
	height: auto !important;
	overflow: visible !important;
	animation: pewcStepperFadeIn 0.35s ease forwards !important;
}

/* Botão Anterior e Botão Revisar Compra totalmente suprimidos */
.pewc-stepper-prev-btn,
.pewc-stepper-finish-btn {
	display: none !important;
}

@keyframes pewcStepperFadeIn {
	0% {
		opacity: 0;
		transform: translateY(10px);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

