/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/

/* General */

body {
--wd-form-brd-color-focus: var(--e-global-color-55a663b) !important;
}

.wd-nav:is(.wd-style-bordered, .wd-style-separated) > li:not(:last-child)::after {
border-right: 1px solid var(--e-global-color-55a663b) !important;
}

.wd-dropdown-menu {
border-top: 1px solid var(--e-global-color-55a663b) !important;
--wd-dropdown-shadow: none !important;
}

.woocommerce-variation > div {
margin-bottom: 0 !important;
}

.btn.btn-accent, .wd-wishlist-back-btn.btn {
text-transform: none !important;
} 

:is(.btn, .button, button, [type="submit"], [type="button"]) {
  text-transform: none !important;
}

.wd-dropdown-menu {
	margin-top: 24px !important;
}

.wd-dropdown-my-account {
	margin-top: 25px !important;
	border: 1px solid var(--e-global-color-55a663b) !important;
}

.opis-produktu h2 {
font-family: var( --e-global-typography-accent-font-family ), Sans-serif;
font-size: var( --e-global-typography-accent-font-size );
font-weight: var( --e-global-typography-accent-font-weight );
line-height: var( --e-global-typography-accent-line-height );
letter-spacing: var( --e-global-typography-accent-letter-spacing );
}

.wd-nav[class*="wd-style-underline"] .nav-link-text::after {
	height: 1px !important;
	transition: width .8s cubic-bezier(0.19, 1, 0.22, 1) !important;
}

.wd-sub-menu li > a {
color: var(--e-global-color-text) !important;
}

.wd-sub-menu li > a:hover {
color: var(--e-global-color-cb9e422) !important;
}

.off-canvas-tab .off-canvas-tab-title,
.off-canvas-tab .off-canvas-tab-title p,
.off-canvas-tab .off-canvas-tab-title strong {
    transition: color 0.25s ease;
}

.off-canvas-tab:hover .off-canvas-tab-title,
.off-canvas-tab:hover .off-canvas-tab-title p,
.off-canvas-tab:hover .off-canvas-tab-title strong {
    color: var(--e-global-color-cb9e422) !important;
}

.has-text-color.wp-block-paragraph {
  margin-block-end: 0 !important;
  padding: 2px 4px;
  font-size: 13px;
}

/* Product usage taxonomy tags */
.pineform-product-usage-row {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: flex-start;
	gap: 8px;
}

.pineform-product-usage-label,
.pineform-product-usage-list {
	width: auto !important;
	max-width: 100%;
}

.pineform-product-usage-label {
	flex: 0 0 auto;
	white-space: nowrap;
}

.pineform-product-usage-label .elementor-widget-container {
	white-space: nowrap;
}

.pineform-product-usage-label .elementor-widget-text-editor,
.pineform-product-usage-list .elementor-widget-loop-grid,
.pineform-product-usage-tag .elementor-widget-text-editor {
	margin-bottom: 0;
}

.pineform-product-usage-row p,
.pineform-product-usage-tag p {
	margin: 0;
}

.pineform-product-usage-list {
	flex: 1 1 0;
	min-width: 0;
}

.pineform-product-usage-loop,
.pineform-product-usage-loop .elementor-widget-container {
	width: 100%;
}

.pineform-product-usage-loop .elementor-loop-container,
.pineform-product-usage-loop .e-loop-items {
	display: flex !important;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 5px;
}

.pineform-product-usage-loop .e-loop-item,
.pineform-product-usage-loop .elementor-grid-item {
	width: auto !important;
	max-width: max-content;
	margin: 0 !important;
}

.pineform-product-usage-tag {
	display: inline-flex;
	align-items: center;
	width: auto !important;
	min-width: 0;
	min-height: 0;
	padding: 2px 6px;
	border: 1px solid #8a8a8a;
	color: #222;
	font-size: 12px;
	line-height: 1.2;
	text-decoration: none;
}

.pineform-product-usage-tag:hover {
	border-color: #111;
	color: #111;
	text-decoration: none;
}

.pineform-product-usage-tag .elementor-widget-container {
	line-height: 1;
}

.karuzela-kategorie-produktow .swiper-pagination-progressbar {
height: 2px !important;
}

/* Fallback for the saved Elementor element IDs, useful when the editor iframe has stale class data. */
.elementor-element-118f197 {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: flex-start !important;
	gap: 8px !important;
}

.elementor-element-48681a5 {
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: none !important;
	white-space: nowrap !important;
}

.elementor-element-48681a5 .elementor-widget-container,
.elementor-element-48681a5 p {
	white-space: nowrap !important;
}

.elementor-element-45891ea {
	flex: 1 1 0 !important;
	min-width: 0 !important;
	width: auto !important;
}

.elementor-element-24fd85f,
.elementor-element-24fd85f .elementor-widget-container {
	width: 100% !important;
}

.elementor-element-24fd85f .elementor-loop-container,
.elementor-element-24fd85f .e-loop-items {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: flex-start !important;
	gap: 5px !important;
}

.elementor-element-24fd85f .e-loop-item,
.elementor-element-24fd85f .elementor-grid-item {
	width: auto !important;
	max-width: max-content !important;
	margin: 0 !important;
}

.elementor-element-391e4db {
	display: inline-flex !important;
	width: auto !important;
	max-width: max-content !important;
}

@media (max-width: 1024px) {
	.pineform-product-usage-row,
	.elementor-element-118f197 {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: flex-start !important;
		gap: 5px !important;
	}

	.pineform-product-usage-label,
	.elementor-element-48681a5 {
		flex: 0 0 auto !important;
		width: 100% !important;
		max-width: 100% !important;
		white-space: nowrap !important;
	}

	.pineform-product-usage-list,
	.elementor-element-45891ea {
		flex: 0 1 auto !important;
		width: 100% !important;
		max-width: 100% !important;
	}
}

/* Global Elementor form controls */
.elementor-widget-form {
	--pineform-form-control-size: 14px;
	--pineform-form-control-gap: 10px;
	--pineform-form-control-line-height: 1.5;
}

.elementor-widget-form .elementor-field-option {
	line-height: var(--pineform-form-control-line-height);
}

.elementor-widget-form .elementor-field-option label,
.elementor-widget-form .elementor-field-type-acceptance .elementor-field-label,
.elementor-widget-form .elementor-field-type-acceptance .elementor-field-option > label {
	line-height: var(--pineform-form-control-line-height) !important;
}

.elementor-widget-form .elementor-field-option input[type="checkbox"],
.elementor-widget-form .elementor-field-type-acceptance input[type="checkbox"],
.elementor-widget-form input.elementor-acceptance-field[type="checkbox"] {
	-webkit-appearance: none !important;
	appearance: none !important;
	display: inline-grid !important;
	place-content: center !important;
	flex: 0 0 var(--pineform-form-control-size) !important;
	width: var(--pineform-form-control-size) !important;
	height: var(--pineform-form-control-size) !important;
	min-width: var(--pineform-form-control-size) !important;
	margin: 0px var(--pineform-form-control-gap) 0 0 !important;
	border: 1px solid #111 !important;
	border-radius: 0 !important;
	background-color: #fff !important;
	background-image: none !important;
	box-shadow: none !important;
	cursor: pointer;
}

.elementor-widget-form .elementor-field-option input[type="checkbox"]::before,
.elementor-widget-form .elementor-field-type-acceptance input[type="checkbox"]::before,
.elementor-widget-form input.elementor-acceptance-field[type="checkbox"]::before {
	content: "";
	width: 8px;
	height: 8px;
	background-color: #fff;
	clip-path: polygon(14% 44%, 0 59%, 41% 100%, 100% 18%, 84% 4%, 39% 67%);
	transform: scale(0);
	transition: transform 120ms ease-in-out;
}

.elementor-widget-form .elementor-field-option input[type="checkbox"]:checked,
.elementor-widget-form .elementor-field-type-acceptance input[type="checkbox"]:checked,
.elementor-widget-form input.elementor-acceptance-field[type="checkbox"]:checked {
	border-color: var(--e-global-color-55a663b) !important;
	background-color: var(--e-global-color-55a663b) !important;
}

.elementor-widget-form .elementor-field-option input[type="checkbox"]:checked::before,
.elementor-widget-form .elementor-field-type-acceptance input[type="checkbox"]:checked::before,
.elementor-widget-form input.elementor-acceptance-field[type="checkbox"]:checked::before {
	transform: scale(1);
}

.elementor-widget-form .elementor-field-option input[type="checkbox"]:focus-visible,
.elementor-widget-form .elementor-field-type-acceptance input[type="checkbox"]:focus-visible,
.elementor-widget-form input.elementor-acceptance-field[type="checkbox"]:focus-visible {
	outline: 2px solid var(--e-global-color-55a663b) !important;
	outline-offset: 2px;
}

.elementor-widget-form .elementor-field-option input[type="radio"] {
	accent-color: var(--e-global-color-55a663b);
}

.elementor-widget-form .elementor-field-type-acceptance.elementor-field-group {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: flex-start !important;
	gap: 0 !important;
	line-height: var(--pineform-form-control-line-height) !important;
}

.elementor-widget-form .elementor-field-type-acceptance.elementor-field-group > .elementor-field-subgroup {
	order: 1 !important;
	display: flex !important;
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: var(--pineform-form-control-size) !important;
	margin: 0 !important;
	padding: 0 !important;
}

.elementor-widget-form .elementor-field-type-acceptance.elementor-field-group > .elementor-field-label {
	order: 2 !important;
	flex: 1 1 auto !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: var(--pineform-form-control-line-height) !important;
}

.elementor-widget-form .elementor-field-type-acceptance .elementor-field-option {
	display: inline-flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: flex-start !important;
	gap: 0 !important;
	margin: 0 !important;
	line-height: var(--pineform-form-control-line-height) !important;
}

.elementor-widget-form .elementor-field-type-acceptance .elementor-field-option > input[type="checkbox"],
.elementor-widget-form .elementor-field-type-acceptance input[type="checkbox"],
.elementor-widget-form input.elementor-acceptance-field[type="checkbox"] {
	order: 1 !important;
	margin: 4px var(--pineform-form-control-gap) 0 0 !important;
}

.elementor-widget-form .elementor-field-type-acceptance .elementor-field-option > label {
	order: 2 !important;
	margin: 0 !important;
	line-height: var(--pineform-form-control-line-height) !important;
}

.elementor-widget-form .elementor-form .elementor-form-fields-wrapper > .elementor-field-group:nth-last-child(2),
.elementor-widget-form .elementor-form .elementor-field-type-acceptance.elementor-field-group:last-of-type {
	margin-bottom: 24px !important;
}

/* Pineform off-canvas overlay animation */
.elementor-widget-off-canvas .e-off-canvas__overlay {
	transition: opacity 0.45s ease !important;
}

.elementor-widget-off-canvas .e-off-canvas:not([aria-hidden="true"]) .e-off-canvas__overlay {
	animation: pineform-off-canvas-overlay-in var(--e-off-canvas-animation-duration-minimum, 0.6s) ease forwards;
}

.elementor-widget-off-canvas .e-off-canvas.animated-reverse-wrapper .e-off-canvas__overlay {
	animation: pineform-off-canvas-overlay-out var(--e-off-canvas-animation-duration-minimum, 0.6s) ease forwards;
}

@keyframes pineform-off-canvas-overlay-in {
	from {
		opacity: 0;
	}

	to {
		opacity: var(--e-off-canvas-overlay-opacity);
	}
}

@keyframes pineform-off-canvas-overlay-out {
	from {
		opacity: var(--e-off-canvas-overlay-opacity);
	}

	to {
		opacity: 0;
	}
}

/* Pineform active filters marker reset */
.wd-shop-active-filters .widget_layered_nav_filters ul,
.wd-shop-active-filters .wd-active-filters ul,
.widget_layered_nav_filters ul,
.wd-active-filters ul {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 0 14px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.wd-shop-active-filters .widget_layered_nav_filters li,
.wd-shop-active-filters .wd-active-filters li,
.widget_layered_nav_filters li,
.wd-active-filters li {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1 !important;
	list-style: none !important;
}

.wd-shop-active-filters .widget_layered_nav_filters a,
.wd-shop-active-filters .wd-active-filters a,
.widget_layered_nav_filters a,
.wd-active-filters a {
	display: inline-flex !important;
	align-items: center !important;
	line-height: 1.4 !important;
}

.wd-shop-active-filters .widget_layered_nav_filters li::marker,
.wd-shop-active-filters .wd-active-filters li::marker,
.widget_layered_nav_filters li::marker,
.wd-active-filters li::marker {
	content: "" !important;
	font-size: 0 !important;
}

/* Pineform mobile active filters */
@media (max-width: 767px) {
	.elementor-element-b4649da {
		justify-content: space-between !important;
		align-items: center !important;
		gap: 16px !important;
	}

	.elementor-element-2b31026,
	.elementor-element-0a91ed2 {
		width: auto !important;
		max-width: none !important;
		flex: 0 0 auto !important;
	}

	.wd-shop-active-filters,
	.wd-shop-active-filters .elementor-widget-container,
	.wd-active-filters {
		width: auto !important;
		min-width: max-content !important;
		max-width: 100% !important;
		overflow: visible !important;
	}

	.wd-active-filters {
		justify-content: flex-end !important;
	}

	.wd-active-filters .widget_layered_nav_filters {
		display: none !important;
	}

	.wd-active-filters .wd-clear-filters {
		flex: 0 0 auto !important;
		max-width: none !important;
		padding-inline-end: 0 !important;
		border-inline-end: 0 !important;
		white-space: nowrap !important;
	}

	.wd-active-filters .wd-clear-filters a {
		display: inline-flex !important;
		align-items: center !important;
		max-width: none !important;
		white-space: nowrap !important;
	}
}

body.single-product.pineform-product-no-showroom .pineform-product-actions-list .elementor-icon-list-items > li:first-child + li,
body.single-product.pineform-product-no-showroom .elementor-element-01691dd .elementor-icon-list-items > li:first-child + li {
	display: none !important;
}

/* Hide empty single-product price widget to avoid visual gaps when price is hidden. */
body.single-product .elementor-widget-wd_single_product_price.pineform-price-widget-empty,
body.single-product .elementor-widget-wd_single_product_price:has(.price:empty) {
	display: none !important;
}
/* Hide Woodmart archive price wrapper when product price is intentionally hidden. */
.wd-product.pineform-product-zero-price .wrap-price {
	display: none !important;
}
/* Hide empty Woodmart archive price wrapper when no price amount is rendered. */
body.woocommerce.archive .wd-product .wrap-price:not(:has(.woocommerce-Price-amount)),
body.woocommerce-page.archive .wd-product .wrap-price:not(:has(.woocommerce-Price-amount)),
body.tax-product_cat .wd-product .wrap-price:not(:has(.woocommerce-Price-amount)),
body.post-type-archive-product .wd-product .wrap-price:not(:has(.woocommerce-Price-amount)) {
	display: none !important;
}

/* Tylko desktop — etykieta „Wybierz kolor”
   wyśrodkowana względem pierwszego rzędu kafelków */
@media (min-width: 1025px) {

    table.variations
    tr:has(label[for="pa_wybierz-kolor"])
    > th.label {
        vertical-align: top !important;
    }

    table.variations
    label[for="pa_wybierz-kolor"] {
        display: flex !important;
        align-items: center;
        height: 70px;
        margin: 0 !important;
    }
}

/* Pineform square product media on WooCommerce product-category archives and product search results. */
body.tax-product_cat .wd-product .wd-product-thumb,
body.search-results.post-type-archive-product .wd-product .wd-product-thumb {
    position: relative;
    aspect-ratio: 1 / 1;
    height: auto !important;
    min-height: 0;
    overflow: hidden;
    background-color: var(--e-global-color-f64a09d);
}

body.tax-product_cat .wd-product .wd-product-img-link,
body.tax-product_cat .wd-product .wd-product-img-hover,
body.search-results.post-type-archive-product .wd-product .wd-product-img-link,
body.search-results.post-type-archive-product .wd-product .wd-product-img-hover {
    position: absolute !important;
    inset: 0 !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    background-color: var(--e-global-color-f64a09d);
}

body.tax-product_cat .wd-product .wd-product-img-link,
body.search-results.post-type-archive-product .wd-product .wd-product-img-link {
    display: flex !important;
}

body.tax-product_cat .wd-product :is(.wd-product-img-link, .wd-product-img-hover) :is(picture, img),
body.search-results.post-type-archive-product .wd-product :is(.wd-product-img-link, .wd-product-img-hover) :is(picture, img) {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    object-fit: contain;
    object-position: 50% 50%;
}

/* Pineform square product media in desktop full-screen search results. */
@media (min-width: 1025px) {
    .wd-search-full-screen .wd-suggestions-group.wd-type-product .wd-suggestion-thumb {
        display: flex;
        align-items: center;
        justify-content: center;
        aspect-ratio: 1 / 1;
        height: auto !important;
        min-height: 0;
        overflow: hidden;
        background-color: var(--e-global-color-f64a09d);
    }

    .wd-search-full-screen .wd-suggestions-group.wd-type-product .wd-suggestion-thumb img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        max-height: none !important;
        margin: 0 !important;
        object-fit: contain;
        object-position: 50% 50%;
    }
}

/* Product archive */
:where(.wd-loop-builder-off) .product-labels {
	top: 16px !important;
	inset-inline-start: 0 !important;
}
