:root {
    --black: #000;
    --white: #fff;
    --blue: #0766FF;
    --mainText: #233142;
    --secondaryText: #5B748D;
    --inactiveText: #C5CEE0;
    --lightGray: #F7F9FC;
    --lightBlue: #BAD4FF;
    --whiteBlue: #E6F0FF;
    --lightGreen: #CCF7E9;
    --whiteGreen: #E5FBF4;
    --lightYellow: #FFF6E5;
    --lightRed: #FFECF1;
    --borderColor: #E9ECF4;
    --red: #E10540;
    --green: #00D68F;
    --darkGreen: #00AB72;
    --yellow: #FFA400;
}
*{
    margin: 0;
    padding: 0;
    outline: 0;
}
html, body{
    height: 100%;
}
body{
    font-family: 'EuclidCircularB-Regular';
    line-height: normal;
    color: var(--mainText);
    font-size: 16px;
    -webkit-user-select: none; /* Safari */
    -ms-user-select: none; /* IE 10 and IE 11 */
    user-select: none; /* Standard syntax */
}

h1, h2, h3, h4, h5, h6{
    margin: 0;
    padding: 0;
}
a{
    text-decoration: none;
    cursor: pointer;
}
select{
    border: 0;
    width: 100%;
    color: var(--secondaryText);
}
input{
    border: 0;
    padding: 0;
}
textarea{
    border-radius: 10px;
    border: 0;
    padding: 10px 20px;
    font-size: 14px;
    resize: none;
}
ul{
    list-style: none;
    margin: 0;
    padding: 0;
}

.fwLight{
    font-family: 'EuclidCircularB-Light';
}
.fwMedium{
    font-family: 'EuclidCircularB-Medium';
}
.fwSemiBold{
    font-family: 'EuclidCircularB-SemiBold';
}
.fwBold, b{
    font-family: 'EuclidCircularB-Bold';
}

.br5{border-radius: 5px}
.br10{border-radius: 10px}

.fs12{font-size: 12px}
.fs14{font-size: 14px}
.fs15{font-size: 15px}
.fs16{font-size: 16px}
.fs17{font-size: 17px}
.fs18{font-size: 18px}
.fs19{font-size: 19px}
.fs20{font-size: 20px}

.p5{padding: 5px}
.pl5{padding-left: 5px}
.pt5{padding-top: 5px}
.pr5{padding-right: 5px}
.pb5{padding-bottom: 5px}

.p10{padding: 10px}
.pl10{padding-left: 10px}
.pt10{padding-top: 10px}
.pr10{padding-right: 10px}
.pb10{padding-bottom: 10px}

.p15{padding: 15px}
.pl15{padding-left: 15px}
.pt15{padding-top: 15px}
.pr15{padding-right: 15px}
.pb15{padding-bottom: 15px}

.p20{padding: 20px}
.pl20{padding-left: 20px}
.pt20{padding-top: 20px}
.pr20{padding-right: 20px}
.pb20{padding-bottom: 20px}

.mt5{margin-top: 5px !important;}
.mt10{margin-top: 10px !important;}
.mt15{margin-top: 15px !important;}
.mt20{margin-top: 20px !important;}
.mt30{margin-top: 30px !important;}
.mt50{margin-top: 50px !important;}

.mb5{margin-bottom: 5px}
.mb20{margin-bottom: 20px}

.ml20{margin-left: 20px}

.m20{margin: 20px}

.gap5{gap: 5px}
.gap10{gap: 10px}
.gap20{gap: 20px}
.gap30{gap: 30px}

.secondaryColor{color: var(--secondaryText)}
.blueColor{color: var(--blue)}
.whiteColor{color: var(--white)}

.grayBgColor{background: var(--borderColor)}
.inactiveBgColor{background: var(--inactiveText)}
.lightGrayBgColor{background: var(--lightGray)}
.whiteBlueBgColor{background: var(--whiteBlue)}
.whiteGreenBgColor{background: var(--whiteGreen)}
.blueBgColor{background: var(--blue)}

.flex1{flex: 1}

input:not([class="noBorder"]):focus{
    border: 1px solid var(--blue);
}
textarea:focus, input:focus, select{
    outline: none;
}

.loading{
    z-index: 9999;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.2);
    display: flex;
}
.loading img{
    width: 120px;
    height: 120px;
    border-radius: 10px;
    margin: auto;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
}
.header{
    padding: 20px;
    border-radius: 0 0 10px 10px;
    -moz-border-radius: 0 0 10px 10px;
    -webkit-border-radius: 0 0 10px 10px;
    background: url(../images/header-bg.svg) no-repeat top;
}
header{
    background: rgb(7,102,255);
    background: linear-gradient(0deg, rgba(7,102,255,1) 0%, rgba(7,151,255,1) 100%);
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    z-index: 1;
    border-radius: 0 0 10px 10px;
    -moz-border-radius: 0 0 10px 10px;
    -webkit-border-radius: 0 0 10px 10px;
}
label{
    display: block;
    margin-bottom: 10px;
    font-family: 'EuclidCircularB-Medium';
}
.textInput{
    width: 100%;
    border-radius: 10px;
    border: 1px solid var(--inactiveText);
    padding: 10px;
    color: var(--mainText);
    display: flex;
    justify-content: space-between;
}
.textInput::placeholder,
.textInput input::placeholder{
    color: var(--secondaryText);
}
button{
    font-family: 'EuclidCircularB-Bold';
    background: var(--blue);
    background: linear-gradient(0deg, #0766FF 0%, #0797FF 100%);
    border-radius: 10px;
    padding: 16px;
    border: 0;
    color: var(--white);
    display: block;
    width: 100%;
    font-size: 18px;
}
button.cancel > span::after{
    width: 24px;
    height: 24px;
    /*background: url(../images/call.svg) no-repeat center;*/
    left: 20px;
    position: absolute;
    content: ' ';
}
button.share > span::after{
    width: 24px;
    height: 24px;
    background: url(../images/share.svg) no-repeat center;
    left: 20px;
    position: absolute;
    content: ' ';
}
button[disabled]{
    background: var(--inactiveText);
    color: var(--secondaryText)
}
button.red{
    background: var(--red);
    background: linear-gradient(0deg, rgba(221,30,81,1) 0%, rgba(255,61,113,1) 100%);
}
button.gray{
    background: var(--secondaryText);
}

.border{border: 1px solid var(--borderColor)}
.borderBottom{border-bottom: 1px solid var(--borderColor)}
.borderTop{border-top: 1px solid var(--borderColor)}
.borderDarkTop{border-top: 1px solid var(--inactiveText)}
.borderDarkBottom{border-bottom: 1px solid var(--inactiveText)}
.borderDark{border: 1px solid var(--inactiveText)}
.borderGreen{border: 1px solid var(--green)}
.borderRed{border: 1px solid var(--red)}

.bottomFixedBlock{
    position: fixed;
    left: 20px;
    right: 20px;
    bottom: 0;
    padding-bottom: 20px;
    z-index: 1;
    background: var(--white);
}
.circleButton{
    width: 40px;
    height: 40px;
    padding: 8px;
    border-radius: 50%;
    display: flex;
    background: var(--blue);
}
.circleButton > img{
    margin: auto;
}

.circle{
    display: flex;
}
.circle > span{
    border-radius: 11px;
    width: 22px;
    height: 22px;
    margin: auto;
    border: 6px solid var(--white);
    z-index: 1;
}
.circle.blue > span{
    background: var(--blue);
}
.circle.yellow > span{
    background: var(--yellow);
}
.circle::before,
.circle::after
{
    content: ' ';
    width: 1px;
    height: 50%;
    position: absolute;
    left: 50%;
    margin-left: -1px;
    background: var(--secondaryText);
    z-index: 0;
}
.circle::before{
    top: 0;
}
.circle::after{
    bottom: 0;
}
.addresses{
    margin-top: -5px;
    margin-bottom: -5px;
}
.addresses li:first-child .circle::before,
.addresses li:last-child .circle::after
{
    display: none;
}

#order-status-arrow.active img,
#order-statuses-arrow.active img
{
    transform: rotate(180deg);
}
#order-status-arrow img,
#order-statuses-arrow img
{
    transition: all 200ms;
}

.bottomBordered::after{
    content: ' ';
    background: red;
    width: 10px;
    height: 10px;
    display: inline-block;
}

.customModal{
    z-index: 9999;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: var(--white);
    display: flex;
    justify-content: center;
    align-items: center;
}
.customModal.transparent{
    background: rgba(0,0,0,0.2) !important;
}
.customModal .customModalContent{
    background: var(--white);
    padding: 20px;
    margin: 10px;
    border-radius: 10px;
    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1);
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
}
.customModal > img{
    width: 90%;
}

.rate {
    float: left;
}
.rate:not(:checked) > input {
    position: absolute;
    top: -9999px;
}
.rate:not(:checked) > label {
    float: right;
    margin-right: 15px;
    margin-bottom: 0;
    overflow:hidden;
    white-space:nowrap;
    cursor:pointer;
    color:#ccc;
}
.rate:not(:checked) > label:before {
    content: ' ';
    width: 27px;
    height: 26px;
    display: inline-block;
    background: url(../images/star.svg) no-repeat center;
}
.rate > input:checked ~ label:before {
    background: url(../images/star-filled.svg) no-repeat center;
}
.rate:not(:checked) > label:hover,
.rate:not(:checked) > label:hover ~ label {
    color: #deb217;
}
.rate > input:checked + label:hover,
.rate > input:checked + label:hover ~ label,
.rate > input:checked ~ label:hover,
.rate > input:checked ~ label:hover ~ label,
.rate > label:hover ~ input:checked ~ label {
    color: #c59b08;
}

.modalOverlay{
    background-color: rgba(0,0,0,0.25);
    position: absolute;
    height: 100%;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}
.confirmModal{
    background: var(--white);
    text-align: center;
    position: fixed;
    left: 0;
    right: 0;
    z-index: 999;
    padding: 20px;
    -webkit-box-shadow: 0px -10px 50px 0px rgba(0,0,0,0.2);
    -moz-box-shadow: 0px -10px 50px 0px rgba(0,0,0,0.2);
    box-shadow: 0px -10px 50px 0px rgba(0,0,0,0.2);
    -webkit-border-top-left-radius: 10px;
    -webkit-border-top-right-radius: 10px;
    -moz-border-radius-topleft: 10px;
    -moz-border-radius-topright: 10px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    transition: bottom 200ms;
}
.confirmModal.active{
    bottom: 0 !important;
}
#orderCancelConfirm.confirmModal{
    bottom: -400px;
}
#orderCancel.confirmModal{
    bottom: -800px;
}
ul.styled > li{
    display: flex;
    background: var(--lightGray);
    margin-bottom: 10px;
    padding: 15px;
    border-radius: 15px;
    border: 1px solid var(--lightGray);
    text-align: left;
    align-items: center;
}
ul.styled > li.active{
    border-color: var(--blue);
}
ul.styled > li > div{
    flex: 1;
}
ul.styled > li > i{
    width: 18px;
    height: 18px;
    position: relative;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--inactiveText)
}
ul.styled > li.active > i::after{
    content: ' ';
    display: block;
    background: var(--blue);
    width: 12px;
    height: 12px;
    border-radius: 50%;
}
ul.styled > li:last-child{
    margin-bottom: 0;
}