/* Bake-Keeper Instant Search -- on-brand dropdown + full results page styling.
   Palette: Terracotta #B5451B / Terracotta Deep #8C3512 / Ink #2A1D10 /
   Body #3B2A17 / Cream #F6EFE1 / Cream Panel #FEFBF6 / Tan Panel #EFE4CE.
   Type: Fraunces (headings) + Karla (body) -- already loaded site-wide. */

:root{
  --bks-accent:#B5451B;
  --bks-accent-deep:#8C3512;
  --bks-ink:#2A1D10;
  --bks-body:#3B2A17;
  --bks-cream:#F6EFE1;
  --bks-panel:#FEFBF6;
  --bks-tan:#EFE4CE;
}

.bks-trigger{cursor:pointer;}

/* Hard-hide Kadence's native search drawer as a safety net: even if our
   click interception ever races with Kadence's own toggle script, the
   native drawer must never become visible to the user. */
#search-drawer{display:none!important;}

.bks-overlay{
  position:fixed; inset:0; background:rgba(42,29,16,.35);
  z-index:99998; opacity:0; pointer-events:none; transition:opacity .18s ease;
}
.bks-overlay.is-open{opacity:1; pointer-events:auto;}

.bks-panel{
  position:fixed; top:84px; right:max(24px, 4vw);
  width:min(460px, 92vw); max-height:min(72vh, 620px);
  background:var(--bks-panel); border-radius:16px;
  box-shadow:0 18px 50px rgba(42,29,16,.25), 0 2px 8px rgba(42,29,16,.08);
  z-index:99999; display:flex; flex-direction:column; overflow:hidden;
  opacity:0; transform:translateY(-8px) scale(.98); pointer-events:none;
  transition:opacity .16s ease, transform .16s ease;
  font-family:'Karla', sans-serif; color:var(--bks-body);
}
.bks-panel.is-open{opacity:1; transform:translateY(0) scale(1); pointer-events:auto;}

@media (max-width:640px){
  .bks-panel{
    top:0; right:0; left:0; width:100%; max-height:100vh; height:100%;
    border-radius:0;
  }
}

.bks-field-row{
  display:flex; align-items:center; gap:10px;
  padding:16px 18px; border-bottom:1px solid var(--bks-tan); flex:0 0 auto;
}
.bks-field-row svg{flex:0 0 auto; width:20px; height:20px; color:var(--bks-accent);}
.bks-input{
  flex:1 1 auto; border:none; background:transparent; outline:none;
  font-family:'Karla', sans-serif; font-size:16px; color:var(--bks-ink);
}
.bks-input::placeholder{color:#9b8b76;}
.bks-clear{
  flex:0 0 auto; border:none; background:none; cursor:pointer; color:#9b8b76;
  width:24px; height:24px; display:flex; align-items:center; justify-content:center;
  border-radius:50%; transition:background .15s ease, color .15s ease; padding:0;
}
.bks-clear svg{width:14px; height:14px;}
.bks-clear:hover{background:var(--bks-tan); color:var(--bks-body);}
.bks-clear[hidden]{display:none;}

.bks-close{
  flex:0 0 auto; border:none; background:none; cursor:pointer; color:var(--bks-body);
  width:28px; height:28px; display:flex; align-items:center; justify-content:center;
  border-radius:50%; transition:background .15s ease;
}
.bks-close:hover{background:var(--bks-tan);}

.bks-body{overflow-y:auto; flex:1 1 auto; padding:8px 0;}

.bks-section-label{
  font-size:11px; letter-spacing:.08em; text-transform:uppercase; font-weight:700;
  color:#9b8b76; padding:12px 18px 6px;
}

.bks-recent-row{
  display:flex; align-items:center; justify-content:space-between;
  padding:9px 18px; cursor:pointer; transition:background .12s ease;
}
.bks-recent-row:hover{background:var(--bks-tan);}
.bks-recent-row span.bks-recent-text{font-size:14px; color:var(--bks-body);}
.bks-recent-remove{
  border:none; background:none; color:#9b8b76; cursor:pointer; font-size:13px;
  padding:2px 6px; border-radius:4px;
}
.bks-recent-remove:hover{color:var(--bks-accent); background:var(--bks-tan);}

.bks-popular-grid{
  display:grid; grid-template-columns:repeat(2,1fr); gap:10px; padding:6px 18px 14px;
}
.bks-popular-item{
  display:flex; flex-direction:column; gap:6px; text-decoration:none; color:inherit;
  border-radius:10px; overflow:hidden;
}
.bks-popular-item img{
  width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:10px;
  background:var(--bks-tan);
}
.bks-popular-item span{
  font-family:'Fraunces', serif; font-size:13px; line-height:1.3; color:var(--bks-ink);
}

.bks-result{
  display:flex; gap:12px; padding:10px 18px; text-decoration:none; color:inherit;
  cursor:pointer; transition:background .12s ease;
}
.bks-result:hover, .bks-result.is-active{background:var(--bks-tan);}
.bks-result-thumb{
  flex:0 0 auto; width:56px; height:56px; border-radius:10px; object-fit:cover;
  background:var(--bks-tan);
}
.bks-result-main{flex:1 1 auto; min-width:0;}
.bks-result-title{
  font-family:'Fraunces', serif; font-size:15px; font-weight:600; color:var(--bks-ink);
  margin:0 0 2px; line-height:1.3;
}
.bks-result-snippet{
  font-size:12.5px; color:#6b5a44; line-height:1.4;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.bks-result-snippet mark{
  background:none; color:var(--bks-accent-deep); font-weight:700; padding:0;
}
.bks-result-type{
  display:inline-block; font-size:10px; letter-spacing:.04em; text-transform:uppercase;
  font-weight:700; color:#9b8b76; margin-top:3px;
}

.bks-empty, .bks-loading{
  padding:28px 18px; text-align:center; color:#9b8b76; font-size:13.5px;
}

.bks-viewall{
  display:block; text-align:center; padding:12px 18px; font-size:13px; font-weight:700;
  color:var(--bks-accent); text-decoration:none; border-top:1px solid var(--bks-tan);
  flex:0 0 auto;
}
.bks-viewall:hover{color:var(--bks-accent-deep);}

/* ---- Full search-results page ---- */
.bks-results-page{
  max-width:1000px; margin:0 auto; padding:48px 20px 80px;
  font-family:'Karla', sans-serif; color:var(--bks-body);
}
.bks-results-heading{
  font-family:'Fraunces', serif; color:var(--bks-ink); font-size:clamp(26px,4vw,38px);
  margin:0 0 8px;
}
.bks-results-count{color:#6b5a44; font-size:14px; margin:0 0 28px;}
.bks-results-grid{
  display:grid; grid-template-columns:repeat(auto-fill, minmax(230px,1fr)); gap:24px;
}
.bks-results-card{text-decoration:none; color:inherit; display:block;}
.bks-results-card img{
  width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:12px; margin-bottom:10px;
  background:var(--bks-tan);
}
.bks-results-card h3{
  font-family:'Fraunces', serif; font-size:17px; color:var(--bks-ink); margin:0 0 4px;
  line-height:1.3;
}
.bks-thumb-pick{object-fit:contain !important; background:#FBF3DE !important;}
.bks-thumb-pick[src*="bk-tile-"]{object-fit:cover !important; object-position:center !important;}
.bks-result-thumb--icon{display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#FBF3DE,#F3E3B8); color:#A3781F;}
.bks-result-thumb--icon svg{width:30px; height:30px;}
.bks-results-icon{display:flex; align-items:center; justify-content:center; width:100%; aspect-ratio:4/3; border-radius:12px; margin-bottom:10px; background:linear-gradient(135deg,#FBF3DE,#F3E3B8); color:#A3781F;}
.bks-results-icon svg{width:56px; height:56px;}
.bks-results-card p{font-size:13px; color:#6b5a44; margin:0; line-height:1.4;}
.bks-results-card p mark{background:none; color:var(--bks-accent-deep); font-weight:700;}
.bks-results-empty{padding:40px 0; text-align:center; color:#6b5a44;}
