body table.felgappointment-calendar { margin:0; padding:0; background:#F1F1F1; border-spacing:0; width:100%; border:none; border-bottom:1px solid #ddd; }
body table.felgappointment-calendar thead { colornull:#fff; text-transform:uppercase; }
body table.felgappointment-calendar th { text-align:center; position:relative; font-size:20px; width:14.285%; border-width:1px; border-style:solid; padding:21px 0; line-height:1; }
body table.felgappointment-calendar tr.days { colornull:#fff; text-transform:uppercase; }
body table.felgappointment-calendar tr.days th { padding:13px 0 12px; border-width:1px; border-style:solid; font-size:14px; }
body table.felgappointment-calendar th .monthName a { font-size:12px; position:relative; top:-3px; padding-left:10px; text-decoration:none; text-transform:none; colornull:#fff; color:rgba(255,255,255,0.25); }
body table.felgappointment-calendar th .monthName a:hover { color:rgba(255,255,255,0.50); }
body table.felgappointment-calendar th .page-left { text-decoration: none; box-shadow: none; font-size:24px; colornull:#fff; position:absolute; left:20px; top:19px; }
body table.felgappointment-calendar th .page-right { text-decoration: none; box-shadow: none; font-size:24px; colornull:#fff; position:absolute; right:20px; top:19px; }
body table.felgappointment-calendar th .page-left:hover {  }
body table.felgappointment-calendar th .page-right:hover { }
body table.felgappointment-calendar td { text-align:center; overflow:hidden; position:relative; font-size:20px; color:#333; padding:0; border-right:1px solid #e5e5e5; }
body table.felgappointment-calendar td:first-child { border-left:1px solid #ddd; }
body table.felgappointment-calendar td:last-child { border-right:1px solid #ddd; }
body table.felgappointment-calendar td .date { background:#fff; display:block; width:100%; height:100%; }
body table.felgappointment-calendar td .date .number { display:inline-block; -moz-border-radius:30px; -webkit-border-radius:30px; border-radius:30px; width: 50px; height: 50px; line-height:46px; }

body table.felgappointment-calendar td:hover .date { cursor:pointer; background:#fafafa; }
body table.felgappointment-calendar td:hover .date span { colornull:#fff; }
body table.felgappointment-calendar tr.week td.active { border-bottom-color:#ddd; }
body table.felgappointment-calendar tr.week td.active .date { background:#ddd; color:#555; }
body table.felgappointment-calendar tr.week td.active .date .number { border:none; background:#ddd; color:#000; }
body table.felgappointment-calendar tr.week td.active { background:#ddd; }

body table.felgappointment-calendar tr.entryBlock { colornull:#fff; }
body table.felgappointment-calendar tr.entryBlock td { padding:2%; text-align:left; colornull:#fff; border-bottom-color:#ddd; }
body table.felgappointment-calendar tr.entryBlock.loading td { height:132px; }

body table.felgappointment-calendar td{height: 80px !important;}
body table.felgappointment-calendar td > span{line-height: 77px !important;}
body table.felgappointment-calendar td.prev-date .date,
body table.felgappointment-calendar td.prev-date:hover .date,
body table.felgappointment-calendar td.prev-date:hover .date span { cursor:not-allowed; background:#f5f5f5 !important; color:#ccc !important; }
body table.felgappointment-calendar td.blur .date,
body table.felgappointment-calendar td.blur:hover .date,
body table.felgappointment-calendar td.blur:hover .date span { cursor:not-allowed; background:#f5f5f5 !important; color:#ccc !important; }
body table.felgappointment-calendar td.next-month .date span,
body table.felgappointment-calendar td.prev-month .date span { color:#ccc; }
body table.felgappointment-calendar td.next-month:hover .date span,
body table.felgappointment-calendar td.prev-month:hover .date span { colornull:#fff; }
body table.felgappointment-calendar td.booked .date,
body table.felgappointment-calendar td.booked:hover .date,
body table.felgappointment-calendar td.booked .date span,
body table.felgappointment-calendar td.booked:hover .date span { cursor:not-allowed; background:#FFF9F8 !important; color:#FFA790 !important; }
body table.felgappointment-calendar td.active:hover .date span { background:#fff; }

body table.felgappointment-calendar td.next-month .date,
body table.felgappointment-calendar td.prev-month .date { background:#fafafa }

body table.felgappointment-calendar td.today .date { color:#000; }
body table.felgappointment-calendar td.today .date span { border:2px solid #31afea; color:#000 !important; }
body table.felgappointment-calendar td.today.prev-date .date span { color:#ccc !important; }
body table.felgappointment-calendar td.today:hover .date { color:#000 !important; }
body table.felgappointment-calendar td.today:hover .date span { background:#31afea !important; color:#fff !important; }
body table.felgappointment-calendar td.today.active:hover .date span { background:#fff !important; color:#000 !important }
body table.felgappointment-calendar td.today.prev-date:hover .date span { background:none !important; color:#ccc !important; }

.felgappointment-loading td{
	opacity: 0.15;
}

body table.felgappointment-calendar tr.entryBlock div.selecttime{height: 60px; line-height: 60px;}
body table.felgappointment-calendar tr.entryBlock div.selecttime button{padding: 13px 20px !important;line-height: normal !important;}

@media screen and (min-width:720px){
	body table.felgappointment-calendar tr.entryBlock div.selecttime span.button-timeslot{display: none;}
	body table.felgappointment-calendar tr.entryBlock div.selecttime .new-appt{float: right;}
}

@media screen and (max-width:720px){
	body table.felgappointment-calendar tr.entryBlock div.selecttime .time-range{display: none;}
	body table.felgappointment-calendar tr.entryBlock div.selecttime span.button-text{display: none;}
	body table.felgappointment-calendar tr.entryBlock div.selecttime .new-appt{display: block; width: 100%;}
}

#pageDialog select, #pageDialog input, #pageDialog textarea{
	display: block;
    width: 100%;
}

.felgloading{
	background-image: url('../images/loading.svg');
	background-position: center;
	background-repeat: no-repeat;;
}