.shiftnav-nav {
	text-transform: uppercase;
	font-family: Montserrat, sans-serif;
	font-size: 16px;
	margin-top: 15px !important;
}

.shiftnav.shiftnav-skin-light ul.shiftnav-menu li.menu-item > .shiftnav-target {
	font-size: 16px !important;
	font-weight: 500 !important;
	color: #000 !important;
}

.shiftnav.shiftnav-skin-light ul.shiftnav-menu li.menu-item.current-menu-item > .shiftnav-target, .shiftnav.shiftnav-skin-light ul.shiftnav-menu li.menu-item ul.sub-menu .current-menu-item > .shiftnav-target {
	background-color: #93CCC3 !important;
	color: #fff !important;
}

.rating-inline i, .rating_field i, .recipe-view-rating i {
	color: grey;
}

.rating-inline i.selected, .rating_field i.selected, .recipe-view-rating i.selected {
	color: gold;
}

.rating_field .rating-edit {
	cursor: pointer;
}

.rating-inline {
	display: inline-block !important;
}

.mp-chart {
	height: 200px;
	margin: 20px 0 20px 0;
	border: 1px solid #ccc;
	padding: 20px;
}

.meal_planner_title {
	font-size: 30px;
	font-weight: bold;
}

.meal_planner_buttons {
	margin: 20px 0 20px 0;
}

.meal_planner_buttons .button {
	border-radius: 15px;
	height: 30px;
	font-size: 16px;
	text-transform: uppercase;
	line-height: 30px;
	padding: 0 10px;
	background-color: #93CCC3;
	color: #fff;
	cursor: pointer;
	margin-right: 10px;
	display: inline-block;
}

.icon-circle {
	background-color: #fff;
	display: inline-block;
	height: 20px;
	width: 20px;
	text-align: center;
	border-radius: 10px;
	line-height: 20px;
}

.icon-button {
	border-radius: 15px;
	height: 24px;
	font-size: 12px;
	line-height: 24px;
	padding: 0 10px 0 2px;
	background-color: #aaa;
	color: #fff !important;
	display: inline-block;
	box-sizing: border-box;
}

.icon-button .icon-circle {
	color: #aaa;
	margin-right: 5px;
}

/* Recipe Card */

.recipe_card {
	position: relative;
	box-shadow: 0 0 5px #aaa;
	z-index: 9;
	background-color: #fff;
}

.recipe_card .recipe_card_missed {
	position: absolute;
	display: none;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: rgba(0, 0, 0, 0.5);
	color: #fff;
	justify-content: center;
	align-items: center;
	font-size: 20px;
	text-transform: uppercase;
	z-index: 2;
}

.recipe_card.missed .recipe_card_missed {
	display: flex;
}

.recipe_card img {
	width: 100% !important;
	display: block;
}

.recipe_card_meta {
	padding: 10px;
	font-size: 12px;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: rgba(0, 0, 0, 0.5);
	color: #fff;
	z-index: 1;
}

.recipe_card_meta_title {
	font-weight: bold;
}

.recipe_card_flag {
	border-radius: 10px;
	height: 20px;
	font-size: 12px;
	text-transform: uppercase;
	line-height: 20px;
	padding: 0 10px;
	background-color: #93CCC3;
	color: #fff;
	position: absolute;
	left: 10px;
	top: 10px;
}

.recipe_card_buttons {
	position: absolute;
	right: 10px;
	top: 10px;
	display: flex;
	z-index: 3;
}

.recipe_card_button {
	border-radius: 10px;
	height: 20px;
	min-width: 20px;
	text-align: center;
	font-size: 12px;
	text-transform: uppercase;
	line-height: 20px;
	background-color: #333;
	color: #fff !important;
	cursor: pointer;
	margin-left: 10px;
	padding: 0 10px;
	display: block;
}

.recipe_card_menu {
	position: absolute;
	top: 100%;
	right: 0;
	background-color: #fff;
	border-radius: 3px;
	font-size: 12px;
	border: 1px solid #eee;
	display: none;
	min-width: 100px;
}

.recipe_card_menu_button {
	padding: 5px;
	border-bottom: 1px solid #eee;
	cursor: pointer;
	display: block;
	color: inherit !important;
}

.recipe_card_menu_button:last-child {
	border-bottom: none;
}

/* Meal Planner */

.meal_planner {
	margin: 0 0 50px 0;
	display: flex;
	overflow: hidden;
}

.meal_planner_sidebar {
	width: calc((100vw / 8));
	margin: 0 20px 0 0;
	position: relative;
}

.meal_planner_week {
	position: relative;
	border: 1px solid #ccc;
	overflow: hidden;
	width: calc((100vw / 8)*7);
}

.meal_planner_week_inner {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.meal_planner_week_left, .meal_planner_week_right {
	position: absolute;
	top: 0;
	height: 44px;
	width: 44px;
	background-color: #aaa;
	display: none;
	justify-content: center;
	align-items: center;
}

.meal_planner_week_left {
	left: 0;
}

.meal_planner_week_right {
	right: 0;
}

.meal_planner_week_day {
	width: calc(100% / 7);
	border-right: 1px solid #ccc;
}

.meal_planner_week_day_water {
	text-align: center;
	color: #ccc;
	font-weight: bold;
	text-transform: uppercase;
	font-size: 12px;
	margin-bottom: 10px;
}

.meal_planner_week_day_allowed {
	padding: 5px 10px;
	font-size: 12px;
	color: orange;
}

.meal_planner_week_day_allowed.success {
	color: green;
}

.meal_planner_week_day_macros {
	padding: 0 10px 10px 10px;
	font-size: 14px;
}

.meal_planner_week_day_macros_item {
	display: flex;
	justify-content: space-between;
}

.meal_planner_week_day:last-child {
	border-right: none;
}

.meal_planner_week_day_name {
	padding: 10px 20px;
	background-color: #ccc;
	font-weight: bold;
	text-align: center;
	height: 44px;
	margin-bottom: 5px;
}

.meal_planner_week_day_recipes {
	padding: 10px 10px 0 10px;
}

.meal_planner_week_day_recipe {
	position: relative;
	margin-bottom: 10px;
	padding-bottom: 100%;
}

.meal_planner_week_day_recipe .meal_planner_week_day_recipe_placeholder {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border: 4px dashed #ccc;
	color: #ccc;
	font-weight: bold;
	text-transform: uppercase;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.meal_planner_week_day_recipe .meal_planner_week_day_recipe_container {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

/* Recipe Search */

.recipe_search {
	display: flex;
	flex-direction: column;
	border: 1px solid #ccc;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
}

.mobile-popup .recipe_search {
	bottom: 0;
}

.recipe_search_header {
	background-color: #ccc;
	text-align: center;
	height: 44px;
	display: flex;
	justify-content: space-between;
	padding: 0 10px;
	align-items: center;
}

.recipe_search_list {
	flex-grow: 1;
	overflow-y: scroll;
	padding: 10px 10px 0 10px;
	height: calc(100vh - 155px);
}

.recipe_search_list .recipe_card {
	margin-bottom: 10px;
}

/* Filters */

.recipe_filters {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background-color: #fff;
	z-index: 9;
}

.recipe_filters_list {
	padding: 10px;
}

.recipe_filters_list_group_label {
	font-weight: bold;
}

.recipe_filters_buttons {
	display: flex;
	justify-content: space-between;
	padding: 10px;
}

.recipe_filters_button {
	border-radius: 10px;
	height: 20px;
	font-size: 12px;
	text-transform: uppercase;
	line-height: 20px;
	padding: 0 10px;
	background-color: #ccc;
	color: #fff;
	cursor: pointer;
}

.recipe_filters_button_confirm {
	background-color: #93CCC3;
}

.recipe_filters_list_group {
	border-bottom: 1px solid #eee;
	padding: 5px 0;
}

.recipe_filters_list_group_item {
	display: block;
	padding: 5px 5px 5px 20px;
}

.mobile-popup {
	position: fixed;
	z-index: 99999999;
	top: 0;
	left: 0;
	right: 0;
	background-color: #fff;
	height: 100vh; /* Fallback for browsers that do not support Custom Properties */
  	height: calc(var(--vh, 1vh) * 100);
}

.recipe_search_header_button {
	border-radius: 10px;
	height: 20px;
	font-size: 12px;
	text-transform: uppercase;
	line-height: 20px;
	padding: 0 10px;
	background-color: #93CCC3;
	color: #fff;
	cursor: pointer;
}

@media(max-width: 600px){
	.meal_planner_sidebar {
		display: none;
	}
	
	.meal_planner_week_left, .meal_planner_week_right {
		display: flex;
	}
	
	.meal_planner_week_inner {
		width: 700%;
	}
	
	.recipe_search_list {
		max-height: calc(calc(var(--vh, 1vh) * 100) - 44px);
	}
}


.mp-summary {
	margin: 0 0;
}

.mp-stats {
	display: flex;
	align-items: center;
}

.mp-label {
	font-size: 14px;
	line-height: 14px;
	margin-right: 5px;
}

.mp-stat {
	background-color: #93CCC3;
}

.mp-calendar-day-body .mp-stat {
	margin: 0 0 5px 0;
	display: block;
}

.mp-stats .mp-stat {
	margin-right: 5px;
}

/* Calendar */

.mp-calendar {
	margin: 0 0 0 100px;
	width: calc(100% - 100px);
}

.mp-calendar th, .mp-calendar td {
	width: calc(100% / 7);
	position: relative;
}

.mp-calendar-days {
	display: flex;
	flex-wrap: wrap;
}

.mp-calendar-day {
	width: calc((100% / 6) - 30px);
	margin-right: 30px;
	margin-bottom: 15px;
	padding: 0;
	background-color: #fff !important;
	border: 1px solid #eee;
	border-radius: 3px;
}

@media(max-width: 600px){
	.mp-calendar-day {
		width: 100%;
		margin-right: 0;
	}
}

.mp-calendar-day-header {
	padding: 10px;
	background-color: #fafafa;
	border-bottom: 1px solid #eee;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.mp-calendar-day-today .mp-calendar-day-header {
	background-color: #d5f7f2;
	border-bottom-color: #93CCC3;
}

.mp-calendar-day-body {
	padding: 10px;
}

.mp-calendar-day-date {
	font-weight: bold;
	font-size: 12px;
	line-height: 24px;
}

.mp-stat .icon-circle {
	color: #93CCC3;
	background-color: #fff;
}

.mp-calendar-plan-edit {
	position: absolute;
	right: 100%;
	top: -1px;
	color: #fff !important;
	padding: 10px;
	background-color: #93CCC3;
	width: 100px;
	font-size: 12px;
	border-radius: 5px 0 0 5px;
}

.mp-calendar-plan-edit .icon-circle {
	color: #93CCC3;
	background-color: #fff;
	margin-right: 5px;
}

/* Model */

.model-background {
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 999999999;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}

.model-container {
	background-color: #fff;
	border-bottom: 1px solid #eee;
	position: relative;
	width: 90vw;
	height: 90vh;
	height: calc(var(--vh, 1vh) * 90);
	
	max-width: 600px;
	max-height: 800px;
	display: flex;
	flex-direction: column;
}

.model-title {
	background-color: #fafafa;
	border-bottom: 1px solid #eee;
	text-align: left;
	padding: 10px;
}

.model-content {
	padding: 20px;
	overflow-y: scroll;
}

.model-close {
	width: 30px;
	height: 30px;
	border-radius: 15px;
	background-color: #fff;
	border: 2px solid #000;
	position: absolute;
	top: -15px;
	right: -15px;
	text-align: center;
	line-height: 20px;
	font-size: 20px;
	z-index: 999999;
	cursor: pointer;
	padding-top: 3px;
}

.recipe-view-section {
	background-color: #fff;
	border: 1px solid #eee;
	margin-bottom: 30px;
}

.recipe-view-section h3 {
	background-color: #eee;
	border-bottom: 1px solid #ccc;
	padding: 10px;
	margin: 0;
	text-transform: normal;
}

.recipe-view-list-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 10px;
}

.recipe-view-list-item:nth-child(odd) {
	background-color: #fafafa;
}

.recipe-view-list-item-value {
	border-radius: 3px;
	font-size: 12px;
	font-weight: bold;
	margin-left: 10px;
}

.pagebreak {
	page-break-after: always;
}

.print-page h2, .recipe-view h2 {
	width: 100%;
	text-align: center;
	padding: 0 0 20px 0;
	border-bottom: 1px solid #ccc;
	margin: 0 0 20px 0;
}

.recipe-view {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.recipe-view-left {
	width: calc(40% - 15px);
}

.recipe-view-right {
	width: calc(60% - 15px);
}

.recipe-view-image {
	text-align: center;
	margin: 0 0 20px 0;
}

.recipe-view .recipe-view-rating {
	margin-bottom: 20px;
	text-align: center;
}

.recipe-view-section ol, .recipe-view-section ul {
	margin: 20px 20px 20px 0px;
}

.recipe-view-section ol li, .recipe-view-section ul li {
	margin-bottom: 10px;
}

.model-content .recipe-view {
	max-width: 600px;
}

.model-content .recipe-view-left, .model-content .recipe-view-right {
	width: 100%;
}

.recipe-view .comment-form {
	padding: 20px;
}

.shopping_list_week {
	width: 100%;
	border-top: 1px solid #ccc;
	font-size: 14px;
}

.shopping_list_daily {
	width: 100%;
	border-top: 1px solid #ccc;
	display: flex;
	font-size: 14px;
}

.shopping_list_day {
	width: calc(100% / 7);
	border-right: 1px solid #ccc;
	background-color: #fff !important;
}

.shopping_list_header {
	padding: 10px 20px;
    background-color: #ccc;
    font-weight: bold;
    height: 44px;
	width: 100%;
}

.shopping_list_header .button {
    border-radius: 10px;
    height: 20px;
    font-size: 12px;
    text-transform: uppercase;
    line-height: 20px;
    padding: 0 10px;
    background-color: #93CCC3;
    color: #fff;
    cursor: pointer;
	float: right;
	margin-left: 10px;
}

@media(max-width: 600px){
	.shopping_list_header .button.switch {
		display: none;
	}
	.shopping_list_week {
		display: none;
	}
}

.mp-button-group {
	display: flex;
	align-items: center;
	margin: 15px 0;
}

.mp-button-group > span {
	margin-right: 10px !important;
}

.mp-button-group > input, .mp-button-group > a {
	margin-right: 20px !important;
}

.mp-button-group input {
	width: 170px !important;
	padding: 5px 5px 5px 15px !important;
	border-radius: 50px !important;
}

.mp-button-group input[type="number"] {
	width: 75px !important;
}

.mp-button-group input[type="submit"], .mp-button-group a.icon-button {
	padding: 7px 15px !important;
	background-color: #E1E144;
	height: 38px;
	border-radius: 50px;
	font-size: 16px;
	text-transform: uppercase;
	width: auto !important;
}

.recipe_search_list_loading {
	color: #666;
	width: 100%;
	height: calc(100% + 50px);
	padding-bottom: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 9999999999999999;
	font-size: 20px;
}