html, body {
    height:100%;
    width:100%;
}

body {
    font-family: 'PT Sans', sans-serif;
    background:#2c3e50;
    display:table;
    color:#FFF;
}

#wrapper {
    display:table-cell;
    vertical-align: middle;
    height:100%;
    text-align: center;
}

#form {
    display:inline-block;
}

#form .field {
    height:35px;
    line-height:35px;
}

#form label {
    display:inline-block;
    min-width:80px;
    text-align: left;
    height:35px;
    line-height:35px;
    color:#34495e;
}

#form form {
    background:#FFF;
    padding:20px 40px;
    border-radius: 5px;
    box-shadow: 0 3px 8px #111;
}

form input[type=text],
form input[type=password]{
    padding: 4px;
    border: solid 1px #7f8c8d;
    box-shadow: inset 0 1px 2px #DDD;
    border-radius: 4px;
	width:200px;
	transition: border 0.6s, box-shadow 0.6s;
	box-sizing: border-box;
    background-color: #FFF;
    min-height: 28px;
    color:#5a6263;
}

form input[type=text]:focus,
form input[type=password]:focus {
	border: solid 1px #3498db;
	box-shadow:
		inset 0 1px 2px #DDD,
		0 0 5px #3498db;
}

form input[type=text]:disabled,
form input[type=password]:disabled {
    background:#ecf0f1;
}

.buttons {
    margin-top:20px;
}

.buttons input {
	-moz-box-shadow:inset 0px 1px 0px 0px #78f0d8;
	-webkit-box-shadow:inset 0px 1px 0px 0px #78f0d8;
	box-shadow:inset 0px 1px 0px 0px #78f0d8;
	background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #1abc9c), color-stop(1, #16a084));
	background:-moz-linear-gradient(top, #1abc9c 5%, #16a084 100%);
	background:-webkit-linear-gradient(top, #1abc9c 5%, #16a084 100%);
	background:-o-linear-gradient(top, #1abc9c 5%, #16a084 100%);
	background:-ms-linear-gradient(top, #1abc9c 5%, #16a084 100%);
	background:linear-gradient(to bottom, #1abc9c 5%, #16a084 100%);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#1abc9c', endColorstr='#16a084',GradientType=0);
	background-color:#1abc9c;
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
	border-radius:4px;
	border:1px solid #318776;
	display:inline-block;
	cursor:pointer;
	color:#ffffff;
	font-size:16px;
	font-weight:bold;
	padding:10px 20px;
	text-decoration:none;
	text-shadow:0px 1px 0px #083d32;
}
.buttons input:hover {
	background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #16a084), color-stop(1, #1abc9c));
	background:-moz-linear-gradient(top, #16a084 5%, #1abc9c 100%);
	background:-webkit-linear-gradient(top, #16a084 5%, #1abc9c 100%);
	background:-o-linear-gradient(top, #16a084 5%, #1abc9c 100%);
	background:-ms-linear-gradient(top, #16a084 5%, #1abc9c 100%);
	background:linear-gradient(to bottom, #16a084 5%, #1abc9c 100%);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#16a084', endColorstr='#1abc9c',GradientType=0);
	background-color:#16a084;
}
.buttons input:active {
	position:relative;
	top:1px;
}
.buttons input:focus {
    outline: none;
}

#form .error {
    color: #c0392b;
    margin-bottom:20px;
}