/* Фильтр для страницы прайса */
.price-breed-filter {
  position: relative;
  width: 100%;
  max-width: 360px;
  margin: 0 0 15px;
}

.price--hide-breed-filter .price-breed-filter {
  display: none;
}

.price__list-item_hidden {
  display: none !important;
}

.price__list-item_last-visible {
  border-bottom: none !important;
}

.price-breed-filter__option_hidden,
.price-breed-filter__search-empty_hidden {
  display: none !important;
}

.price-breed-filter__toggle {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 18px;
  background-color: rgba(245, 240, 230, 0.72);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid var(--accent-bg);
  border-radius: 30px;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  -ms-border-radius: 30px;
  -o-border-radius: 30px;
  color: var(--accent-bg);
  transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
  -webkit-transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
  -moz-transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
  -ms-transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
  -o-transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.price-breed-filter__toggle-label {
  font-size: 16px;
  line-height: 1.2;
  font-family: var(--semibold);
  text-align: left;
}

.price-breed-filter__toggle-icon {
  width: 18px;
  min-width: 18px;
  height: 18px;
  transition: transform 0.3s ease;
  -webkit-transition: transform 0.3s ease;
  -moz-transition: transform 0.3s ease;
  -ms-transition: transform 0.3s ease;
  -o-transition: transform 0.3s ease;
}

.price-breed-filter__toggle[aria-expanded="true"] .price-breed-filter__toggle-icon {
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
}

.price-breed-filter__menu {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  right: 0;
  z-index: 20;
  padding: 8px;
  display: grid;
  gap: 6px;
  max-height: min(420px, calc(100vh - 180px));
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  background-color: rgba(245, 240, 230, 0.86);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border: 1px solid var(--card-stroke);
  border-radius: 20px;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  -ms-border-radius: 20px;
  -o-border-radius: 20px;
  box-shadow: 0 16px 40px rgba(22, 63, 104, 0.12);
}

.price-breed-filter__menu[hidden] {
  display: none;
}

.price-breed-filter__menu::-webkit-scrollbar {
  width: 8px;
}

.price-breed-filter__menu::-webkit-scrollbar-track {
  background: transparent;
}

.price-breed-filter__menu::-webkit-scrollbar-thumb {
  background-color: rgba(22, 63, 104, 0.28);
  border-radius: 999px;
  -webkit-border-radius: 999px;
  -moz-border-radius: 999px;
  -ms-border-radius: 999px;
  -o-border-radius: 999px;
}

.price-breed-filter__search {
  margin-bottom: 4px;
}

.price-breed-filter__search-input {
  width: 100%;
  padding: 12px 14px;
  background-color: rgba(255, 255, 255, 0.55);
  border: 1px solid rgba(22, 63, 104, 0.14);
  border-radius: 16px;
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  -ms-border-radius: 16px;
  -o-border-radius: 16px;
  color: var(--accent-bg);
  font-size: 15px;
  line-height: 1.2;
  outline: none;
  transition: border-color 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease;
  -webkit-transition: border-color 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease;
  -moz-transition: border-color 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease;
  -ms-transition: border-color 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease;
  -o-transition: border-color 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease;
}

.price-breed-filter__search-input::placeholder {
  color: rgba(22, 63, 104, 0.55);
}

.price-breed-filter__search-input:focus {
  border-color: rgba(22, 63, 104, 0.4);
  background-color: rgba(255, 255, 255, 0.78);
  box-shadow: 0 0 0 3px rgba(22, 63, 104, 0.08);
}

.price-breed-filter__option {
  width: 100%;
  text-align: left;
  padding: 12px 14px;
  border-radius: 16px;
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  -ms-border-radius: 16px;
  -o-border-radius: 16px;
  color: var(--accent-bg);
  transition: background-color 0.3s ease, color 0.3s ease;
  -webkit-transition: background-color 0.3s ease, color 0.3s ease;
  -moz-transition: background-color 0.3s ease, color 0.3s ease;
  -ms-transition: background-color 0.3s ease, color 0.3s ease;
  -o-transition: background-color 0.3s ease, color 0.3s ease;
}

.price-breed-filter__option.is-active {
  color: var(--main-bg);
  background-color: var(--accent-bg);
}

.price-breed-filter__empty {
  margin: 15px 0 0;
  color: #9e9e9e;
}

.price-breed-filter__search-empty {
  margin: 2px 0 0;
  padding: 12px 14px;
  color: #9e9e9e;
}

@media (hover: hover) {
  .price-breed-filter__toggle:hover {
    background-color: rgba(22, 63, 104, 0.05);
  }

  .price-breed-filter__option:hover {
    background-color: rgba(22, 63, 104, 0.08);
  }

  .price-breed-filter__option.is-active:hover {
    background-color: var(--accent-bg);
  }
}

@media (min-width: 768px) {
  .price-breed-filter {
    margin: 0 auto 20px;
  }
}

@media (min-width: 1024px) {
  .price-breed-filter {
    margin: 0 0 20px;
  }
}
