:root {
    --mini-width: 85px;
}

.ubicomp-form--widget-container {
    display: inline-block;
}

.ubicomp-form--widget-container label {
    display: block;
}

.ubicomp-form--widget-container .ubicomp--booking-field,
.ubicomp-form--widget-container .ubicomp--booking-field.checkout .night, 
.ubicomp-form--widget-container .ubicomp--booking-field.checkout .out, 
.ubicomp-form--widget-container .ubicomp--booking-field.person .adult,
.ubicomp-form--widget-container .ubicomp--booking-field.person .child {
    padding: 5px;
}

.ubicomp-form--widget-container .ubicomp--booking-field.checkout,
.ubicomp-form--widget-container .ubicomp--booking-field.person {
    padding: 0;
}

.ubicomp-form--widget-container.ubicomp-form--row {
    display: block;
}

.ubicomp-form--widget-container.ubicomp-form--row .ubicomp-widget--form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.ubicomp-form--widget-container.ubicomp-form--row .ubicomp--booking-field.checkout, 
.ubicomp-form--widget-container.ubicomp-form--row .ubicomp--booking-field.person {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.ubicomp-form--widget-container.ubicomp-form--row .ubicomp--booking-field.checkout .night, 
.ubicomp-form--widget-container.ubicomp-form--row .ubicomp--booking-field.person .adult,
.ubicomp-form--widget-container.ubicomp-form--row .ubicomp--booking-field.person .child {
    width: var(--mini-width);
    -webkit-box-flex: 0;
        -ms-flex: 0 0 var(--mini-width);
            flex: 0 0 var(--mini-width);
}

.ubicomp-form--widget-container.ubicomp-form--row .ubicomp--booking-field input, 
.ubicomp-form--widget-container.ubicomp-form--row .ubicomp--booking-field select {
    width: 100%;
}

.ubicomp-form--widget-container.ubicomp-form--row .ubicomp--booking-field input, 
.ubicomp-form--widget-container.ubicomp-form--row .ubicomp--booking-field select,
.ubicomp-form--widget-container.ubicomp-form--row .ubicomp--booking-field [type="submit"] {
    height: 40px;
}

@media only screen and (max-width: 960px) {
    .ubicomp-form--widget-container.ubicomp-form--row .ubicomp-widget--form {
        display: block;
    }
    
    .ubicomp-form--widget-container.ubicomp-form--row .ubicomp--booking-field.checkout .out {
        width: 100%;
    }
    
    .ubicomp-form--widget-container.ubicomp-form--row .ubicomp--booking-field.checkout .night + .out {
        width: calc(100% - var(--mini-width));
    }
    
    .ubicomp-form--widget-container.ubicomp-form--row .ubicomp--booking-field.person .adult,
    .ubicomp-form--widget-container.ubicomp-form--row .ubicomp--booking-field.person .child {
        width: 50%;
        -webkit-box-flex: 0;
            -ms-flex: 0 0 50%;
                flex: 0 0 50%;
    }
}