body.compensate-for-scrollbar {
    margin-right: unset !important;
}

/* Иначе на меню все налазит */
.header {
    z-index: 10;
}

.cursor-pointer {
    cursor: pointer;
}

a, a[role='button'], a[type='button'] {
    cursor: pointer;
}

.checkbox.disabled label,
.checkbox4.disabled label
{
    cursor: auto;
}

.button.button-white {
  background: #fff;
  border: 1px solid #DDDDDD;
  color: #000;
  line-height: 50px;
}

.content {
  background: #fff;
  padding: 1px;
  margin-top: 10px;
  margin: 10px auto 0;
}

img.error {
    padding: 2em;
    object-fit: contain !important;
    height: 100%;
    width: 100%;
}

/* -------------------------------------------------- куки: override display:none из style.css */
.cookies.active {
    display: block !important;
}

/* -------------------------------------------------- subscribe-форма: красная рамка при ошибке */
.subscribe-form.error input,
.footer-subscribe__form.error input
{
    border: 1px solid var(--base-color);
}

/* отступ плашки направлений от инпута как на верстке
   (там его даёт jQuery-position bottom+5, у нас — margin) */
.av-autocomplete {
    margin-top: 5px;
}

/* -------------------------------------------------- time select width fix */
.search-time .select2-container {
    width: 100%;
}

/* -------------------------------------------------- слои выпадашек поиска */
/* Все плашки поиска живут внутри своих полей (без порталов в body) и лежат
   ниже шапки (1000) и fancybox-модалки (99992), но выше контента страницы.
   Внутри модалки (свой stacking context) они, наоборот, над её контентом. */

/* select2-пакет тянет gj2/css/select2.css с активным
   .select2-container { z-index: 99993 }, а style.css открытому даёт 999999 —
   из-за этого всё поле времени рисовалось поверх модалки, а крестик при
   закрытом списке прятался под триггером; гасим только у нас */
.search-time .select2-container,
.search-time .select2-container.select2-container--open {
    z-index: auto;
}

/* дропдаун времени: позиционирование к родителю (border/radius/shadow/margin
   уже есть в style.css для .time-drop.select2-dropdown) */
.search-time .time-drop.select2-dropdown {
    left: 0;
    z-index: 100;
}

/* список направлений, крестик */
.search .av-autocomplete,
.search-time .search-inputbox__clear {
    z-index: 5;
}

.time-drop .select2-results__options {
    max-height: 200px;
    overflow-y: auto;
}

/* -------------------------------------------------- datepicker (React HomeDateInput) */
.search-date .datepicker-container {
    /* !important — в datepicker.css у .datepicker-dropdown z-index:99999 !important */
    z-index: 100 !important;
    top: 100%;
}

/* как на верстке: дни недели Mon/Tue без uppercase+letterspacing
   (в копии datepicker.css темы эти 2 строки лишние, в layout их нет) */
.datepicker-panel > ul[data-view="week"] li {
    text-transform: none;
    letter-spacing: 0;
}

/* -------------------------------------------------- seat-модалка: ошибка подписки */
.seat-modal__form.error .seat-modal__input {
    border-color: var(--base-color);
}

/* -------------------------------------------------- search-spinner: кнопки в span-пилюле, как в вёрстке.
   Только для строк поиска (.search-row): в offer-форме мокап без пилюли. */
.search-row .search-spinner span {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(0, 0, 0, 0.1);
    position: absolute;
    right: 10px;
    top: 10px;
    height: 40px;
    gap: 20px;
    padding: 0 10px;
    border-radius: 4px;
}
.search-row .search-spinner span .search-spinner__down,
.search-row .search-spinner span .search-spinner__up {
    position: static;
}

/* -------------------------------------------------- loader (из gj2 template.css) */
.loaderContainer {
    position: absolute !important;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 10 !important;
    background: rgba(255,255,255,.5);
    align-items: center;
    display: flex;
    justify-content: center;
}
.loader {
    width: 80px;
    height: 80px;
    border: 3px solid #F5F5F5;
    border-bottom-color: var(--base-color);
    border-radius: 50%;
    display: inline-block;
    box-sizing: border-box;
    animation: rotation 1s linear infinite;
}
@keyframes rotation {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
.preloader {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 85px 0;
}

/* -------------------------------------------------- сайдбар EL: sticky + тонкий скролл (из gj2 custom.css) */
.el-sidebar {
    position: sticky;
    top: 0;
    max-height: calc(100vh);
    overflow-y: scroll;
    overscroll-behavior: contain;
}
.el-sidebar_with-padding_big {
    top: 230px;
    max-height: calc(100vh - 240px);
}
.el-sidebar_with-padding_small {
    top: 190px;
    max-height: calc(100vh - 200px);
}
.el-sidebar::-webkit-scrollbar {
    width: 3px;
    height: 3px;
}
.el-sidebar::-webkit-scrollbar-track {
    background: transparent;
}
.el-sidebar::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
}
.el-sidebar::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 0, 0, 0.3);
}

/* Чтобы не расщеплялись инпуты при sticky search */
.search-count {
     width: unset; 
}

.search-inputbox.error input,
.search-inputbox.search-time.error span,
.search-inputbox.error .direction-code,
.search-inputbox.error .direction-code:before
{
    background: #ffe7e7;
}
.error-mess {
    margin-top: 5px;
    color: #ff0000;
    font-size: 11px;
}

/* Модалка успеха подвала { */
.seo-order {
    padding: 50px !important;
    border-radius: 10px;
    width: 1250px;
}
.seo-order .fancybox-close-small {
    display: none !important;
}
.success-modal__title {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin: 20vh 0;
}
.success-modal__title h3 {
    font-size: 32px;
    font-weight: normal;
    margin: 20px 0;
}
.success-modal__title span {
    line-height: 140%;
}
/*  } */

.cars-form__group {
  display: block;
}

.direction-card__user {
  position: absolute;
  right: 0;
  top: 0;
}
.direction-card__user span {
  display: flex;
  align-items: center;
  gap: 7px;
}

.icon-people::before {
    content: unset;
}
.icon-plane2::before {
    content: unset;
}

.passanger-item__img .passanger-item__passport {
  width: 140px;
  height: 120px;
}
.passanger-item__img .passanger-item__passport img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 4px;
}

.plane-input {
    position: relative;
}
.plane-input label {
  display: block;
  position: absolute;
  transition: all ease 0.3s;
  font-size: 15px;
  left: 20px;
  top: 22px;
  pointer-events: none;
}

.plane-input input {
  display: block;
  width: 100%;
  height: 60px;
  border: 1px solid #DDDDDD;
  border-radius: 10px;
  padding: 0 20px;
  padding-top: 0px;
  padding-top: 20px;
  font-size: 15px;
}
.plane-input textarea {
  display: block;
  width: 100%;
  min-height: 60px;
  border: 1px solid #DDDDDD;
  border-radius: 10px;
  padding: 30px 20px 10px 20px;
  font-family: "Montserrat", sans-serif;
  font-size: 15px;
  overflow: hidden;
  resize: none;
}
.plane-input.changed label {
  color: #999999;
  font-size: 13px;
  top: 10px;
}

.cars-form__col.cars-form__mark {
  flex: 1;
}
.cars-form__col.cars-form__number {
  width: 260px;
}

.heder-user {
    display: flex;
    gap: 2em;
}
.heder-user a {
    position: relative;
}
.heder-user a span {
  display: block;
  position: absolute;
  height: 18px;
  width: 18px;
  text-align: center;
  line-height: 20px;
  font-size: 10px;
  font-weight: 500;
  border-radius: 50%;
  right: -21px;
  top: -14px;
}
.heder-user a.heder-user__login span.active {
  background: var(--base-color);
  color: #fff;
}
.push-item > a {
  position: relative;
  z-index: 3;
  text-decoration: unset;
}
.push-item__top {
    position: relative;
    display: flex;
    justify-content: space-between;
}
.push-item__status-count {
  font-size: 12px;
  font-weight: 500;
  margin-bottom: 5px;
}
.push-item__status-count span {
  color: var(--base-color);
}
.push-bag__tab2 li a i {
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.4);
}
.push-bag__tab2 li a i.active {
  background: var(--base-color);
  color: #fff;
}

.push-item__new-indicator {
    position: absolute;
    top: 0;
    right: 0;
    background: red;
    height: 8px;
    width: 8px;
    border-radius: 4px;
}

.el__filter-content .checkbox.disabled > span,
.el__filter-content .checkbox4.disabled span
{
    color: rgba(0, 0, 0, 0.3);
}

.checkbox4.disabled label:hover .checkbox-switcher {
    background: #F5F5F5;
}

.support-img {
  width: 140px;
  height: 140px;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto 40px;
}

.modal-inline {
  margin: 120px auto;
  max-width: 520px;
}

.search-tabs a.active {
    cursor: default;
}

.el-flight-compare.added[disabled] {
    background: #bababa;
    pointer-events: none;
}

.navigation-drop--right {
    left: unset;
    right: 10px;
}

.heder-user a.heder-user__login span {
    background: #EBEBEB;
    color: rgba(0, 0, 0, 0.4);
}

.banner-top {
  position: relative;
  z-index: 100;
  text-align: center;
  display: flex;
  width: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-color: #ffffff;
}

.banner-top img {
    width: 100%;
}

.el-search .ui-menu,
.main-search .ui-menu {
    transform: translateY(10px);
}
.offer-modal__slider .swiper {
    max-height: 500px;
}
.offer-modal__slider .swiper-slide {
    position: relative;
}
.offer-modal__slider .swiper img {
    max-width: 100%;
}

/* SEO planes: стрелка "View more" — вниз, в раскрытом состоянии ("Hide") — вверх */
.seo-planes-more .icon-arrow15 {
    transition: transform ease 0.3s;
}
.seo-planes-more.is-open .icon-arrow15 {
    transform: rotate(180deg);
}

/* Блокировка прокрутки страницы.
   Класс ставит react/src/helpers/bodyScrollLock.js в gj2 (хук useBodyScrollLock, общий для тем).
   Сдвиг от пропавшей полосы прокрутки не компенсируем -- как и у fancybox (compensate-for-scrollbar выше) */
body.scroll-locked {
    /* !important -- перебить inline overflow, если его выставит чужой скрипт */
    overflow: hidden !important;
}
/* борода: докрутили список до края -- прокрутка не уходит на страницу */
.push-bag .simplebar-content-wrapper {
    overscroll-behavior: contain;
}

.offer-modal__info i {
  font-style: normal;
  color: var(--base-color);
}

/* GW-900 (7): тумблер «Show in PDF offer» — в правой колонке под «Send push notifications» */
.profile-form__checkbox {
    justify-content: flex-end;
    /* строка с push-тумблером высотой с инпут (60px), сам тумблер вверху; подтягиваем
       так, чтобы низ тумблера совпал с низом поля слева: 40px отступ строки + 22px высота тумблера */
    margin: -62px 0 42px;
}
.profile-form__logo-check {
    width: 330px;
}
