/* High-contrast WooCommerce search and option controls on the dark storefront. */
body.woocommerce select,
body.woocommerce-page select,
body.woocommerce form .form-row select,
body.woocommerce-page form .form-row select {
  color: #202124 !important;
  background-color: #fff !important;
  border: 1px solid #777 !important;
  color-scheme: light;
}

body.woocommerce select option,
body.woocommerce-page select option {
  color: #202124 !important;
  background-color: #fff !important;
}

body.woocommerce .woocommerce-product-search input[type="search"],
body.woocommerce-page .woocommerce-product-search input[type="search"],
body.woocommerce input.search-field,
body.woocommerce-page input.search-field {
  color: #202124 !important;
  background-color: #fff !important;
  border: 1px solid #777 !important;
}

body.woocommerce .woocommerce-product-search input[type="search"]::placeholder,
body.woocommerce-page .woocommerce-product-search input[type="search"]::placeholder,
body.woocommerce input.search-field::placeholder,
body.woocommerce-page input.search-field::placeholder {
  color: #555 !important;
  opacity: 1;
}

body.woocommerce select:focus-visible,
body.woocommerce-page select:focus-visible,
body.woocommerce .woocommerce-product-search input[type="search"]:focus-visible,
body.woocommerce-page .woocommerce-product-search input[type="search"]:focus-visible {
  outline: 3px solid #0180af !important;
  outline-offset: 2px;
}

/* WooCommerce's enhanced (Select2) variation and search dropdowns. */
body.woocommerce .select2-container--default .select2-selection--single,
body.woocommerce-page .select2-container--default .select2-selection--single,
body.woocommerce .select2-dropdown,
body.woocommerce-page .select2-dropdown,
body.woocommerce .select2-search--dropdown .select2-search__field,
body.woocommerce-page .select2-search--dropdown .select2-search__field {
  color: #202124 !important;
  background-color: #fff !important;
  border-color: #777 !important;
}

body.woocommerce .select2-results__option,
body.woocommerce-page .select2-results__option {
  color: #202124 !important;
  background-color: #fff !important;
}

body.woocommerce .select2-results__option--highlighted[aria-selected],
body.woocommerce-page .select2-results__option--highlighted[aria-selected] {
  color: #fff !important;
  background-color: #09566b !important;
}


/* Keep every WooCommerce form control legible on light and dark pages. */
body.woocommerce input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="reset"]),
body.woocommerce-page input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="reset"]),
body.woocommerce textarea,
body.woocommerce-page textarea,
body.woocommerce .select2-container--default .select2-selection--multiple,
body.woocommerce-page .select2-container--default .select2-selection--multiple {
  color: #202124 !important;
  background-color: #fff !important;
  border-color: #777 !important;
  color-scheme: light;
}

/* Quantity boxes need enough contrast and space for the number and spinner. */
body.woocommerce .quantity input.qty,
body.woocommerce-page .quantity input.qty,
body.woocommerce input[type="number"],
body.woocommerce-page input[type="number"] {
  min-height: 44px;
  min-width: 72px;
  padding: 0.45rem 0.55rem;
  color: #202124 !important;
  background-color: #fff !important;
  border: 1px solid #777 !important;
  color-scheme: light;
  opacity: 1;
}

body.woocommerce input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])::placeholder,
body.woocommerce-page input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])::placeholder,
body.woocommerce textarea::placeholder,
body.woocommerce-page textarea::placeholder {
  color: #555 !important;
  opacity: 1;
}

body.woocommerce input:disabled,
body.woocommerce-page input:disabled,
body.woocommerce textarea:disabled,
body.woocommerce-page textarea:disabled,
body.woocommerce select:disabled,
body.woocommerce-page select:disabled {
  color: #555 !important;
  background-color: #f3f4f6 !important;
  opacity: 1;
}

body.woocommerce input[type="checkbox"],
body.woocommerce-page input[type="checkbox"],
body.woocommerce input[type="radio"],
body.woocommerce-page input[type="radio"] {
  accent-color: #09566b;
}

body.woocommerce input:focus-visible,
body.woocommerce-page input:focus-visible,
body.woocommerce textarea:focus-visible,
body.woocommerce-page textarea:focus-visible,
body.woocommerce select:focus-visible,
body.woocommerce-page select:focus-visible,
body.woocommerce .select2-selection:focus-visible,
body.woocommerce-page .select2-selection:focus-visible {
  outline: 3px solid #0180af !important;
  outline-offset: 2px;
}

/* WooCommerce block checkout/cart fields use the same contrast palette. */
body.woocommerce .wc-block-components-text-input input,
body.woocommerce-page .wc-block-components-text-input input,
body.woocommerce .wc-block-components-textarea textarea,
body.woocommerce-page .wc-block-components-textarea textarea,
body.woocommerce .wc-block-components-combobox .components-combobox-control__input,
body.woocommerce-page .wc-block-components-combobox .components-combobox-control__input {
  color: #202124 !important;
  background-color: #fff !important;
  border-color: #777 !important;
  color-scheme: light;
}

body.woocommerce .select2-container--default .select2-selection__rendered,
body.woocommerce-page .select2-container--default .select2-selection__rendered,
body.woocommerce .select2-container--default .select2-selection__placeholder,
body.woocommerce-page .select2-container--default .select2-selection__placeholder,
body.woocommerce .select2-search--dropdown .select2-search__field,
body.woocommerce-page .select2-search--dropdown .select2-search__field {
  color: #202124 !important;
}
