/* ----------------------------------------------------------------------------


WordPress-style Buttons
=======================
Create a button by adding the `.button` class to an element. For backwards
compatibility, we support several other classes (such as `.button-secondary`),
but these will *not* work with the stackable classes described below.

Button Styles
-------------
To display a primary button style, add the `.button-primary` class to a button.

Button Sizes
------------
Adjust a button's size by adding the `.button-large` or `.button-small` class.

Button States
-------------
Lock the state of a button by adding the name of the pseudoclass as
an actual class (e.g. `.hover` for `:hover`).


TABLE OF CONTENTS:
------------------
 1.0 - Button Layouts
 2.0 - Default Button Style
 3.0 - Primary Button Style
 4.0 - Button Groups
 5.0 - Icon Buttons

---------------------------------------------------------------------------- */

/* ----------------------------------------------------------------------------
  1.0 - Button Layouts
---------------------------------------------------------------------------- */

.button,
.button-primary,
.button-secondary {
	display: inline-block;
	text-decoration: none;
	font-size: 12px;
	line-height: 23px;
	height: 24px;
	margin: 0;
	padding: 0 10px 1px;
	cursor: pointer;
	border-width: 1px;
	border-style: solid;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	white-space: nowrap;
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
}

/* Remove the dotted border on :focus and the extra padding in Firefox */
button::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner {
	border-width: 1px 0;
	border-style: solid none;
	border-color: transparent;
	padding: 0;
}

.button.button-large,
.button-group.button-large .button {
	height: 30px;
    line-height: 28px;
    padding: 0 12px 2px;
}

.button.button-small,
.button-group.button-small .button {
	height: 21px;
	line-height: 20px;
	padding: 0 8px 1px;
}

.button.button-hero,
.button-group.button-hero .button {
	font-size: 14px;
	height: 46px;
	line-height: 44px;
	padding: 0 36px;
}

.button:active {
	outline: none;
}

.button.hidden {
	display: none;
}

/* ----------------------------------------------------------------------------
  2.0 - Default Button Style
---------------------------------------------------------------------------- */

.button,
.button-secondary {
	background: #f3f3f3;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#fefefe), to(#f4f4f4));
	background-image: -webkit-linear-gradient(top, #fefefe, #f4f4f4);
	background-image:    -moz-linear-gradient(top, #fefefe, #f4f4f4);
	background-image:      -o-linear-gradient(top, #fefefe, #f4f4f4);
	background-image:   linear-gradient(to bottom, #fefefe, #f4f4f4);
	border-color: #bbb;
 	color: #333;
	text-shadow: 0 1px 0 #fff;
}

.button.hover,
.button:hover,
.button-secondary:hover,
.button.focus,
.button:focus,
.button-secondary:focus {
	background: #f3f3f3;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f3f3f3));
	background-image: -webkit-linear-gradient(top, #fff, #f3f3f3);
	background-image:    -moz-linear-gradient(top, #fff, #f3f3f3);
	background-image:     -ms-linear-gradient(top, #fff, #f3f3f3);
	background-image:      -o-linear-gradient(top, #fff, #f3f3f3);
	background-image:   linear-gradient(to bottom, #fff, #f3f3f3);
	border-color: #999;
	color: #222;
}

.button.focus,
.button:focus,
.button-secondary:focus {
	-webkit-box-shadow: 1px 1px 1px rgba(0,0,0,.2);
	box-shadow: 1px 1px 1px rgba(0,0,0,.2);
}

.button.active,
.button.active:hover,
.button.active:focus,
.button:active,
.button-secondary:active {
	background: #eee;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#fefefe));
	background-image: -webkit-linear-gradient(top, #f4f4f4, #fefefe);
	background-image:    -moz-linear-gradient(top, #f4f4f4, #fefefe);
	background-image:     -ms-linear-gradient(top, #f4f4f4, #fefefe);
	background-image:      -o-linear-gradient(top, #f4f4f4, #fefefe);
	background-image:   linear-gradient(to bottom, #f4f4f4, #fefefe);
	border-color: #999;
	color: #333;
	text-shadow: 0 -1px 0 #fff;
	-webkit-box-shadow: inset 0 2px 5px -3px rgba( 0, 0, 0, 0.5 );
 	box-shadow: inset 0 2px 5px -3px rgba( 0, 0, 0, 0.5 );
}

.button[disabled],
.button:disabled,
.button-secondary[disabled],
.button-secondary:disabled,
.button-disabled {
	color: #aaa !important;
	border-color: #ddd !important;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#f4f4f4)) !important;
	background-image: -webkit-linear-gradient(top, #f9f9f9, #f4f4f4) !important;
	background-image:    -moz-linear-gradient(top, #f9f9f9, #f4f4f4) !important;
	background-image:     -ms-linear-gradient(top, #f9f9f9, #f4f4f4) !important;
	background-image:      -o-linear-gradient(top, #f9f9f9, #f4f4f4) !important;
	background-image:   linear-gradient(to bottom, #f9f9f9, #f4f4f4) !important;
	-webkit-box-shadow: none !important;
	box-shadow:         none !important;
	text-shadow: 0 1px 0 #fff !important;
	cursor: default;
}

/* ----------------------------------------------------------------------------
  3.0 - Primary Button Style
---------------------------------------------------------------------------- */

.button-primary {
	background-color: #21759b;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#2a95c5), to(#21759b));
	background-image: -webkit-linear-gradient(top, #2a95c5, #21759b);
	background-image:    -moz-linear-gradient(top, #2a95c5, #21759b);
	background-image:     -ms-linear-gradient(top, #2a95c5, #21759b);
	background-image:      -o-linear-gradient(top, #2a95c5, #21759b);
	background-image:   linear-gradient(to bottom, #2a95c5, #21759b);
	border-color: #21759b;
	border-bottom-color: #1e6a8d;
	-webkit-box-shadow: inset 0 1px 0 rgba(120,200,230,0.5);
 	box-shadow: inset 0 1px 0 rgba(120,200,230,0.5);
 	color: #fff;
	text-decoration: none;
	text-shadow: 0 1px 0 rgba(0,0,0,0.1);
}

.button-primary.hover,
.button-primary:hover,
.button-primary.focus,
.button-primary:focus {
	background-color: #278ab7;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#2e9fd2), to(#21759b));
	background-image: -webkit-linear-gradient(top, #2e9fd2, #21759b);
	background-image:    -moz-linear-gradient(top, #2e9fd2, #21759b);
	background-image:     -ms-linear-gradient(top, #2e9fd2, #21759b);
	background-image:      -o-linear-gradient(top, #2e9fd2, #21759b);
	background-image:   linear-gradient(to bottom, #2e9fd2, #21759b);
	border-color: #1b607f;
	-webkit-box-shadow: inset 0 1px 0 rgba(120,200,230,0.6);
 	box-shadow: inset 0 1px 0 rgba(120,200,230,0.6);
	color: #fff;
	text-shadow: 0 -1px 0 rgba(0,0,0,0.3);
}

.button-primary.focus,
.button-primary:focus {
	border-color: #0e3950;
	-webkit-box-shadow: inset 0 1px 0 rgba(120,200,230,0.6), 1px 1px 2px rgba(0,0,0,0.4);
	box-shadow: inset 0 1px 0 rgba(120,200,230,0.6), 1px 1px 2px rgba(0,0,0,0.4);
}

.button-primary.active,
.button-primary.active:hover,
.button-primary.active:focus,
.button-primary:active {
	background: #1b607f;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#21759b), to(#278ab7));
	background-image: -webkit-linear-gradient(top, #21759b, #278ab7);
	background-image:    -moz-linear-gradient(top, #21759b, #278ab7);
	background-image:     -ms-linear-gradient(top, #21759b, #278ab7);
	background-image:      -o-linear-gradient(top, #21759b, #278ab7);
	background-image:   linear-gradient(to bottom, #21759b, #278ab7);
	border-color: #124560 #2382ae #2382ae #2382ae;
	color: rgba(255,255,255,0.95);
	-webkit-box-shadow: inset 0 1px 0 rgba(0,0,0,0.1);
 	box-shadow: inset 0 1px 0 rgba(0,0,0,0.1);
	text-shadow: 0 1px 0 rgba(0,0,0,0.1);
}

.button-primary[disabled],
.button-primary:disabled,
.button-primary-disabled {
	color: #94cde7 !important;
	background: #298cba !important;
	border-color: #1b607f !important;
	-webkit-box-shadow: none !important;
	box-shadow:         none !important;
	text-shadow: 0 -1px 0 rgba(0,0,0,0.1) !important;
	cursor: default;
}

/* ----------------------------------------------------------------------------
  4.0 - Button Groups
---------------------------------------------------------------------------- */

.button-group {
	position: relative;
	display: inline-block;
	white-space: nowrap;
	font-size: 0;
	vertical-align: middle;
}

.button-group > .button {
	display: inline-block;
	border-radius: 0;
	margin-right: -1px;
	z-index: 10;
}

.button-group > .button-primary {
	z-index: 100;
}

.button-group > .button:hover {
	z-index: 20;
}

.button-group > .button:first-child {
	border-radius: 3px 0 0 3px;
}

.button-group > .button:last-child {
	border-radius: 0 3px 3px 0;
}

/* ----------------------------------------------------------------------------
  5.0 - Icon Buttons

  A button with a class of .down-arrow cannot have any input, and cannot have
  any other content.
---------------------------------------------------------------------------- */
.button.down-arrow:after {
	content: '\25BE';
	display: inline-block;
	font-size: 16px;
	opacity: 0.9;
	margin: 0 -0.25em;
	text-align: center;
	vertical-align: middle;
}

.button .dropdown {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	margin: 5px 0;
	padding: 0.8em 1em;
	border-radius: 3px;

	background: #f5f5f5;
	color: #333;
	text-shadow: none;
	box-shadow:
		0 0 0 1px rgba( 0, 0, 0, 0.3 ),
		1px 1px 2px rgba( 0, 0, 0, 0.1 );
}

.button.active .dropdown {
	display: block;
}

.dropdown-flip-x .dropdown {
	left: auto;
	right: 0;
}

.dropdown-flip-y .dropdown {
	top: auto;
	bottom: 100%;
}