.calendar .month {
	height:70px;
	padding-bottom:0px !important;
}

.calendar .month span, .calendar .month p {
	float:left;
	text-align:center;
}

.calendar .month span {
	width:20%;
	cursor:pointer;
	font-size:32px;
	cursor:pointer;
	transition:all 200ms;
}

.calendar .month span:hover {
	color:var(--main-color);
}

.calendar .month p {
	padding:5px 0 0 0;
	width:60%;
	font-size:26px;
}

.calendar .dayName, .calendar .days .day, .calendar.weeklyRecap .weeklyRecap {
	width:14.28%;
	height:25px;
	float:left;
}

.calendar.weeklyRecap .dayName, .calendar.weeklyRecap .days .day {
	width:12.14%;
}

.calendar .days {
	padding:0px !important;
	border-left:1px solid rgba(0,0,0,0.3);
}

.calendar .days .day, .calendar.weeklyRecap .weeklyRecap, .calendar.weeklyRecap .weeklyRecap > div {
	height:100px;
	padding:7px 38px 7px 7px;
	position:relative;
	border-top:1px solid rgba(0,0,0,0.3);
	border-right:1px solid rgba(0,0,0,0.3);
	overflow:hidden;
	font-size:11px;
	line-height:14px;
	background:rgba(117,171,55,0.2);
}

.calendar .days .day a {
	padding:0 0 5px 0;
	display:block;
	font-size:9px;
	color:#48811b;
}

.calendar .days .day em {
	width:40px;
	height:40px;
	padding:11px 0 0 0;
	position:absolute;
	top:7px;
	right:7px;
	display:block;
	border:1px solid rgba(255,255,255,0.05);
	font-style:normal;
	text-align:right;
	font-size:20px;
	text-align:center;
}

.calendar .days .day.today em {
	background:rgba(117,171,55,0.35);
	border-radius:20px;
}

.calendar .days .day sub {
	height:0px;
	position:absolute;
	top:3px;
	left:7px;
	display:block;
}

.calendar .days .day sub b {
	display:block;
	font-size:16px;
	line-height:22px;
	font-weight:normal;
	color:var(--main-color);
}

.calendar .days .day sub b i {
	color:#ffffff;
	font-style:normal;
}

.calendar .days .day ul {
	height:20px;
	position:absolute;
	bottom:7px;
	right:5px;
	display:block;
}

.calendar .days .day ul li {
	float:left;
}

.calendar .days .day ul li a {
	color:rgba(255,255,255,0.20);
	transition:all 200ms;
}

.calendar .days .day ul li a.editTraining, .calendar .days .day ul li a.editDiet {
	color:#ffffff;
}

.calendar .days .day ul li a:hover {
	text-decoration:none;
	color:var(--main-color);
}

.calendar.weeklyRecap .month {
	width:85%;
}

.calendar.weeklyRecap .weeklyRecap {
	width:15%;
	padding:0px;
	border-top:0px;
	border-right:0px;
	background:none;
}

.calendar.weeklyRecap .weeklyRecap > div {
	padding:10px 0 0 15px;
	margin:5px 0 0 13%;
	position:relative;
	border:0px;
	overflow:initial;
	font-size:14px;
	line-height:22px;
	background:rgba(0,0,0,0.1);
}

.calendar.weeklyRecap .weeklyRecap > div .angle {
	width:0px;
	height:0px;
	position:absolute;
	top:7px;
	left:-20px;
	border-top:10px solid transparent;
	border-right:20px solid rgba(0,0,0,0.1);
	border-bottom:10px solid transparent;
 }

.calendar .days .day.otherMonth {
	background:none;
}

.calendar .days .day.otherMonth em {
	opacity:0.3;
}

.calendar .days .day.otherMonth sub b {
	opacity:0.3;
	transition:all 200ms;
}

.calendar .days .day.otherMonth sub b:hover {
	opacity:1;
}

.calendar .days .day.otherMonth ul li a {
	opacity:0.3;
}

.calendar .days .day.otherMonth ul li a:hover {
	opacity:1;
}

.calendar .days .day.today {
	background:rgba(117,171,55,0.35);
}

.calendar .days .day p {
	white-space:nowrap;
	font-size:11px;
}

.calendar .days .day:nth-last-child(-n+8) {
	border-bottom:1px solid rgba(0,0,0,0.3);
}

.calendar.weeklyRecap .days .day:nth-last-child(-n+9) {
	border-bottom:1px solid rgba(0,0,0,0.3);
}

.calendar.weeklyRecap .weeklyRecap.opacity {
	opacity:0;
}

.calendar.weeklyRecap .weeklyRecap b {
	font-size:18px;
}