.filter-section {
  margin-bottom: 1.5rem;
}

.filter-title {
  display: block;
  font-weight: 600;
  color: #4a2d14;
  margin-bottom: 0.5rem;
  font-size: 16px;
  font-family: inherit;
}

.filter-button-group {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.goholic-filter-tag-group {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.btn-filter {
  padding: 8px 14px;
  border: none;
  background-color: #f1f1f1;
  border-radius: var(--tour-list-border-radius);
  font-size: 14px;
  cursor: pointer;
  transition: all 0.2s ease;
  color: #333;
  font-weight: 500;
}

.btn-filter:hover {
  background-color: var(--tour-list-theme-color-3);
  color: #fff
}

.btn-filter.active {
  background-color: var(--tour-list-theme-color-1);
  color: #fff;
  font-weight: 500;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

.goholic-filter-layout-style {
  font-weight: 600;
  font-size: 16px;
  color: #5c2c06;
}

.goholic-filter-layout-style .label {
  margin-right: 8px;
}

.layout-toggle-group {
  background: #fff;
  display: flex;
  align-items: center;
  border-radius: var(--tour-list-border-radius);
  overflow: hidden;
  box-shadow: 0 1px 4px rgba(0,0,0,0.1);
}

.layout-style-btn {
  border: none;
  background: transparent;
  padding: 10px 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.2s;
}

.layout-style-btn .icon {
  display: block;
  width: 20px;
  height: 20px;
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.4;
}

.layout-style-btn.list .icon {
  background-image: url('data:image/svg+xml;utf8,<svg fill="black" width="20" height="20" xmlns="http://www.w3.org/2000/svg"><rect width="14" height="2" y="3"/><rect width="14" height="2" y="9"/><rect width="14" height="2" y="15"/></svg>');
}

.layout-style-btn.grid .icon {
  background-image: url("data:image/svg+xml;utf8,<svg fill='black' width='20' height='20' xmlns='http://www.w3.org/2000/svg'><rect x='2' y='2' width='6' height='6'/><rect x='12' y='2' width='6' height='6'/><rect x='2' y='12' width='6' height='6'/><rect x='12' y='12' width='6' height='6'/></svg>");
}

.layout-style-btn.active {
  background: var(--tour-list-theme-color-1);
}

.layout-style-btn.active .icon {
  opacity: 1;
}

input[type='range']::-webkit-slider-thumb {
    background: var(--tour-list-theme-color-1);
}