.stoeber-layout { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 28px; align-items: start; margin-top: 28px; }
.kategorien-verzeichnis { padding: 20px 14px; background: #f6dc9e; border: 1px solid #e2d2bc; border-radius: 12px; text-align: left; position: sticky; top: 20px; }
.kategorien-verzeichnis h2 { font-size: 22px; margin: 0 8px 16px; }
.kategorien-verzeichnis .kategorien { display: flex; flex-direction: column; gap: 6px; margin: 0; }
.kategorien-verzeichnis .kategorie { display: block; width: 100%; padding: 13px 12px; border: 0; border-radius: 7px; background: transparent; color: #493726; text-align: left; font: inherit; cursor: pointer; }
.kategorien-verzeichnis .kategorie:hover { background: #fffaf1; }
.kategorien-verzeichnis [aria-pressed="true"] { background: #806044; color: white; outline: none; font-weight: bold; }
.kategorien-verzeichnis .kategorie:focus-visible { outline: 3px solid #b83c1c; outline-offset: 2px; }
.stoeber-inhalt { min-width: 0; }
.stoeber-inhalt #fundstuecke { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1100px) { .stoeber-inhalt #fundstuecke { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) {
 .stoeber-layout { grid-template-columns: minmax(0, 1fr); gap: 18px; }
 .kategorien-verzeichnis { position: static; padding: 16px; }
 .kategorien-verzeichnis .kategorien { flex-direction: row; flex-wrap: wrap; }
 .kategorien-verzeichnis .kategorie { width: auto; }
}
@media (max-width: 540px) { .stoeber-inhalt #fundstuecke { grid-template-columns: minmax(0, 1fr); } }
