@charset "utf-8";
.demo-container{
	display:flex;
	flex-direction:row;
}

.demo-container .demo-box{
	flex:1;
}

.demo-container .appointment-maker-box{
	max-width:500px;
	margin: auto;
	background:#fff;
	box-shadow:0 0 5px #ccc;
	padding:15px;
}

.demo-container .hide-box{
	display:none;
}

@media (max-width: 767px) {
	.demo-container .appointment-maker-box{
		max-width:100%;
		margin: auto;
		background:#fff;
		box-shadow:none;
		padding:5px;
	}
}


/* ****************************************** */
/* APPOINTMENT MAKER */
/* ****************************************** */
*{
	box-sizing: border-box;
}

.appointment-maker{
	font-family:"Lucida Grande", "DejaVu Sans", "Verdana", "sans-serif";
	margin:5px;
	display:flex;
	flex-direction: column;
	font-size:14px;
	position:relative;
}

.appointment-maker .waiting-overlayer{
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	backgound-color:rgba(255, 255, 255, .7);
	z-index:99;
	justify-content: center;
	align-self: center;
}

.appointment-maker .hide-box{
	display:none;
}

.appointment-maker .apment-button{
	width: 100%;
    padding: 15px;
    font-size: 16px;
    background-color: #de0629;
    border: none;
    color: #fff;
    border-radius: 2px;
	text-align:center;
}

.appointment-maker .apment-button:hover{
	cursor:pointer;
	background-color: #910100;
}

.appointment-maker .eventlist-header,
.appointment-maker .calendar-header,
.appointment-maker .timelist-header,
.appointment-maker .confirm-header{
	border-bottom:1px solid #ccc;
	margin-bottom:10px;
	height:40px;
	display:flex;
}

.appointment-maker .eventlist-header span.header-text,
.appointment-maker .calendar-header span.header-text,
.appointment-maker .timelist-header span.header-text,
.appointment-maker .confirm-header span.header-text{
	justify-content: center;
	align-self: center;
}

.appointment-maker .calendar-header .apment-back-button,
.appointment-maker .timelist-header .apment-back-button,
.appointment-maker .apment-custom-back-button,
.appointment-maker .confirm-header .apment-back-button{
	min-width:40px;
	font-size:14px;
	color:#52aaeb;
	justify-content: center;
	align-self: center;
	margin-right:20px;
	cursor:pointer;
}



.appointment-maker .selected_event_show_box{
    font-weight: bold;
    padding-bottom: 10px;
	margin-bottom: 10px;
}

.appointment-maker .selected_event_show_box .show-event-name,
.appointment-maker .selected_event_show_box .show-date,
.appointment-maker .selected_event_show_box .show-time{
    display:block;
	padding:5px 0 5px 0;
}

/* --------------------------------------- */
/* Event Box */
/* --------------------------------------- */

.appointment-maker .event-box{
	display:flex;
	padding:10px;
	border-top:1px solid #ccc;
	border-right:1px solid #ccc;
	border-left:1px solid #ccc;
	border-bottom:1px solid #ccc;
	max-width: 100%;
}

.appointment-maker .event-subtext{
	font-size:12px;
	color:#777;
	overflow:hidden;
	white-space:nowrap;
	text-overflow:ellipsis;
	max-width: 100%;
	display: block;
	flex: 1 1 100%;
}
.selected_event_show_box span{
    float: none !important;
}
.floatNONE{
	float: none !important;
}
.inputDisabled{
	pointer-events:none;
	background-color: #e9ecef;
	opacity: 1;
}
.textUppercase{
	text-transform: uppercase !important;
}
.appointment-maker .event-box:last-child{
	border-bottom:1px solid #ccc;
}

.appointment-maker .event-box:hover{
	cursor:pointer;
	background-color: rgba(204, 204, 204, 0.7);
}

.appointment-maker .event-box:hover .ev-icon{
	background:#de0629;
    height: 60px;
}

.appointment-maker .event-box:hover .ev-icon::after{
	color:#fff;
}

.appointment-maker .event-box .ev-col{
	flex: 1;
}

.appointment-maker .event-box .ev-name{
	justify-content: left;
	align-self: center;
	overflow: hidden;
}

.appointment-maker .event-box .ev-icon{
	position:relative;
	min-width:40px;
	max-width:40px;
	background-color:transparent;
	border-radius:50%;
}

.appointment-maker .event-box .ev-icon::after{
	position:absolute;
	content:"\203A";
	font-size:34px;
	color:#de0629;
	top: 43%;
	left: 52%;
	transform: translate(-50%, -50%);
}

/* --------------------------------------- */
/* Calendar Box */
/* --------------------------------------- */
.calendar-box .cal-header{
	display:flex;
	margin-bottom:8px;
	flex-direction:row;
}

.calendar-box .cal-header .month-select,
.calendar-box .cal-header .year-select,
.calendar-box .cal-header .week-select{
	justify-content: left;
	align-self: center;
	display:flex;
}

.calendar-box .cal-header .month-select,
.calendar-box .cal-header .year-select{
	margin-right:10px;
}

.calendar-box .cal-header .prev-month,
.calendar-box .cal-header .next-month,
.calendar-box .cal-header .prev-week,
.calendar-box .cal-header .next-week{
	width:40px;
	height:40px;
	border-radius:50%;
	font-size:34px;
	line-height: 34px;
	justify-content: center;
	align-self: center;
	display:flex;
}

.calendar-box .cal-header .prev-month,
.calendar-box .cal-header .prev-week{
	margin-left: auto;
}

.calendar-box .cal-header .prev-month.disabled-prev,
.calendar-box .cal-header .next-month.disabled-next,
.calendar-box .cal-header .prev-week.disabled-prev,
.calendar-box .cal-header .next-week.disabled-next{
	cursor:default;
	color:#ccc;
}

.calendar-box .cal-header .prev-month:not(.disabled-prev):hover,
.calendar-box .cal-header .next-month:not(.disabled-next):hover,
.calendar-box .cal-header .prev-week:not(.disabled-prev):hover,
.calendar-box .cal-header .next-week:not(.disabled-next):hover{
	background-color:#de0629;
	color:#fff;
	cursor:pointer;
}


/* --------------------------------------- */
/* Calendar Box Month View*/
/* --------------------------------------- */
.calendar-box .month-calendar{
	display:block;
}

.calendar-box .month-calendar .week-header-row{
	display:flex;
}

.calendar-box .month-calendar .week-short-name{
	flex:1;
	display:flex;
	height:50px;
	justify-content: center;
	align-items: center;
}

.calendar-box .month-calendar .month-days{
	border-right:1px solid #ccc;
	border-left:1px solid #ccc;
}

.calendar-box .month-calendar .month-days .week-row{
	display:flex;
}

.calendar-box .month-calendar .week-row:last-child{
	border-bottom:1px solid #ccc;
}

.calendar-box .month-calendar .cal-day{
	flex:1;
	display:flex;
	height:50px;
	justify-content: center;
	align-items: center;
	border-top:1px solid #ccc;
	border-right:1px solid #ccc;
}

.calendar-box .month-calendar .cal-day:last-child{
	border-right:0px;
}

.calendar-box .month-calendar .disabled-weekday,
.calendar-box .month-calendar .disabled-day,
.calendar-box .month-calendar .not-this-month{
	color:#ccc;
	cursor:default;
	background-color:#f1f1f1;
}

.calendar-box .month-calendar .cal-day:not(.not-this-month):not(.disabled-day):not(.disabled-weekday):hover{
	background:#de0629;
	color:#fff;
	cursor:pointer;
}

.calendar-box .month-calendar .cal-day:not(.not-this-month):not(.disabled-day):not(.disabled-weekday).active{
	background:#de0629;
	color:#fff;
	cursor:pointer;
}

/* --------------------------------------- */
/* Calendar Box Week View*/
/* --------------------------------------- */
.calendar-box .week-calendar .week-days .week-col{
	display:flex;
	flex-direction:column;
}

.calendar-box .week-calendar .cal-day{
	height:60px;
	display:flex;
	padding:10px;
	justify-content: left;
	align-items: center;
	border-top:1px solid #ccc;
	border-right:1px solid #ccc;
	border-left:1px solid #ccc;
}

.calendar-box .week-calendar .cal-day:last-child{
	border-bottom:1px solid #ccc;
}

.calendar-box .week-calendar .cal-day .weekday-icon{
	position:relative;
	min-width:40px;
	max-width:40px;
	height:100%;
	background-color:transparent;
	border-radius:50%;
	margin-left:auto;
}

.calendar-box .week-calendar .cal-day:not(.disabled-day):not(.disabled-weekday) .weekday-icon::after{
	position:absolute;
	content:"\203A";
	font-size:34px;
	color:#de0629;
	top: 43%;
	left: 52%;
	transform: translate(-50%, -50%);
}

.calendar-box .week-calendar .disabled-weekday,
.calendar-box .week-calendar .disabled-day{
	color:#ccc;
	cursor:default;
	background-color:#f1f1f1;
}

.calendar-box .week-calendar .cal-day:not(.disabled-day):not(.disabled-weekday):hover{
	cursor:pointer;
	background-color:#fafafa;
}

.calendar-box .week-calendar .cal-day:not(.disabled-day):not(.disabled-weekday):hover .weekday-icon{
	background-color:#de0629!important;
}

.calendar-box .week-calendar .cal-day:not(.disabled-day):not(.disabled-weekday):hover .weekday-icon::after{
	color:#fff;
}

/* --------------------------------------- */
/* Time list */
/* --------------------------------------- */
.appointment-maker .time-box{
	height:60px;
	display:flex;
	padding:10px;
	border-top:1px solid #ccc;
	border-right:1px solid #ccc;
	border-left:1px solid #ccc;
}

.appointment-maker .time-box.active{
	background-color: darkgrey;
	font-size: 18px;
	font-weight: bold;
}

.appointment-maker .time-box:last-child{
	border-bottom:1px solid #ccc;
}

.appointment-maker .time-box .availability{
	color:#999;
	font-size:12px;
}

.appointment-maker .time-box .time-icon{
	flex:1;
	max-width:30px;
}

.appointment-maker .time-box .tm-col{
	flex: 1;
}

.appointment-maker .time-box .tm-name{
	justify-content: left;
	align-self: center;
}

.appointment-maker .time-box .tm-icon{
	position:relative;
	min-width:40px;
	max-width:40px;
	background-color:transparent;
	border-radius:50%;
}

.appointment-maker .time-box:not(.disabled-time) .tm-icon::after{
	position:absolute;
	content:"\203A";
	font-size:34px;
	color:#de0629;
	top: 43%;
	left: 52%;
	transform: translate(-50%, -50%);
}

.appointment-maker .time-box.disabled-time,
.appointment-maker .time-box.disabled-time .availability{
	color:#ccc;
	cursor:default;
	background-color:#f1f1f1;
}

.appointment-maker .time-box:not(.disabled-time):hover{
	cursor:pointer;
	background-color:#fafafa;
}

.appointment-maker .time-box:not(.disabled-time):hover .tm-icon{
	background:#de0629;
}

.appointment-maker .time-box:not(.disabled-time):hover .tm-icon::after{
	color:#fff;
}

/* --------------------------------------- */
/* Confirm box */
/* --------------------------------------- */
.appointment-maker .form-box-header {
    font-size: 16px;
    margin-bottom: 10px;
    font-style: italic;
}

.appointment-maker .confirm-form-box{
	display:flex;
}

.appointment-maker .confirm-form-box form{
	flex: 0 0 100%;
}

.appointment-maker .confirm-form-box .input-row{
	display:block;
	margin-top: 5px;
	margin-bottom: 8px;
	flex: 0 0 100%;
}

.appointment-maker .confirm-form-box label{
	display:block;
	width:100%;
	font-size:12px;
	flex: 0 0 100%;
	margin:0;
	padding:0;
}

.appointment-maker .confirm-form-box .apment-input-text{
	display:block;
	width:100%;
	border:1px solid #ccc;
	border-radius:2px;
	font-size: 16px;
	padding: 4px 10px;
	height: 45px;
}

.appointment-maker .confirm-form-box .error-box{
	padding: 15px;
    min-height: 30px;
    color: #721c24;
    background-color: #f8d7da;
    border-color: #f5c6cb;
    margin-bottom: 15px;
    margin-top: 15px;
    border-radius: 2px;
}

/* --------------------------------------- */
/* Appointment done */
/* --------------------------------------- */
.appointment-maker .done-notification {
	font-size: 18px;
    padding: 20px;
	text-align:center;
}

/* --------------------------------------- */
/* Helpers */
/* --------------------------------------- */
.dis-sel{
	-webkit-touch-callout: none; 
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.clock.icon {
	flex:1;
	color: #000;
	position: absolute;
	margin-left: 2px;
	margin-top: 4px;
	width: 15px;
	height: 15px;
	border: solid 1px currentColor;
	border-radius: 8px;
	transform: translateY(50%);
}

.clock.icon:before {
	content: '';
	position: absolute;
	top: 7px;
	left: 3px;
	width: 5px;
	height: 1px;
	background-color: currentColor;
	-webkit-transform-origin: 0% 0%;
	transform-origin: 0% 0%;
}

.clock.icon:after {
	content: '';
	position: absolute;
	top: 2px;
	left: 7px;
	width: 1px;
	height: 6px;
	background-color: currentColor;
	-webkit-transform-origin: 0% 0%;
	transform-origin: 0% 0%;
}

.waiting-spinner {
	width: auto;
	justify-content: center;
	align-self: center;
	display: flex;
}
.waiting-spinner:after {
	content: " ";
	display: flex;
	width: 46px;
	height: 46px;
	margin: 1px;
	border-radius: 50%;
	border: 5px solid #999;
	border-color: #999 transparent #999 transparent;
	animation: waiting-spinner 1.2s linear infinite;
	justify-content: center;
	align-self: center;
}
@keyframes waiting-spinner {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

.appointment-maker ::-webkit-input-placeholder {
  	color:#333;
	font-style:italic;
	font-size:14px;
}
.appointment-maker ::-moz-placeholder {
  	color:#333;
	font-style:italic;
	font-size:14px;
}
.appointment-maker :-ms-input-placeholder {
  	color:#333;
	font-style:italic;
	font-size:14px;
}
.appointment-maker :-moz-placeholder {
  	color:#333;
	font-style:italic;
	font-size:14px;
}


.loader_div {
}

.loader-wheel {
    animation: spin 1s infinite linear;
    border: 2px solid #de0629;
    border-left: 4px solid #de0629;
    border-radius: 50%;
    height: 50px;
    margin-bottom: 10px;
    width: 60px;
    position: absolute;
    z-index: 999;
    top: 50%;
    left: 48%;
}


@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/*form_step_ul*/
#form_step_ul {
	text-align: center;
	margin-bottom: 30px;
	overflow: hidden;
	counter-reset: step;
}

#form_step_ul li {
	list-style-type: none;
	color: #131212;
	text-transform: uppercase;
	font-size: 13px;
	font-weight: bolder;
	width: 25%;
	float: left;
	position: relative;
	letter-spacing: 1px;
}

#form_step_ul li:before {
	content: '';
	width: 100%;
	height: 2px;
	background: #7f7f7f;
	color: white;
	position: absolute;
	left: -50%;
	top: 52%;
	z-index: -1;
}

#form_step_ul li:after {
	content: '';
	counter-increment: step;
	width: 54px;
	height: 54px;
	line-height: 30px;
	display: block;
	font-size: 18px;
	color: #333;
	background: #7f7f7f;
	border-radius: 25px;
	margin: 0 auto 10px auto;
}
#form_step_ul li:nth-child(1):after {
	background-image: url("../img/steps/step1.png") !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 38px 38px!important;
}
#form_step_ul li:nth-child(2):after {
	background-image: url("../img/steps/step2.png") !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 38px 38px!important;
}
#form_step_ul li:nth-child(3):after {
	background-image: url("../img/steps/step3.png") !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 38px 38px!important;
}
#form_step_ul li:nth-child(4):after {
	background-image: url("../img/steps/step4.png") !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 38px 38px!important;
}
#form_step_ul li:first-child:before {
	content: none;
}

#form_step_ul li.active:before, #form_step_ul li.active:after {
	background: #de0629;
	color: white;
}

/* END form_step_ul*/

.disabledDiv {
	pointer-events: none;
	opacity: 0.6;
}
.AKTIF_PANEL{
	border: 3px solid #b4341f;
}
.PASIF_PANEL{
	display: none;
}
.bootstrap-select.btn-group.disabled, .bootstrap-select.btn-group>.disabled{
	cursor: not-allowed;
	background-color: #dddada !important;
}