.error-container
{
	background: #e65454;
	color: white;
	text-align: center;
	font-weight: bold;
	padding: 10px 0;
	font-weight: normal;
	margin-top: -3px;
	position: fixed;
	top: 0px;
	left: 0px;
	right: 0px;
	z-index: 100;
	border-bottom: 2px solid #c73d3d;
	opacity: 0.9;
	display: none;
}

.student-info
{
	margin-top: 15px;
}

.student-info hr
{
	margin: 0px;
}

.student-info .title
{
	font-size: 15px;
	display: inline-block;
	margin-right: 20px;
}

.student-info img
{
	width: 25px;
	position: relative;
	top: -2px;
	margin-right: 5px;
}

.student-info strong
{
	font-size: 13px;
	padding: 4px 10px;
	display: inline-block;
	background: #5cb85c;
	color: white;
}

.alert-parent-to-email
{
	display: block;
	width: 400px;
	margin: 30px auto 00px auto;
}

.half-step
{
	width: 50%;
	margin: 40px auto 0 auto;
}

.half-step .panel
{
	width: 100%;
	padding: 20px 3px 15px 15px;
}


.teacher-select .none-found
{
	padding: 5px 0!important;
}

.public-text ul 
{
	margin-left: 0px!important;
}

.public-text ul li
{
	background: url('../images/tick.svg') top 7px left no-repeat;
	background-size: 14px auto;
	padding-left: 25px;
}

.public-text .right
{
	width: 40%;
	float: right;
	padding: 10px 15px;
	margin: 15px 0;
	border: 1px solid #CACACA;
}

.public-text .right h4, .public-text .left h4
{
	font-size: 16px;
	font-weight: bold;
}

.public-text .left h4
{
	color: #CC0A20;
	
}

.public-text .left
{
	float: left;
	width: 55%;
	border: 1px solid #CC0A20;
	padding: 10px 15px;
	margin: 15px 0;
}

.copyright
{
	text-align: center;
	display: block;
	margin: 40px auto 5px auto;
	position: relative;
}

.copyright span
{
	display: block;
	color: #C7C7C7;
	margin: 4px 0;
}

.reservation-change-header
{
	background: #101be2;
	padding: 8px 15px 10px 15px;
}

.reservation-change-header p
{
	margin: 0px;
	color: white;
	text-align: center;
}

.container hr
{
	margin: 10px 0;
}

.container .provozni-podminky
{
	display: block;
	float: left;
	padding: 15px;
	font-weight: bold;
	position: relative;
	top: 10px;
}

.container .provozni-podminky:after
{
	content: "Čtěte prosím";
	background: #E73C29;
	color: white;
	font-weight: normal;
	padding: 1px 4px;
	font-size: 9px;
	top: 1px;
	right: -20px;
	position: absolute;
}

.main-type-list
{
	float: right;
	margin-top: 18px;
}

.main-type-list li
{
	float: left;
	display: block;
	font-weight: bold;
}

.main-type-list li a
{
	padding: 14px 15px;
	color: #4f4f4f;
}

.main-type-list li a:hover
{
	border-bottom: 2px solid #e2e2e2;
}

.main-type-list li .active, .main-type-list li a.active:hover
{
	border-bottom: 2px solid #47af46;
}


.panel-no-hash #singin-footer
{
	width: 100%!important;
	padding-top: 0px;
}

.panel-no-hash #singin-footer .phone
{
	margin-right: 15px;
}

.panel-no-pading
{
	padding: 0px!important;
}

.panel-small-pading
{
	padding: 10px 15px!important;
}

.form-group
{
	margin-bottom: 0px!important;
}

.panel-padding
{
	padding-top: 15px;
}

.panel-padding .form-group
{
	margin: 5px 0;
}

.has-error a
{
	color: inherit!important;
}


.arrow-bottom
{
	display: block;
	width: 30px;
	height: 30px;
	background: url('../images/arrow-bottom.svg') center center no-repeat;
	background-size: 30px auto;
	margin: 20px auto 0 auto;
}

.step h2
{
	text-align: center;
}

.step1, .step4
{
	margin-top: 30px;
}

.first-page, .step4
{
	margin-bottom: 30px;
}


.messages
{
	margin-top: 15px;
}

.required
{
	color: #e05a5a;
}

.messages .message
{
	line-height: 19px;
	padding-left: 30px;
}

.messages .message:nth-child(2)
{
	margin-top: 10px;
}

.messages .message-info
{
	background: url('../images/info.png') 0px 2px no-repeat!important;
	background-size: 18px auto!important;
}

.messages .message-error
{
	background: url('../images/delete.svg') 0px 2px no-repeat!important;
	background-size: 15px auto!important;
	color: #c93636;
}

.messages .message-alert
{
	background: url('../images/alert.svg') 0px 2px no-repeat!important;
	background-size: 17px auto!important;
}

.messages .message-success
{
	background: url('../images/tick.svg') 0px 2px no-repeat!important;
	background-size: 15px auto!important;
	color: #27ae3a;
}


textarea
{
	min-height: 100px;
}

.user-info-container
{
	margin: 20px 0;
}

.user-info-container img
{
	border-radius: 5555px;
	width: 50px;
	float: left;
}

.user-info-box
{
	float: left;
	margin-left: 20px;
}

.user-info-box strong
{
	display: block;
	font-size: 15px;
	margin-bottom: -2px;
}

.success-image
{
	display: block;
}

.btn-bordered
{
	background: none;
	color: inherit;
}

.btn-bordered-success 
{
	color: #4cb64c;
}

.summary-info .summary
{
	float: left;
	text-align: center;
	width: calc(33% - 15px);
	margin: 10px 7px 0 7px;
}

.summary-info .summary-1 span
{
	display: block;
	margin-top: 10px;
	font-weight: bold;
}

.summary-info .summary-1 em
{
	display: block;
	font-weight: normal;
	font-style: normal;
	margin-top: -7px;
}

.summary-info .summary-2 strong, .summary-info .summary-3 strong
{
	display: block;
	margin-top: 15px;
	font-size: 16px;
}



.table-pre-header
{
	margin: 20px 0;
}

.table-week-title
{
	text-align: center;
	display: block;
	float: left;
	left: 50%;
	position: absolute;
	transform: translate(-50%);
	font-size: 16px;
	margin-top: 5px;
	opacity: 0.8;
}

.main-date-table
{
	margin-bottom: 8px;
	border-collapse: separate!important;
}

.main-date-table td
{
	border: 1px solid #e1e1e1!important;
	padding: 0px;
}

.main-date-table tr.divider
{
	height: 8px;
}

.date-cell
{
	text-align: center;
	width: 100px;
	background: #1a7ab9;
	color: white;
	padding: 10px 0!important;
	border: 3px solid #408bbc!important;
}

.time-cell
{
	text-align: center;
	width: 100px;
	border-bottom: 2px solid #408bbc!important;
	padding: 4px 0!important;
	height: 15px;
}

.date-cell strong
{
	display: block;
}

.reservation-cell
{
	background: white;
	cursor: pointer;
	height: 40px;
	 Position: relative;
}

.reservation-cell .selected-time
{
	position: absolute;
	top: 0px;
	right: 0px;
	left: 0px;
	bottom: 0px;
	display: block;
}

.main-date-table td.reservation-cell:hover
{
	background: #f2f2f2;
}

.disabled-day
{
	opacity: 0.6;
}

.disabled-time, .cant-reservate
{
	background: #fbfafb;
}



.disabled-day td, .disabled-time
{
	cursor: not-allowed;
}


.reservation-cell .marked-half
{
	width: 0;
	height: 0;
	position: absolute;
	bottom: 0px;
	left: 0px;
	border-style: solid;
	border-width: 36px 0 0 36px;
	border-color: transparent transparent transparent #f76f6f;
}

.reservation-cell .marked-full
{
	
	height: 100%;
	position: absolute;
	bottom: 0px;
	left: 0px;
	right: 0px;
	background: #f76f6f;
}

.new-reservation
{
	display: none;
	text-align: center;
	z-index: 1;
	position: relative;
	background: #99ca1a;
	border-radius: 888px;
	width: 17px;
	color: white;
	left: 50%;
	transform: translate(-50%);
}


.main-date-table .selected:hover .new-reservation 
{
	background: #d52525;
	display: none;
}

.reservation-cell:hover .new-reservation
{
	display: block;
}

.legend 
{
	margin-top: 14px;
	margin-left: 5px;
	width: 100%;
}

.legend li
{
	float: left;
	margin-left: 15px;
	list-style: none;
}

.legend strong
{
	float: left;
}

.legend .occupied
{
	width: 15px;
	height: 15px;
	display: inline-block;
	background: #f76f6f;
	margin-right: 5px;
	position: relative;
	top: 3px;
}

.legend .free
{
	width: 15px;
	height: 15px;
	display: inline-block;
	background: #d1e59f;
	margin-right: 5px;
	position: relative;
	top: 3px;
}

.legend .selected
{
	width: 15px;
	height: 15px;
	display: inline-block;
	background: #ffa06c;
	margin-right: 5px;
	position: relative;
	top: 3px;
}

.main-date-table  .selected
{
	z-index: 1;
	border: 1px solid #b9cf82!important;
	background: #d1e59f;
}

.main-date-table .selected:hover
{
	background-color: #ffa06c!important;
	border-color: #e8854f!important;
}
.main-date-table  .selected-parent
{
	z-index: 1;
	border: 1px solid #e8854f!important;
	background: #ffa06c;
}

.main-date-table  .selected-parent:hover
{
	border: 1px solid #e8854f!important;
	background: #ffa06c!important;
}


.main-date-table .ocupied
{
	background: #f76f6f;
	border: 1px solid #e65454!important;
}

.main-date-table .ocupied:hover
{
	background: #eb6161!important;	
}

.save-reservation-termin-container
{
	height: 50px;
}

.date-inputs input
{
	padding: 10px;
	border: 3px solid #99ca1a;
}

.btn-send-button
{
	display: none;
	margin: 30px 0 0px 0;
}

.send-button-container
{
	height: 60px;
}

.send-button-container .error
{
	
}

.show-button
{
	display: block!important;
}

.fixed-footer
{
	position: fixed;
	bottom: 15px;
	left: 15px;
}

.fixed-footer button
{
	margin-top: 10px;
	display: block;
}



@media only screen and (max-width: 600px)
{	
	.public-text .left, .public-text .right
	{
		float: none;
		width: 100%;
	}
	
	.restart-reservation button
	{
		margin-top: 0px;
		position: relative!important;
		float: left;
		
		right: 0px;
		float: none;
		left: 20px;
	}
	
	.main-step-container .badge
	{
		display: none;
	}
	
	.step1 .btn-primary
	{
		width: 100%;
		margin: 10px 0 0 0!important;
		clear: both;
	}
	
	.step1 .col-md-3 
	{
		padding: 0px;
	}
	
	.step3
	{
		position: relative;
	}
	
	.legend 
	{
		float: none!important;
	}
	
	.legend strong
	{
		float: none;
	}
	
	.legend li
	{
		float: none;
		margin: 5px;
	}
	
	.save-reservation-termin-container button
	{
		float: left;
		margin-left: 10px;
	}
	
	.main-date-table .selected
	{
		background: #c5e080!important;
	}
	
	.date-inputs
	{
		float: left!important;
	}
	
	.date-inputs input
	{
		margin: 0 10px;
	}
}























