/* Collection recipe: content only. Header/footer geometry stays in their kits. */
.collection { max-width: 1200px; padding-top: var(--space-8); padding-bottom: 64px; }
.collection__intro { gap: var(--space-3); padding: var(--space-4) 0 var(--space-6); }
.eyebrow { font-size: var(--text-xs); font-weight: 600; letter-spacing: 0.1em; color: var(--text-secondary); }
.collection__title { font-size: 2rem; line-height: 1.2; font-weight: 600; max-width: 28ch; }
.collection__filters { display: grid; grid-template-columns: minmax(0, 1fr) minmax(180px, 240px) auto; align-items: end; gap: var(--space-4); }
.collection__filters > *, .collection__meta > * { min-width: 0; }
.collection__meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-4); padding-top: var(--space-2); }
.result-count { color: var(--text-secondary); font-size: var(--text-sm); }
.collection__controls { display: flex; flex-wrap: wrap; gap: var(--space-4); align-items: center; }
.collection__sort { display: flex; gap: var(--space-2); align-items: center; }
.collection__sort .select { width: auto; }
.view-switch { display: inline-flex; gap: var(--space-1); }
.view-switch [aria-pressed="true"] { background: var(--surface-2); border-color: var(--text-secondary); }
.collection__items, .collection__skeletons { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)); gap: var(--space-6); list-style: none; }
.collection__items > li { min-width: 0; }
.collection__skeletons > * { height: 220px; }
.collection-item { height: 100%; display: flex; flex-direction: column; border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; }
.collection-item__body { display: flex; flex: 1; flex-direction: column; align-items: start; gap: var(--space-3); padding: var(--space-6); }
.collection-item__category { color: var(--text-muted); font-size: var(--text-xs); }
.collection-item h3 { font-size: var(--text-xl); font-weight: 600; line-height: 1.3; overflow-wrap: anywhere; }
.collection-item__description { font-size: var(--text-sm); color: var(--text-secondary); line-height: 1.6; overflow-wrap: anywhere; }
.collection-item__open { margin-top: auto; }
.collection-item__media { aspect-ratio: 16 / 10; background: var(--surface-2); overflow: hidden; }
.collection-item__media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.tag-list { display: flex; flex-wrap: wrap; gap: var(--space-2); list-style: none; }
.tag-list li { font-size: var(--text-xs); color: var(--text-secondary); background: var(--surface-1); border: 1px solid var(--border); border-radius: var(--radius-sm); padding: var(--space-1) var(--space-2); overflow-wrap: anywhere; }
.collection__items[data-view="list"] { grid-template-columns: 1fr; gap: 0; }
[data-view="list"] .collection-item { flex-direction: row; border: 0; border-bottom: 1px solid var(--border); border-radius: 0; }
[data-view="list"] .collection-item__body { display: grid; grid-template-columns: minmax(140px, 1fr) minmax(0, 2fr) auto; align-items: center; gap: var(--space-3) var(--space-6); padding: var(--space-6) 0; }
[data-view="list"] .collection-item__category { grid-column: 1 / -1; }
[data-view="list"] .collection-item__open { margin: 0; }
[data-view="list"] .collection-item__media { width: 140px; flex-shrink: 0; margin: var(--space-6) var(--space-6) var(--space-6) 0; align-self: center; }
.collection__notice { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-4); padding: var(--space-4); border: 1px solid var(--border-strong); border-radius: var(--radius); }
.collection__notice p { max-width: 65ch; color: var(--text-secondary); line-height: 1.6; }
.collection__sample-note { color: var(--text-muted); font-size: var(--text-xs); line-height: 1.5; }
@media (max-width: 700px) {
  .collection__filters { grid-template-columns: minmax(0, 1fr) auto; }
  .collection__search { grid-column: 1 / -1; }
  .collection__controls { width: 100%; justify-content: space-between; }
  .collection__title { font-size: 1.75rem; }
  [data-view="list"] .collection-item__body { display: flex; }
  [data-view="list"] .collection-item__media { width: 80px; margin-right: var(--space-4); }
}
@media print {
  .collection__filters, .collection__controls, .collection-item__open, .collection__sample-note { display: none; }
  .collection__items { display: block; }
  .collection-item { break-inside: avoid; margin-bottom: var(--space-4); }
}
