/* ======================================================
   order-page.css
   Isolated redesign for checkout page (/order).
   All rules scoped under .order-page--redesign
   to avoid affecting other pages or triggering a webpack rebuild.
   ====================================================== */

/*
   Важно: селекторы должны быть не короче, чем в app.css.
   Используй полный путь от .order-page--redesign.
*/

/* ---- Переключение блоков доставки ---- */

.order-page--redesign .order-delivery__info > .delivery-info {
    display: none !important;
}

.order-page--redesign .order-delivery__info > .delivery-info.is-active {
    display: block !important;
}

/* ---- Общий layout: карта слева, панель справа ---- */

.order-page--redesign .order-delivery__info .delivery-info .order-delivery-layout {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 16px;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
}

.order-page--redesign .order-delivery__info .delivery-info .order-delivery-layout__map {
    flex: 0 0 calc(55% - 8px);
    min-width: 0;
    max-width: calc(55% - 8px);
    box-sizing: border-box;
}

.order-page--redesign .order-delivery__info .delivery-info .order-delivery-layout__map .map-info {
    margin: 0 0 10px;
}

.order-page--redesign .order-delivery__info .delivery-info .order-delivery-layout__map .map {
    display: block;
    width: 100%;
    height: 470px;
    margin-left: 0;
    vertical-align: top;
}

.order-page--redesign .order-delivery__info .delivery-info .order-delivery-layout__panel.info {
    display: block;
    flex: 0 0 calc(45% - 8px);
    min-width: 0;
    max-width: calc(45% - 8px);
    width: auto;
    margin-left: 0;
    vertical-align: top;
    box-sizing: border-box;
    overflow: hidden;
}

/* ---- Самовывоз: карта слева, поиск и ПВЗ справа ---- */

.order-page--redesign .delivery-info .pickup-map-wrapper--order {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 16px;
    width: 100%;
    max-width: 100%;
    height: 470px;
    max-height: 470px;
    margin-top: 0;
    padding: 0;
    border: none;
    box-shadow: none;
    box-sizing: border-box;
    overflow: hidden;
}

.order-page--redesign .delivery-info .pickup-map-wrapper--order .pickup-map {
    flex: 0 0 calc(55% - 8px);
    min-width: 0;
    max-width: calc(55% - 8px);
    min-height: 470px;
    height: 470px;
    border: 1px solid #dedede;
    box-sizing: border-box;
}

.order-page--redesign .delivery-info .pickup-map-wrapper--order .pickup-nav {
    flex: 0 0 calc(45% - 8px);
    min-width: 0;
    max-width: calc(45% - 8px);
    height: 100%;
    max-height: 100%;
    margin-right: 0;
    margin-left: 0;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    overflow: hidden;
}

.order-page--redesign .delivery-info .pickup-map-wrapper--order .pickup-nav input {
    flex: 0 0 auto;
    width: 100%;
    box-sizing: border-box;
}

.order-page--redesign .delivery-info .pickup-map-wrapper--order .pickup-points {
    flex: 1 1 0;
    min-height: 0;
    margin-top: 12px;
    box-sizing: border-box;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

.order-page--redesign .delivery-info .pickup-map-wrapper--order .pickup-point {
    box-sizing: border-box;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.order-page--redesign .delivery-info .pickup-map-wrapper--order .pickup-point label {
    padding-right: 70px;
    box-sizing: border-box;
}

.order-page--redesign .delivery-info .pickup-map-wrapper--order .pickup-company {
    display: block;
    font-weight: 700;
    margin-bottom: 4px;
}

.order-page--redesign .delivery-info .pickup-map-wrapper--order .pickup-work-hours {
    display: block;
    margin-top: 4px;
    color: #666;
    font-size: 13px;
}

.order-page--redesign .delivery-info .pickup-map-wrapper--order .pickup-default-badge {
    display: inline-block;
    margin-top: 6px;
    padding: 2px 8px;
    border-radius: 3px;
    background: #eef5ff;
    color: #2f6fed;
    font-size: 12px;
}

/* ---- Поиск адреса доставки ---- */

.order-page--redesign .order-delivery-address-search {
    margin-bottom: 12px;
}

.order-page--redesign .order-delivery-address-search input {
    width: 100%;
    padding: 10px;
    border: 1px solid #dedede;
    box-sizing: border-box;
    font-size: 14px;
}

.order-page--redesign .order-delivery-layout__panel.info textarea.form-control {
    min-height: 65px;
    resize: vertical;
}

.pac-container {
    z-index: 10000 !important;
}

@media only screen and (min-width: 1023px) {
    .order-page--redesign .delivery-type {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        width: 49%;
    }
}

@media only screen and (max-width: 1022px) {
    .order-page--redesign .order-delivery__info .delivery-info .order-delivery-layout,
    .order-page--redesign .delivery-info .pickup-map-wrapper--order {
        flex-direction: column;
        height: auto;
        max-height: none;
    }

    .order-page--redesign .order-delivery__info .delivery-info .order-delivery-layout__map,
    .order-page--redesign .delivery-info .pickup-map-wrapper--order .pickup-map {
        flex: none;
        width: 100%;
        max-width: 100%;
        height: 320px;
        min-height: 320px;
    }

    .order-page--redesign .order-delivery__info .delivery-info .order-delivery-layout__panel.info,
    .order-page--redesign .delivery-info .pickup-map-wrapper--order .pickup-nav {
        flex: none;
        width: 100%;
        max-width: 100%;
        height: auto;
        max-height: none;
    }

    .order-page--redesign .delivery-info .pickup-map-wrapper--order .pickup-points {
        flex: none;
        max-height: 280px;
        min-height: 0;
    }
}
@media only screen and (min-width: 1023px) {
    .order-delivery__info .delivery-info .info .row {
        margin-left: 0;
    }
    .order-delivery__info .delivery-info .info .form-group__radio_inline {
        margin: -3px 0 0 0;
    }
    .order-delivery__info .delivery-info .info .form-group__radio_list {
        margin: 9px 0 0 0;
        font-size: 14px;
    }
}
