/* Layout 3 Search Popup - Independent CSS */

.search-popup-layout-3-active {
  overflow: hidden;
}

/* Layout 3 Popup Overlay */
.site-search-popup-layout-3-overlay {
  position: fixed;
  width: 100vw;
  height: 100vh;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 997;
  pointer-events: none;
  background-color: rgba(0, 0, 0, 0.7);
  visibility: hidden;
  opacity: 0;
  -ms-opacity: 0;
  -o-opacity: 0;
  -moz-opacity: 0;
  -webkit-opacity: 0;
  filter: alpha(opacity=0);
  -ms-transition: opacity 0.3s cubic-bezier(0, 0.35, 0.25, 1), visibility 0.3s cubic-bezier(0, 0.35, 0.25, 1);
  -o-transition: opacity 0.3s cubic-bezier(0, 0.35, 0.25, 1), visibility 0.3s cubic-bezier(0, 0.35, 0.25, 1);
  -moz-transition: opacity 0.3s cubic-bezier(0, 0.35, 0.25, 1), visibility 0.3s cubic-bezier(0, 0.35, 0.25, 1);
  -webkit-transition: opacity 0.3s cubic-bezier(0, 0.35, 0.25, 1), visibility 0.3s cubic-bezier(0, 0.35, 0.25, 1);
  transition: opacity 0.3s cubic-bezier(0, 0.35, 0.25, 1), visibility 0.3s cubic-bezier(0, 0.35, 0.25, 1);
}

/* Layout 3 Popup Container */
.site-search-popup-layout-3 {
  position: fixed;
  width: 100vw;
  top: 0;
  left: 0;
  z-index: 99999;
  background-color: #fff;
  visibility: hidden;
  pointer-events: none;
  opacity: 0;
  -ms-opacity: 0;
  -o-opacity: 0;
  -moz-opacity: 0;
  -webkit-opacity: 0;
  filter: alpha(opacity=0);
  -ms-transition: all ease-in-out 0.3s;
  -o-transition: all ease-in-out 0.3s;
  -moz-transition: all ease-in-out 0.3s;
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
}

/* Layout 3 Active State */
.site-search-popup-layout-3.active {
  visibility: visible;
  pointer-events: auto;
}

.site-search-popup-layout-3.active .site-search-popup-layout-3-wrap .site-search {
  visibility: visible;
  opacity: 1;
  -ms-opacity: 1;
  -o-opacity: 1;
  -moz-opacity: 1;
  -webkit-opacity: 1;
  filter: alpha(opacity=100);
  -ms-transition: opacity 0.3s ease-in-out 0.3s, visibility 0.3s ease-in-out 0.3s;
  -o-transition: opacity 0.3s ease-in-out 0.3s, visibility 0.3s ease-in-out 0.3s;
  -moz-transition: opacity 0.3s ease-in-out 0.3s, visibility 0.3s ease-in-out 0.3s;
  -webkit-transition: opacity 0.3s ease-in-out 0.3s, visibility 0.3s ease-in-out 0.3s;
  transition: opacity 0.3s ease-in-out 0.3s, visibility 0.3s ease-in-out 0.3s;
}

.site-search-popup-layout-3.active + .site-search-popup-layout-3-overlay {
  opacity: 0.5;
  -ms-opacity: 0.5;
  -o-opacity: 0.5;
  -moz-opacity: 0.5;
  -webkit-opacity: 0.5;
  filter: alpha(opacity=50);
  visibility: visible;
  pointer-events: auto;
}

/* Layout 3 Animation States */
.site-search-popup-layout-3.fadein {
  -webkit-animation: layout-3-search-fade-in 0.3s ease both;
  animation: layout-3-search-fade-in 0.3s ease both;
}

.site-search-popup-layout-3.fadeout {
  -webkit-animation: layout-3-search-fade-out 0.3s ease both;
  animation: layout-3-search-fade-out 0.3s ease both;
}

/* Layout 3 Popup Wrapper */
.site-search-popup-layout-3 .site-search-popup-layout-3-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  padding: 7px 15px;
  width: 100%;
}

@media (min-width: 768px) {
  .site-search-popup-layout-3 .site-search-popup-layout-3-wrap {
    padding: 7px 20px;
  }
}

/* Layout 3 Close Button */
.site-search-popup-layout-3 .site-search-popup-layout-3-wrap .site-search-popup-layout-3-close {
  /* position: absolute; */
  /* right: 15px; */
  /* top: 5px; */
  order: 2;
  margin-left: 10px;
  color: #000;
  font-size: 24px;
  font-size: 1.5rem;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 1000;
}

@media (max-width: 767px) {
  .site-search-popup-layout-3 .site-search-popup-layout-3-wrap .site-search-popup-layout-3-close {
    top: 5px;
    right: 15px;
  }
}

.site-search-popup-layout-3 .site-search-popup-layout-3-wrap .site-search-popup-layout-3-close:hover {
  color: var(--e-global-color-primary);
}

.site-search-popup-layout-3 .site-search-popup-layout-3-wrap .site-search-popup-layout-3-close:hover line,
.site-search-popup-layout-3 .site-search-popup-layout-3-wrap .site-search-popup-layout-3-close:hover path {
  -webkit-animation: layout-3-draw 0.9s cubic-bezier(0.22, 0.61, 0.36, 1) forwards;
  animation: layout-3-draw 0.9s cubic-bezier(0.22, 0.61, 0.36, 1) forwards;
}

.site-search-popup-layout-3 .site-search-popup-layout-3-wrap .site-search-popup-layout-3-close:hover path {
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s;
}

/* Layout 3 Search Form Styling */
.site-search-popup-layout-3 .site-search-popup-layout-3-wrap form.woocommerce-product-search:before {
  display: none;
}

.site-search-popup-layout-3 .site-search-popup-layout-3-wrap .site-search {
  display: block;
  width: 100%;
  position: relative;
  visibility: hidden;
  opacity: 0;
  -ms-opacity: 0;
  -o-opacity: 0;
  -moz-opacity: 0;
  -webkit-opacity: 0;
  filter: alpha(opacity=0);
  -ms-transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
  -o-transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
  -moz-transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
  -webkit-transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
}

/* Layout 3 Search Input Styling */
.site-search-popup-layout-3 .site-search-popup-layout-3-wrap .site-search input.search-field {
  font-size: 24px;
  font-size: 1.5rem;
  background-color: transparent;
  border: none;
  padding-left: 10px;
  padding-right: 10px;
  width: 100%;
}

.site-search-popup-layout-3 .site-search-popup-layout-3-wrap .site-search input[type=submit],
.site-search-popup-layout-3 .site-search-popup-layout-3-wrap .site-search button[type=submit] {
  font-size: 0px;
  font-size: 0rem;
  padding-left: 0;
}

.site-search-popup-layout-3 .site-search-popup-layout-3-wrap .site-search .widget {
  margin-bottom: 0;
  border: none;
  padding: 0;
}

/* Layout 3 AJAX Search Results */
.site-search-popup-layout-3 .site-search-popup-layout-3-wrap .site-search .ajax-search-result {
  max-height: 50vh;
  background: #FFF;
  text-align: left;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.08);
  border-radius: 10px;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 300;
  display: none;
  margin-top: 10px;
  height: auto;
}

/* Layout 3 Category Dropdown Styling */
.site-search-popup-layout-3 .input-dropdown-inner {
  position: relative;
}

.site-search-popup-layout-3 .input-dropdown-inner .list-wrapper {
  position: absolute;
  top: 100%;
  left: 1px;
  z-index: 300;
  display: none;
  margin-top: 1px;
  height: auto;
  background-color: #FFF;
  text-align: left;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.08);
  padding: 15px 0;
  border-radius: 10px;
}

.site-search-popup-layout-3 .search-by-category .input-dropdown-inner {
  height: 50px;
  line-height: 50px;
  width: 230px;
  position: relative;
}

@media (max-width: 1024px) {
  .site-search-popup-layout-3 .search-by-category .input-dropdown-inner {
    width: 120px;
  }
}

.site-search-popup-layout-3 .search-by-category .inputOreo-dropdown-inner:after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 23px;
  background-color: var(--e-global-color-border);
}

.site-search-popup-layout-3 .search-by-category .input-dropdown-inner > a {
  display: block;
  padding: 0 25px;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--e-global-color-secondary);
  position: relative;
}

.site-search-popup-layout-3 .search-by-category .input-dropdown-inner > a span {
  width: 70px;
  display: block;
  white-space: nowrap;
  overflow: hidden !important;
  text-overflow: ellipsis;
}

.site-search-popup-layout-3 .search-by-category .input-dropdown-inner > a:after {
  position: absolute;
  right: 17px;
  top: 50%;
  transform: translateY(-50%);
}

.site-search-popup-layout-3 .search-by-category .input-dropdown-inner select.dropdown_product_cat_ajax {
  line-height: 50px;
  height: 50px;
  padding: 0 15px;
  font-size: 14px;
  font-size: 0.875rem;
  display: none;
  border: none;
  background-color: transparent;
}

.site-search-popup-layout-3 .search-by-category .list-wrapper {
  position: absolute;
  top: 100%;
  left: 1px;
  z-index: 300;
  display: none;
  margin-top: 1px;
  height: auto;
  background-color: #FFF;
  text-align: left;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.08);
  padding: 15px 0;
  border-radius: 10px;
}

.site-search-popup-layout-3 .search-by-category .list-wrapper .bokifa-scroll-content {
  position: relative;
  max-height: 255px;
  width: 230px;
  overflow-y: auto;
  margin-bottom: 0;
}

.site-search-popup-layout-3 .search-by-category ul li a {
  display: block;
  padding: 5px 25px;
  color: var(--e-global-color-secondary);
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 20px;
  white-space: nowrap;
}

.site-search-popup-layout-3 .search-by-category ul li a:focus, 
.site-search-popup-layout-3 .search-by-category ul li a:hover {
  background-color: #F9F9F9;
  color: var(--e-global-color-primary);
}

.site-search-popup-layout-3 .search-by-category ul li.current-item > a {
  background-color: #F4F4F4;
  color: var(--e-global-color-secondary);
}

.site-search-popup-layout-3 .search-by-category ul .children {
  margin-top: 0;
  display: none;
}

.site-search-popup-layout-3 .search-by-category ul .children > li > a {
  padding-left: 15px;
  color: var(--e-global-color-lighter);
}

.site-search-popup-layout-3 .search-by-category ul .children > li > a:focus, 
.site-search-popup-layout-3 .search-by-category ul .children > li > a:hover {
  background-color: #F9F9F9;
  color: var(--e-global-color-primary);
}

/* Layout 3 Animations */
@-webkit-keyframes layout-3-draw {
  0%, 100% {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
  }
  42% {
    -webkit-clip-path: inset(0 0 0 100%);
    clip-path: inset(0 0 0 100%);
  }
  43% {
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0);
  }
}

@keyframes layout-3-draw {
  0%, 100% {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
  }
  42% {
    -webkit-clip-path: inset(0 0 0 100%);
    clip-path: inset(0 0 0 100%);
  }
  43% {
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0);
  }
}

@-webkit-keyframes layout-3-search-fade-out {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}

@keyframes layout-3-search-fade-out {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}

@-webkit-keyframes layout-3-search-fade-in {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  100% {
    opacity: 1;
    visibility: visible;
  }
}

@keyframes layout-3-search-fade-in {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  100% {
    opacity: 1;
    visibility: visible;
  }
}

/* Responsive Design for Layout 3 */
@media (max-width: 768px) {
  .site-search-popup-layout-3 .site-search-popup-layout-3-wrap .site-search input.search-field {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

/* Layout 3 Focus States */
/* .site-search-popup-layout-3 .site-search-popup-layout-3-wrap .site-search input.search-field:focus {
  outline: none;
  border-bottom: 2px solid var(--e-global-color-primary);
} */

/* Layout 3 Loading States */
.site-search-popup-layout-3 .ajax-search-result.loading {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 1000 !important;
  opacity: 1 !important;
}

.site-search-popup-layout-3 .ajax-search-result.loading::before {
  content: "";
  width: 28px;
  height: 28px;
  border: 3px solid #f3f3f3;
  border-top: 3px solid var(--e-global-color-primary, #007cba);
  border-radius: 50%;
  animation: layout-3-search-spin 1s linear infinite;
  margin-bottom: 8px;
}

.site-search-popup-layout-3 .ajax-search-result.loading::after {
  content: "Searching for products...";
  font-size: 13px;
  color: #666;
  white-space: nowrap;
  text-align: center;
}

@keyframes layout-3-search-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.site-search-popup-layout-3 .search-by-category {
    display: flex;
    order: -1;
    align-items: center;
    justify-content: center;
}