﻿*:focus {outline: none;}

.theform h2
{
	margin:0;
	display: inline;
}
.required_notification
{
	color:#d45252; 
	margin:5px 0 0 0; 
	display:inline;
	float:right;
}

.theform label
{
	width:150px;
	margin-top: 3px;		
	padding:3px;
}

.theform input.subtext, .theform select, .theform textarea
{
	width:180px;	
}

.theform input
{
	height:16px;
	margin-top:2px; 	
	padding:5px 8px;
}

.theform select, .theform textarea
{	
	margin-top:2px; 	
	padding:5px 8px;
}

.theform input, .theform textarea, .theform select
{ 
	border:1px solid #aaa;
	box-shadow: 0px 0px 3px #ccc, 0 10px 15px #eee inset;
	border-radius:5px;	
	-moz-transition: padding .25s; 
	-webkit-transition: padding .25s; 
	-o-transition: padding .25s;
	transition: padding .25s;
}

.theform input:focus, .theform textarea:focus, .theform select:focus
{
	background: #fff; 
	border:1px solid #555; 
	box-shadow: 0 0 3px #aaa;
}

.theform input:required, .theform textarea:required {
	background: #fff url(images/red_asterisk.png) no-repeat 98% center;
}

.theform input:required:valid, .theform textarea:required:valid
{
	background: #fff url(images/valid.png) no-repeat 98% center;
	box-shadow: 0 0 5px #5cd053;
	border-color: #28921f;
}
.theform input:focus:invalid, .theform textarea:focus:invalid
{
	background: #fff url(images/invalid.png) no-repeat 98% center;
	box-shadow: 0 0 5px #d45252;
	border-color: #b03535
}

.theform input:focus + .form_hint {display: inline;}
.theform input:required:valid + .form_hint {background: #28921f;}
.theform input:required:valid + .form_hint::before {color:#28921f;}

.theform ul
{	
	margin-top:15px;
}

.theform li
{	
	margin-bottom:15px;
}
