﻿.nutrition {
	position: relative;
}

.nutrition .heading {
	margin-right: 402px;
	padding-right: 20px;
	position: relative;

	border: 1px solid #b3b3b3;
	border-width: 1px 0px 0px 1px;

	height: 178px;
}

.nutrition .heading.cal {
	padding-right: 59px;
}

.nutrition tbody td
, .nutrition thead td
, .nutrition th {
	width: 40px;
	min-width: 40px;
}

.nutrition tbody td
, .nutrition th {
	height: 34px;

	font-family: Roboto, sans-serif;
	font-weight: 300;
}

.nutrition tbody td { height: 30px; }

.nutrition td {
	border: 1px solid #b3b3b3;
	border-width: 1px 1px 0px 1px;
}

.nutrition tbody > tr:first-child td { border-top: 0px; }

.nutrition tbody td {
	text-align: center;
	font-weight: normal;
  font-size: 12px;
	color: #6b6d6f;
}

.nutrition tbody tr > td:first-child { padding: 0px 25px; }

.nutrition th {
	background-color: #b1262b;
	border: 1px solid #b1262b;
	border-width: 0px 1px;

	text-align: center;
	font-size: 16px;
	color: #fff;
}

.nutrition tr > th:first-child {
	padding-left: 25px;
	text-align: left;
}
.nutrition tr > th:last-child {
	padding-right: 25px;
	text-align: right;
}

.nutrition tbody tr > td:nth-child(1) {
	width: 100%;
	text-align: left;
}

.nutrition .table_wrapper .smart_choices {
	width: 229px;
	text-align: left;
	font-size: 0px;
}

.nutrition .menu_table_header tr > td:first-child { width: 100%; }

.nutrition tbody .smart_choices { padding: 2px; }

.cal, .nutrition tbody td.cal {
	color: #b1262b;
	font-weight: bold;
}

.nutrition tbody td.cal {
  max-width: 40px;
  font-size: 12px !important;
  text-align: center !important;
}

.nutrition th.cal { font-size: 0px; }

.content .nutrition h2 {
	display: inline-block;
	padding: 20px 0px 10px 20px;

	vertical-align: middle;
	font-family: Roboto, sans-serif;
	font-weight: 300;
	font-size: 40px;
	color: #b4252d;
	line-height: 44px;
	margin-right: 20px;
}

body.rosette .content .nutrition h2 { color: #ab1d3f; }

.nutrition input[type=search] {
	border: 1px solid #828282;

	width: 300px;
	height: 40px;
	padding: 0px 20px;

	vertical-align: middle;

	font-family: Roboto, sans-serif;
	font-weight: 300;
	font-size: 14px;

	margin-left: 20px;
}

.nutrition input[type=search]::-webkit-input-placeholder { color: #bbbbbc; }
.nutrition input[type=search]::-moz-placeholder          { color: #bbbbbc; }
.nutrition input[type=search]:-ms-input-placeholder      { color: #bbbbbc !important; }
.nutrition input[type=search]:-moz-placeholder           { color: #bbbbbc; }

.nutrition table {
	border-collapse: collapse;
	border-spacing: 0px;
	border-bottom: 1px solid #b3b3b3;
	width: 100%;
}

.table_wrapper table { border-bottom: 0px; }

.table_wrapper {
	border-bottom: 1px solid #b3b3b3;

	overflow: hidden;
}

.table_wrapper > div {
	overflow: scroll;
	-ms-overflow-x: hidden;
	-ms-overflow-y: scroll;
	overflow-x: hidden;
	overflow-y: scroll;
}

.table_wrapper, .table_wrapper > div { max-height: 400px; }

.no_opt .table_wrapper { border-top: 1px solid #b3b3b3; }

.nutrition table thead td {
	font-size: 0px;
	text-align: right;
}

.nutrition thead td > label {
	font-family: Roboto, sans-serif;
	font-weight: 300;
	font-size: 11px;
	color: #6b6d6f;

	height: 22px;
	line-height: 22px;
	display: inline-block;
	vertical-align: top;
	margin-right: 5px;
}

.nutrition thead td > label em {
	font-weight: bold;
	font-style: normal;
}

.nutrition thead tr > td:last-child div { width: 400px; }
.nutrition thead tr > td:last-child div.cal { width: 440px; }

.nutrition thead tr > td:last-child { width: 0%; }

.nutrition tbody > tr:nth-child(2n) td { background-color: #faf9fa; }

.nutrition tbody img {
	width: 24px;

	margin: 2px;
	vertical-align: middle;
	display: inline-block;

	-webkit-border-radius: 1px;
	-moz-border-radius: 1px;
	border-radius: 1px;
}

.nutrition tbody a:hover { color: #b1262b; }

.nutrition tfoot td {
	height: 200px;
	text-align: center;

	font-family: Roboto, sans-serif;
	font-weight: bold;
	font-size: 35px;
	color: #777;

	border-top: 0px;
}

.labels {
	display: inline-block;
	border: 1px solid #b3b3b3;
	border-width: 1px 1px 0px 1px;

	position: absolute;
	z-index: 1;
	top: 0px;
	right: 0px;

	font-size: 0px;
	vertical-align: top;
}

.labels label {
	display: inline-block;
	background-color: #efeff0;
	width: 40px;
	height: 200px;
	line-height: 40px;

	font-family: Roboto, sans-serif;
	font-weight: normal;
	font-size: 12px;
	color: #6b6d6f;

	position: relative;
}

.no_opt .labels label { height: 177px; }

.labels label span {
	-webkit-transform: rotate(-90deg) translate(0px, -50%);
	-moz-transform: rotate(-90deg) translate(0px, -50%);
	-ms-transform: rotate(-90deg) translate(0px, -50%);
	-o-transform: rotate(-90deg) translate(0px, -50%);
	transform: rotate(-90deg) translate(0px, -50%);

	display: inline-block;
	white-space: nowrap;
	width: 100%;

	position: absolute;
	bottom: 10px;
	left: 50%;
}

.labels label ~ label { border-left: 1px solid #b3b3b3; }

.dropdown {
	width: 228px;

	border: 0px;
	border-left: 1px solid #b3b3b3;

	height: 22px;
	line-height: 22px;
	text-align: left;
	font-weight: bold;
	font-size: 13px;
	padding: 0px 5px;

	background-color: #f3f3f3;
}

.nutrition tbody .smart_choices::after {
	content: '';
	display: block;
	width: 224px;
}

.dropdown label span:first-child {
	height: 22px;
	width: 22px;
}

.dropdown label span:first-child::after
, .dropdown label span:first-child::before {
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
}

.dropdown label span:first-child::before {
	border-bottom: 5px solid #b1adac;
	margin: 5px auto 2px auto;
}

.dropdown label span:first-child::after {
	border-top: 5px solid #b1adac;
	margin: 2px auto 5px auto;
}

.dropdown label span:last-child { height: 22px; }

.dropdown_menu { border: 0px; }

.dropdown_menu li {
	height: 22px;
	line-height: 22px;
}

@media only screen and (max-width: 960px) {
	.dropdown { width: 116px; }
	.nutrition .smart_choices { width: 117px; }

	.nutrition tbody .smart_choices::after {
		content: '';
		display: block;
		width: 112px;
	}
}

@media only screen and (max-width: 890px) {
	.nutrition input[type=search] {
		display: block;
		margin: 0px;
		width: 100%;
	}

	.nutrition .heading { padding: 20px; }

	.content .nutrition h2 {
		margin: 0px;
		padding: 0px 0px 10px 0px;
	}

	.content .nutrition h2 span { display: none; }
}

@media only screen and (max-width: 820px) {
	.labels label {
		width: 38px;
		line-height: 38px;
	}

	.nutrition tbody td
	, .nutrition thead td
	, .nutrition th {
		width: 38px;
		min-width: 38px;
	}

	.nutrition thead tr > td:last-child div { width: 380px; }
	.nutrition .heading { margin-right: 382px; }
}

@media only screen and (max-width: 760px) {
	.labels label {
		width: 36px;
		line-height: 36px;
	}

	.nutrition tbody td
	, .nutrition thead td
	, .nutrition th {
		width: 36px;
		min-width: 36px;
	}

	.nutrition thead tr > td:last-child div { width: 360px; }
	.nutrition .heading { margin-right: 362px; }
}

@media only screen and (max-width: 730px) {
	.labels label {
		width: 34px;
		line-height: 34px;
	}

	.nutrition tbody td
	, .nutrition thead td
	, .nutrition th {
		width: 34px;
		min-width: 34px;
	}

	.nutrition thead tr > td:last-child div { width: 340px; }
	.nutrition .heading { margin-right: 342px; }
}

@media only screen and (max-width: 700px) {
	.labels label {
		width: 32px;
		line-height: 32px;
	}

	.nutrition tbody td
	, .nutrition thead td
	, .nutrition th {
		width: 32px;
		min-width: 32px;
	}

	.nutrition thead tr > td:last-child div { width: 320px; }
	.nutrition .heading { margin-right: 322px; }
}

@media only screen and (max-width: 680px) {
	.labels { display: none; }

	.nutrition thead td
	, .nutrition tbody td
	, .nutrition tbody th {
		display: none;
		height: 45px;
	}

	.nutrition th { font-size: 24px; }
	.nutrition tbody td { font-size: 16px; }

	.nutrition thead tr > td:first-child
	, .nutrition tbody tr > td:first-child
	, .nutrition tbody tr > th:first-child
	, .nutrition tbody tr > td.cal
	, .nutrition tbody tr > th.cal {
		display: table-cell;
	}

	.nutrition th.cal {
		padding: 0px 20px;
		font-size: 24px;
	}

	.nutrition tbody tr > td:first-child a { display: block; }

	.nutrition tbody tr > td:first-child
	, .nutrition tbody tr > td:first-child a {
		padding: 0px 25px;
		height: 45px;
		line-height: 45px;
	}

	.nutrition thead tr > td:first-child { border: 0px; }

	.nutrition thead tr > td:first-child::after {
		content: '';
		display: block;
		height: 1px;
		background-color: #b2b2b1;
		margin: 20px 0px 50px 0px;
	}

	main .title { margin-bottom: 20px; }

	.dropdown { border: 1px solid #b3b3b3; }

	.nutrition .heading { display: none; }

	.nutrition thead td > label {
		font-size: 15px;
		height: 40px;
		line-height: 40px;
		margin-right: 15px;
	}

	.dropdown {
		height: 40px;
		line-height: 38px;
		background-color: #fff;
		font-size: 20px;
		font-weight: normal;
		width: 200px;
	}

	.dropdown label { padding-left: 10px; }

	.dropdown label span:last-child { height: 40px; }

	.dropdown label span:first-child {
		height: 38px;
		width: 38px;
	}

	.dropdown label span:first-child::before { border-bottom: 8px solid #b1adac; }
	.dropdown label span:first-child::after { border-top: 8px solid #b1adac; }

	.dropdown label span:first-child::before
	, .dropdown label span:first-child::after {
		margin: 7px auto;
		border-left: 8px solid transparent;
		border-right: 8px solid transparent;
	}

	.dropdown_menu li {
		height: 40px;
		line-height: 40px;
		font-size: 20px;
		font-weight: 300;
	}
}

@media only print {
	#search { display: none; }
	.menu_table_header { display: none; }
	.nutrition .heading { height: 146px; }
	.labels label { height: 145px; }
	.table_wrapper {
		max-height: 100%;
		overflow: visible;
	}

	#wrapper_margin {
		margin-right: 0px !important;
		max-height: 100%;
		overflow: visible !important;
	}
}