.view-toolbar{
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px 20px 0;
  flex-wrap:wrap;
}

.view-toolbar-label{
  font-size:0.9rem;
  color:var(--muted);
}

.view-toolbar-btns{
  display:flex;
  gap:4px;
}

.view-col-btn{
  padding:6px 12px;
  min-width:36px;
  border:1.5px solid rgba(0,0,0,0.12);
  border-radius:10px;
  background:white;
  color:var(--text);
  font-size:0.9rem;
  cursor:pointer;
  transition:all 0.2s ease;
}

.view-col-btn:hover{
  border-color:var(--accent);
  background:rgba(184,160,144,0.08);
}

.view-col-btn[aria-pressed="true"]{
  background:var(--accent);
  border-color:var(--accent);
  color:white;
}

.cards-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:24px;
  margin-top:32px;
  padding:0 20px 40px;
}

.cards-grid.cols-1{
  grid-template-columns:1fr;
}

.cards-grid.cols-2{
  grid-template-columns:repeat(2,1fr);
}

.cards-grid.cols-3{
  grid-template-columns:repeat(3,1fr);
}

.filters-section{
  overflow:visible;
}

.filters-bar{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  align-items:flex-start;
  padding:24px 20px;
  padding-bottom:32px;
  background:var(--cream);
  border-radius:20px;
  margin:24px 20px 0;
  box-shadow:0 2px 12px rgba(0,0,0,0.04);
  overflow:visible;
  position:relative;
}

.filters-bar label{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:0.95rem;
}

.filters-bar select,
.filters-bar input{
  padding:12px 16px;
  border:1.5px solid rgba(0,0,0,0.08);
  border-radius:20px;
  background:white;
  color:var(--text);
  font-family:'Plus Jakarta Sans','Segoe UI',system-ui,sans-serif;
  font-size:0.95rem;
  transition:border-color 0.2s ease,box-shadow 0.2s ease,background 0.2s ease;
  min-height:44px;
}

.filters-bar select:hover,
.filters-bar input:hover{
  border-color:var(--accent);
  background:rgba(184,160,144,0.04);
}

.filters-bar select:focus,
.filters-bar input:focus{
  outline:none;
  border-color:var(--accent);
  box-shadow:0 0 0 3px rgba(184,160,144,0.2);
  background:rgba(184,160,144,0.06);
}

.filters-bar select{
  appearance:none;
  border-radius:20px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath fill='%23b8a090' d='M1 2l6 5 6-5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 14px center;
  padding-right:40px;
  cursor:pointer;
  min-width:140px;
  box-shadow:0 1px 2px rgba(0,0,0,0.04);
}

.filters-bar select option{
  padding:10px 14px;
  background:var(--cream);
}

.filters-bar input[type="text"]{
  min-width:200px;
}

.custom-select-wrap{
  position:relative;
  display:inline-block;
}

.custom-select-trigger{
  padding:12px 40px 12px 16px;
  border:1.5px solid rgba(0,0,0,0.08);
  border-radius:20px;
  background:white;
  color:var(--text);
  font-family:'Plus Jakarta Sans','Segoe UI',system-ui,sans-serif;
  font-size:0.95rem;
  cursor:pointer;
  min-width:140px;
  min-height:44px;
  text-align:left;
  box-shadow:0 1px 2px rgba(0,0,0,0.04);
  transition:border-color 0.2s ease,box-shadow 0.2s ease,background 0.2s ease;
}

.custom-select-trigger:hover{
  border-color:var(--accent);
  background:rgba(184,160,144,0.04);
}

.custom-select-dropdown{
  position:absolute;
  top:100%;
  left:0;
  right:0;
  margin-top:4px;
  background:white;
  border:1.5px solid rgba(0,0,0,0.08);
  border-radius:16px;
  box-shadow:0 8px 24px rgba(0,0,0,0.12);
  max-height:280px;
  overflow-y:auto;
  z-index:200;
}

.custom-select-option{
  padding:10px 16px;
  cursor:pointer;
  transition:background 0.15s ease;
  border-radius:0;
}

.custom-select-option:hover,
.custom-select-option.selected{
  background:rgba(184,160,144,0.12);
}

.custom-select-option:first-child{
  border-radius:14px 14px 0 0;
}

.custom-select-option:last-child{
  border-radius:0 0 14px 14px;
}

.custom-select-option:only-child{
  border-radius:14px;
}

.category-list{
  list-style:none;
  padding:20px 0;
  display:flex;
  gap:24px;
  flex-wrap:wrap;
}

.category-list a{
  text-decoration:none;
  color:var(--text);
  font-size:1.05rem;
  transition:color 0.2s;
}

.category-list a:hover{
  color:var(--accent);
}

/* Mobile responsiveness */
@media (max-width: 768px) {
  .filters-more-wrap {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
  }

  .filters-extra {
    flex-direction: column;
  }

  .filters-extra label {
    width: 100%;
  }

  .cards-grid.cols-1,
  .cards-grid.cols-2,
  .cards-grid.cols-3 {
    grid-template-columns: 1fr;
  }

  .view-toolbar {
    padding: 12px 16px 0;
  }

  .cards-grid {
    padding: 0 16px 40px;
    gap: 20px;
    margin-top: 24px;
  }

  .filters-bar {
    flex-direction: column;
    gap: 14px;
    padding: 20px 16px;
    margin: 20px 16px 0;
    border-radius: 18px;
  }

  .filters-bar label {
    width: 100%;
  }

  .filters-bar select,
  .filters-bar input {
    width: 100%;
    min-width: auto;
  }

  .filters-bar select {
    min-width: 0;
  }

  .custom-select-wrap {
    width: 100%;
  }

  .custom-select-trigger {
    width: 100%;
    min-width: 0;
  }

  .category-list {
    gap: 16px;
    padding: 16px 0;
  }
}
