/**
 * Forms — styles for forms, inputs, selects, buttons
 */
body input[type=text],
body input[type=search],
body input[type=email],
body input[type=password],
body input[type=tel] {
    height: 48px !important;
    padding: 12px 20px;
    margin: 0;
    border-radius: 4px;
    background-color: #fff;
    border-color: #E9EDE9 !important;
    font-size: 16px !important;
    color: var(--secondary-color);
}

input[type=checkbox] {
    width: 20px !important;
    height: 20px !important;
    border-color: #516C6B !important;
    outline: none !important;
}

input[type=checkbox]:checked {
    background: #516C6B url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'><path fill='%23fff' d='M12.5,25.5a1,1,0,0,1-.707-.293l-10.5-10.5a1,1,0,0,1,1.414-1.414L12.5,23.086,29.293,6.293a1,1,0,1,1,1.414,1.414l-17.5,17.5A1,1,0,0,1,12.5,25.5Z'/></svg>") center center no-repeat !important;
    background-size: 14px !important;
}

.wc-blocks-components-select .wc-blocks-components-select__select,
.wc-block-components-textarea {
    border-color: #E9EDE9 !important;
}

/* Password field */
.password-input {
    position: relative;
    display: block;
    width: 100%;
}

.password-input input[type=password],
.password-input input[type=text] {
    padding-right: 52px !important;
    background: none !important;
}

body .password-input button.show-password-input {
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    padding: 0;
    margin: 0;
    background: transparent no-repeat center / 24px 24px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'><path d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7-10-7-10-7Z' stroke='%23516C6B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/><circle cx='12' cy='12' r='3' stroke='%23516C6B' stroke-width='2'/></svg>");
    border: 0;
    box-shadow: none;
    font-size: 0;
    line-height: 0;
    color: transparent;
    cursor: pointer;
}

body .password-input button.show-password-input:hover,
body .password-input button.show-password-input:focus {
    background-color: transparent;
}

body .password-input button.show-password-input::before,
body .password-input button.show-password-input::after {
    content: none;
}

body .password-input button.show-password-input.display-password {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'><path d='M3 3l18 18M10.6 10.6a3 3 0 0 0 4.2 4.2M9.4 5.6A10 10 0 0 1 22 12a14 14 0 0 1-2.8 3.5M6.5 6.5A14 14 0 0 0 2 12s3.5 7 10 7c2.1 0 4-.7 5.5-1.5' stroke='%23516C6B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
}

/* Buttons */
button[type=submit],
a.woocommerce-Button,
a.woocommerce-button,
.wc-block-components-checkout-place-order-button {
    padding: 16px 31px !important;
    border-radius: 100px !important;
}

button[type=submit]:hover,
a.woocommerce-Button:hover,
a.woocommerce-button:hover,
.wc-block-components-checkout-place-order-button:hover,
.wp-block-button__link:hover {
    background-color: #E3998E !important;
}

.wp-block-button__link {
    height: auto;
}

/* WC notices — error / message / info. */
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info {
    list-style: none;
    margin: 0 0 24px;
    padding: 16px 20px 16px 52px;
    border-radius: 8px;
    font-size: 15px;
    line-height: 1.5;
    background-repeat: no-repeat;
    background-position: 18px 18px;
    background-size: 20px 20px;
}

.woocommerce-notices-wrapper .woocommerce-error > li,
.woocommerce-notices-wrapper .woocommerce-message > li,
.woocommerce-notices-wrapper .woocommerce-info > li {
    display: block;
    margin: 0 6px 0 0;
    list-style: none;
}

.woocommerce-notices-wrapper .woocommerce-error > li::before,
.woocommerce-notices-wrapper .woocommerce-error > li::marker,
.woocommerce-notices-wrapper .woocommerce-message > li::before,
.woocommerce-notices-wrapper .woocommerce-message > li::marker,
.woocommerce-notices-wrapper .woocommerce-info > li::before,
.woocommerce-notices-wrapper .woocommerce-info > li::marker {
    content: none;
    display: none;
}

.woocommerce-notices-wrapper .woocommerce-error strong,
.woocommerce-notices-wrapper .woocommerce-message strong,
.woocommerce-notices-wrapper .woocommerce-info strong {
    font-weight: 600;
}

.woocommerce-notices-wrapper .woocommerce-error {
    color: #B0413E;
    background-color: #FDECEC;
    border: 1px solid #F4C7C5;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none'><circle cx='12' cy='12' r='10' stroke='%23B0413E' stroke-width='2'/><path d='M12 7v6M12 16.5v.5' stroke='%23B0413E' stroke-width='2' stroke-linecap='round'/></svg>");
}

.woocommerce-notices-wrapper .woocommerce-message {
    color: #2F6B5A;
    background-color: #E8F4EE;
    border: 1px solid #B7DBC8;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none'><circle cx='12' cy='12' r='10' stroke='%232F6B5A' stroke-width='2'/><path d='M8 12.5l2.5 2.5L16 9.5' stroke='%232F6B5A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
}

.woocommerce-notices-wrapper .woocommerce-info {
    color: #2F5A6B;
    background-color: #E6F1F6;
    border: 1px solid #B6D4E0;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none'><circle cx='12' cy='12' r='10' stroke='%232F5A6B' stroke-width='2'/><path d='M12 11v6M12 7.5v.5' stroke='%232F5A6B' stroke-width='2' stroke-linecap='round'/></svg>");
}

/* Search form — pill-shaped field with inline search icon on the left */
.qodef-search .qodef-search-form .qodef-search-form-inner,
.qodef-search-form .qodef-search-form-inner {
    position: relative;
}

.qodef-search .qodef-search-form .qodef-search-form-field,
.qodef-search-form input.qodef-search-form-field {
    width: 100%;
    padding-left: 52px !important;
    padding-right: 20px !important;
    border-radius: 100px;
    background-color: #E9EDE9;
    border-color: #E9EDE9 !important;
}

.qodef-search .qodef-search-form .qodef-search-form-field::placeholder,
.qodef-search-form .qodef-search-form-field::placeholder {
    color: #8B9FA0;
    opacity: 1;
}

.qodef-search-form button.qodef-search-form-button {
    position: absolute;
    top: 50%;
    left: 7px;
    right: auto;
    width: auto;
    height: auto;
    padding: 10px !important;
    margin: 0;
    transform: translateY(-50%);
    background: transparent !important;
    border: 0;
    line-height: 0;
    cursor: pointer;
}

.qodef-search-form button.qodef-search-form-button svg,
#qodef-top-area .qodef-search-form button.qodef-search-form-button svg {
    display: block;
    width: 24px;
    height: 24px;
    fill: none;
    stroke: var(--secondary-color);
}

.qodef-search-form button.qodef-search-form-button:hover {
    background: transparent;
}

/* Select2 dropdown */
body .select2-container--default .select2-selection--single {
    height: 48px;
    border-color: #E9EDE9 !important;
    border-radius: 4px;
    background-color: #fff;
    line-height: 1.3;
}

body .select2-container--default .select2-selection--single .select2-selection__arrow:before {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    background: no-repeat center / contain
        url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'><path d='M6 3.33342L10 8.00008L6 12.6667' stroke='%23191919' stroke-linecap='round' stroke-linejoin='round'/></svg>");
    transform: rotate(90deg);
    transition: transform 0.2s ease;
    font-family: inherit;
    font-weight: inherit;
}

body .select2-container--open.select2-container--default .select2-selection--single .select2-selection__arrow:before {
    transform: rotate(-90deg);
}