/* ====== анти-выезд виджет-фильтра ====== */
.uc-kalendar,
.uc-kalendar *{
  box-sizing:border-box;
  max-width:100%;
  min-width:0;
}
.uc-kalendar{ overflow-x:hidden; }

/* ====== ФИЛЬТР (десктоп: крупно) ====== */
.uc-kalendar{
  font-family: Namu, Arial, sans-serif;
}

.uc-kalendar .myst-filter{
  display:flex;
  align-items:flex-end;
  justify-content:flex-start;
  gap:18px;
  flex-wrap:wrap;

  width:min(1100px, 100%);
  margin:0 auto;
  padding:26px 20px;
}

.uc-kalendar .myst-lbl{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-width:320px;
}

.uc-kalendar .myst-lbltxt{
  font-size:28px;
  line-height:1.1;
  font-weight:400;
  opacity:.75;
  text-align:left;
}

.uc-kalendar .myst-range{
  width:520px;
  height:74px;
  padding:0 22px;
  border-radius:22px;
  border:1px solid rgba(0,0,0,.14);
  background:#fff;
  font-size:22px;
  font-weight:500;
  outline:none;
}

.uc-kalendar .myst-apply,
.uc-kalendar .myst-reset{
  height:74px;
  padding:0 28px;
  border-radius:22px;
  border:1px solid rgba(0,0,0,.14);
  font-size:20px;
  font-weight:500;
  cursor:pointer;
  white-space:nowrap;
}

.uc-kalendar .myst-apply{
  background:#111;
  color:#fff;
  border-color:#111;
  min-width:220px;
}
.uc-kalendar .myst-reset{
  background:#fff;
  color:#111;
  min-width:140px;
}

.uc-kalendar .myst-status{
  width:min(1100px, 100%);
  margin:8px auto 0;
  padding:0 20px;
  font-size:18px;
  opacity:.75;
}

/* ====== планшет ====== */
@media (max-width:1100px){
  .uc-kalendar .myst-lbl{ min-width:260px; }
  .uc-kalendar .myst-lbltxt{ font-size:24px; }
  .uc-kalendar .myst-range{ width:420px; height:66px; font-size:18px; border-radius:18px; }
  .uc-kalendar .myst-apply,
  .uc-kalendar .myst-reset{ height:66px; font-size:18px; border-radius:18px; }
}

/* ====== мобилка: 100% ширина, кнопки в ряд, ничего не уезжает ====== */
@media (max-width:760px){
  .uc-kalendar .myst-filter{
    width:100%;
    margin:0;
    padding:0 12px;
    gap:10px;
    align-items:flex-start;
  }

  .uc-kalendar .myst-lbl{
    width:100%;
    min-width:0;
    gap:6px;
  }

  .uc-kalendar .myst-lbltxt{
    font-size:18px;
  }

  .uc-kalendar .myst-range{
    width:100%;
    height:54px;
    border-radius:16px;
    padding:0 14px;
    font-size:16px;
  }

  /* кнопки в ряд и меньше */
  .uc-kalendar .myst-apply,
  .uc-kalendar .myst-reset{
    height:44px;
    border-radius:14px;
    font-size:13px;      /* 12–14 */
    padding:0 10px;
    flex:1 1 0;
    min-width:0;
  }
  .uc-kalendar .myst-apply{ flex:1.35 1 0; }
  .uc-kalendar .myst-reset{ flex:.65 1 0; }

  .uc-kalendar .myst-status{
    width:100%;
    padding:0 12px;
    font-size:14px;
  }
}

@media (max-width:380px){
  .uc-kalendar .myst-apply,
  .uc-kalendar .myst-reset{
    font-size:12px;
    height:42px;
    padding:0 8px;
  }
}

/* ====== FINAL iPhone FIX: ====== */
@media (max-width: 760px){
  .uc-kalendar{ 
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  /*ZeroBlock  внутренние отступы/ширины */
  .uc-kalendar .myst-filter{
    width:100% !important;
    max-width:100% !important;
    padding-left:12px !important;
    padding-right:12px !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  /*flex-дети сжимаем */
  .uc-kalendar .myst-lbl,
  .uc-kalendar .myst-apply,
  .uc-kalendar .myst-reset{
    min-width:0 !important;
    max-width:99% !important;
  }

  /* инпут*/
  .uc-kalendar .myst-range{
    width:95% !important;
    max-width:97% !important;
  }

  /* кнопки: по 50% в ряд, чтобы не выдавливали */
  .uc-kalendar .myst-apply,
  .uc-kalendar .myst-reset{
    flex: 1 1 45% !important;
    width: auto !important;
  }
}
@media (max-width: 760px){
  .uc-kalendar .t396__artboard,
  .uc-kalendar .t396__carrier,
  .uc-kalendar .t396__filter{
    max-width:100% !important;
    overflow-x:hidden !important;
  }
}