#calendarBg{
  background: #000000;
  width: 100%;
  min-width: 994px;
  _width: expression(document.documentElement.clientWidth < 994 ? "994px" : document.documentElement.clientWidth);
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 100;
  opacity: .4;
  -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
  filter: alpha(opacity=40);
}

#calendar{
  width: 1048px;
  margin: 0 auto;
  position: absolute;
  left: 0;
	top: 0;
	z-index: 110; 
}
#calendar *{
  font-size: 15px;
}
#calendar .frame_top{
  height: 27px !important;height /**/: 41px;
  padding-top: 14px;
  background: url('../images/calendar/bg_top.png') center top no-repeat;
  _background: none;
  _filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled="true", sizingMethod="crop", src="images/calendar/bg_top.png"); /* ve finale prepsat na absolutni cestu */
}
#calendar .frame_top *{
  float: right;
}
#calendar .frame_bottom{
  height: 34px;
  background: url('../images/calendar/bg_bottom.png') center top no-repeat;
  _background: none;
  _filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled="true", sizingMethod="crop", src="images/calendar/bg_bottom.png"); /* ve finale prepsat na absolutni cestu */
}
#calendar .closeBtn{
  display: block;
  width: 19px;
  height: 19px;
  background: url('../images/calendar/closeBtn.gif') center center no-repeat;
  margin: 0 12px 0 15px;
  text-decoration: none !important;
}
#calendar .frame_top, #calendar .frame_bottom, #calendar .main{
  display: block;
}
#calendar .main{
  background: #FFFFFF;
  padding: 0 36px 0 35px;
}
#calendar .blueBg{
  background: #0067AA url('../images/calendar/blueBg_bottom.gif') center bottom no-repeat;
  padding-bottom: 23px;
}
#calendar .blueBg_top{
  background: url('../images/calendar/blueBg_top.gif') center top no-repeat;
  padding: 20px 27px 0 27px;
}
#calendar .bottomFields{
  clear: both;
}
#calendar .calendar, #calendar_times, #calendar table.white, #calendar div.scroll{
  margin-bottom: 13px;
}
#calendar .bottomFields td{
  height: 127px;
  vertical-align: middle;
  background-color: #FFFFFF;
  text-align: center;
  padding: 0 30px;
  width: 30%;
}
#calendar .bottomFields td.left{
  background: #FFFFFF url('../images/calendar/delimiter.gif') right center no-repeat;
}
#calendar .bottomFields td.center{
  width: 40%;
}
#calendar .bottomFields td.right{
  background: #FFFFFF url('../images/calendar/delimiter.gif') left center no-repeat;
}
#calendar .bottomFields td.center strong{
  color: #000000;
}
#calendar .grey, #calendar .grey *{
  color: #454545 !important;
}

#calendar .finishBtn, #calendar .backBtn, #calendar .loginBtn{
  display: block;
  color: #FFFFFF !important;
  font-weight: bold;
  text-decoration: none !important;
  text-align: center;
  margin: 0 auto;
  cursor: pointer;
}
#calendar .finishBtn, #calendar .backBtn{
  width: 185px;
  height: 42px;
  line-height: 42px;
}
#calendar .finishBtn{
  background: #CA2222 url('../images/calendar/finishBtn.gif') no-repeat;
}
#calendar .backBtn{
  background: #767676 url('../images/calendar/backBtn.gif') no-repeat;
}
#calendar .loginBtn{
  height: 30px;
  line-height: 30px;
  width: 166px;
	text-transform: uppercase;
	background: #626262 url('../images/calendar/loginBtn.gif') no-repeat;
	margin-left: 0;
}

#calendar .col_l{
  float: left;
  width: 433px;
}
#calendar .col_r{
  float: right;
  width: 478px;
}
#calendar .calendar-wrapper { 
  position: relative;
}
#calendar .calendar {
  background: #BDBDBD;
  border-collapse: separate !important;
}
#calendar .calendar td, #calendar .calendar th, #calendar .calendar td a, #calendar_times *{
  color: #777777;
  font-weight: bold;
}
#calendar .calendar td, #calendar .calendar th{
  text-align: center;
  height: 57px;
  width: 14%;
  padding: 0;
}
#calendar .calendar th{
  background: #F2F2F2;
}
#calendar .calendar td{
  background: #FFFFFF;
}
#calendar .calendar a.full{
  background: #FBC8C8;
  color: #C00808;
}
#calendar .calendar td a{
  display: block;
  width: 100%;
  height: 57px;
  line-height: 57px;
  position: relative;
  text-decoration: none !important;
  cursor: pointer;
}
#calendar .calendar td a.free{
  background: #DAFBC8;
}
#calendar .calendar td a.active{
  height: 65px;
  margin-bottom: -8px;
  color: #FFFFFF;
  background: url('../images/calendar/active.png') center top no-repeat;
  _background: none;
  _filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled="true", sizingMethod="crop", src="images/calendar/active.png"); /* ve finale prepsat na absolutni cestu */
  z-index: 200;
}
#calendar .calendar-instruktor td em.fl, em.fr { 
  display: block; height: 16px; width: 20px; position: absolute; line-height: 1px !important; font-size: 1px !important; overflow: hidden;
}
#calendar .calendar-instruktor td a.active { background-image: url(../images/calendar/active-instruktor.png) !important;}
#calendar .calendar-instruktor td a.active em.fl,
#calendar .calendar-instruktor td a.active em.fr
  { float: left; bottom: 8px; left: 0; z-index: 400;}
#calendar .calendar-instruktor td a.active em.fr { float: right; bottom: 8px; left: auto; right: 0;}
#calendar .calendar a span{
  display: block;
  color: #4A6E36;
  font-size: 10px;
  font-weight: normal;
  position: absolute;
  left: 5px;
  bottom: 5px;
  line-height: 11px;
}
#calendar .calendar a span.fr { left: auto; right: 5px;}
#calendar .calendar a.active span{
  display: none;
}
#calendar .dateTitle{
  color: #FFFFFF;
  font-size: 19px;
  font-weight: normal;
  text-align: left;
  line-height: 1.3;
  padding-left: 0.25em;
}
#calendar form{
  text-align: right;
}
#calendar form *{
  font-size: 13px;
}
#calendar form table label, #calendar div.top label{
  color: #FFFFFF;
}
#calendar form select{
  width: 180px;
}
#calendar_monthSelect{
  float: left;
}
#calendar_monthSelect a{
   margin-right: 5px;
}

#calendar_times{
  height: 347px !important;height /**/: 349px;
  background: #FFFFFF;
  overflow: auto;
  position: relative;
  border: 1px solid #BDBDBD;
}
#calendar_times .last{
  border-bottom: 0;
}

#calendar_times strong.time{
  display: block;
  width: 64px !important;width /**/: 65px;
  height: 63px !important;height /**/: 64px;
  border-right: 1px solid #BDBDBD;
  border-bottom: 1px solid #BDBDBD;
  float: left;
  clear: both;
}
#calendar_times strong.time .price { font-size: 0.8em !important;}
#calendar_times strong.type1 { background: #EBE9ED !important;}
#calendar_times strong.type2 { background: #DAFBC8 !important;}
#calendar_times strong.type3 { background: #FBC8C8 !important;}
#calendar_times span.line {
  display: block;
  width: 394px;
  height: 31px !important;height /**/: 32px;
  border-bottom: 1px solid #BDBDBD;
  float: left;
  position: relative;
  _font-size: 1px;
  z-index: 150;
}

#calendar_times i.calendar-location {
  /*position: absolute;*/
  display: block;
  float: left;
  width: 374px;
  /*height: 32px !important;height /** /: 33px;*/
  left: 70px;
  line-height: 32px; overflow: hidden;
  background: url(../images/calendar/time-arrow.gif) 50% 100% no-repeat;
}

#calendar_times i.calendar-location i { display: block; background: #fff; font-style: normal;}

#calendar_times span.outer{
  display: block;
  position: absolute;
  width: 370px;
  height: 10px;
  top: 2px;
  left: 8px;
  z-index: 200;
}
#calendar_times span.order{
  z-index: 250;
}
#calendar_times span.border, #calendar_times span.color{
  display: block;
  width: 100%;
  height: 100%;
  border-bottom: 2px solid #B2B2B2;
  border-right: 2px solid #B2B2B2;
  opacity: .6;
  -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
  filter: alpha(opacity=60);
}
#calendar_times span.color{
  opacity: 1;
  position: relative;
  top: -2px;
  margin-bottom: -2px;
  left: -2px;
  margin-right: -2px;
}
#calendar_times span.order span.color{
  background: #4596C5;
  border-bottom: 2px solid #4596C5;
  border-right: 2px solid #4596C5;
}
#calendar_times span.full span.color{
  background: #D37174;
  border-bottom: 2px solid #D37174;
  border-right: 2px solid #D37174;
}
#calendar_times span.catch{
  display: block;
  width: 100%;
  height: 12px;
  background: #7399B7 url('../images/calendar/catchArrow.gif') center center no-repeat;
  position: absolute;
  left: 0;
  bottom: 0;
  cursor: n-resize;
  _font-size: 1px;
  border-left: 2px solid #7399B7;
	margin-left: -2px; 
	z-index: 300;
}
#calendar_times a.del{
  display: block;
  text-decoration: none !important;
  width: 16px;
  height: 16px;
  background: url('../images/calendar/delBtn.gif');
  _font-size: 1px;
  position: absolute;
  right: 6px;
  _right: 8px;
  top: 2px;
  z-index: 310;
}
#calendar_times span.time, #calendar_times span.time span{
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
}
#calendar_times span.time{
  top: 0;
  left: 0;
  overflow: hidden;
}
#calendar_times span.time span{
  font-weight: bold;
  color: #FFFFFF;
  top: 45%;
  left: 0;
  margin-top: -15px;
  font-size: 14px; 
}

#calendar .top{
  height: 2.5em;
}
#calendar_times strong.empty{
  display: block;
  padding-top: 11em;
}

#calendar .greyLine{
  background: #F2F2F2;
  padding: 1.5em 1.75em;
  border-bottom: 1px solid #B8B8B8;
  text-align: left;
}
#calendar .greyLine input{
  margin: 0;
  margin-right: 0.5em;
  position: relative;
  top: -1px;
}
#calendar .greyLine label{
  font-weight: bold;
}

#calendar a.info{
  text-decoration: none !important;
  margin-left: 0.5em;
  cursor: pointer;
  position: relative;
  top: 4px;
}

#calendar table.white td, #calendar table.white th{
  padding-top: 0.9em;
  padding-left: 25px;
  text-align: left;
  vertical-align: top;
}
#calendar div.white, #calendar div.scroll{
  background: #FFFFFF;
  height: 320px;
}
#calendar .white *{
  color: #1A1A1A;
}
#calendar label.err{
  color: #CA2222;
}
#calendar table.white tr.border td, #calendar table.white tr.border th{
  border-top: 1px solid #B8B8B8;
}
#calendar table.white tr.padding td, #calendar table.white tr.border td{
  padding-bottom: 1.75em;
}
#calendar table.sum tr.border th{
  padding-bottom: 0.6em;
}

#calendar div.txt input{
  border: 0;
  display: block;
  background: none;
  height: 17px;
}
#calendar div.txt{
  height: 17px !important;height /**/: 27px;
  padding: 5px 10px;
  margin-top: 0.5em; 
}
#calendar div.txtLong{
  width: 158px !important;width /**/: 178px;
  background: url('../images/calendar/input_long.gif') no-repeat;
}
#calendar div.txtLong input{
  width: 158px;
}
#calendar div.txtLong2{
  width: 229px !important;width /**/: 249px;
  background: url('../images/calendar/input_long2.gif') no-repeat;
}
#calendar div.txtLong2 input{
  width: 229px;
}
#calendar div.txtShort{
  width: 59px !important;width /**/: 79px;
  background: url('../images/calendar/input_short.gif') no-repeat;
}
#calendar div.txtShort input{
  width: 59px;
  }
#calendar div.txtLongErr{
  background: url('../images/calendar/input_long_err.gif') no-repeat;
}
#calendar div.txtShortErr{
  background: url('../images/calendar/input_short_err.gif') no-repeat;
}

#calendar strong.title{
  display: block;
  margin-top: 0.25em;
  margin-bottom: 0.75em;
}
#calendar div.scroll{
  overflow: auto;
}
#calendar div.scroll table.white{
  margin-bottom: 0;
}

#calendar table.sum td{
  padding-top: 0.25em;
}

#calendar table.white tr.first td{
  padding-top: 0.9em;
}

#calendar table.sum span.total{
  background: #F4CDC6;
  display: block;
  margin: 0 -7px 1.5em -7px;
  padding: 1px 7px;
  position: relative;
}
#calendar table.sum .right span.total{
  margin-left: -25px;
}

#calendar .fRight{
  float: right;
}

#calendar .radio{
  position: relative;
  top: -2px;
}

#calendar td.cards{
  background: url('../images/calendar/cards.gif') 60% center no-repeat;
  width: 80px;
}

#calendar table.vmiddle td, #calendar table.vmiddle th{
  vertical-align: middle;
}

#calendar td.right, #calendar th.right{
  padding-right: 25px;
  text-align: right;
}

#calendar table.pay td.right{
  padding-right: 10px;
}

#calendar table.pay .noPadding, #calendar table.pay .paddingRight{
  padding-left: 0 !important;
}
#calendar table.pay .paddingRight{
  padding-right: 25px;
}

#calendar_empty_overlay { background: #fff; left: 0; opacity: 0.75;   -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";  filter: alpha(opacity=75); position: absolute; top: 0; z-index: 20; width: 100%;}
#calendar_empty_text { font-size: 0.8em; font-weight: bold; left: 0; position: absolute; top: 50%; z-index: 21; width: 100%;}

#calendar_hours_summary_wrap { height: 200px; overflow: auto;}

#calendar .activeBlock { outline: 5px solid #CA2222;}

