/**
 * Forms
 */
form {
	margin-bottom: ms(3);
}

button,
input,
select,
textarea {
	font-size: 100%; /* Corrects font size not being inherited in all browsers */
	margin: 0; /* Addresses margins set differently in IE6/7, F3/4, S5, Chrome */
	vertical-align: baseline; /* Improves appearance and consistency in all browsers */
	*vertical-align: middle; /* Improves appearance and consistency in all browsers */
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.added_to_cart {
	border: 0;
	background: none;
	// background-color: $primary_color;
	// border-color: $primary_color;
	color: #fff;
	cursor: pointer; /* Improves usability and consistency of cursor style between image-type 'input' and others */
	padding: ms(-2) ms(2);
	text-decoration: none;
	font-weight: 400;
	text-shadow: none;
	display: inline-block;
	outline: none;
	-webkit-appearance: none;
	-webkit-font-smoothing: antialiased;
	border-radius: 3px;

	&.cta,
	&.alt {
		background-color: $color_links;
		border-color: $color_links;

		&:hover {
			background-color: $color_links;
		}
	}

	&:hover {
		color: #fff;
	}

	&.loading {
		opacity: 0.5;
	}

	&.small {
		padding: ms(-3) ms(-1);
		font-size: ms(-1);
	}

	&.disabled,
	&:disabled {
		opacity: 0.5 !important;
		cursor: not-allowed;

		&:hover {
			opacity: 0.5 !important;
		}
	}
}

input[type="checkbox"],
input[type="radio"] {
	padding: 0; /* Addresses excess padding in IE8/9 */
}

input[type="search"]::-webkit-search-decoration { /* Corrects inner padding displayed oddly in S5, Chrome on OSX */
	-webkit-appearance: none;
}

input[type="search"] {
	box-sizing: border-box; // Overrules normalize.css.
}

button::-moz-focus-inner,
input::-moz-focus-inner { /* Corrects inner padding and border displayed oddly in FF3/4 www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ */
	border: 0;
	padding: 0;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea,
.input-text {
	padding: 9px;
	background-color: #fff;
	color: #444;
	outline: none;
	border: 0;
	-webkit-appearance: none;
	border-radius: 3px;
	box-sizing: border-box;
	font-weight: normal;
	font-size: 1em;
	border: 1px solid #ebebeb;

	@include form-control-focus();
}

textarea {
	overflow: auto; /* Removes default vertical scrollbar in IE6/7/8/9 */
	padding-left: ms(-1);
	vertical-align: top; /* Improves readability and alignment in all browsers */
	width: 100%;
}

label {
	font-weight: 500;
}

label.inline {
	input {
		width: auto;
	}
}

fieldset {
	padding: 0;
	border: 0;
	margin-bottom: ms(3);

	legend {
		font-weight: 500;
	}
}

[placeholder]:focus::-webkit-input-placeholder {
	-webkit-transition: opacity 0.5s 0.5s ease;
	-moz-transition: opacity 0.5s 0.5s ease;
	transition: opacity 0.5s 0.5s ease;
	opacity: 0;
}

select {
	@include make-custom-select;
}
