/* Recetario sin fotografías: filas compactas, filtros y desplegables nativos. */
.catalog-page { scroll-snap-type: none; }
.catalog-hero { min-height: 0; padding: 7.5rem 1rem 2.5rem; }
.catalog-hero h1 { font-size: clamp(3rem, 7vw, 4.8rem); }
.catalog-back { color: var(--gold-soft); font-size: 0.95rem; }
.catalog-section { padding: 5rem 0; }
.catalog { max-width: 960px; }
.catalog-filters {
  display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) auto;
  align-items: end; gap: 1rem; padding: 1.5rem; background: #211a12;
  border: 1px solid var(--line); border-radius: var(--r-md);
}
.catalog-filters label { display: grid; gap: 0.45rem; color: var(--gold-soft); font-size: 0.9rem; font-weight: 600; }
.catalog-filters input, .catalog-filters select {
  width: 100%; min-width: 0; min-height: 48px; padding: 0.7rem 0.85rem;
  font: inherit; font-size: 1rem; font-weight: 400; color: var(--cream);
  border: 1px solid rgba(247, 226, 160, 0.35); border-radius: var(--r-sm); background: var(--bg);
}
.catalog-filters input::placeholder { color: var(--muted); opacity: 0.8; }
.catalog-count { padding: 1.25rem 0; color: var(--muted); font-size: 0.92rem; }
.catalog-list { display: grid; gap: 0.8rem; }
.recipe-entry {
  border: 1px solid var(--line); border-radius: var(--r-md); background: #1b160f;
  scroll-margin-top: 6rem;
}
.recipe-entry > summary {
  display: flex; align-items: center; gap: 1rem; padding: 1.4rem 1.5rem;
  cursor: pointer; list-style: none; border-radius: inherit;
}
.recipe-entry > summary::-webkit-details-marker { display: none; }
.recipe-entry > summary::after {
  content: '+'; flex: none; margin-left: auto; width: 2rem; height: 2rem;
  display: grid; place-items: center; color: var(--gold-bright); font-size: 1.7rem;
}
.recipe-entry[open] > summary::after { content: '−'; }
.recipe-entry > summary:hover { background: rgba(215, 166, 35, 0.06); }
.recipe-entry h2 { font-size: clamp(1.5rem, 3vw, 2rem); line-height: 1.15; }
.recipe-entry__heading { display: grid; gap: 0.55rem; }
.recipe-entry__meta { display: flex; flex-wrap: wrap; gap: 0.4rem 1rem; color: var(--muted); font: 400 0.85rem/1.5 var(--font-body); letter-spacing: 0; }
.recipe-entry__type { color: var(--gold-soft); }
.recipe-entry__body { padding: 0 1.5rem 1.5rem; }
.recipe-entry__body > p { margin-bottom: 1rem; }
.recipe-entry__body .receta__content { animation: none; border-top: 1px solid var(--line); padding-top: 1.5rem; }
.recipe-entry__body .receta__tip { margin: 1.5rem 0 0; }
.recipe-entry__permalink { display: inline-block; margin-top: 1.5rem; color: var(--gold-soft); font-size: 0.9rem; }
.catalog-empty { padding: 2rem; text-align: center; color: var(--muted); border: 1px dashed var(--line); border-radius: var(--r-md); }
.catalog-noscript { margin-bottom: 1rem; color: var(--muted); }
@media (max-width: 639px) {
  .catalog-filters { grid-template-columns: minmax(0, 1fr); padding: 1rem; }
  .catalog-filters .btn { justify-self: start; }
  .recipe-entry > summary { padding: 1.1rem; }
  .recipe-entry__body { padding: 0 1.1rem 1.1rem; }
}
@media print {
  .catalog-back, .catalog-filters, .catalog-noscript, .recipe-entry__permalink { display: none !important; }
  .catalog-section { padding: 0; }
  .recipe-entry { background: #fff; border-color: #aaa; break-inside: avoid; }
  .recipe-entry > summary::after { display: none; }
  .recipe-entry h2, .recipe-entry h3, .recipe-entry__meta, .recipe-entry__type { color: #000; }
}
