/* TuneRS palette from the supplied color sheet. Scoped to the requested UI. */
:root {
  --trs-search-red: #d1232a;
  --trs-search-ink: #2a3547;
  --trs-search-blue: #445e86;
  --trs-search-border: #d9dee7;
  --trs-search-paper: #fff;
}

html body :is(.dgwt-wcas-search-wrapp, .dgwt-wcas-suggestions-wrapp, .dgwt-wcas-details-wrapp) {
  font-family: "Open Sans", Arial, sans-serif !important;
  color: var(--trs-search-ink) !important;
  text-shadow: none !important;
}
html body .dgwt-wcas-search-wrapp input.dgwt-wcas-search-input {
  font: 400 16px/1.4 "Open Sans", Arial, sans-serif !important;
  color: var(--trs-search-ink) !important;
  background: #fff !important;
  border: 1px solid var(--trs-search-border) !important;
  border-radius: 6px !important;
  box-shadow: none !important;
}
html body .dgwt-wcas-search-wrapp input.dgwt-wcas-search-input:focus {
  border-color: var(--trs-search-red) !important;
  box-shadow: 0 0 0 3px rgb(209 35 42 / 12%) !important;
}
html body .dgwt-wcas-search-wrapp input.dgwt-wcas-search-input::placeholder {
  color: var(--trs-search-blue) !important;
  opacity: 1 !important;
  font-style: normal !important;
}
html body .dgwt-wcas-search-wrapp :is(.dgwt-wcas-ico-magnifier, .dgwt-wcas-close) path {
  fill: var(--trs-search-ink) !important;
}
html body .dgwt-wcas-loader-circular-path { stroke: var(--trs-search-red) !important; }
html body :is(.dgwt-wcas-suggestions-wrapp, .dgwt-wcas-details-wrapp) {
  background: #fff !important;
  border-color: var(--trs-search-border) !important;
  box-shadow: 0 12px 28px rgb(42 53 71 / 10%);
}
html body .dgwt-wcas-suggestion {
  padding: 12px 14px !important;
  border-bottom: 1px solid var(--trs-search-border) !important;
  background: #fff;
}
html body .dgwt-wcas-suggestion-selected {
  background: #f4f6f9 !important;
  box-shadow: inset 3px 0 var(--trs-search-red);
}
html body .dgwt-wcas-st {
  font: 600 14px/1.4 "Open Sans", Arial, sans-serif !important;
  color: var(--trs-search-ink) !important;
}
html body :is(.dgwt-wcas-st-title, .dgwt-wcas-st-title span) { color: var(--trs-search-ink) !important; }
html body :is(.dgwt-wcas-st, .dgwt-wcas-sd) strong { color: var(--trs-search-red) !important; }
html body :is(.dgwt-wcas-sku, .dgwt-wcas-sd, .dgwt-wcas-details-product-sku) {
  font: 400 12px/1.5 "Open Sans", Arial, sans-serif !important;
  color: var(--trs-search-blue) !important;
}
html body .dgwt-wcas-sp {
  flex-shrink: 0;
  font: 700 14px/1.4 "Open Sans", Arial, sans-serif !important;
  color: var(--trs-search-ink) !important;
}
html body .dgwt-wcas-si { flex: 0 0 48px; width: 48px !important; }
html body .dgwt-wcas-si img {
  width: 48px !important;
  height: 48px !important;
  max-height: none !important;
  object-fit: contain !important;
  border: 1px solid var(--trs-search-border) !important;
  border-radius: 5px !important;
}
html body .dgwt-wcas-details-main-image {
  position: relative !important;
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
  border-bottom: 1px solid var(--trs-search-border) !important;
}
html body .dgwt-wcas-details-main-image img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}
html body .dgwt-wcas-details-space { padding: 4px 18px 18px !important; }
html body a.dgwt-wcas-details-product-title {
  margin: 12px 0 6px !important;
  font: 400 25px/1.16 "Bayon", "Arial Narrow", Arial, sans-serif !important;
  color: var(--trs-search-ink) !important;
  text-decoration: none !important;
  letter-spacing: .01em !important;
}
html body .dgwt-wcas-pd-price {
  margin-top: 12px !important;
  font: 700 22px/1.3 "Open Sans", Arial, sans-serif !important;
  color: var(--trs-search-ink) !important;
}
html body .dgwt-wcas-details-desc {
  font: 400 13px/1.6 "Open Sans", Arial, sans-serif !important;
  color: var(--trs-search-ink) !important;
}
html body .dgwt-wcas-details-hr { margin: 14px 0 !important; border-color: var(--trs-search-border) !important; }
html body .dgwt-wcas-stock { font: 600 12px/1.5 "Open Sans", Arial, sans-serif !important; }
html body .dgwt-wcas-stock.in-stock { color: var(--trs-search-blue) !important; }
html body .dgwt-wcas-stock.out-of-stock { color: var(--trs-search-red) !important; }

/* Explicit base, hover and focus geometry prevents Divi's arrow/padding shift. */
html body .dgwt-wcas-details-wrapp .dgwt-wcas-pd-addtc-form {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  margin: 12px 0 0 !important;
}
html body .dgwt-wcas-details-wrapp :is(.dgwt-wcas-pd-addtc, .add_to_cart_inline) {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
html body .dgwt-wcas-details-wrapp .add_to_cart_inline { flex: 1 1 142px; }
html body .dgwt-wcas-details-wrapp :is(a.button, button.button, .single_add_to_cart_button, .add_to_cart_button),
html body .dgwt-wcas-details-wrapp :is(a.button, button.button, .single_add_to_cart_button, .add_to_cart_button):is(:hover, :focus, :active) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 44px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 11px 16px !important;
  border: 1px solid var(--trs-search-red) !important;
  border-radius: 5px !important;
  background: var(--trs-search-red) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font: 700 14px/1.4 "Open Sans", Arial, sans-serif !important;
  text-align: center !important;
  text-transform: none !important;
  text-decoration: none !important;
  text-shadow: none !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  opacity: 1 !important;
  visibility: visible !important;
  box-shadow: none !important;
  transform: none !important;
  transition: none !important;
  cursor: pointer;
}
html body .dgwt-wcas-details-wrapp :is(a.button, button.button, .single_add_to_cart_button, .add_to_cart_button) * {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
html body .dgwt-wcas-details-wrapp :is(a.button, button.button, .single_add_to_cart_button, .add_to_cart_button)::before,
html body .dgwt-wcas-details-wrapp :is(a.button, button.button, .single_add_to_cart_button, .add_to_cart_button)::after {
  content: none !important;
  display: none !important;
}
html body .dgwt-wcas-details-wrapp :is(a.button, button.button).loading { cursor: wait !important; }
html body .dgwt-wcas-details-wrapp :is(a.button, button.button):is(:disabled, .disabled) {
  background: var(--trs-search-blue) !important;
  border-color: var(--trs-search-blue) !important;
  cursor: not-allowed !important;
}
html body .dgwt-wcas-details-wrapp a.added_to_cart {
  padding: 8px 0 0 !important;
  font: 600 13px/1.4 "Open Sans", Arial, sans-serif !important;
  color: var(--trs-search-red) !important;
  text-decoration: underline !important;
}

/* The original WooCommerce input remains in its original form. */
html body .dgwt-wcas-details-wrapp .quantity.trs-search-quantity {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  width: auto !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  overflow: hidden;
  border: 1px solid var(--trs-search-border) !important;
  border-radius: 5px !important;
  background: #fff !important;
}
html body .dgwt-wcas-details-wrapp .trs-search-quantity input.qty {
  flex: 0 0 42px !important;
  box-sizing: border-box !important;
  width: 42px !important;
  min-width: 0 !important;
  max-width: 42px !important;
  height: 42px !important;
  min-height: 0 !important;
  padding: 0 2px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--trs-search-ink) !important;
  -webkit-text-fill-color: var(--trs-search-ink) !important;
  font: 600 14px/42px "Open Sans", Arial, sans-serif !important;
  text-align: center !important;
  box-shadow: none !important;
  appearance: textfield !important;
  -moz-appearance: textfield !important;
}
html body .dgwt-wcas-details-wrapp .trs-search-quantity input.qty::-webkit-inner-spin-button,
html body .dgwt-wcas-details-wrapp .trs-search-quantity input.qty::-webkit-outer-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}
html body .dgwt-wcas-details-wrapp button.trs-search-step,
html body .dgwt-wcas-details-wrapp button.trs-search-step:is(:hover, :focus, :active) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  flex: 0 0 32px !important;
  width: 32px !important;
  height: 42px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--trs-search-ink) !important;
  font: 400 20px/1 Arial, sans-serif !important;
  box-shadow: none !important;
  transform: none !important;
  transition: none !important;
  cursor: pointer;
}
html body .dgwt-wcas-details-wrapp button.trs-search-step::before,
html body .dgwt-wcas-details-wrapp button.trs-search-step::after { display: none !important; content: none !important; }
html body .dgwt-wcas-details-wrapp button.trs-search-step:disabled { color: #8994a5 !important; cursor: default !important; }
html body .dgwt-wcas-details-wrapp .trs-search-no-quantity > .quantity { display: none !important; }
html body .dgwt-wcas-details-wrapp :is(a.button, button.button, .trs-search-step, input.qty):focus-visible {
  outline: 2px solid var(--trs-search-blue) !important;
  outline-offset: -3px !important;
}

/* Keep the existing category/brand/sort widgets and keyboard behavior. */
html body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-trigger {
  border: 1px solid #cbd2dc !important;
  border-radius: 6px !important;
  background: #fff !important;
  box-shadow: none !important;
  color: var(--trs-search-ink) !important;
}
html body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown:is(.is-open, :focus-within) .trs-vf-brand-trigger {
  border-color: var(--trs-search-red) !important;
  box-shadow: 0 0 0 2px rgb(209 35 42 / 9%) !important;
}
html body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-panel {
  border: 1px solid var(--trs-search-border) !important;
  border-radius: 8px !important;
  padding: 8px !important;
  gap: 6px !important;
  box-shadow: 0 10px 28px rgb(42 53 71 / 14%) !important;
}
html body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-search {
  background: #fff !important;
  border-color: #cbd2dc !important;
  border-radius: 5px !important;
  outline: none !important;
  box-shadow: none !important;
  font-size: 16px !important;
}
html body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-search:focus {
  border-color: var(--trs-search-red) !important;
  box-shadow: inset 0 0 0 1px var(--trs-search-red) !important;
}
html body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-option {
  display: flex !important;
  align-items: center !important;
  min-height: 40px !important;
  padding: 9px 10px !important;
  margin: 2px 0 !important;
  border: 0 !important;
  border-radius: 4px !important;
  background: #fff !important;
  color: var(--trs-search-ink) !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
}
html body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-option:is(:hover, .is-active) {
  background: #f1f4f8 !important;
  color: var(--trs-search-ink) !important;
}
html body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-option[aria-selected="true"] {
  background: var(--trs-search-red) !important;
  color: #fff !important;
  font-weight: 600 !important;
}
html body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-options {
  scrollbar-width: thin;
  scrollbar-color: var(--trs-search-blue) #f4f6f9;
  overscroll-behavior: contain;
}

/* Full color, no hover dimming, product overlays or hover magnification. */
html body :is(.woocommerce ul.products li.product, .woocommerce-product-gallery__image, .dgwt-wcas-details-main-image, .dgwt-wcas-si) img:not(.zoomImg),
html body :is(.woocommerce ul.products li.product, .woocommerce-product-gallery__image, .dgwt-wcas-details-main-image, .dgwt-wcas-si):hover img:not(.zoomImg) {
  opacity: 1 !important;
  filter: none !important;
  -webkit-filter: none !important;
  mix-blend-mode: normal !important;
  transform: none !important;
  transition: none !important;
}
html body .woocommerce-product-gallery .zoomImg,
html body .woocommerce ul.products li.product .et_overlay { display: none !important; }
html body :is(.et_pb_wc_images, .woocommerce-product-gallery__image, .woocommerce ul.products li.product .et_shop_image),
html body :is(.et_pb_wc_images, .woocommerce-product-gallery__image, .woocommerce ul.products li.product .et_shop_image):hover {
  filter: none !important;
  -webkit-filter: none !important;
  mix-blend-mode: normal !important;
}
@media (max-width: 480px) {
  html body .dgwt-wcas-suggestion { padding: 10px !important; }
  html body .dgwt-wcas-st { font-size: 13px !important; }
  html body .dgwt-wcas-sp { font-size: 13px !important; }
  html body .dgwt-wcas-content-wrapp { min-width: 0; padding-left: 8px; }
}
