/*--[ Imports ]--------------------------------------------------------------------------------*/
@import url("mixins.less"); 

/*--[ General Styles ]--------------------------------------------------------------------------------*/

#navigation {
	.cart-contents {
			line-height: 0.7;
		&:before {
			.iconbefore;
			content: "\f07a";
		}
	}
	.cart {
		margin-right: 45px;
		&.no-rss-link {
			margin-right: 0;
			li { border: 0; }
		}
	}
}

select, img {
	max-width: 100%;
}

.form-row {	
	label {
		display: block;
	}
	
	.input-text, select {
		width:100%;
		*width:90%;
		.borderbox();
	}
	
	input[type=checkbox] {
		float: left;
	}
}
	
header.title {
	overflow: hidden;
	zoom:1;
	
	h1, h2, h3, h4, h5 {
		float: left;
	}
	
	a.edit {
		float: right;
		font-size:12px !important;
		text-transform: uppercase;
	}
}

p.demo_store {
	position: fixed;
	top:0;
	left: 0;
	right:0;
	text-align: center;
	padding: 1em 0;
	background: #ebdd75;
	color: #827513;
	z-index: 999999;
}

/*--[ Product Categories ]--------------------------------------------------------------------------------*/

ul.products {
	margin:0 0 1.5em 0;
	padding:0;
	list-style: none;
	
	li.product {
		float:left;
		text-align: center;
		margin-bottom:1.5em;
		position: relative;
		list-style: none;
		width:48%;
		float: left;
		clear: left;
		
		&:nth-child(2n) {
			float: right;
			clear: none;
		}
		
		img {
			background: none;
			padding:0;
			border:0;
		}

		
		a {
			display: block;
			
			img {
				width:100%;
				height: auto;
				display: block;
				margin-bottom:.75em;
			}
		}
		
		.price {
			display: block;
		}
		
		a.button {
			display: inline-block;
			margin-top:.5em;
			.transition();
			position: relative;
			
			&.loading {
				.opacity(0.5);
				
				&:before {
					content:"";
					position: absolute;
					height:16px;
					width:16px;
					top:4px;
					right:-26px;
					text-indent: 0;
					background: url(../images/ajax-loader.gif) no-repeat; 
				}
			}
			
			&.added {
				&:before {
					content:"";
					position: absolute;
					height:16px;
					width:16px;
					top:4px;
					right:-26px;
					text-indent: 0;
					background: url(../images/icons/ico-tick.png) no-repeat;
				}
			}
		}
		
		del {
			.opacity(.5);
		}
		
		ins {
			text-decoration: none;
		}
	}
}

/*--[ Sale sticker ]--------------------------------------------------------------------------------*/

.onsale {
	padding:3px 8px;
	text-align: center;
	background: #C63F00;
	.border_radius(40px);
	color: white;
	font-weight: bold;
	position: absolute;
}

/*--[ Breadcrumb ]--------------------------------------------------------------------------------*/

.breadcrumb {
	padding:0 0 1em 0;
	margin-bottom:3em;
	border-bottom:1px dotted rgba(0,0,0,0.1);
	
	.breadcrumb-title {
		font-weight: bold;
	}
}

/*--[ Single Product ]--------------------------------------------------------------------------------*/

.woocommerce {
	.images {	
		margin-bottom:1.5em;	
		img {
			width: 100%;
			height: auto;
		}
		
		a {
			display: block;
			margin-bottom:.5em;
		}
		
		.thumbnails {
			overflow: hidden;
			zoom:1;
			
			a {
				float: left;
				width:30.75%;
				margin-right:3.8%;
				
				.last {
					margin-right:0;
				}
				
				.first {
					clear: left;
				}
			}
		}
	}
	
	.summary {
		margin-bottom:1.5em;
		h1.product_title  {
			margin-bottom: 1em;
		}
		form {
			margin-bottom:1.5em;
		}
		
		p {
			margin-bottom:1.5em;
		}
		
		p.price {
			font-weight: bold;
			border:1px solid rgba(0,0,0,0.1);
			border-left:0;
			border-right:0;
			padding:.5em 0;
			
			del {
				.opacity(0.5);
			}
			
			ins {
				text-decoration: none;
				padding-left:.5em;
			}
		}
		
		table.variations {
			border:0;
			
			tr {
				td {
					border:0;
				}
			}
		}
		
		table.group_table {
			.out-of-stock {
				display: block;
				color:#900;
			}
		}
	}
	
	table {
		th, td {
			vertical-align: top;
			padding:.25em;
			.borderbox();
		}
		
		tr {
			td:first-child {
				padding-left:0;
			}
		}
		
		&.shop_attributes {
			th, td {
				padding:.5em 1em;
				vertical-align: middle;
				
				p:last-child {
					margin-bottom:0 !important;
				}
			}
		}
	}
	
	.woocommerce_tabs {
		clear: both;
		padding:1em;
		background: #fff;
		border:1px solid #e6e6e6;
		margin-bottom:3em;
		
		ul.tabs {
			overflow: hidden;
			zoom:1;
			list-style: none;
			background: #e6e6e6;
			padding:.5em .5em 0 .5em;
			margin-bottom:1.5em;
			.border_radius(3px);
			
			li {
				float: left;
				
				a {
					display: inline-block;
					padding:.5em 1em;
					.border_radius_top(3px);
				}
			}
			
			li.active {
				a {
					background: #fff;
				}
			}
		}
		
		p {
			margin-bottom:1.5em;
		}
		
		#comments {
			border: 0;
			margin:0;
			padding:0;
		}
	}
	
	.product_meta {
		padding:.5em 0;
		border:1px solid rgba(0,0,0,0.1);
		border-left:0;
		border-right:0;
		margin-bottom:1.5em;
	}
	
	.social {
		text-align: right;
		
		iframe {
			float: left;
		}
	}
	
	#main {
		
		div.product {
			position: relative;
		}
		
		.onsale {
			top:6px;
			left:6px;
		}
	}
	
	#tab-description {
		ol, ul {
			margin: 0 0 15px 0;
			padding: 0 0 0 30px;
		}
		ol {
			li {
				list-style: decimal;
				list-style-type: decimal;
			}
		}
		ul {
			li {
				list-style: disc;
				list-style-type: disc;
			}
		}
	}
}



/*--[ Reviews ]--------------------------------------------------------------------------------*/

#reviews {
	h2 {
		margin-bottom:.75em;
	}
	
	.commentlist {
		margin-bottom:20px;
	}
	
	.comment.bypostauthor {
		background: none;
		border:0;
	}
	
	.comment.thread-even {
		border: 0;
		background: none;
	}
	
	.comment_container {
		padding:20px 0;
		border-bottom:1px solid #eee;
	}
	
	img.avatar {
		width: 3.85%;
		padding:.5%;
		background: #fff;
		.box_shadow(0,1px,2px,0,rgba(0,0,0,0.2));
		height: auto;
		float: left;
	}
	
	.comment-text {
		width: 91.35%;
		float: right;
		*width:86%;
		*margin-right:30px;
		
		p:last-child {
			margin-bottom:0;
		}
	}
}

#fancybox-outer {
	padding:20px;
	
	#respond {
		margin-top:0;
	}
}

/*--[ Messages and Alerts ]--------------------------------------------------------------------------------*/

.woocommerce_message, .woocommerce_error { 
	margin:10px 0 20px 0; 
	padding:9px 10px 9px 50px; 
	overflow: hidden; 
	zoom:1; 
	clear: left; 
}

.woocommerce_error { 
	border-top:1px solid #f0baa2; 
	border-bottom:1px solid #f0baa2; 
	background:#ffd9c8 url(../images/icons/ico-alert.png) no-repeat 20px 13px; 

}

ul.woocommerce_error {
	padding:8px 8px 8px 50px;
	list-style: none;
	
	li {
		list-style: none;
	}
}

.woocommerce_message { 
	border-top:1px solid #d4ebaf; 
	border-bottom:1px solid #d4ebaf; 
	background:#edfcd5 url(../images/icons/ico-tick.png) no-repeat 20px 13px; 
}

.woocommerce_message .button { 
	float: right; 
	margin:0; 
	margin-top:-3px; 
	margin-bottom:-3px; 
}


/*--[ Widgets ]--------------------------------------------------------------------------------*/

.widget {
	ul.product_list_widget {
		list-style: none;
		padding:0;
		
		li {
			clear: left;
			overflow: hidden;
			zoom:1;
			margin-bottom:.5em;
			
			a {
				display: block;
				padding-left:0;
			}
			
			img {
				float: right;
				margin:0 0 .5em .5em;
				padding:3px;
				background: #fff;
				.border_radius(3px);
				width:32px;
				height: auto;
				border:1px solid #e6e6e6 !important;
			}
			
			dl.variation {
				overflow: hidden;
				zoom:1;
				
				dt {
					font-weight: bold;
					float: left;
					clear: left;
					margin-right: .3em;
				}
				
				dd {
					float: left;
				}
			}
			
			.star-rating {
				float: none;
				margin-bottom:.25em;
			}
		}
	}
}

.widget_price_filter {

	.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { 
		border: 1px solid #d3d3d3; 
		background: #e6e6e6; 
		font-weight: normal; 
		color: #555555; 
	}
	
   .ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { 
		border: 1px solid #999999; 
		background: #dadada; 
		font-weight: normal; 
		color: #212121; 
}

   .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { 
		border: 1px solid #aaaaaa; 
		background: #ffffff; 
		font-weight: normal; 
		color: #212121; 
	}
   
   .ui-corner-all { 
		-moz-border-radius: 4px; 
		-webkit-border-radius: 4px; 
		border-radius: 4px; 
	}
   
   .ui-slider { 
		position: relative; 
		text-align: left; 
	}
	
   .ui-slider .ui-slider-handle { 
		position: absolute; 
		z-index: 2; 
		width: 1.2em; 
		height: 1.2em; 
		cursor: default; 
	}
	
   .ui-slider .ui-slider-range { 
		position: absolute; 
		z-index: 1; 
		font-size: .7em; 
		display: block; 
		border: 0; 
		background-position: 0 0; 
	}
   
   .price_slider_wrapper .ui-widget-content { 
		border: 1px solid #aaaaaa; 
		background: #ffffff; 
		color: #222222; 
	}
	
   .price_slider_wrapper .ui-widget-header { 
		border: 1px solid #aaaaaa; 
		background: #cccccc; 
		color: #222222; 
		font-weight: bold; 
	}
   
   .ui-slider-horizontal { 
		height: .8em; 
	}
	
   .ui-slider-horizontal .ui-slider-handle { 
		top: -.3em; 
		margin-left: -.6em; 
	}
	
   .ui-slider-horizontal .ui-slider-range { 
		top: 0; 
		height: 100%; 
	}
	
   .ui-slider-horizontal .ui-slider-range-min { 
		left: 0; 
	}
	
   .ui-slider-horizontal .ui-slider-range-max { 
		right: 0; 
	}
	
	.price_slider {
		border: 0 !important;
		background: rgba(0,0,0,0.1) !important;
		.border_radius(10px);
		margin:0 12px 1.5em;
	}
	
	.ui-widget-header {
		border:0 !important;
		background: rgba(0,0,0,0.1) !important;
	}
	
	.ui-slider-handle {
		.border_radius(20px);
		background: #fff !important;
		border:1px solid rgba(0,0,0,0.2) !important;
		cursor: pointer;
	}
	
	.price_slider_amount {
		text-align: right;
		line-height: 2.5em;
		
		.button {
			float: left;
		}
	}
}

.widget_layered_nav {
	ul {
		list-style: none;
		margin-left:0;
		padding-left:0;
		
		li {
			overflow: hidden;
			zoom:1;
			
			a {
				float: left;
				padding-left:0;
			}
			
			.count {
				float: right;
				line-height: 22px;
				background: rgba(0,0,0,0.025);
				padding:0 8px;
				.border_radius(10px);
				font-weight: bold;
			}
		}
		
		li.chosen {
			a {
				padding-left: 18px;
				background:url(../images/icons/cross.png) left no-repeat;
			}
		}
	}
}

/*--[ Quantity incrementer ]--------------------------------------------------------------------------------*/

.quantity {
	overflow: hidden;
	zoom:1;
	width:96px;
	margin-bottom:.5em;
	/* Disable input[type=number] buttons until the world is ready */
	input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {
		display:none;
	}
	
	input.qty {
		width:20px;
		padding: 5px 10px;
		font-size: 14px !important;
		.border_radius(0);
		border:1px solid #e6e6e6;
		border-right:0;
		border-left:0;
		text-align: center;
		float: left;
		z-index: 10;
	}
	
	.plus, .minus {
		width:28px;
		text-align: center;
		padding:5px 0;
		font-size: 14px !important;
		border:1px solid #ccc;
		.vertical_gradient(#fff, #e6e6e6);
		.text_shadow(0,1px,0,rgba(255,255,255,0.2));
		.border_radius(0);
		float: left;
		z-index: 20;
		
		&:hover {
			.vertical_gradient(#fff,#f6f6f6);
		}
	}
	
	.plus {
		float: right;
		.border_radius_right(3px);
	}
	
	.minus {
		.border_radius_left(3px);
	}
}

/*--[ Buttons ]-------------------------------------------------------------------------------------*/

.button-alt { 
	font-family:Verdana, Geneva, Arial, sans-serif; 
	display: inline-block; 
	padding: 5px 10px 6px; 
	color: #fff !important; 
	text-decoration: none; 
	border:none; 
	position: relative; 
	cursor: pointer; 
	.border_radius(5px); 
	.vertical_gradient(#e4954a, #da7b21); 
	border:1px solid #da7b21;
	font-size:12px;
	.text_shadow(0,-1px,0,rgba(0,0,0,0.2));
	line-height: 1.1em;
	
	&:hover {
		.vertical_gradient(#ebaf76, #da7b21);
		text-decoration: none; 
	}
}
.button-alt:active { top: 1px; }

/*--[ Star ratings ]--------------------------------------------------------------------------------*/

.star-rating {
	float: right;
	width: 80px;
	height: 16px;
	background: url(../images/icons/star.png) repeat-x left 0;
	span {
		background: url(../images/icons/star.png) repeat-x left -32px;
		height: 0;
		padding-top: 16px;
		overflow: hidden;
		float: left;
	}
}

p.stars {
	overflow: hidden;
	zoom: 1;
	span {
		width: 80px;
		height: 16px;
		position: relative;
		float: left;
		background: url(../images/icons/star.png) repeat-x left 0;
		a {
			float: left;
			position: absolute;
			left: 0;
			top: 0;
			width: 16px;
			height: 0;
			padding-top: 16px;
			overflow: hidden;
		}
		a:hover, a:focus {
			background: url(../images/icons/star.png) repeat-x left -16px;
		}
		a.active {
			background: url(../images/icons/star.png) repeat-x left -32px;
		}
		a.star-1 { width: 16px; z-index: 10; }
		a.star-2 { width: 32px; z-index: 9; }
		a.star-3 { width: 48px; z-index: 8; }
		a.star-4 { width: 64px; z-index: 7; }
		a.star-5 { width: 80px; z-index: 6; }
	}
}

/* Sidebar / footer stars */

.widget .star-rating {
	width: 60px;
	height: 12px;
	background: url(../images/icons/star-small.png) repeat-x left 0;
	margin-top:2px;
}

.widget .star-rating span {
	background: url(../images/icons/star-small.png) repeat-x left -24px;
	padding-top: 12px;
}

.widget p.stars span {
	width: 60px;
	height: 12px;
	background: url(../images/icons/star-small.png) repeat-x left 0;
}

.widget p.stars span a {
	width: 12px;
	padding-top: 12px;
}

/*--[ Tables (should be in canvas really) ]--------------------------------------------------------------------------------*/

table {
	width:100%;
	margin-bottom:1.5em;
	border-collapse:separate;
	border-top:1px solid rgba(0,0,0,0.1);
	border-left:1px solid rgba(0,0,0,0.1);
	border-top:1px solid #eee\9; // IE8 and below
	border-left:1px solid #eee\9; // IE8 and below
	
	th, td {
		vertical-align: top;
		padding:.5em 1em;
		border-bottom:1px solid rgba(0,0,0,0.1);
		border-right:1px solid rgba(0,0,0,0.1);
		border-top:2px solid rgba(0,0,0,0.025);
		border-bottom:1px solid #eee\9; // IE8 and below
		border-right:1px solid #eee\9; // IE8 and below
		border-top:2px solid #f6f6f6\9; // IE8 and below
		text-align: left;
	}
	
	th {
		.vertical_gradient(rgba(0,0,0,0.0), rgba(0,0,0,0.05));
		.inset_box_shadow(0,0,0,1px,rgba(255,255,255,0.7));
		.text_shadow(0,1px,0,rgba(255,255,255,0.8));
	}
	
	tr:first-child {
		th, td {
			border-top:0;
		}
	}
	
	tbody {
		tr:first-child {
			th, td {
				border-bottom:1px solid rgba(0,0,0,0.1);
				border-top:2px solid rgba(0,0,0,0.025);
				border-bottom:1px solid #eee\9; // IE8 and below
				border-top:1px solid #f6f6f6\9; // IE8 and below
			}
		}
	}
	
	tbody:first-child {
		tr:first-child {
			th, td {
				border-top:0;
			}
		}
	}
}

table.cart {
	.product-remove, .product-thumbnail, .product-price {
		position: absolute;
		left:-999em;
	}
	
	.actions {
		text-align: right;
		
		.coupon {
			float: left;
		}
	}
	
	img {
		padding:3px !important;
		.border_radius(3px);
	}
}

table.my_account_orders {
	font-size:0.8751em;
}

.cart_totals {
	select {
		width:100%;
	}
}

/*--[ The cart ]--------------------------------------------------------------------------------*/

table.cart {
	img {
		width:32px;
		height: auto;
	}
	td.actions {
		
		
		.coupon {
			text-align: left;
			margin-bottom:0;
			
			label {
				display: none;
			}
			#shareyourcart_button {
				float: left;
			}
		}
		
		.button, .checkout-button, .input-text {
			width:100%;
			display: block;
			.borderbox();
			margin-bottom:.5em !important;
			text-align: center;
		}
		
		.checkout-button {
			margin-bottom:0 !important;
		}
	}
}

.cart-collaterals {
	overflow: hidden;
	zoom:1;
	
	.shipping_calculator {
		clear: right;
	}
	
	.cross-sells {
		float: left;
		
		ul.products {
			li {
				width: 48%;
			}
		}
	}
}

/*--[ Product Ordering ]--------------------------------------------------------------------------------*/

.woocommerce_result_count,
.woocommerce_ordering {
	width:50%;
	float: left;
	margin-bottom:1.618em;
}
.woocommerce_ordering {
	text-align: right;
}

/*--[ The Checkout ]--------------------------------------------------------------------------------*/

#shiptobilling {
	float: right;
	
	input {
		float: left;
	}
}

.create-account {
	float: left;
}

.payment_methods {
	margin:0 0 1.5em 0 !important;
	padding:0 !important;
	list-style: none !important;
	
	li {
		list-style: none !important;
		border-bottom:1px solid rgba(0,0,0,0.05);
		padding:.5em 0;
		
		img {
			float: right;
			padding: 0 !important;
			border:none !important;
		}
	}
}

.payment_box {
	fieldset {
		margin-bottom:0;
	}
	
	.form-row {
		.woocommerce-select {
			width:30.75%; float: left; margin-right:3.8%;
		}
	}
}


.payment_methods + .form-row {
	width:100%;
	
	#place_order {
		float: right;
	}
	
	label {
		display: inline;
	}
	
	input {
		float: left;
	}
}

.required {
	color:red;
}

/*--[ User Account ]--------------------------------------------------------------------------------*/

.woocommerce-account {
	.addresses {
		address {
			clear: both;
		}
	}
}


/* Desktop Styles */
@media only screen and (min-width: 768px) {
	.col2-set {
		.clearfix();
		clear: both;
		
		.col-1 {
			width:49%;
			float: left;
		}
		
		.col-2 {
			width:49%;
			float: right;
		}
	}
	
	.form-row {
		width:49%;
		float: left;
		
		label {
			display: block;
		}
		
		.input-text, select {
			width:100%;
			*width:90%;
			.borderbox();
		}
		
		input[type=checkbox] {
			float: left;
		}
		
		&.notes {
			width:100%;
			
			textarea {
				width:100%;
				*width:90%;
			}
		}
	}
		
	.form-row-first {
		clear: left;
	}
	
	.form-row-last {
		float: right;
	}
	
	.form-row-wide {
		float: left;
		width:100%;
		clear: both;
	}
	
	.cart-collaterals {
	
		.cart_totals, .shipping_calculator, .cross-sells {
			width:48%;
			float: right;
		}
		
	}
	
	.woocommerce.one-col {
		.related, .upsells {
			width:48%;
		}
		
		.related {
			float: left;
		}
		
		.upsells {
			float: right;
			
			ul {
				float: left;
				width:100%;
			}
		}
	}
	
	.woocommerce {
		.images {
			width:48%;
			margin-right:3.8%;
			float: left;			
		}
		
		.summary {
			width:48%;
			float: right;
			margin-bottom:1.5em;
		}
	}
	
	ul.products {
		li.product {
			clear: none;
			width:30.75%;
			margin-right:3.8%;
			
			&:nth-child(2n) {
				float: left;
			}
			
			&.first {
				clear: left;
			}
			
			&.last {
				margin-right:0;
			}
		}
	}
	
	table.cart {
		.product-remove, .product-thumbnail, .product-price {
			position: static;
		}
		td.actions {
			text-align: right;
			
			.coupon {
				width:50%;
				float: left;
			}
			
			.input-text, .button, .checkout-button {
				width:auto;
				display: inline-block;
				margin-bottom:0 !important;
			}
		}
	}
}