/* Keep popup manageable when location lists are long. */
#rpressDateTime .modal__container {
    max-height: 90vh;
    overflow: hidden;
}

#rpressDateTime #rpressDateTime-content {
    max-height: calc(90vh - 72px);
    overflow-y: auto;
    overflow-x: hidden;
}

#rpressDateTime .rpml-location-options {
    max-height: 220px;
    overflow-y: auto;
    overflow-x: hidden;
}

#rpressDateTime .rpress-service-type-message .rpml-area-selector {
    background: transparent;
    padding: 0;
}

#rpressDateTime .rpress-service-type-message .rpml-area-selector .d-flex {
    align-items: flex-start;
    gap: 10px;
    width: 100%;
}

#rpressDateTime .rpress-service-type-message .rpml-area-selector .d-flex > svg {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin-top: 8px;
}

#rpressDateTime .rpress-service-type-message .rpml-area-selector .rpress-delivery-time-wrap {
    flex: 1 1 auto;
    width: 100%;
    min-width: 0;
}

#rpressDateTime .rpress-service-type-message .rpml-area-selector .delivery-time-text {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 6px;
}

#rpressDateTime .rpress-service-type-message .rpml-area-selector .rpress-delivery-zone-wrapper input[type=text] {
    width: 100%;
    min-height: 42px;
}

#rpressDateTime .rpress-service-type-message .rpml-area-selector .rpress-delivery-zone-wrapper,
#rpressModal .rpress-service-type-message .rpml-area-selector .rpress-delivery-zone-wrapper {
    width: 100%;
    display: block;
}

#rpressDateTime .rpress-service-type-message .rpml-area-selector #rp_delivery_location,
#rpressModal .rpress-service-type-message .rpml-area-selector #rp_delivery_location {
    width: 100% !important;
    max-width: none;
    min-height: 42px;
    display: block;
    box-sizing: border-box;
}

#rpressDateTime .rpml-location-options .delivery_location.avlocations,
#rpressModal .rpml-location-options .delivery_location.avlocations,
#rpressDateTime .rpml-location-options .pickup_location.avlocations,
#rpressModal .rpml-location-options .pickup_location.avlocations {
    border: 1px solid #d9dde5 !important;
    border-radius: 10px;
    background: #fff;
    padding: 10px 12px !important;
    margin-bottom: 8px !important;
}

#rpressDateTime .rpml-location-options .delivery_location.avlocations input[type="radio"],
#rpressModal .rpml-location-options .delivery_location.avlocations input[type="radio"],
#rpressDateTime .rpml-location-options .pickup_location.avlocations input[type="radio"],
#rpressModal .rpml-location-options .pickup_location.avlocations input[type="radio"] {
    margin: 4px 8px 0 0;
    vertical-align: top;
}

#rpressDateTime .rpml-location-options .rpml-location-name,
#rpressModal .rpml-location-options .rpml-location-name {
    display: inline-block;
    margin: 0;
    color: #111827;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.3;
}

#rpressDateTime .rpml-location-options .rpml-location-address,
#rpressModal .rpml-location-options .rpml-location-address {
    margin: 6px 0 0 24px;
    color: #6b7280;
    font-size: 12px;
    line-height: 1.45;
}

#rpressDateTime .rpml-location-options .rpml-location-selected,
#rpressModal .rpml-location-options .rpml-location-selected {
    border-color: #cbd5e1 !important;
}

.rpml-checkout-branch-change {
    padding: 12px 16px;
}

.rpml-checkout-branch-change .rpml-change-branch-link {
    font-weight: 600;
    text-decoration: underline;
}

.rpml-checkout-branch-change .rpml-change-branch-note {
    margin-top: 6px;
    font-size: 12px;
    line-height: 1.45;
    opacity: 0.85;
}

#rpressDateTime .rpress-editaddress-submit-btn.rpml-update-disabled,
#rpressModal .rpress-editaddress-submit-btn.rpml-update-disabled {
    pointer-events: none;
    opacity: 0.5;
    cursor: not-allowed;
}
