/* ===========================================================================
   RecipeCraft — faceted recipe browser  v2.0.0
   Reuses the homepage tokens: #1c3a2a green, #c8813a amber, #f5f0e8 paper.

   v2: the per-category scoped rules (body.category-recipes .rbc-container
   width override, .page-content.archive-content display:none) are GONE.
   The theme loop is no longer rendered at all, so there is nothing to hide
   and nothing to re-scope for each of 63 categories.
   =========================================================================== */

/* ── Archive shell (rc-archive.php) ──────────────────────────────────────── */

.rc-archive {
  background: #f5f0e8 !important;
  padding-bottom: 8px !important;
}
.rc-archive-inner {
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 0 48px !important;
}
.rc-archive-crumbs {
  padding: 18px 0 0 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 12px !important;
  color: #6b6358 !important;
}
.rc-archive-crumbs a { color: #6b6358 !important; text-decoration: none !important; }
.rc-archive-crumbs a:hover { color: #c8813a !important; }

.rc-archive-header { padding: 28px 0 0 !important; }
.rc-archive-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 44px !important;
  line-height: 1.1 !important;
  font-weight: 700 !important;
  color: #1c3a2a !important;
  margin: 0 0 14px !important;
}
.rc-archive-desc {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: #6b6358 !important;
  max-width: 760px !important;
  font-weight: 300 !important;
}
.rc-archive-desc p { margin: 0 0 10px !important; }
/* The browser supplies its own top padding under the header. */
.rc-archive .eh-main { padding-top: 32px !important; }

/* ── Head row ────────────────────────────────────────────────────────────── */

.rc-browse .rc-browse-head {
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  margin-bottom: 20px !important;
}
.rc-browse-count {
  font-size: 13px !important;
  color: #6b6358 !important;
  letter-spacing: 0.04em !important;
  font-family: 'DM Sans', sans-serif !important;
  white-space: nowrap !important;
}

.rc-browse-search { margin-bottom: 32px !important; }
.rc-browse-search .eh-search-input {
  width: 100% !important;
  border: 1.5px solid #1c3a2a !important;
  border-radius: 2px !important;
  padding: 15px 20px !important;
}

.rc-browse-layout {
  display: grid !important;
  grid-template-columns: 230px 1fr !important;
  gap: 36px !important;
  align-items: start !important;
}

/* ── Facets ──────────────────────────────────────────────────────────────── */

.rc-facets {
  position: sticky !important;
  top: 90px !important;
  background: #ffffff !important;
  border: 1px solid rgba(28,58,42,0.12) !important;
  border-radius: 4px !important;
  padding: 22px 20px !important;
}
.rc-facet { margin-bottom: 24px !important; }
.rc-facet:last-of-type { margin-bottom: 16px !important; }
.rc-facet-title {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: #c8813a !important;
  font-weight: 500 !important;
  margin-bottom: 10px !important;
  padding-bottom: 8px !important;
  border-bottom: 1px solid rgba(28,58,42,0.08) !important;
}
.rc-facet-opt {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 5px 0 !important;
  cursor: pointer !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  color: #1a1714 !important;
  line-height: 1.3 !important;
}
.rc-facet-opt input {
  width: 15px !important;
  height: 15px !important;
  accent-color: #1c3a2a !important;
  flex-shrink: 0 !important;
  cursor: pointer !important;
}
.rc-facet-opt span { flex: 1 !important; }
.rc-facet-opt:hover span { color: #c8813a !important; }
/* Per-option result count */
.rc-facet-n {
  font-style: normal !important;
  font-size: 11px !important;
  color: #9a9287 !important;
  font-variant-numeric: tabular-nums !important;
}

.rc-facet-clear {
  width: 100% !important;
  background: transparent !important;
  border: 1px solid rgba(28,58,42,0.2) !important;
  border-radius: 2px !important;
  padding: 10px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #1c3a2a !important;
  cursor: pointer !important;
}
.rc-facet-clear:hover { background: #1c3a2a !important; color: #ffffff !important; }

/* ── Results ─────────────────────────────────────────────────────────────── */

.rc-browse-results .eh-recipes-grid { grid-template-columns: repeat(3,1fr) !important; }
.rc-browse-results.is-loading { opacity: 0.45 !important; transition: opacity 0.15s !important; }

.rc-browse-empty {
  grid-column: 1 / -1 !important;
  padding: 48px 20px !important;
  text-align: center !important;
  color: #6b6358 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 15px !important;
}

.rc-browse-more {
  display: block !important;
  margin: 32px auto 0 !important;
  background: #1c3a2a !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 2px !important;
  padding: 15px 40px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 12px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  cursor: pointer !important;
}
.rc-browse-more:hover { background: #c8813a !important; }
.rc-browse-more[hidden] { display: none !important; }

/* ── Tablet ──────────────────────────────────────────────────────────────── */

@media (min-width: 769px) and (max-width: 1024px) {
  .rc-archive-inner { padding: 0 32px !important; }
  .rc-archive-title { font-size: 34px !important; }
  .rc-browse-layout { grid-template-columns: 200px 1fr !important; gap: 24px !important; }
  .rc-browse-results .eh-recipes-grid { grid-template-columns: repeat(2,1fr) !important; }
}

/* ── Mobile ──────────────────────────────────────────────────────────────── */

@media (max-width: 768px) {
  .rc-archive-inner { padding: 0 16px !important; }
  .rc-archive-header { padding: 18px 0 0 !important; }
  .rc-archive-title { font-size: 28px !important; margin-bottom: 10px !important; }
  .rc-archive-desc { font-size: 15px !important; }
  .rc-archive .eh-main { padding-top: 24px !important; }

  .rc-browse-layout { grid-template-columns: 1fr !important; gap: 20px !important; }
  .rc-facets { position: static !important; padding: 16px 14px !important; }
  .rc-facet { margin-bottom: 14px !important; }
  .rc-facet-opt { padding: 7px 0 !important; font-size: 14px !important; }
  .rc-facet-opt input { width: 18px !important; height: 18px !important; }
  .rc-browse-results .eh-recipes-grid { grid-template-columns: 1fr !important; }
  .rc-browse-head { margin-bottom: 14px !important; }
  .rc-browse-search { margin-bottom: 20px !important; }
}
