/* v4.1.76 — Right-side product search drawer; fixed drawer header nesting. */
body.ft-search-drawer-open { overflow: hidden; }
.ft-search-backdrop[hidden], .ft-search-drawer[hidden], .ft-search-drawer [hidden] { display: none !important; }
.ft-search-backdrop {
  position: fixed !important; inset: 0; background: rgba(20, 27, 32, .38);
  z-index: 100110; opacity: 0; transition: opacity .26s ease; cursor: pointer;
}
.ft-search-backdrop.is-open { opacity: 1; }
.ft-search-drawer {
  position: fixed !important; top: 0; right: 0; bottom: 0;
  width: min(540px, 94vw); height: 100vh; height: 100dvh;
  z-index: 100111; background: #fff !important; color: #1a1e21 !important;
  box-shadow: -8px 0 38px rgba(0,0,0,.11);
  transform: translateX(102%); transition: transform .26s ease;
  font-family: Arial, Helvetica, sans-serif;
  text-align: left; letter-spacing: normal; line-height: 1.45;
  overscroll-behavior: contain;
}
.ft-search-drawer.is-open { transform: translateX(0); }
.ft-search-drawer *, .ft-search-drawer *::before, .ft-search-drawer *::after { box-sizing: border-box; }
/* Keep header search button visually identical to the old icon link. */
.ft-header button.ft-icon-link[data-ft-search-toggle] {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 0; border: 0; appearance: none; background: transparent;
  color: inherit; cursor: pointer; line-height: 1;
}
.ft-header button.ft-icon-link[data-ft-search-toggle]:focus-visible,
.ft-search-drawer button:focus-visible, .ft-search-drawer a:focus-visible,
.ft-search-drawer input:focus-visible { outline: 2px solid #1b3444; outline-offset: 3px; }
.ft-search-drawer-top {
  height: 77px; min-height: 77px; flex: 0 0 77px; display: flex; align-items: center;
  justify-content: space-between; padding: 0 31px; border-bottom: 1px solid #ededed;
}
.ft-search-drawer-top h2 { margin: 0; font-size: 14px !important; font-weight: 700; letter-spacing: .14em; line-height: 1.3; color: #171a1d; }
.ft-search-drawer-actions { display: flex; align-items: center; gap: 20px; }
.ft-search-drawer-reset { padding: 5px 0; margin: 0; border: 0; color: #383e42; background: transparent; font-size: 12px; cursor: pointer; }
.ft-search-drawer-reset:hover { text-decoration: underline; }
.ft-search-drawer-close {
  width: 34px; height: 38px; display: flex; align-items: center; justify-content: center;
  padding: 0; margin-right: -7px; border: none; background: transparent; color: #171a1d; cursor: pointer;
}
.ft-search-drawer-inner { display: flex; flex-direction: column; height: calc(100% - 77px); min-height: 0; }
.ft-search-drawer-form {
  position: relative; display: flex; align-items: center; width: auto; flex: 0 0 auto; margin: 27px 31px 24px;
  border: 1px solid #dadcde; background: #fff; min-height: 53px;
}
.ft-search-drawer-form:focus-within { border-color: #232a2f; }
.ft-search-input-icon { display: flex; margin-left: 17px; color: #2b3237; flex-shrink: 0; }
.ft-search-drawer-form input[type="search"] {
  -webkit-appearance: none; appearance: none; min-width: 0; width: 100%; flex: 1;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
  background: transparent !important; padding: 14px 9px 14px 13px !important;
  color: #161b1f; font-size: 14px; line-height: 22px; outline: 0 !important;
}
.ft-search-drawer-form input[type="search"]::-webkit-search-cancel-button { display: none; }
.ft-search-drawer-form input[type="search"]::placeholder { color: #90979c; opacity: 1; }
.ft-search-input-clear, .ft-search-input-submit {
  height: 43px; width: 34px; flex: 0 0 34px; padding: 0;
  display: flex; align-items: center; justify-content: center; border: 0; border-radius: 0;
  color: #434b50; background: transparent; cursor: pointer;
}
.ft-search-input-submit { width: 42px; flex-basis: 42px; margin-right: 3px; color: #172832; }
.ft-search-input-clear:hover, .ft-search-input-submit:hover, .ft-search-drawer-close:hover { color: #64747c; }
.ft-search-drawer-results-area { min-height: 0; flex: 1 1 auto; overflow-y: auto; overscroll-behavior: contain; padding: 0 31px 12px; }
.ft-search-results-heading {
  display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #ececec;
  min-height: 42px; font-size: 11px; letter-spacing: .11em; font-weight: 700; color: #22282c;
}
.ft-search-results-count { font-size: 11px; letter-spacing: 0; color: #22282c; background: #f3f4f4; border-radius: 3px; padding: 4px 8px; min-width: 25px; text-align: center; }
.ft-search-results-message { padding: 20px 1px; font-size: 13px; color: #70777c; line-height: 1.7; }
.ft-search-results-list { width: 100%; }
.ft-search-result-item {
  display: flex; align-items: center; gap: 15px; padding: 16px 0;
  border-bottom: 1px solid #f0f0f0; text-decoration: none !important; color: #1b2024;
  transition: background-color .15s ease;
}
.ft-search-result-item:hover { background: #fafafa; }
.ft-search-result-image { width: 78px; height: 90px; flex: 0 0 78px; display: flex; align-items: center; justify-content: center; background: #fafafa; overflow: hidden; }
.ft-search-result-image img { display: block; max-width: 100%; max-height: 100%; width: 100%; height: 100%; object-fit: contain; }
.ft-search-result-details { display: flex; flex: 1 1 auto; min-width: 0; flex-direction: column; gap: 7px; }
.ft-search-result-name { display: block; font-size: 13px; line-height: 1.5; font-weight: 400; color: #1c2327; overflow-wrap: anywhere; }
.ft-search-result-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px; font-size: 13px; color: #1c252a; font-weight: 500; }
.ft-search-result-price .woocommerce-Price-amount { white-space: nowrap; }
.ft-search-result-price del { color: #7b8185; font-size: 12px; font-weight: 400; margin-left: 0; }
.ft-search-result-price ins { order: -1; text-decoration: none; color: #bb3c55; font-weight: 600; }
.ft-search-result-chevron { flex-shrink: 0; font-size: 16px; color: #858d90; opacity: 0; padding-right: 2px; }
.ft-search-result-item:hover .ft-search-result-chevron { opacity: 1; }
.ft-search-results-bottom { margin-top: auto; border-top: 1px solid #ececec; flex: 0 0 auto; padding: 17px 31px; background: #fff; }
.ft-search-results-bottom a { display: flex; justify-content: space-between; align-items: center; font-size: 11px; font-weight: 700; letter-spacing: .13em; color: #1b262d; }
.ft-search-results-bottom a:hover { opacity: .72; }
@media (max-width: 680px) {
  .ft-search-drawer { width: min(420px, 92vw); }
  .ft-search-drawer-top { height: 64px; min-height: 64px; flex-basis: 64px; padding: 0 19px; }
  .ft-search-drawer-inner { height: calc(100% - 64px); }
  .ft-search-drawer-form { margin: 20px 19px 16px; min-height: 49px; }
  .ft-search-drawer-results-area { padding: 0 19px 10px; }
  .ft-search-results-bottom { padding: 17px 19px; }
  .ft-search-result-image { width: 67px; height: 78px; flex-basis: 67px; }
  .ft-search-result-item { gap: 12px; padding: 13px 0; }
  .ft-search-result-name { font-size: 12px; }
  .ft-search-result-price { font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .ft-search-drawer, .ft-search-backdrop { transition: none; }
}

/* 4.1.110 — Product brand above model name in live search. */
.ft-search-result-brand{display:block;margin:0 0 3px;font-size:10px;line-height:1.25;letter-spacing:.12em;text-transform:uppercase;color:#8f9498;font-weight:500}
