div.zabuto_calendar {
	margin: 0;
	padding: 0
}
div.zabuto_calendar .table {
	width: 100%;
	margin: 0;
	padding: 0
}
div.zabuto_calendar .table th, div.zabuto_calendar .table td {
	padding: 4px 2px;
	text-align: center
}
div.zabuto_calendar .table tr th, div.zabuto_calendar .table tr td {
	background-color: #fff
}
div.zabuto_calendar .table tr:last-child {
	border-bottom: 1px solid #ddd
}
div.zabuto_calendar .table tr.calendar-month-header td {
	background-color: #fafafa;
	font-weight: bold
}
div.zabuto_calendar .table tr.calendar-month-header td span {
	cursor: pointer;
	display: inline-block;
	padding-bottom: 10px
}
div.zabuto_calendar .table tr.calendar-month-header td {
	padding-top: 12px;
	padding-bottom: 4px
}
div.zabuto_calendar .table-bordered tr.calendar-month-header td {
	border-left: 0;
	border-right: 0
}
div.zabuto_calendar .table-bordered tr.calendar-month-header td:first-child {
	border-left: 1px solid #ddd
}
div.zabuto_calendar div.calendar-month-navigation {
	cursor: pointer;
	margin: 0;
	padding: 0;
	padding-top: 5px
}
div.zabuto_calendar .table tr.calendar-dow-header th {
	background-color: #f0f0f0
}
div.zabuto_calendar tr.calendar-dow-header th, div.zabuto_calendar tr.calendar-dow td {
	width: 14%
}
div.zabuto_calendar .table tr td div.day {
	margin: 0;
	padding-top: 7px;
	padding-bottom: 7px
}
div.zabuto_calendar .table tr td.event div.day, div.zabuto_calendar ul.legend li.event {
	background-color: #fff0c3
}
div.zabuto_calendar .table tr td.dow-clickable, div.zabuto_calendar .table tr td.event-clickable {
	cursor: pointer
}
div.zabuto_calendar .badge-today, div.zabuto_calendar div.legend span.badge-today {
	background-color: #357ebd;
	color: #fff;
	text-shadow: none
}
div.zabuto_calendar .badge-event, div.zabuto_calendar div.legend span.badge-event {
	background-color: #ff9b08;
	color: #fff;
	text-shadow: none
}
div.zabuto_calendar .badge-event {
	font-size: .95em;
	padding-left: 8px;
	padding-right: 8px;
	padding-bottom: 4px
}
div.zabuto_calendar div.legend {
	margin-top: 5px;
	text-align: right
}
div.zabuto_calendar div.legend span {
	color: #999;
	font-size: 10px;
	font-weight: normal
}
div.zabuto_calendar div.legend span.legend-text:after, div.zabuto_calendar div.legend span.legend-block:after, div.zabuto_calendar div.legend span.legend-list:after, div.zabuto_calendar div.legend span.legend-spacer:after {
	content: ' '
}
div.zabuto_calendar div.legend span.legend-spacer {
	padding-left: 25px
}
div.zabuto_calendar ul.legend > span {
	padding-left: 2px
}
div.zabuto_calendar ul.legend {
	display: inline-block;
	list-style: none outside none;
	margin: 0;
	padding: 0
}
div.zabuto_calendar ul.legend li {
	display: inline-block;
	height: 11px;
	width: 11px;
	margin-left: 5px
}
div.zabuto_calendar ul.legend, div.zabuto_calendar ul.legend li:first-child {
	margin-left: 7px
}
div.zabuto_calendar ul.legend li:last-child {
	margin-right: 5px
}
div.zabuto_calendar div.legend span.badge {
	font-size: .9em;
	border-radius: 5px 5px 5px 5px;
	padding-left: 5px;
	padding-right: 5px;
	padding-top: 2px;
	padding-bottom: 3px
}
@media(max-width:979px) {
	div.zabuto_calendar .table th, div.zabuto_calendar .table td {
		padding: 2px 1px
	}
}



.zCalendar{ margin-bottom: 2rem}
.zCalendar>table{ width: 100%; padding: 0; margin: 0; border-collapse: collapse; border: none;}
.zCalendar>table th, .zCalendar>table td{
 -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none;
	padding: 0; 
}
.zCalendar .calendar-month-navigation{ cursor: pointer;}
.zCalendar .calendar-month-header td{ padding: 18px 8px; text-align: center; color: #222; font-size: 1.25em; font-weight: bold;}
.zCalendar .calendar-dow-header th, .zCalendar .calendar-dow td{ width: 14.285%; text-align: center; position: relative;}
.zCalendar .calendar-dow-header th{ padding: 4px; font-size: 0.8em; border-bottom: 1px #ddd solid}
.zCalendar .calendar-dow td{padding: 0 !important; border: none !important; line-height: 0;}
.zCalendar .calendar-dow td::before{content: ""; display:block; width: 100%; padding-top: 95.5%; position: relative;}
.zCalendar .calendar-dow td>div{position: absolute; top: 4px; right: 4px; bottom: 4px; left: 4px; display: -ms-flexbox; display: flex; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center; border-radius: 50%; border: 1px transparent solid; background-color: #F9F9F9}

.zCalendar .calendar-dow td>.today{border: 2px #5dc5d2 solid; background-color: #FFF}
/*weedday start with sunday*/
.zCalendar .calendar-dow-header th:first-child, .zCalendar .calendar-dow td:first-child{color:#f56767;}
/*weedday start with monday*/
/*.zCalendar .calendar-dow-header th:last-child, .zCalendar .calendar-dow td:last-child{color:#f56767;}*/
.zCalendar .dow-clickable.event{cursor: pointer;}
.zCalendar .dow-clickable.event .day{background-color: #e3e1fd; color:#895fb3}
.zCalendar .calendar-dow td:first-child.dow-clickable.event .day{ color:#f52b76}

