@import "mixins";
@import "icons";

@primary: 			#999999; 									/* Primary colour for buttons (alt) */
@primarytext: 		desaturate(lighten(@primary,50%),18%);		/* Text on primary colour bg */

@secondary: 		desaturate(lighten(@primary,40%),18%);		/* Secondary buttons */
@secondarytext:	 	desaturate(darken(@secondary,60%),18%);		/* Text on secondary colour bg */

@highlight: 		spin( @primary, 150 ); 						/* Prices, In stock labels, sales flash */
@highlightext:		desaturate(lighten(@highlight,50%),18%);	/* Text on highlight colour bg */

@contentbg: 		#fff; 										/* Content BG - Tabs (active state) */
@subtext: 			#777; 										/* small, breadcrumbs etc */

.display-icon {
	display: inline-block;
	width: 16px;
	height: 16px;
	-webkit-font-smoothing: antialiased;
	font-size: 16px;
	font-family: "review-restaurant" !important;
	text-decoration: none;
	font-weight: normal;
	font-style: normal;
	vertical-align: top;
	font-size: 16px;
	margin: 0 2px 0 0;

	*overflow: auto;
	*zoom: 1;
	*display: inline;
}

/* =Global styles/layout
-------------------------------------------------------------- */
.review-restaurant-message, .review-restaurant-error, .review-restaurant-info {
	padding: 1em 1em 1em 3.5em;
	margin: 0 0 2em;
	position: relative;
	.border_radius(4px);
	.vertical_gradient( lighten( @secondary, 2 ), @secondary );
	color: @secondarytext;
	.text_shadow( 0, 1px, 0, lighten( @secondary, 4 ) );
	list-style:none outside;
	.clearfix;
	width: auto;
	-webkit-box-shadow:
		inset 0 -2px 6px rgba(0,0,0,0.05),
		inset 0 -2px 30px rgba(0,0,0,0.015),
		inset 0 1px 0 #fff,
		0 1px 2px rgba(0,0,0,0.3);
	box-shadow:
		inset 0 -2px 6px rgba(0,0,0,0.05),
		inset 0 -2px 30px rgba(0,0,0,0.015),
		inset 0 1px 0 #fff,
		0 1px 2px rgba(0,0,0,0.3);

	&:before {
		content: "";
		height: 1.5em;
		width: 1.5em;
		display:block;
		position:absolute;
		top: 0;
		left: 1em;
		font-family: sans-serif;
		font-size:1em;
		line-height: 1.5;
		text-align: center;
		color: #fff;
		text-shadow:0 1px 0 rgba(0,0,0,0.2);
		padding-top:1em;
		.border_radius_bottom(4px);
		.inset_box_shadow(0,-1px,0,0,rgba(0,0,0,0.1));
	}
	li {
		list-style:none outside;
		padding-left:0;
		margin-left:0;
	}
	&.review-restaurant-message {
		border-top:3px solid #8fae1b;
		&:before {
			background-color:#8fae1b;
			content: "\2713";
		}
	}
	&.review-restaurant-info {
		border-top:3px solid #1e85be;
		&:before {
			background-color:#1e85be;
			content: "i";
			font-family: Times, Georgia, serif;
			font-style: italic;
		}
	}
	&.review-restaurant-error {
		border-top:3px solid #b81c23;
		&:before {
			background-color:#b81c23;
			content: "\00d7";
			font-weight: 700;
		}
	}
}

.review-restaurant-form {
	fieldset {
		margin: 0 0 1em 0;
		padding: 0 0 1em 0;
		line-height: 2em;
		border: 0;
		border-bottom: 1px solid #eee;
		.clearfix;
		label {
			display: block;
			margin: 0;
			width: 29%;
			float: left;
			vertical-align: middle;
			small {
				opacity: .75;
				font-size: 0.83em;
			}
		}
		div.field {
			width: 70%;
			float: right;
			vertical-align: middle;
		}
		.wp-editor-container {
			border: 1px solid #ccc;
			-webkit-border-radius: 3px;
			-moz-border-radius: 3px;
			border-radius: 3px;
		}
		.account-sign-in {
			.button {
				margin-right: .5em;
				&:before {
					.display-icon;
					content: '\e808';
				}
			}
		}
		abbr.required {
			color: red;
			font-weight: bold;
			border: 0;
		}
		input.input-text, textarea, select {
			margin: 0;
			vertical-align: middle;
			width: 100%;
			-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
			-moz-box-sizing: border-box;    /* Firefox, other Gecko */
			box-sizing: border-box;         /* Opera/IE 8+ */
		}
		small.description {
			opacity: .75;
			font-size: 0.83em;
			margin: 1.2em 0 0 0;
			display: block;
			line-height: 1.2em;
		}
		.review-restaurant-uploaded-file {
			line-height: 64px;
			font-style: italic;
			margin: 0 0 1em 0;
			img {
				height: 64px;
				vertical-align: middle;
				margin: 0 1em 0 0;
			}
		}
	}
	.submit-restaurant {
		padding: 1em 0;
	}

}
div.restaurant_listings {
	margin-bottom: 1em;
	ul.restaurant_listings {
		margin: 0;
	}
}
ul.restaurant_listings {
	padding: 0;
	margin: 0;
	border-top: 1px solid #eee;

	&.loading {
		min-height: 96px;
		border-bottom: 1px solid #eee;
		background: url(../images/ajax-loader.gif) no-repeat center 32px;
	}
	li.restaurant_listing, li.no_restaurant_listings_found {
		list-style: none outside;
		padding: 0;
		margin: 0;
		border-bottom: 1px solid #eee;

		&.restaurant_position_filled {
			a {
				opacity: 0.25;
			}
		}
		&.no_restaurant_listings_found {
			padding: 1em;
			border-bottom: 1px solid #eee;
		}
		a {
			display: block;
			padding: 1em 1em 1em 2em;
			overflow: hidden;
			zoom: 1;
			position: relative;
			line-height: 3em;
			font-size: 1em;
			text-decoration: none;

			&:hover, &:focus {
				background-color: #fcfcfc;
			}
			img.restaurant_logo {
				width: 42px;
				height: 42px;
				position: absolute;
				left: 1em;
				float: left;
				margin-right: 1em;
				vertical-align: middle;
				box-shadow: none;
			}
			div.position, div.location, ul.meta {
				-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
				-moz-box-sizing: border-box;    /* Firefox, other Gecko */
				box-sizing: border-box;         /* Opera/IE 8+ */
			}
			div.position {
				float: left;
				width: 60%;
				padding: 0 0 0 42px;
				line-height: 1.5em;
				h3 {
					margin: 0;
					padding: 0;
					font-size: 1em;
					line-height: 1.5em;
				}
				.restaurant {
					color: #999;
					font-size: 0.75em;
					.tagline {
						margin-left: .5em;
					}
				}
			}
			div.location {
				float: left;
				text-align: left;
				width: 20%;
				padding: 0 0 0 1em;
				color: #999;
				font-size: 0.75em;
			}
			.meta {
				float: right;
				text-align: right;
				width: 20%;
				padding: 0 0 0 1em;
				margin: 0;
				line-height: 1.5em;
				color: #999;
				list-style: none outside;
				li {
					list-style: none outside;
					display: block;
					font-size: 0.75em;
					margin: 0;
				}
				.restaurant-type {
					font-weight: bold;
				}
			}
		}
		&.restaurant_position_featured {
			a {
				background: #fefee5;

				&:hover, &:focus {
					background-color: #fefed8;
				}
			}
		}
	}
}
.widget {
	ul.restaurant_listings {
		li.restaurant_listing {
			a {
				padding: 1em 0;
			}
			.position {
				float: none;
				width: auto;
				padding: 0;
			}
			ul.meta {
				float: none;
				width: auto;
				padding: 0;
				margin: 0;
				text-align: left;
				li {
					float: none;
					display: inline;
					padding: 0;
					margin: 0 .5em 0 0;
					font-weight: normal;

					&:after {
						padding: 0 0 0 .5em;
						content: "\2023";
					}
					&:last-child:after {
						content: '';
					}
				}
			}
		}
	}
}
.review-restaurant, .restaurant_listing, .restaurant-types {
	.restaurant-type {
		color: @others;
	}
	.restaurants-bars {
		color: @restaurants-bars;
	}
	.others {
		color: @others;
	}
	.coffee-tea {
		color: @coffee-tea;
	}
	.specialty-foods {
		color: @specialty-foods;
	}
	.street-foods {
		color: @street-foods;
	}
}
.single_restaurant_listing {
	.restaurant {
		position: relative;
		border: 1px solid #eee;
		padding: 1em 1em 1em 42px;
		margin: 0 0 2em;
		display: block;
		clear: both;
		min-height: 42px;

		img {
			width: 42px;
			height: 42px;
			position: absolute;
			left: 1em;
			float: left;
			vertical-align: middle;
			box-shadow: none;
		}
		.name {
			margin: 0;
			padding: 0 0 0 2em;
			a {
				float: right;
				margin-left: 1em;
			}
		}
		.tagline {
			display: block;
			margin: 0;
			padding: 0 0 0 2em;
			font-style: italic;
			color: #999;
		}
		.website:before {
			.display-icon;
			content: '\e809';
		}
		.restaurant_twitter:before {
			.display-icon;
			content: '\e80a';
		}
	}
	.meta {
		list-style: none outside;
		padding: 0;
		margin: 0 0 1.5em;
		overflow: hidden;
		zoom: 1;
		clear: both;
		li {
			margin: 0 1em 0 0;
			padding: .5em;
			float: left;
			line-height: 1em;
			color: #999;
		}
		.restaurant-type {
			color: #fff;
			background-color: @others;
		}
		.restaurants-bars {
			background-color: @restaurants-bars;
		}
		.others {
			background-color: @others;
		}
		.coffee-tea {
			background-color: @coffee-tea;
		}
		.specialty-foods {
			background-color: @specialty-foods;
		}
		.street-foods {
			background-color: @street-foods;
		}
		.position-filled {
			color: #b81c23;
		}
		.location:before {
			.display-icon;
			content: '\e81d';
		}
		.date-posted:before {
			.display-icon;
			content: '\e80f';
		}
		.position-filled:before {
			.display-icon;
			content: '\e80e';
		}
	}
	.application {
		overflow: hidden;
		zoom: 1;
		padding-left: 20px;
		margin: 0 0 1em;

		.application_button, .application_details {
			-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
			-moz-box-sizing: border-box;    /* Firefox, other Gecko */
			box-sizing: border-box;         /* Opera/IE 8+ */
		}

		.application_button {
			text-align: center;
			font-size: 1.2em;
			line-height: 1em;
			width: 33.3%;
			float: left;
			margin: 0 0 0 -20px;
			padding: 1/1.2em;
		}
		.application_details {
			float: right;
			width: 66.6%;
			border: 1px solid #eee;
			padding: .75em 1em 0;
			margin: 0;
			line-height: 1.5em;
			display: block;
			position: relative;

			p {
				margin: 0 0 .75em;
			}

			&:before {
				content: "";
				position: absolute;
				margin: 0 0 0 -10px;
				left: 0;
				top: 1em;
				width: 0;
				height: 0;
				border-top: 10px solid transparent;
				border-bottom: 10px solid transparent;
				border-right:10px solid #eee;
			}
			&:after {
				content: "";
				position: absolute;
				margin: 1px 0 0 -9px;
				top: 1em;
				left: 0;
				width: 0;
				height: 0;
				border-top: 9px solid transparent;
				border-bottom: 9px solid transparent;
				border-right: 9px solid #fff;
			}
		}
	}
}
.restaurant_filters {
	background: #eee;
	.clearfix;

	.search_restaurants {
		padding: 1em;
		.clearfix;
		div {
			width: 50%;
			-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
			-moz-box-sizing: border-box;    /* Firefox, other Gecko */
			box-sizing: border-box;         /* Opera/IE 8+ */

			label {
				display: none;
			}
			&.search_keywords, &.filter_first {
				float: left;
				padding-right: .5em;
			}
			&.search_location, &.filter_last {
				float: right;
				padding-left: .5em;
			}
			&.search_categories, &.filter_wide {
				padding-top: .5em;
				clear: both;
				width: 100%;
			}
			a {
				padding: .25em;
			}
			a.active {
				background: #ddd;
				text-decoration: none;
			}
		}
		input, select {
			-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
			-moz-box-sizing: border-box;    /* Firefox, other Gecko */
			box-sizing: border-box;         /* Opera/IE 8+ */
			width: 100%;
		}
	}
	.restaurant_types {
		list-style: none outside;
		margin: 0;
		padding: 0;
		font-size: 0.83em;
		background: #f9f9f9;
		border-top: 1px solid #e5e5e5;
		.clearfix;
		li {
			margin: 0;
			padding: .5em 1em;
			float: left;
			border-right: 1px solid #eee;

			&:last-child {
				border-right: 0;
			}
		}
	}

	.showing_restaurants {
		padding: .5em 1em;
		display: none;
		font-size: 0.83em;
		background: #f9f9f9;
		border-top: 1px solid #e5e5e5;

		a {
			float: right;
			padding-left: 10px;
		}
	}
}
.load_more_restaurants {
	text-align: center;
	display: block;
	padding: 1em 1em 1em 2em;
	border-bottom: 1px solid #eee;
	font-weight: bold;
	&.loading {
		background: url(../images/ajax-loader.gif) no-repeat center;
		strong {
			visibility: hidden;
		}
	}
	&:hover, &:focus {
		background-color: #fcfcfc;
	}
}
.restaurant_listing_preview {
	padding: 0 1em 1em;
	border: 5px solid #eee;
}
.restaurant_listing_preview_title, .entry-content .restaurant_listing_preview_title {
	padding: .5em 1em;
	vertical-align: middle;
	position: relative;
	background: #eee;
	h2 {
		margin: 0;
		clear: none;
	}
	.button {
		float: right;
		margin-left: .25em;
	}
}
.restaurant_summary_shortcode {
	border: 1px solid #ccc;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	text-align: center;
	position: relative;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1),inset 0 1px 0 rgba(255,255,255,0.4);
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */

	&.aligncenter {
		display: block;
		margin: 2em auto 2em;
	}

	&.alignleft {
		float: left;
		margin: 0 2em 2em 0;
	}

	&.alignright {
		float: right;
		margin: 0 0 2em 2em;
	}

	a {
		text-decoration: none;
		color: inherit;
	}

	img {
		margin: 0;
		padding: 0;
		display: block;
		width: 100%;
		-moz-border-radius: 0;
		-webkit-border-radius: 0;
		-moz-border-top-left-radius: 3px;
		-moz-border-top-right-radius: 3px;
		-webkit-border-top-left-radius: 3px;
		-webkit-border-top-right-radius: 3px;
		border-radius: 0;
		border-top-left-radius: 3px;
		border-top-right-radius: 3px;
		box-shadow: inset 0 1px 0 rgba(255,255,255,0.4);
	}

	.restaurant_summary_content {
		padding: 0 1em;
	}

	.meta {
		font-style: italic;
		color: #777;
	}

	.restaurant-type {
		-moz-border-radius: 1em;
		-webkit-border-radius: 1em;
		border-radius: 1em;
		color: #fff;
		text-shadow: 0 1px 0 rgba(255,255,255,0.5);
		box-shadow: 0 2px 4px rgba(0,0,0,0.1), inset 0 1px 0 rgba(255,255,255,0.4);
		position: absolute;
		top: 0;
		right: 0;
		padding: .5em;
		height: 1em;
		width: auto;
		min-width: 1em;
		font-size: 1em;
		text-align: center;
		vertical-align: middle;
		line-height: 1em;
		margin: -.5em -.5em 0 0;

		&.restaurants-bars {
			background-color: @restaurants-bars;
		}
		&.others {
			background-color: @others;
		}
		&.coffee-tea {
			background-color: @coffee-tea;
		}
		&.specialty-foods {
			background-color: @specialty-foods;
		}
		&.street-foods {
			background-color: @street-foods;
		}
	}
}

#review-restaurant-restaurant-dashboard {
	table {
		ul.restaurant-dashboard-actions {
			margin: 0;
			padding:0;
			visibility: hidden;
			font-size: 0.92em;
			li {
				float: none;
				display: inline;
				padding: 0;
				margin: 0 .5em 0 0;
				font-weight: normal;
				list-style: none outside;

				&:after {
					padding: 0 0 0 .5em;
					content: "\2023";
				}
				&:last-child:after {
					content: '';
				}
				.restaurant-dashboard-action-delete {
					color: red;
				}
			}
		}
		tr:hover, tr:focus {
			ul.restaurant-dashboard-actions {
				visibility: visible;
			}
		}
		td, th {
			padding: .5em 1em .5em 0;
		}
		.restaurant_title small {
			color: #999;
		}
		.filled, .expires, .applications {
			text-align: center;
		}
	}
}

nav.review-restaurant-pagination, #content nav.review-restaurant-pagination {
	text-align: center;
	ul {
		display: inline-block;
		white-space: nowrap;
		padding:0;
		clear: both;
		border: 1px solid #eee;
		border-right: 0;
		margin: 1px;
		li {
			border-right: 1px solid #eee;
			padding: 0;
			margin: 0;
			float: left;
			display: inline;
			overflow: hidden;
			a, span {
				margin: 0;
				text-decoration: none;
				padding: 0;
				line-height: 1em;
				font-size: 1em;
				font-weight: normal;
				padding: .5em;
				min-width: 1em;
				display: block;
			}
			span.current, a:hover, a:focus {
				background: #eee;
				color: darken( #eee, 40 );
			}
		}
	}
}