/* ============ Curiositeas — search overlay ============ */
.search-overlay{
  position:fixed; left:0; right:0; bottom:0; top:0; /* top overridden by JS to header bottom */
  z-index:900; /* below .nav (1000) so header stays interactive above */
  display:flex; flex-direction:column;
}
/* CRITICAL: base display:flex would override the UA [hidden] rule and let the
   invisible overlay swallow every click. Force it gone when hidden. */
.search-overlay[hidden]{ display:none !important; }

.search-overlay__backdrop{
  position:absolute; inset:0; background:rgba(11,11,11,.4);
  opacity:0; transition:opacity .35s var(--ease,ease); backdrop-filter:blur(3px);
}
.search-overlay.is-open .search-overlay__backdrop{ opacity:1; }

.search-overlay__panel{
  position:relative; z-index:1;
  background:var(--cream,#FFF7F5);
  padding:clamp(20px,4vw,42px) var(--pad,5vw) clamp(26px,4vw,44px);
  transform:translateY(-100%); transition:transform .5s var(--ease,cubic-bezier(.16,1,.3,1));
  box-shadow:0 26px 60px rgba(11,11,11,.14);
  max-height:80vh; overflow-y:auto;
}
.search-overlay.is-open .search-overlay__panel{ transform:translateY(0); }

.search-form{ display:flex; align-items:center; gap:14px; max-width:900px; margin:0 auto; border-bottom:2px solid var(--ink,#0B0B0B); padding-bottom:14px; }
.search-form__icon{ color:var(--berry,#CE3961); flex:0 0 auto; }
.search-form__input{
  flex:1 1 auto; border:0; background:none; outline:none;
  font-family:var(--serif,serif); font-size:clamp(22px,3.4vw,40px); color:var(--ink,#0B0B0B);
}
.search-form__input::placeholder{ color:var(--muted,#7A7A7A); }
.search-form__close{ border:0; background:none; font-size:2rem; line-height:1; cursor:pointer; color:var(--ink,#0B0B0B); transition:transform .3s var(--ease,ease); }
.search-form__close:hover{ transform:rotate(90deg); color:var(--berry,#CE3961); }

.search-results{ max-width:900px; margin:22px auto 0; }
.search-results__list{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,1fr); gap:10px 30px; }
@media(max-width:640px){ .search-results__list{ grid-template-columns:1fr; } }
.search-hit__link{ display:flex; align-items:center; gap:14px; padding:10px; border-radius:16px; transition:background .25s; }
.search-hit__link:hover{ background:var(--body,#FFECEB); }
.search-hit__img img{ width:56px; height:56px; object-fit:cover; border-radius:12px; display:block; }
.search-hit__body{ display:flex; flex-direction:column; gap:3px; }
.search-hit__name{ font-weight:600; color:var(--ink,#0B0B0B); }
.search-hit__price{ color:var(--grey,#54595F); font-size:.9rem; }
.search-hit__price .amount{ color:var(--berry,#CE3961); }

.search-empty,.search-loading{ text-align:center; color:var(--grey,#54595F); padding:24px; }

@media (prefers-reduced-motion: reduce){
  .search-overlay__panel,.search-overlay__backdrop{ transition:none; }
}