.filter-section {
  padding-top: 18px;
}

.filter-bar {
  padding: 14px;
  border: 1px solid #dec3ae;
  border-radius: 8px;
  background: rgba(255, 250, 240, .68);
  box-shadow: 0 10px 28px rgba(96, 43, 22, .04);
}

.filter-bar .content {
  display: grid;
  gap: 10px;
  align-items: center;
}

.input-like,
.select-like {
  min-height: 38px;
  padding: 0 14px;
  color: var(--muted);
  font-size: var(--text-meta);
  line-height: var(--leading-meta);
  border: 1px solid #dfc7b4;
  border-radius: 5px;
  background: #fffaf2;
}

.filter-bar .input-like,
.filter-bar .select-like {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.filter-search {
  justify-content: flex-start;
  gap: 9px;
}

.filter-search i {
  color: var(--red);
}

.category-row {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 10px;
  padding: 12px;
  border: 1px solid #dfc2ad;
  border-radius: 8px;
  background: rgba(255, 250, 240, .58);
}

.category-item {
  display: flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 10px;
  color: #4b3b32;
  font-size: var(--text-meta);
  line-height: var(--leading-meta);
  text-align: center;
  border: 1px solid transparent;
  border-radius: 5px;
  transition: color .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.category-item:hover,
.category-item:focus-visible,
.category-item.active {
  color: var(--red);
  background: #fff8ee;
  border-color: rgba(145, 28, 29, .24);
  box-shadow: 0 8px 18px rgba(145, 28, 29, .07);
}

.library-filter .content {
  grid-template-columns: minmax(220px, 1.35fr) repeat(3, minmax(120px, .8fr)) auto;
}

.library-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.library-heading .title h2 {
  margin: 0;
}

.doc-grid,
.video-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}

.doc-card,
.video-card,
.topic-card {
  overflow: hidden;
  background: #fff8ee;
  border: 1px solid #dfc5b3;
  border-radius: 6px;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.doc-card:hover,
.video-card:hover,
.topic-card:hover {
  border-color: rgba(145, 28, 29, .3);
  box-shadow: 0 12px 28px rgba(96, 43, 22, .08);
  transform: translateY(-2px);
}

.doc-card img,
.video-card img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.doc-card .card-body,
.video-card .card-body {
  display: grid;
  gap: 8px;
  padding: 14px;
}

.doc-card h3,
.video-card h3,
.topic-card h3 {
  margin: 0;
  color: #2b211d;
  font-size: var(--text-h4);
  line-height: var(--leading-h4);
}

.doc-card p,
.video-card p,
.topic-card p {
  margin: 0;
}

.topic-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.topic-card {
  padding: 16px;
}
