.reschedule-top{
    background: #f4f4f4;
    position: relative;
    padding: 25px 0 30px 0;
    }
.reschedule-step-2 .reschedule-top{
    position: relative;
    padding: 25px 25px;
    }
.reschedule-step-2 .dark-bg{
    background: #ebebeb;
    }
.reschedule-bottom{
    padding: 60px 0px;
    }
.reschedule-bottom p{
    font-size: 16px;
    margin: 10px 0px;
    }
    /*.reschedule-top:before {
    position: absolute;
    top: -100px;
    height: 100%;
    width: 100%;
    left: 0;
    content: "";
    background: #ebebeb;
    z-index: -1;
    }*/
.reschedule-top.alternate:before{
    display: none;
    }
.dark-bg{
    padding: 10px 0px;
    /*padding: 10px 0 40px;*/
    background: #dbdbdb;
    border-top: 1px solid #FFF;
    }
.re-icon-box{
    width: 60px;
    height: 60px;
    line-height: 60px;
    font-size: 24px;
    display: inline-block;
    margin-bottom: 15px;
    background: #2d6ccc;
    color: #FFF;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    }
.re-icon-box.gray{
    background: #595959;
    }
.re-date{
    margin-top: 0; 
    font-size: 24px;
    /*color: #1d1d1d;*/
    color: #e94335;
    font-weight: bold;
    }
.reschedule-step-2 .re-date{
    color: #e94335;
    }  
.reschedule-step-2 .re-date small{
    color:#0e0e0e;
    }
    #roster_form .re-date{
    background: #f3f1f1;
    border-bottom: 1px solid #ccc;
    }
.re-date small{
    display: block;
    padding-top: 10px;
    font-size: 80%;
    color: #595959;
    }
.re-tabbing-style{
    background: #2d6ccc;
    text-align: center;
    }
.re-tabbing-style a{
    display: inline-block;
    padding: 15px 10px;
    color: #96c0ff;
    font-weight: 600;
    font-size: 20px;
    position: relative;
    }
.re-tabbing-style a.active, .re-tabbing-style a:hover{
    color: #FFF !important;
    }
.re-tabbing-style a.active:before{
    position: absolute;
    content: "";
    height: 2px;
    width: 70%;
    left: 15%;
    bottom: -2px;
    background: #e94335;
    z-index: 1;
    }
.re-tabbing-style a:after{
    position: absolute;
    content: "";
    height: 16px;
    width: 1px;
    right: -1px;
    top: 19px;
    background: #002869;
    }
.re-tabbing-style a:last-child:after{
    display: none;
    }
.am-pm{
    color: #fe0000;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 500;
    }
.reschedule-step-2 .am-pm{
    color: #34aa54;
    }
.time-slots{
    padding: 0.4rem 0.4rem 0;
    }
.time-slots ul{
    list-style-type: none;
    padding: 0;
    margin: 0;
    }
.time-slots ul li{
   /* float: left;*/
    width: 12%;
    padding: 3px 0px;
    display: inline-block;
    }
.time-slots ul li .circle{
    margin: 0.3rem;
    padding: 0;
    background: #FFF;
    position: relative;
    box-shadow: 0px 0px 15px rgba(0,0,0,0.1);
    -moz-box-shadow: 0px 0px 15px rgba(0,0,0,0.1);
    -webkit-box-shadow: 0px 0px 15px rgba(0,0,0,0.1);
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    color: #343434;
    font-weight: bold;
    }
.time-slots ul li .circle.active{
    background: #2d6ccc;
    color: #FFF  !important;
    }
.time-slots ul li .circle:after {
    display: block;
    padding-bottom: 100%;
    width: 100%;
    height: 0;
    border-radius: 50%;
    content: "";
    }
.time-slots ul li .circle__inner {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    }
.time-slots ul li .circle__wrapper {
    display: table;
    width: 100%;
    height: 100%;
    }
.time-slots ul li .circle__content {
    display: table-cell;
    padding: 0.7em;
    vertical-align: middle;
    font-size: 1.14em;
    position: relative;
    top: 3px;
    }
.time-slots ul li .circle__content span{
    display: block;
    }
.week-days{
    height: 77px;
    width: 100%;
    overflow-x: auto;
    white-space: nowrap;
    transition: all 0.5s ease-in;
    }
.week-days::-webkit-scrollbar {
    width: 7px;
    height: 7px;
    position: absolute;
    margin-bottom: 3px;
    bottom: auto;
    top: 3px;
    }
.week-days::-webkit-scrollbar-thumb {
    background: #e94335 !important;
    }
.week-days::-webkit-scrollbar-track {background: #ebebeb;}
.week-days::-webkit-scrollbar-track:hover {background: #ebebeb;}
.week-days a{
    display: inline-block;
    width: 14%;
    margin: 0;
    background: #ffffff;
    border-bottom: 4px solid #d2d2d2;
    padding: 15px 0;
    color: #353535;
    font-weight: 500;
    font-size: 20px;
    line-height: 18px;
    border-left: 1px solid #d2d2d2;
    text-decoration: none;
    }
.week-days a span{
    font-size: 16px;
    display: block;
    color: #a0a0a0;
    }
.week-days a.active{
    background: #f4f4f4;
    border-bottom: 4px solid transparent; 
    color: #353535 !important;
    }
.week-days a.active span{
   color: #a0a0a0; 
    }
.re-service-request{
    background: #4385f5;
    color: #FFF;
    margin: 15px 0;
    padding: 15px;
    font-weight: 300;
    }
h4.conf-title{
    font-size: 16px;
    color: #070707;
    padding: 0px 15px;
    }
.re-service-request-details{
    font-size: 14px;
    padding: 0px 15px;
    margin-bottom: 20px;
    }
.re-service-request-details .form-group label{
    color: #020202;
    }
.re-service-request-details .form-group label i{
    color: #4385f5;
    margin-right: 5px;
    }
.re-service-request-details .form-group div{
    color: #525252;
    }
.re-start-end-time{
    font-size: 16px;
    margin-top: 15px;
    }
.re-start-end-time span{
    color: #e94335;
    }
.light{
    margin-top: 10px;
    background: #ebebeb;
    padding: 10px 0;
    font-size: 14px;
    color: #343434;
    }
.text-truncate {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    }
.text-waiting{
    color: #ff5d05;
    }
.reschedule-text-area-section{
    padding: 0px 15px;
    }
.reschedule-text-area-section label{    
    color:#343434;
    font-size: 14px;
    }
.re-site-gallery{
    width: 100%;
    overflow-x: auto;
    white-space: nowrap;
    margin-top: 5px;
    }
.re-site-gallery a {
    width: 23%;
    display: inline-block;
    margin-right: 10px;
    }
.re-site-gallery a:last-child{
    margin: 0;
    }
/*.img-overflow {
    display: inline-block;
    height: 50px;
    overflow: hidden;    
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    } 
.re-site-gallery img{
    max-width: 100%;    
    } org*/
.img-overflow {
    display: inline-block;
    height: 50px;
    overflow: hidden;    
    -moz-border-radius: 0px;
    -webkit-border-radius: 0px;
    border-radius: 0px;
    position: relative;
    width: 75px;
    }
.re-site-gallery img{
    max-width: 100%;
    object-fit: cover;
    object-position: center center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    }
.reschedule-disabled-dates{
    position: relative;
    }
.reschedule-disabled-dates:after{
    left: 0;
    top: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.8);
    content: "";    
    }
@media only screen and (max-width: 320px) {
.re-tabbing-style a{
    padding: 15px 3px;
    }
.time-slots ul li .circle__content{
    padding: 0.7em;
    }
}
    /*===============Scheduler===============*/
.scheduler-main{background-color: #fff;}
.scheduler-main .date-time input{
    border-radius: 0;
    background-color: #fff;
    width: 35%;
    float: left;
    border: none;
    border-bottom: 1px solid;
    border-color:rgb(169, 167, 167);
    }
.scheduler-main .availability-list ul li{
    text-align: left;
    padding: 18px 10px;
    position: relative;
    border-bottom: 1px solid #ccc;
    display: inline-block;
    width: 100%;
    }
.scheduler-main .availability-list ul li.my-availability{
    line-height: 30px;
    padding: 10px;
    }
.scheduler-main .availability-list ul li .btn{  
    font-size: 16px;
    font-weight: 600;
    }
.scheduler-main .availability-list ul li .available-status-yes{
    float: right;
    color: #8CC152;
    font-weight: 600;
    }
.scheduler-main .availability-list ul li .available-status-no{
    margin-right: 5px;
    float: right;
    color: #e94335;
    font-weight: 600;
    }
.scheduler-main .availability-list ul li .available-status-null{
    float: right;
    color: #c2c2c2;
    font-weight: 600;
    }
.scheduler-main .availability-list ul li .available-status-blank{
    float: right;
    color: #c2c2c2;
    font-weight: 600;
    }    
.scheduler-main .availability-list ul li .null-toggle{
    opacity: 0.2; 
    user-select: none !important;
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    }
input[type="checkbox"]:active + .null-toggle label, 
input[type="checkbox"]:checked + .null-toggle label{cursor:not-allowed;}

.scheduler-main .availability-list.update-availability ul li .available-status-yes,
.scheduler-main .availability-list.update-availability ul li .available-status-no,
.scheduler-main .availability-list ul li .available-status-null{
    margin-right: 60px;
    float: right;
    }    
.scheduler-main .availability-list ul li .available-status-blank{
    float: right;
    }    
.scheduler-main .availability-list.update-availability ul li .available-status-no{
    color: #e94335;
    }
.scheduler-main .availability-list .confirm-appointment{
    background-color: #ebebeb;
    text-align: left;
    padding: 10px;
    }
.scheduler-main .availability-list .confirm-appointment .time,
.scheduler-main .availability-list .confirm-appointment .name{
    font-weight: bold;
    }
.scheduler-main .availability-list .confirm-appointment .name{
    float: right;
    text-transform: uppercase;
    }
.scheduler-main .select-schedul{
    display: inline-block;
    width: 100%;
    padding: 15px 10px;
    background-color: #e6e6e6;
    border-bottom: 1px solid #e2e2e2;
    }
.scheduler-main .select-schedul label{
    font-weight: 600;
    color: #000;
    }
.scheduler-main .select-schedul .col-xs-6:last-child{
    text-align: right;
    }
.scheduler-main .select-schedul .col-xs-6:last-child label{
    float: none !important;
    }
.scheduler-main .select-schedul span{
    line-height: 20px;
    }
.scheduler-main .select-schedul span:last-child{
    width: 51px;
    height: 31px;
    margin-left: 5px;
    margin-top: 15px;
    float: right;
    }
.scheduler-main .select-schedul .col-xs-6 select{
    margin: 0;
    background: transparent;
    background: url(../images/select-dropdown.png) #FFF no-repeat center right!important;
    width: 100%;
    padding: 5px 35px 5px 5px;
    font-size: 14px;
    height: 34px;
    border-width: 0 0 1px;
    border-style: solid;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    }
.switch{
    position: initial;
    }
/*===============Close-Scheduler===============*/