/* Unified search suggestions: cover-first books, navigable categories. */
#searchSuggest.search-suggest,
#homeSearchSuggest {
  padding:6px!important;
  max-height:min(64vh,510px);
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:#dbe3f0 transparent;
  border:1px solid #e2e8f3;
  border-radius:0 0 12px 12px;
  background:#fff;
  box-shadow:0 12px 28px rgba(29,51,90,.12);
}
#searchSuggest .kf-suggest-row,
#homeSearchSuggest .kf-suggest-row {
  display:flex!important;
  align-items:center;
  gap:12px;
  min-width:0;
  padding:8px 11px!important;
  min-height:57px!important;
  border:0!important;
  border-radius:8px;
  text-decoration:none;
  color:#243650;
  transition:background-color .14s ease;
}
#searchSuggest .kf-suggest-row:hover,
#homeSearchSuggest .kf-suggest-row:hover,
#searchSuggest .kf-suggest-row:focus-visible,
#homeSearchSuggest .kf-suggest-row:focus-visible {
  background:#f4f7fd;
  outline:0;
}
#searchSuggest .kf-suggest-row:focus-visible,
#homeSearchSuggest .kf-suggest-row:focus-visible {
  box-shadow:inset 0 0 0 2px #8fa5e6;
}
#searchSuggest .kf-suggest-visual,
#homeSearchSuggest .kf-suggest-visual {
  flex:0 0 38px;
  width:38px;
  height:47px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid #e9eef6;
  border-radius:6px;
  background:#f2f5fa;
  color:#8998ae;
  font-size:15px;
}
#searchSuggest .kf-suggest-visual.has-image,
#homeSearchSuggest .kf-suggest-visual.has-image {
  background:#fff;
}
#searchSuggest .kf-suggest-visual img,
#homeSearchSuggest .kf-suggest-visual img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
#searchSuggest .kf-suggest-category .kf-suggest-visual,
#homeSearchSuggest .kf-suggest-category .kf-suggest-visual {
  background:#eef3ff;
  color:#4b68c2;
  border-color:#e3eaff;
}
#searchSuggest .kf-suggest-author .kf-suggest-visual,
#homeSearchSuggest .kf-suggest-author .kf-suggest-visual,
#searchSuggest .kf-suggest-publisher .kf-suggest-visual,
#homeSearchSuggest .kf-suggest-publisher .kf-suggest-visual {
  background:#f7f8fc;
}
#searchSuggest .kf-suggest-author .kf-suggest-visual,
#homeSearchSuggest .kf-suggest-author .kf-suggest-visual {
  flex-basis:40px;
  width:40px;
  height:40px;
  border-radius:9px;
}
#searchSuggest .kf-suggest-author .kf-suggest-visual.has-image,
#homeSearchSuggest .kf-suggest-author .kf-suggest-visual.has-image {
  background:#fff;
  border-color:#e1e8f3;
}
#searchSuggest .kf-suggest-author .kf-suggest-visual img,
#homeSearchSuggest .kf-suggest-author .kf-suggest-visual img {
  object-fit:cover;
}
#searchSuggest .kf-suggest-title,
#homeSearchSuggest .kf-suggest-title {
  flex:1 1 auto;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px;
  line-height:1.5;
  font-weight:600;
  color:#233753;
}
#searchSuggest .kf-suggest-meta,
#homeSearchSuggest .kf-suggest-meta {
  flex:0 1 auto;
  min-width:0;
  max-width:40%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#8290a5!important;
  font-size:11px;
  font-weight:450;
  text-align:right;
}
#searchSuggest .kf-suggest-category .kf-suggest-meta,
#homeSearchSuggest .kf-suggest-category .kf-suggest-meta {
  color:#5375b8!important;
  font-weight:650;
}
#searchSuggest .kf-suggest-results,
#homeSearchSuggest .kf-suggest-results {
  display:flex;
  flex-direction:column;
}
#searchSuggest .kf-suggest-category + .kf-suggest-book,
#homeSearchSuggest .kf-suggest-category + .kf-suggest-book {
  border-top:1px solid #edf1f7!important;
  border-radius:0;
}
@media(max-width:600px) {
  #searchSuggest .kf-suggest-row,
  #homeSearchSuggest .kf-suggest-row {gap:9px;padding:7px 9px!important;min-height:54px!important;}
  #searchSuggest .kf-suggest-visual,
  #homeSearchSuggest .kf-suggest-visual {flex-basis:33px;width:33px;height:43px;}
  #searchSuggest .kf-suggest-author .kf-suggest-visual,
  #homeSearchSuggest .kf-suggest-author .kf-suggest-visual {flex-basis:35px;width:35px;height:35px;}
  #searchSuggest .kf-suggest-title,
  #homeSearchSuggest .kf-suggest-title {font-size:12px;}
  #searchSuggest .kf-suggest-meta,
  #homeSearchSuggest .kf-suggest-meta {font-size:10px;max-width:34%;}
}
@media(prefers-reduced-motion:reduce){
  #searchSuggest .kf-suggest-row,
  #homeSearchSuggest .kf-suggest-row {transition:none;}
}
