/* LESS VARIABLES */
.border-radius (@radius: 5px) {
	border-radius: @radius;
  	-webkit-border-radius: @radius;
  	-moz-border-radius: @radius;
}
.box-sizing (@type: border-box) {
	-webkit-box-sizing: @type;
	-moz-box-sizing:    @type;
	box-sizing:         @type;
}

* {
	padding: 0;
	margin: 0;
}

td {
	vertical-align: top;
}

.clearFix {
	clear: both;
}

@color: #3872fb;

body {
	background: #fff;
	color: @color;
	.fPR;
	font-size: 14px;
	line-height: 17px;
}

#wrapper {
	
}

input:focus {
	outline: none;
}

#start, #constructor, #snowball {
	&.show {
		display: block;
	}
	&.hide {
		display: none !important;
	}
}

.ajpg {
	position: absolute;
	width: 500px;
	height: 500px;
	z-index: 1;
}

.fPT {
	font-family: ProximaNovaT-Thin;
}
.fPR {
	font-family: ProximaNova-Regular;
}
.fPB {
	font-family: ProximaNova-Extrabld;
	font-weight: normal;
}

#start {
	display: none;
	position: absolute;
	width: 500px;
	height: 500px;
	top: 50%;
	left: 50%;
	margin: -250px 0 0 -250px;
	text-align: center;
	
	.container {
		position: relative;
		z-index: 2;
	}
	.caption {
		.fPB;
		font-size: 14px;
		text-align: center;
		padding: 20px 0 0 0;
	}
	h1 {
		.fPB;
		text-align: center;
		font-size: 42px;
		padding: 70px 0 0 0;
	}
	.text {
		.fPR;
		font-size: 14px;
		line-height: 17px;
		padding: 70px 30px 0 30px;
		text-align: center;
	}
	.button {
		display: inline-block;
		border: 6px solid @color;
		border-radius: 12px;
		.fPB;
		font-size: 20px;
		line-height: 48px;
		padding: 0 20px;
		cursor: pointer;
		margin: 70px 0 0 0;
		
		&:hover {
			background: @color;
			color: #fff;
		}
		&:active {
			position: relative;
			top: 1px;
		}
	}
}

#constructor {
	display: none;
	position: relative;
	width: 960px;
	margin: 50px auto;
	
	.controls {
		float: right;
		width: 410px;
		
		.caption {
			.fPB;
			font-size: 20px;
			padding: 30px 0 20px 0;
		}
		.caption:first-child {
			padding-top: 10px;
		}
		.tags {
			.tag {
				display: inline-block;
				border: 1px solid @color;
				border-radius: 12px;
				.fPR;
				font-size: 14px;
				line-height: 32px;
				padding: 0 14px;
				margin-right: 7px;
				cursor: pointer;
				
				&:hover {
					background: fadeout(@color, 90%);
				}
				&.active {
					background: @color;
					color: #fff;
				}
				&:active {
					position: relative;
					top: 1px;
				}
			}
			.item {
				.fPR;
				font-size: 14px;
				line-height: 21px;
				cursor: pointer;
				
				&:hover {
					color: fadeout(@color, 30%);
				}
				&.active {
					color: #f25339;
				}
			}
		}
		.label {
			.fPR;
			font-size: 14px;
			line-height: 21px;
			margin-top: 20px;
			display: inline-block;
			vertical-align: text-top;
		}
		.message {
			width: 100%;
			.box-sizing;
			.fPR;
			font-size: 14px;
			line-height: 21px;
			color: #151515;
			border: none;
			border-bottom: 1px solid @color;
			vertical-align: text-top;
		}
		.button.make {
			display: inline-block;
			border-radius: 12px;
			background: @color;
			.fPR;
			font-size: 14px;
			line-height: 35px;
			padding: 0 20px;
			margin-top: 20px;
			color: #fff;
			cursor: pointer;
			
			&:hover {
				background: fadeout(@color, 10%);
			}
			&:active {
				position: relative;
				top: 1px;
			}
		}
		.share {
			display: none;
			margin-top: 10px;
			.label {
				margin-top: 7px;
			}
			.link {
				width: 220px;
				padding: 10px 0;
				.fPR;
				font-size: 14px;
				line-height: 17px;
				color: @color;
				border: 1px solid @color;
				text-align: center;
				border-radius: 12px;
				float: right;
			}
		}
		
		
	}
}

#snowball {
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	background: #0072bc;
	
	>.ajpg {
		top: 50%;
		left: 50%;
		margin: -380px 0 0 -250px;
	}
	.message {
		display: none;
		position: absolute;
		width: 960px;
		top: 50%;
		left: 50%;
		margin: -200px 0 0 -480px;
		color: #000;
		.fPB;
		text-align: center;
		font-size: 65px;
		line-height: 86px;
		z-index: 2;
	}
	.description {
		position: fixed;
		bottom: -200px;
		left: 0px;
		width: 100%;
		height: 200px;
		background: #fff;
		z-index: 1;
		
		.container {
			position: relative;
			width: 960px;
			margin: 18px auto;
		}
		p {
			.fPB;
			font-size: 35px;
			line-height: 42px;
			padding: 30px 0 0 220px;
			color: #000;
		}
		.button {
			float: right;
			display: inline-block;
			border-radius: 12px;
			background: @color;
			.fPR;
			font-size: 21px;
			line-height: 88px;
			padding: 0 30px;
			margin-top: 40px;
			color: #fff;
			cursor: pointer;
			
			&:hover {
				background: fadeout(@color, 10%);
			}
			&:active {
				position: relative;
				top: 1px;
			}
		}
		.ajpg {
			width: 200px;
			height: 200px;
			left: 0px;
			top: -18px;
		}
	}
}

.social-share {
	margin-top:  50px;
	margin-left: 20px;
	position: fixed;
	z-index: 1000;
	
	&.pie {
		display: block;
	}
}