/* Главный прямоугольный контейнер слайдера */
.range-container {
  position: relative;
  width: 100%;
  height: 40px; /* Высота прямоугольника для чисел и зазора */
  background-color: #f2f3ef61; /* Светлый фон внутренности */
  border: 1.5px solid #ccccccde; /* Темная рамка со скриншота */
  border-radius: 6px; /* Небольшое скругление углов */
  box-sizing: border-box;
  display: flex;
  align-items: flex-end; /* Все элементы выравниваем по нижней границе */
  overflow: visible; /* Позволяет бегункам выступать снизу */

  /* &:hover {
    border: 1px solid var(--clr-primary-violet);
  } */
}

/* Общие стили для чисел внутри прямоугольника по краям (зафиксированы) */
.range-label {
  position: absolute;
  top: 12px; /* Позиционирование по высоте внутри рамки */
  font-size: 14px;
  /* font-weight: bold; */
  color: #0b1a11;
  pointer-events: none; /* Чтобы цифры не мешали кликам */
  /* z-index: 5; */
}

/* Левое число фиксировано над левым крайним положением ползунка */
.range-label.min-label {
  left: 30px;
  transform: translateX(-50%);
}

/* Правое число фиксировано над правым крайним положением ползунка */
.range-label.max-label {
  right: 30px;
  transform: translateX(50%);
}

/* Базовая линия трека */
.range-slider-base {
  position: absolute;
  bottom: -1.5px;
  left: 0;
  right: 0;
  height: 3px;
  background-color: transparent;
  z-index: 1;
  pointer-events: none;
}

/* Заполненный диапазон (активная линия нежно-кораллового/персикового цвета) */
.range-selected {
  position: absolute;
  bottom: -1.5px; /* Лежит ровно на нижней рамке */
  height: 3px;
  background-color: #efa38f40; /* Персиковый оттенок со скриншота */
  z-index: 2;
  pointer-events: none;
}

/* Общие невидимые нативные инпуты */
.dual-range {
  position: absolute;
  /* Сдвигаем инпут внутрь на 17px с каждого края. 
               При радиусе бегунка в 7px это дает идеальный центр бегунка ровно на 24px от края (под числами) */
  left: 17px;
  width: calc(100% - 34px);
  bottom: -7px;
  height: 14px;
  background: none;
  pointer-events: none; /* Пропускаем клики сквозь трек */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  z-index: 4;
  margin: 0;
  padding: 0;
}

/* Стилизация круглых бегунков темно-зеленого цвета (Chrome, Safari, Edge, Opera) */
.dual-range::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background-color: #1b3d32; /* Темно-зеленый цвет со скриншота */
  cursor: pointer;
  pointer-events: auto; /* Возвращаем кликабельность бегунку */
  border: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
  transition:
    transform 0.1s ease,
    background-color 0.1s;
}

.dual-range::-webkit-slider-thumb:hover {
  transform: scale(1.25);
  background-color: #245243;
}

.dual-range::-webkit-slider-thumb:active {
  transform: scale(0.95);
  background-color: #122a22;
}

/* Стилизация круглых бегунков темно-зеленого цвета (Firefox) */
.dual-range::-moz-range-thumb {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background-color: #1b3d32;
  cursor: pointer;
  pointer-events: auto;
  border: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
  transition:
    transform 0.1s ease,
    background-color 0.1s;
}

.dual-range::-moz-range-thumb:hover {
  transform: scale(1.25);
  background-color: #245243;
}

.dual-range::-moz-range-thumb:active {
  transform: scale(0.95);
  background-color: #122a22;
}

/* Отключение дефолтных обводок */
.dual-range:focus {
  outline: none;
}

.range-element__caption {
  margin-block-end: 10px;
  font-size: 0.9rem;
}


/* filter order element */

.filter-oder-wrapper {
  position: relative;

}

.filter-order {
    padding: 7px;
    cursor: pointer;
    border: 1px solid #00000036;
    border-radius: 6px;
    background-color: white;
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: space-between;
    user-select: none;
}

.order-list {
    position: absolute;
    width: 100%;
    background-color: white;
    padding: 30px 10px;
    display: flex;
    flex-flow: column nowrap;
    gap: 10px;
    box-shadow: 0px 4px 14px 5px lightgrey;
    border-radius: 6px;
    z-index: 10;
}

.order-list__label {
  display: flex;
  justify-content: space-between;
}

.hidden-input {
  display: none;
}

.radio-label {
    width: 18px;
    height: 18px;
    border: 1px solid black;
    position: relative;
    border-radius: 3px;
}

input:checked ~ .radio-label::after {
    content: "";
    position: absolute;
    background-color: black;
    border-radius: 50%;
    width: 10px;
    height: 10px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.view-type {
    border-radius: 10px;
    cursor: pointer;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    justify-items: center;
    padding: 5px;
    background-color: #00000012;
    gap: 15px;
    transition: all 500ms;
    
    &:hover {
      box-shadow: 0px 2px 6px 1px lightgray;
    }

    .element-view {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background-color: lightgray;
      display: block;
      padding: 2px;
    }

    .element-1, .element-4{
      background-color: black;
    }

}

.view-type-icon {
  padding: 10px;
  /* background: white; */
  border-radius: 5px;
  transition: all 500ms;
}

.view-type-icon:hover {
  background-color: white;
}

.view-type-icon__active {
  background-color: white;
}

.icon-wrapper {
  width: 16px;
  height: 16px;
}

.icon-wrapper svg {
  width: 100%;
  height: 100%;
}


.select-value-label {
    overflow: hidden;
    max-width: 26ch;
    text-overflow: ellipsis;
    white-space: nowrap;
}