
/* Phase 4.5 — search autocomplete + stronger cart header reset */

.search-bar-autocomplete{
  position:relative;
  display:block;
  border:0;
  background:transparent;
  overflow:visible;
}
.search-bar-autocomplete .search-bar-inner{
  display:flex;
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 10px 24px rgba(8,46,71,.04);
}
.search-bar-autocomplete input{
  min-width:0;
}
.search-bar-autocomplete.is-open .search-bar-inner{
  border-color:rgba(8,46,71,.18);
  box-shadow:0 14px 32px rgba(8,46,71,.08);
}
.search-autocomplete-panel{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 10px);
  z-index:40;
  display:grid;
  gap:4px;
  padding:10px;
  border:1px solid rgba(8,46,71,.12);
  border-radius:18px;
  background:#fffdfa;
  box-shadow:0 24px 48px rgba(8,46,71,.14);
}
.search-autocomplete-panel[hidden]{
  display:none !important;
}
.search-autocomplete-item,
.search-autocomplete-view-all{
  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  gap:12px;
  align-items:center;
  padding:10px 12px;
  border-radius:14px;
  color:var(--brand);
  text-decoration:none;
  transition:background .16s ease, transform .16s ease, box-shadow .16s ease;
}
.search-autocomplete-view-all{
  grid-template-columns:1fr;
  justify-items:center;
  margin-top:4px;
  padding:11px 14px;
  border:1px solid rgba(197,34,31,.14);
  background:#fff3ef;
  color:var(--logo-red);
  font-weight:800;
}
.search-autocomplete-item:hover,
.search-autocomplete-item.is-active{
  background:#fff3ef;
  box-shadow:inset 0 0 0 1px rgba(197,34,31,.08);
}
.search-autocomplete-thumb{
  display:grid;
  place-items:center;
  width:56px;
  height:56px;
  border-radius:14px;
  overflow:hidden;
  background:#fff;
  border:1px solid #f0e2d1;
}
.search-autocomplete-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.search-autocomplete-thumb.is-fallback{
  color:#c5221f;
  font-size:1.25rem;
  font-weight:800;
  background:#fff7eb;
}
.search-autocomplete-copy{
  min-width:0;
  display:grid;
  gap:3px;
}
.search-autocomplete-copy strong{
  font-size:.97rem;
  line-height:1.3;
  color:#082e47;
}
.search-autocomplete-copy small{
  display:block;
  font-size:.78rem;
  line-height:1.4;
  color:#5f6d78;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.search-autocomplete-empty{
  padding:14px 16px;
  border-radius:14px;
  background:#fff7eb;
  color:#5f6d78;
  font-size:.92rem;
  line-height:1.5;
}

/* Strong reset for cart header label so only the count bubble stays colored */
.cart-button,
.cart-button.utility-link,
a.cart-button.utility-link{
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
}
.cart-button .utility-label,
.cart-button span.utility-label,
.cart-button span:not([data-cart-count]){
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:inherit !important;
  padding:0 !important;
  min-width:auto !important;
  height:auto !important;
  border-radius:0 !important;
}
.cart-button [data-cart-count]{
  background:var(--logo-red) !important;
  color:#fff !important;
}
@media(max-width:1280px){
  .search-autocomplete-panel{
    top:calc(100% + 8px);
  }
}
@media(max-width:760px){
  .search-autocomplete-panel{
    border-radius:16px;
    padding:8px;
  }
  .search-autocomplete-item,
  .search-autocomplete-view-all{
    grid-template-columns:48px minmax(0,1fr);
    gap:10px;
    padding:9px 10px;
  }
  .search-autocomplete-thumb{
    width:48px;
    height:48px;
    border-radius:12px;
  }
}
