/* Container & filters */
.bd-sort-search .sort-search-container{
  display:flex; flex-direction:column; margin-bottom:20px;
  background:#F1F1F1; padding:15px; border-radius:8px; border:1px solid #ddd; box-sizing:border-box;
}
.bd-sort-search .filter-row{
  display:flex; gap:10px; flex-wrap:nowrap; align-items:flex-start;
}
.bd-sort-search .sort-posts-form,
.bd-sort-search .numeral-format-form,
.bd-sort-search .search-posts-form{
  flex:1 1 0%; min-width:0; display:flex; flex-direction:column; gap:6px;
}
.bd-sort-search .sort-posts-form select,
.bd-sort-search .numeral-format-form select{
  height:36px; box-sizing:border-box;
}
.bd-sort-search .search-wrap input[type="text"]{
  width:100%; height:36px; box-sizing:border-box;
}
.bd-sort-search label{ font-family:'Cormorant Garamond', serif; font-weight:600; font-size:16px; color:#9E824B; }
.bd-sort-search select, .bd-sort-search input[type="text"]{
  padding:8px; border-radius:5px; border:1px solid #ccc; font-family:'Roboto',sans-serif; font-size:14px; color:#242933;
}
.bd-sort-search .search-wrap{ position:relative; height:36px; }
.bd-sort-search .search-wrap .search-icon{ position:absolute; right:8px; top:50%; transform:translateY(-50%); background:none; border:none; cursor:pointer; color:#9E824B; }
.bd-sort-search .toolbar-row{ margin-top:10px; }
.bd-sort-search .clear-filter-btn{ background:none; border:none; color:#9E824B; cursor:pointer; font-family:'Roboto',sans-serif; font-size:14px; text-decoration:underline; padding:0; }

/* Search clear (x) button */
.bd-sort-search .search-clear{
  position:absolute; right:32px; top:50%; transform:translateY(-50%);
  background:none; border:none; cursor:pointer; color:#999; font-size:18px;
  line-height:1; padding:2px 4px; transition:color 0.15s;
}
.bd-sort-search .search-clear:hover{ color:#333; }

/* Keyboard shortcut hint */
.bd-sort-search .search-posts-form{ position:relative; }
.bd-sort-search .search-shortcut-hint{
  position:absolute; bottom:-16px; left:0;
  font-family:'Roboto',sans-serif; font-size:11px; color:#aaa;
  transition:opacity 0.2s; white-space:nowrap;
}
.bd-sort-search .search-shortcut-hint.bd-hidden{ opacity:0; pointer-events:none; }

/* Results */
.bd-sort-search .loop-grid-container .loop-grid-item{ position:relative; margin-bottom:30px; padding-left:0; }
.bd-sort-search .loop-grid-container .loop-grid-item:not(:last-child)::after{ content:''; position:absolute; bottom:-15px; left:0; width:100%; height:1px; background:#F1F1F1; }
.bd-sort-search .chronology-indicator{ position:absolute; left:-30px; top:0; font-family:'Roboto',sans-serif; font-size:12px; color:#9E824B; }
.bd-sort-search h2{ margin:0 0 5px 0; }
.bd-sort-search h2 a{ font-family:'Cormorant Garamond', serif; font-size:20px; font-weight:600; line-height:1.4; color:#9E824B; text-decoration:none; display:block; }
.bd-sort-search h2 a:hover{ text-decoration:underline; }
.bd-sort-search .synopsis{ color:#242933; display:block; font-family:'Roboto',sans-serif; font-size:12px; line-height:18px; margin-top:5px; margin-bottom:10px; }
.bd-sort-search .result-count{ font-family:'Roboto',sans-serif; font-size:14px; color:#9E824B; margin:5px 0 10px; }
.bd-sort-search .highlight{ font-weight:bold; }

/* Loading fade */
.bd-sort-search .loop-grid-container.bd-loading{ opacity:0.4; transition:opacity 0.15s; pointer-events:none; }

/* Skeleton loader */
.bd-sort-search .skeleton-loader{ padding:10px 0; }
.bd-sort-search .skeleton-item{
  display:flex; flex-direction:column; gap:8px;
  padding:10px 0; margin-bottom:20px;
  border-bottom:1px solid #F1F1F1;
}
.bd-sort-search .skeleton-chrono,
.bd-sort-search .skeleton-title,
.bd-sort-search .skeleton-synopsis{
  display:block; border-radius:4px;
  background:linear-gradient(90deg, #eee 25%, #e0e0e0 50%, #eee 75%);
  background-size:200% 100%;
  animation:bd-shimmer 1.5s ease infinite;
}
.bd-sort-search .skeleton-chrono{ width:24px; height:14px; }
.bd-sort-search .skeleton-title{ width:65%; height:22px; }
.bd-sort-search .skeleton-synopsis{ width:90%; height:14px; }
@keyframes bd-shimmer{
  0%{ background-position:200% 0; }
  100%{ background-position:-200% 0; }
}

/* No results */
.bd-sort-search .bd-no-results{ padding:30px 0; text-align:center; }
.bd-sort-search .bd-no-results-title{
  font-family:'Cormorant Garamond', serif; font-size:20px; font-weight:600;
  color:#9E824B; margin:0 0 8px;
}
.bd-sort-search .bd-no-results-text{
  font-family:'Roboto',sans-serif; font-size:14px; color:#666; margin:0 0 16px;
}
.bd-sort-search .bd-no-results-suggestions{
  list-style:none; padding:0; margin:0;
  font-family:'Roboto',sans-serif; font-size:13px; color:#666; line-height:2;
}
.bd-sort-search .bd-suggestion-clear{
  background:none; border:none; color:#9E824B; cursor:pointer;
  font-family:'Roboto',sans-serif; font-size:13px; text-decoration:underline; padding:0;
}
.bd-sort-search .bd-suggestion-clear:hover{ color:#7a6536; }

/* Back to top button */
.bd-sort-search .bd-back-to-top{
  position:fixed; bottom:30px; right:30px; z-index:999;
  width:42px; height:42px; border-radius:50%;
  background:#9E824B; color:#fff; border:none; cursor:pointer;
  font-size:16px; display:flex; align-items:center; justify-content:center;
  box-shadow:0 2px 8px rgba(0,0,0,0.2);
  opacity:0; transform:translateY(10px); pointer-events:none;
  transition:opacity 0.25s ease, transform 0.25s ease, background-color 0.15s;
}
.bd-sort-search .bd-back-to-top.bd-visible{
  opacity:1; transform:translateY(0); pointer-events:auto;
}
.bd-sort-search .bd-back-to-top:hover{ background:#7a6536; }

/* Spinner (kept as fallback) */
.bd-sort-search .spinner{ width:28px; height:28px; border-radius:50%; border:3px solid #ddd; border-top-color:#9E824B; animation:bdspin 1s linear infinite; margin:10px auto; }
@keyframes bdspin{ to{ transform: rotate(360deg);} }

/* Responsive */
@media (max-width: 768px) {
  .bd-sort-search .filter-row{ flex-wrap:wrap; }
  .bd-sort-search .sort-posts-form,
  .bd-sort-search .numeral-format-form,
  .bd-sort-search .search-posts-form{ flex:1 1 100%; }
  .bd-sort-search .chronology-indicator{ position:relative; left:0; top:0; margin-bottom:5px; display:block; }
  .bd-sort-search .loop-grid-item{ padding-left:0; }
  .bd-sort-search .bd-back-to-top{ bottom:16px; right:16px; width:38px; height:38px; }
}
