.orderOptionsSelect input[type='checkbox'],
.customConcreteDetails input[type='checkbox'] {
    margin-right: 10px;
    width: 20px;
    height: 20px;
    background-color: transparent;
    border: 1px solid black;
    border-radius: 5px;
}

.orderOptionsSelect input[type="checkbox"]:checked,
.customConcreteDetails input[type="checkbox"]:checked {
    background-color: #4169e1;
}

.orderOptionsSelect input[type="checkbox"]:checked:before,
.customConcreteDetails input[type="checkbox"]:checked:before {
    content: "";
    filter: invert(100%) sepia(74%) saturate(2%) hue-rotate(258deg) brightness(108%) contrast(100%);
    width: 20px;
    height: 20px;
    margin: 0;
    background-image: url('../images/tick.svg');
    background-position: center;
    background-size: 60%;
    background-repeat: no-repeat;
}
.concreteOrderOverview {
    font-family: 'Ubuntu', sans-serif;
}
.mapStatusContainer {
    display: flex;
    justify-content: space-between;
    min-height: 650px;
}
.orderName {
    font-size: 28px;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.orderTitle {
    height: 20%;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: center;
}
.orderLeft {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 65.5%;
}
.statusBody {
    width: 33%;
}
.orderAddress {
    font-size: 21px;
    font-style: italic;
    margin-top: 0 !important;
    margin-bottom: 0;
}
.orderNumber {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    font-size: 32px;
    background-color: #0D91E5;
    font-weight: 700;
    color: #ffffff;
    border-radius: 5px;
    height: 19%;
}
.orderStatus {
    box-shadow: 7px 7px 12px -4px rgba(0,0,0,0.35);
    display: flex;
    justify-content: center;
    text-align: center;
    background-color: #F9F8F8;
    margin-top: 2%;
    border-radius: 5px;
    height: auto;
}
.orderVendor, .loginVendor {
    margin-top: 2%;
    box-shadow: 7px 7px 12px -4px rgba(0,0,0,0.35);
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    background-color: #F9F8F8;
    border-radius: 5px;
    height: auto;
}
.orderVendor{
    height: 34%;
    line-height: 33px;
    justify-content: center;
}
.share{
    background-color: #F9F8F8;
    padding: 20px;
    margin-bottom: 10px;
    border-radius: 5px;
}
.loginVendor h3{
    margin-top: 20px;
    font-size: 16px;
}
.shareProject h3{
    text-align: center;
    margin-top: 10px;
    font-size: 30px;
    font-weight: 700;
    text-transform: uppercase;
    color: rgb(0, 107, 183) !important;
}
.orderDate {
    font-size: 18px;
    font-style: italic;
}
.orderMapImage {
    height: 79%;
}
.mapContainer {
    height: 100%;
    width: 100%;
}
.orderBlueText {
    color: rgb(0, 107, 183) !important;
    font-style: italic;
}
#mapPreview {
    height: 100%;
    width: 100%;
    border-radius: 10px;
}
.concreteOrderOptions,
.pumpmixerOrderOptions {
    display: flex;
    justify-content: row;
    flex-wrap: wrap;
}
.concreteOrderOptions label, 
.pumpmixerOrderOptions label {
    width: 25%;
}

.orderBottomRow {
    margin-top: 1%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.orderTotalArea {
    width: 33%;
    box-shadow: 7px 7px 12px -4px rgba(0,0,0,0.35);
    background-color: #F9F8F8;
    border-radius: 5px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    font-weight: 700;
}
.orderWeather {
    width: 33%;
    box-shadow: 7px 7px 12px -4px rgba(0,0,0,0.35);
    background-color: #F9F8F8;
    border-radius: 5px;
    padding: 1%;
    display: flex;
    flex-direction: row;
}
.weatherDate {
    width: 60%;
    font-size: 20px !important;
}
.weatherInfo {
    width: 40%;
    display: flex;
    flex-direction: column;
}
.weatherImg {
    object-fit: contain;
    max-height: 50px;
}
.weatherText {
    display: flex;
    flex-direction: column;
    text-align: center;
}
.weatherTemp {
    font-size: 18px;
    font-family: 'Ubuntu', sans-serif;
}
.orderNote {
    width: 33%;
    box-shadow: 7px 7px 12px -4px rgba(0,0,0,0.35);
    background-color: #F9F8F8;
    border-radius: 5px;
    padding-top: 1%;
    padding-left: 1%;
    font-size: 16px;
}
.orderNote h4 {
    margin-top: 0 !important;
    margin-bottom: 1% !important;
    font-size: 18px !important;
    font-style: italic;
}
.statusItem {
    height: 100%;
    display: flex;
    flex-direction: column;
}
.statusTitle {
    width: 100%;
    font-size: 25px;
    font-style: italic;
    font-weight: 700;
    color: #7A7A7A;
}
.statusItem.approved .statusTitle{
    color: #07B92D;
}

.orderTotal {
    margin: 2% 0 2% 0;
    font-weight: 700;
    font-size: 35px;
    color: #000;
}
.statusItem button,
.statusItem .button,
.loginVendor .button{
    width: auto;
    margin: auto auto 10% auto;
    border-radius: 15px;
    border: 1px solid black;
    padding: 10px 20px;
    text-decoration: uppercase;
    font-size: 24px;
}
.orderPayBtn {
    width: 70%;
    margin: auto auto 10% auto;
    border-radius: 15px;
    border: 1px solid black;
    background-color: #07B92D !important;
    padding: 10px 20px;
    text-decoration: uppercase;
    color: #fff !important;
}

.orderPayBtn:hover {
    text-decoration: none;
}

.orderExtra {
    font-size: 12px;
    font-weight: 700;
}
.orderOptionsSelect {
    margin-top: 2%;
    box-shadow: 7px 7px 12px -4px rgba(0,0,0,0.35);
    background-color: #F9F8F8;
    border-radius: 5px;
    padding-bottom: 2%;
}
.orderOptionsSelect h4 {
    margin-top: 2% !important;
    font-style: italic;
    font-size: 24px;
    font-weight: 500;
}
.orderOptionsSelect label {
    display: flex;
    align-items: center;
    font-weight: 700;
    font-size: 16px;
}
.orderBlueText {
    margin-top: 0 !important;
}
.weatherDay {
    font-size: 30px;
    font-weight: 700;
    text-transform: uppercase;
}
.volumeValue {
    font-size: 30px;
}
.orderConcreteExtra {

}
.weatherMonth {
    font-weight: 700;
    font-size: 24px;
}
.weatherTime {
    font-weight: 700;
    font-size: 24px;
}
.orderDetails {
    margin-top: 2%;
    box-shadow: 7px 7px 12px -4px rgba(0,0,0,0.35);
    background-color: #F9F8F8;
    border-radius: 5px;
}
.singleDetailEntry {
    padding: 2%;
}
.itemTableBody {
    border: 1px solid #7D7C7C !important;
    border-radius: 5px !important;
}
.orderHeader {
    width: 100%;
    background-color: #0D91E5;
    color: #ffffff;
    font-size: 24px;
    font-weight: 700 !important;
    padding-left: 1%;
    margin-top: 2% !important;
    font-style: normal !important;
}
.itemTableHead {
    color: #7A7A7A;
}
.itemTableHead span {
    width: 17%;
    display: inline-block;
    font-size: 18px;
}

.orderDetailTitle {
    font-style: italic;
}
.itemTableBody {
    padding-left: 10px;
}
.itemTableBody span {
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    padding-left: 2%;
}
.itemTableBody .adminEditContainer{
    font-size: 13px;
}
.mediaSelector {
    width: 20%;
}
.detailEntries ul{
    margin-bottom: 0px;
}
.concreteBody input[type='checkbox']::before,
.proffBody input[type='checkbox']::before {
    position: absolute !important;
    top: 0px !important;
    display: block !important;
    left: 0px !important;
    transform: none !important;
    border: none !important;
}
.concreteBody input[type='checkbox']::after,
.proffBody input[type='checkbox']::after {
    display: none !important;
}
.saveOptionsBtn, .saveConcreteOptionsBtn {
    padding: 10px !important; 
    font-size: 16px !important;
}
.saveButtonWrapper {
    text-align: right;
    padding-right: 2%;
}
.concreteOptionsSelect {
    padding-left: 2%;
}
.orderSelectLabel {
    padding-left: 2%;
    font-size: 18px;
    font-weight: 700;
}
.orderOptionSelect {
    margin-left: 2%;
}

.pumpHoseInput {
    background-color: #ffffff;
    border: 1px solid black !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 700;
    padding-left: 5px !important;
    width: 50%;
    padding: 5px;
}
.changeHoseLength {
    width: 80%;
}

.orderOptionsSelect select {
    appearance: none;
    width: 100%;
    height: 100%;
    background-color: #ffffff;
    border: 1px solid black;
    border-radius: 8px;
    font-size: 18px;
    font-weight: 700;
    padding: 10px;
    padding-left: 5px !important;
}
.concreteSelectWrapper.deliverySelect {
    width: 20%;
    margin-bottom: 0 !important;
    position: relative;

}
.orderOptionsSelect .concreteSelectWrapper select {
    background-image: url('../images/sort-down.svg') !important;
    background-position-x: 101%;
    background-position-y: 50%;
    background-repeat: no-repeat;
    background-size: 15px;
    font-size: 16px;
    padding: 2%;
}
.concreteSelectWrapper:after {
    content: "";
    border-left: 1px solid black;
    position: absolute;
    height: 100%;
    width: 1px;
    right: calc(15px + 6%);
}
.customConcreteDetails {
    background-color: #F9F8F8;
    box-shadow: 7px 7px 12px -4px rgba(0,0,0,0.35);
    border-radius: 5px;
}
.customConcreteInfoEntry {
    width: 100%;

}
.customInfoWrapper {
    display: flex;
    flex-direction: row;
}
.concreteVariation, .concreteExtras {
    width: 59%;
    display: flex;
    flex-direction: column;
    padding-left: 2%;
    font-size: 16px;
}
.concreteExtras label {
    margin-bottom: 0.5rem;
}
.concreteVariation div {
    margin-bottom: 0.5rem;
}
.concreteInfoKey {
    width: 25%;
    display: inline-block;
}
.concreteInfoValue {
    font-weight: 700;
    width: 25%;
    display: inline-block;
}
.orderConcreteDetails {
    padding-left: 2%;
}
.customConcreteDetails {
    padding-bottom: 2%;
}
.orderDetails {
    padding: 0 2% 2% 2%;
}

.orderVendor {
    font-size: 16px;
    display: flex;
    padding-left: 4%;
    margin-top: 10px;
}
.orderVendor div{
    display: flex;
}
.orderVendor.temp .heading{
    color: #0d0d88;
    font-style: italic;
    font-weight: 700;
}
.orderVendor.temp{
    color: #000;
    font-weight: bold;
}
.orderVendor.temp .blue{
    color: rgb(0, 107, 183) !important;
}
.vendorHeading {
    width: 45% !important;
    font-weight: 700;
    display: inline-block;
    text-align: left;
}
.vendorData {
    width: 50%;
    display: inline-block;
    text-align: left;
}
.deliveryTotalEdit span.woocommerce-Price-currencySymbol{
    display: inline;
}
.deliveryTotalEdit span.woocommerce-Price-amount{
    width: 100%;
    display: inline;
}
.itemTableHead,
.adminEditContainer{
    display: grid;
    grid-template-columns: 20% 20% 20% 20% 20%;
}
.itemTableHead div{
    border-right: 1px solid #000;
    padding-right: 10px;
    margin-bottom: 5px;
}
.adminEditContainer div{
    padding-right: 10px;
    padding-left: 10px;
}
.itemTableHead div{
    padding-left: 10px;
}
.adminEditContainer div:first-of-type,
.itemTableHead div:first-of-type{
    padding-left: 0px;
}
.itemTableHead div:last-of-type{
    border: 0px;
}
.adminEditContainer div:last-of-type{
    padding-left: 0px;
}
.step3Body input[type='text'], 
.step3Body input[type='number'], 
.step3Body input[type='email'], 
.step3Body input[type='tel'], 
.step3Body input[type='url'], 
.step3Body input[type='password'], 
.step3Body input[type='search'], 
.step3Body textarea, 
.step3Body .input-text{
    border-color: #000 !important;
}
.step3Body input[type='text'].error, 
.step3Body input[type='number'].error, 
.step3Body input[type='email'].error, 
.step3Body input[type='tel'].error, 
.step3Body input[type='url'].error, 
.step3Body input[type='password'].error, 
.step3Body input[type='search'].error, 
.step3Body textarea.error, 
.step3Body .input-text.error{
    color: red !important;
    /* background-color: #f1d4d4; */
    border-color: red !important;
}
.step3Body .error_message{
    color: red;
}
/* Desktop styling */
@media only screen and (max-width: 768px) {
    .mapStatusContainer{
        display: block;
        min-height: auto;
    }
    .orderLeft{
        display: block;
        width: 100%;
    }
    .orderMapImage{
        height: 300px;
    }
    .statusBody{
        margin-top: 1%;
        width: 100%;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
    }
    .orderNumber,
    .orderStatus,
    .orderVendor.temp{
        display: flex;
        flex-direction: column;
        justify-content: center;
        width: 33%;
        box-shadow: 7px 7px 12px -4px rgb(0 0 0 / 35%);
        margin-top: 2%;
        height: auto;
        padding-left: 0px;
    }
    .orderWeather{
        flex-direction: column;
    }
    .weatherDate,
    .weatherInfo{
        width: 100%;
        text-align: center;
    }
    .orderExtra{
        width: 70%;
        margin: 0 auto;
    }
    .itemTableHead{
        font-size: 12px;
    }
    .orderTotal{
        font-size: 28px;
    }
    .weatherDay,
    .orderNumber{
        font-size: 24px;
    }
    .weatherMonth,
    .weatherTime{
        font-size: 18px;
    }
    .orderDate{
        font-size: 14px;
    }

}
@media only screen and (max-width: 600px) {
    .concreteOrderOptions label, .pumpmixerOrderOptions label{
        width: 100%;
        margin-bottom: 10px;
        display: block;
    }
    .orderBottomRow,
    .statusBody{
        display: block;
    }
    .orderNumber, .orderStatus, .orderVendor.temp, .orderTotalArea, .orderWeather, .orderNote{
        width: 100%;
        display: block;
    }
    .orderVendor.temp{
        padding: 5%;
    }
    .itemTableBody{
        padding-left: 10px;
        padding-right: 10px;
    }
    .orderWeather,
    .orderNote{
        margin-top: 2%;
    }
    .changeHoseLength{
        display: inline;
    }
    .orderNote{
        padding: 5%;
        text-align: center;
    }
    .itemTableHead, .adminEditContainer{
        text-align: center;
    }
    .itemTableHead div{
        justify-self: center;
    }
    .adminEditContainer div{
        margin-bottom: 0px;
    }
    .itemTableHead{
        display: none;
    }
    .concreteOrderOptions label, .pumpmixerOrderOptions label{
        margin-bottom: 0px;
    }
    .itemTableBody .adminEditContainer{
        display: block;
        text-align: left;
        padding: 0;
        margin: 0;
    }
    .itemTableBody .adminEditContainer{
        margin-bottom: 20px;
    }
    .adminEditContainer div,
    .itemTableBody span{
        padding: 0px;
    }
    .itemTableBody .adminEditContainer{
        font-size: 14px;
    }
    .show_mobile{
        display: block !important;
    }
    .show_mobile{
        color: rgb(0, 107, 183) !important;
        font-style: italic;
        font-size: 14px;
        font-weight: 700;
    }
    .share, .concreteOrderOverview{
        width: 90% !important;
        padding-top: 4%;
    }
    .orderTotalArea span,
    .orderConcreteName span{
        display: block;
    }
    .concreteOptionsSelect{
        padding: 0px;
    }
    .orderWeather .hide_mobile{
        display: none;
    }
    
}