/* 
**************
* woocommerce page
**************
*/
/* remove max width for non elementor pages for consistent styling */
body.wynd-shop-kit:not([class*='elementor-page-']) .site-main {
    max-width: unset !important;
    padding: 0 var(--padding-content-xs);
}

@media (min-width: 768px) {
    body.wynd-shop-kit:not([class*='elementor-page-']) .site-main {
        padding: 0 var(--padding-content-md);
    }
}

body.wynd-shop-kit:not([class*='elementor-page-']) .page-content {
    margin: 0 auto;
    max-width: var(--width-content);
}

/* remove woocommerce loading spinner */
.woocommerce .blockUI.blockOverlay::before,
.woocommerce .loader::before {
    display: none;
}

/*
**************
/* woocommerce message/notice
**************
*/
.wynd-shop-kit .woocommerce .woocommerce-message,
.wynd-shop-kit .woocommerce .woocommerce-error,
.wynd-shop-kit .woocommerce .woocommerce-info {
    align-items: center;
    border-radius: var(--border-radius-md);
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 16px 16px 16px 44px;
}

@media (min-width: 768px) {
    .wynd-shop-kit .woocommerce .woocommerce-message,
    .wynd-shop-kit .woocommerce .woocommerce-error,
    .wynd-shop-kit .woocommerce .woocommerce-info {
        flex-wrap: nowrap;
    }
}

.wynd-shop-kit .woocommerce .woocommerce-message {
    background-color: var(--color-success-light);
}

.wynd-shop-kit .woocommerce .woocommerce-error {
    background-color: var(--color-error-light);
}

.wynd-shop-kit .woocommerce .woocommerce-info {
    background-color: var(--color-info-light);
}

.wynd-shop-kit .woocommerce .woocommerce-message:focus-visible,
.wynd-shop-kit .woocommerce .woocommerce-error:focus-visible,
.wynd-shop-kit .woocommerce .woocommerce-info:focus-visible {
    outline: none;
}

.wynd-shop-kit .woocommerce .woocommerce-message::before,
.wynd-shop-kit .woocommerce .woocommerce-error::before,
.wynd-shop-kit .woocommerce .woocommerce-info::before {
    font-family: var(--icon-font-family);
    font-size: 20px;
    font-weight: 400;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
}

.wynd-shop-kit .woocommerce .woocommerce-message::before {
    content: var(--icon-circle-check);
}

.wynd-shop-kit .woocommerce .woocommerce-error::before {
    content: var(--icon-circle-alert);
}

.wynd-shop-kit .woocommerce .woocommerce-info::before {
    content: var(--icon-info);
}

.wynd-shop-kit .woocommerce .woocommerce-message .button,
.wynd-shop-kit .woocommerce .woocommerce-info .button {
    background: none;
    border-radius: 0;
    border: none;
    padding: 0;
    text-decoration: underline !important;
    width: 100%;
}

@media (min-width: 768px) {
    .wynd-shop-kit .woocommerce .woocommerce-message .button,
    .wynd-shop-kit .woocommerce .woocommerce-info .button {
        width: auto;
    }
}

.wynd-shop-kit .woocommerce .woocommerce-message .button:hover,
.wynd-shop-kit .woocommerce .woocommerce-info .button:hover {
    background: none;
    border: none;
}

.wynd-shop-kit .woocommerce .woocommerce-message .button:hover {
    color: var(--color-success-dark);
}

.wynd-shop-kit .woocommerce .woocommerce-info .button:hover {
    color: var(--color-info-dark);
}

/*
**************
/* woocommerce breadcrumb
**************
*/
.wynd-shop-kit nav.woocommerce-breadcrumb {
    align-items: center;
    color: var(--color-text);
    display: flex;
    flex-wrap: wrap;
    font-family: var(--font-family-body-bold);
    font-size: var(--font-size-body);
    font-style: var(--font-style-body-bold);
    font-weight: var(--font-weight-body-bold);
    gap: 6px;
    letter-spacing: var(--letter-spacing-body-bold);
    line-height: var(--line-height-body-bold);
    margin: 0;
    row-gap: 0;
    text-transform: var(--text-transform-body-bold);
    word-spacing: var(--word-spacing-body-bold);
}

.wynd-shop-kit nav.woocommerce-breadcrumb::before,
.wynd-shop-kit nav.woocommerce-breadcrumb::after {
    display: none;
}

.wynd-shop-kit nav.woocommerce-breadcrumb a {
    color: var(--color-text-secondary) !important;
    text-decoration: none;
}

.wynd-shop-kit nav.woocommerce-breadcrumb span {
    color: var(--color-divider);
    font-weight: var(--font-weight-body);
}

/*
**************
* woocommerce button
**************
*/
.wynd-shop-kit.woocommerce button.button,
.wynd-shop-kit.woocommerce button.button:disabled[disabled],
.wynd-shop-kit.woocommerce button.button.alt,
.wynd-shop-kit.woocommerce button.button.alt:disabled[disabled],
.wynd-shop-kit.woocommerce a.button,
.wynd-shop-kit.woocommerce a.button:disabled[disabled],
.wynd-shop-kit .woocommerce button.button,
.wynd-shop-kit .woocommerce button.button:disabled[disabled],
.wynd-shop-kit .woocommerce button.button.alt,
.wynd-shop-kit .woocommerce button.button.alt:disabled[disabled],
.wynd-shop-kit .woocommerce a.button,
.wynd-shop-kit .woocommerce a.button:disabled[disabled],
.wynd-shop-kit .woocommerce button.woocommerce-Button,
.wynd-shop-kit .woocommerce button.woocommerce-Button:disabled[disabled] {
    background-color: var(--color-primary-main);
    border: 1px solid var(--color-primary-main);
    border-radius: var(--border-radius-button);
    color: var(--color-primary-text);
    font-size: var(--font-size-button);
    font-weight: var(--font-weight-button);
    line-height: var(--line-height-button);
    padding: var(--padding-button-y) var(--padding-button-x);
    transition: var(--transition-default) all;
}

.wynd-shop-kit.woocommerce button.button:hover,
.wynd-shop-kit.woocommerce button.button.alt:hover,
.wynd-shop-kit.woocommerce a.button:hover,
.wynd-shop-kit .woocommerce button.button:hover,
.wynd-shop-kit .woocommerce button.button.alt:hover,
.wynd-shop-kit .woocommerce a.button:hover,
.wynd-shop-kit .woocommerce button.woocommerce-Button:hover {
    background-color: var(--color-primary-dark);
    border-color: var(--color-primary-dark);
    color: var(--color-primary-text);
}

.wynd-shop-kit.woocommerce button.button.alt:disabled[disabled],
.wynd-shop-kit.woocommerce a.button:disabled[disabled],
.wynd-shop-kit .woocommerce button.button.alt:disabled[disabled],
.wynd-shop-kit .woocommerce a.button:disabled[disabled],
.wynd-shop-kit .woocommerce button.woocommerce-Button:disabled[disabled] {
    background-color: var(--color-primary-main);
    border-color: var(--color-primary-main);
    cursor: initial;
    opacity: 0.5;
}

/* show/hide password button */
.wynd-shop-kit .woocommerce button.show-password-input {
    background: none;
}

.wynd-shop-kit .woocommerce button.show-password-input::before,
.wynd-shop-kit .woocommerce button.show-password-input::after {
    color: var(--color-text);
    font-family: var(--icon-font-family);
    transition: var(--transition-default);
}

.wynd-shop-kit .woocommerce button.show-password-input:hover::before,
.wynd-shop-kit .woocommerce button.show-password-input:hover::after {
    color: var(--color-primary-dark);
}

.wynd-shop-kit .woocommerce button.show-password-input::after {
    content: var(--icon-eye);
}

.wynd-shop-kit .woocommerce button.show-password-input::before {
    content: var(--icon-eye-closed);
}

.wynd-shop-kit .woocommerce button.show-password-input.display-password::after,
.wynd-shop-kit .woocommerce button.show-password-input:not(.display-password)::before {
    display: none;
}

/*
**************
* woocommerce input
**************
*/
/* adjust input fields to look like elementor input fields */
.wynd-shop-kit .woocommerce form .form-row input.input-text,
.wynd-shop-kit .woocommerce form .form-row textarea {
    font-size: var(--font-size-body);
    font-weight: var(--font-weight-body);
    line-height: var(--line-height-body);
}

.wynd-shop-kit.woocommerce input.input-text.disabled {
    cursor: default;
    opacity: 0.5;
    pointer-events: none;
}

/*
**************
* badge
**************
*/
.wynd-shop-kit .badge {
    background-color: var(--color-text);
    border-radius: var(--border-radius-badge);
    color: var(--color-text-contrast);
    font-family: var(--font-family-badge);
    font-size: var(--font-size-badge);
    font-weight: var(--font-weight-badge);
    letter-spacing: var(--letter-spacing-badge);
    line-height: var(--line-height-badge);
    padding: var(--padding-badge-y) var(--padding-badge-x);
    text-decoration: var(--text-decoration-badge);
    text-transform: var(--text-transform-badge);
    word-spacing: var(--word-spacing-badge);
}

.wynd-shop-kit .badge.badge-small {
    border-radius: var(--border-radius-badge-small);
    padding: var(--padding-badge-small-y) var(--padding-badge-small-x);
}

.wynd-shop-kit .badge.badge-primary {
    background-color: var(--color-primary-main);
    color: var(--color-primary-text);
}

.wynd-shop-kit .badge.badge-sale {
    background-color: var(--color-badge-sale-background);
    color: var(--color-badge-sale-text);
}

.wynd-shop-kit .badge.badge-bestseller {
    background-color: var(--color-badge-bestseller-background);
    color: var(--color-badge-bestseller-text);
}

.wynd-shop-kit .badge.badge-new {
    background-color: var(--color-badge-new-background);
    color: var(--color-badge-new-text);
}

.wynd-shop-kit .badge.badge-out-of-stock {
    background-color: var(--color-badge-out-of-stock-background);
    color: var(--color-badge-out-of-stock-text);
}

/*
**************
* payment badge
**************
*/
.wynd-shop-kit .payment-badges img {
    border: 1px solid var(--color-divider);
    border-radius: var(--border-radius-sm);
}

/*
**************
* woocommerce form
**************
*/
.wynd-shop-kit .woocommerce form .form-row label,
.wynd-shop-kit .woocommerce form .form-row .required {
    color: var(--e-global-color-text);
    font-family: var(--font-family-label);
    font-size: var(--font-size-label);
    font-style: var(--font-style-label);
    font-weight: var(--font-weight-label);
    letter-spacing: var(--letter-spacing-label);
    line-height: var(--line-height-label);
    text-decoration: var(--text-decoration-label);
    text-transform: var(--text-transform-label);
    word-spacing: var(--word-spacing-label);
    padding-bottom: 8px;
}

/*
**************
* woocommerce product grid
**************
*/
/* show specific elements when there are no search results */
.wynd-shop-kit .show-if-no-results {
    display: none !important;
}

.wynd-shop-kit:has(.jet-listing-not-found) .show-if-no-results {
    display: block !important;
}

/*
**************
* woocommerce price
**************
*/
.wynd-shop-kit.woocommerce .price ins {
    text-decoration: none;
}

/*
**************
* woocommerce select dropdown
**************
*/
.wynd-shop-kit .select2-container .select2-dropdown,
.wynd-shop-kit .select2-container .select2-selection {
    background-color: var(--color-input-background);
    border-color: var(--color-input-border);
    border-radius: var(--border-radius-input) !important;
    margin: 0;
    top: 1px;
}

.wynd-shop-kit .select2-container--open .select2-selection,
.wynd-shop-kit .select2-container--focus .select2-selection {
    border-color: var(--color-primary-main);
    outline: 1px solid var(--color-primary-main);
}

.wynd-shop-kit .select2-container .select2-selection--single .select2-selection__rendered {
    font-family: var(--font-family-body);
    font-size: var(--font-size-body);
    font-style: var(--font-style-body);
    font-weight: var(--font-weight-body);
    letter-spacing: var(--letter-spacing-body);
    line-height: var(--line-height-body);
    padding: var(--padding-input-y) var(--padding-input-x);
    text-decoration: var(--text-decoration-body);
    text-transform: var(--text-transform-body);
    word-spacing: var(--word-spacing-body);
}

.wynd-shop-kit .select2-container--default .select2-results__option {
    transition: var(--transition-default) all;
}

.wynd-shop-kit .select2-container--default .select2-results__option--highlighted[data-selected] {
    background-color: var(--color-gray-100);
    color: var(--color-text);
}

.wynd-shop-kit .select2-container--default .select2-results__option[data-selected='true'] {
    background-color: rgb(from var(--color-primary-main) r g b / 10%);
    color: var(--color-primary-text);
}

/* 
**************
* jetsmartfilters
**************
*/
/* hide preloading circle */
.wynd-shop-kit .jsf_provider-preloader {
    display: none !important;
}

/* checkbox filter */
.wynd-shop-kit .jet-smart-filters-checkboxes {
    cursor: pointer;
}

.wynd-shop-kit .jet-checkboxes-list .jet-checkboxes-list__item {
    gap: 8px;
}

.wynd-shop-kit .jet-checkboxes-list .jet-checkboxes-list__item .jet-checkboxes-list__input {
    visibility: visible;
}

.wynd-shop-kit .jet-checkboxes-list .jet-checkboxes-list__item .jet-checkboxes-list__decorator {
    display: none;
}

.wynd-shop-kit .jet-filter-items-dropdown__label,
.wynd-shop-kit .jet-sorting-select {
    padding-bottom: var(--padding-input-y);
    padding-left: var(--padding-input-x);
    padding-right: calc((var(--padding-input-x) * 2) + 10px);
    padding-top: var(--padding-input-y);
}

.wynd-shop-kit .jet-filter-items-dropdown.jet-dropdown-open .jet-filter-items-dropdown__label {
    border-color: var(--color-primary-main);
    outline: 1px solid var(--color-primary-main);
}

.wynd-shop-kit .jet-filter-items-dropdown .jet-filter-items-dropdown__body {
    z-index: 100;
}

.wynd-shop-kit
    .jet-filter-items-dropdown
    .jet-filter-items-dropdown__body
    .jet-checkboxes-list
    .jet-checkboxes-list-wrapper {
    margin: 0;
    padding: 0;
}

.wynd-shop-kit .jet-filter-items-dropdown .jet-checkboxes-list .jet-checkboxes-list-wrapper .jet-checkboxes-list__row {
    margin: 0;
    padding: 0;
}

.wynd-shop-kit
    .jet-filter-items-dropdown
    .jet-checkboxes-list
    .jet-checkboxes-list-wrapper
    .jet-checkboxes-list__row
    .jet-checkboxes-list__item {
    padding: var(--padding-input-y) var(--padding-input-x);
}

.wynd-shop-kit
    .jet-filter-items-dropdown
    .jet-checkboxes-list
    .jet-checkboxes-list-wrapper
    .jet-checkboxes-list__row:first-of-type
    .jet-checkboxes-list__item {
    padding-top: var(--padding-input-x);
}

.wynd-shop-kit
    .jet-filter-items-dropdown
    .jet-checkboxes-list
    .jet-checkboxes-list-wrapper
    .jet-checkboxes-list__row:last-of-type
    .jet-checkboxes-list__item {
    padding-bottom: var(--padding-input-x);
}

.wynd-shop-kit .jet-filter-items-dropdown .jet-filter-items-dropdown__active,
.wynd-shop-kit .jet-filter-items-dropdown .jet-filter-items-dropdown__n-selected {
    margin: 0;
}

.wynd-shop-kit .jet-filter-items-dropdown .jet-filter-items-dropdown__active {
    gap: 8px;
}

.wynd-shop-kit .jet-filter-items-dropdown .jet-filter-items-dropdown__active__item {
    margin: 0;
}

/* radio filter */
.wynd-shop-kit .jet-radio-list__item {
    gap: var(--spacing-checkbox);
}

.wynd-shop-kit .jet-radio-list__button {
    transition: var(--transition-default) all;
}

/* hide jetengine radio button to show default */
.wynd-shop-kit .jet-radio-list__item .jet-radio-list__decorator {
    display: none;
}

/* hide parent widget template when it has empty filter tags */
.wynd-shop-kit .elementor-widget-template:has(.jet-remove-all-filters.hide) {
    display: none;
}

/* hide filter dropdown when there are no filter options */
.wynd-shop-kit .elementor-widget-jet-smart-filters-checkboxes:not(:has(.jet-checkboxes-list)),
.wynd-shop-kit
    .elementor-widget-jet-smart-filters-checkboxes:has(.jet-smart-filters-checkboxes[style='display: none;']),
.wynd-shop-kit .e-n-accordion-item:has(.jet-smart-filters-checkboxes[style='display: none;']) {
    display: none;
}

/* hide mobile filter and sorting trigger button when there are no results */
.wynd-shop-kit:has(.jet-listing-not-found) .filter-button-mobile {
    display: none;
}

/* hide pagination when there are pagination items */
.wynd-shop-kit .elementor-widget-jet-smart-filters-pagination:has(.jet-smart-filters-pagination.jet-filter:empty) {
    display: none;
}
