/* HTML Elements */

html, body {
  height: 100%;
}

body {
  margin: 10px;
  background: #F5F5F5;
  font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 14px;
	color: #666;
}

a {
	color: #000;
}

p {
	margin: 15px 0;
}

strong {
	font-weight: bold;
}

h4 {
	font-family: verdana, arial;
	font-size: 16px;	
	margin: 15px 0;
}

/* Flash Upgrade Warning */

p.top {
  margin: 180px 20px;
  text-align: center;
}

p.top img {
  margin-top: 20px;
}

/* HR */
hr {
	margin: 0 auto;
	width: 219px;
	height: 20px;
	border: 0;
}

.table {
	width: 100px;
}


/* Min-width Wrapper */

#wrapper {
  margin: 0 auto;
  width: 980px;
  border: 1px #ccc solid;  
	background: #fff; 
	padding: 5px 15px;

  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}

/* Nav */

#nav {
	padding: 20px 0;
	border-bottom: 1px #ccc solid;
}

#nav ul {
  overflow: hidden;
}

#nav ul li {
  float: left;
  margin-left: 8px;
  padding-right: 8px;
  border-right: 1px solid #ccc;
}

#nav ul li.last {
  border: 0;
}

/* Headings */

.heading {
	font-size: 18px;
	margin: 20px 0;
}

/* Standard Form Elements */

input[type="text"],
input[type="password"] {
  width: 400px;
  padding: 3px;
}

input[type="file"] {
  padding: 3px;
}

input[type="submit"] {
  padding: 3px 8px;
  margin: 5px 0;
}

textarea {
  width: 800px;
  padding: 3px;
  height: 120px;
  margin-top: 5px;
}

label {
  display:inline-block;
  width: 180px;
  vertical-align: top;
  line-height: 22px;
}

.multi-select {
  width: 407px;
  height: 100px;
  padding: 3px;
  border: 1px solid #cccccc;
}

.wide-select {
  width: 407px;
  padding: 3px;
  border: 1px solid #cccccc;
}

select {
  padding: 3px;
}

/* Card Forms */

#address_form td,
#credit_card_form td {
	padding: 5px;
}

.form-box {
	float: left;
	width: 50%;
}

/* Parents Page */

.parent-page {
  margin: 0 10px;
}

#child-accounts li {
  border: 1px solid #CCC;
  padding: 10px;
  margin-bottom: 10px;
}

/* Styled Buttons */

.small-input,
.large-input {
	margin: 20px 0 10px 0;
}

.small-input input {	
	width: 150px;
	height: 35px;	
	border: 0;
}

.large-input input {	
	width: 200px;
	height: 35px;	
	border: 0;
}

.large-input a {
	display: block;
	text-align: center;	
	width: 200px;
	height: 31px;	
	border: 0;
	text-decoration: none;
	padding-top: 15px;	
}

.small-input a {
	display: block;
	text-align: center;
	width: 150px;
	height: 31px;	
	border: 0;
	text-decoration: none;
	padding-top: 15px;	
}

/* Error Messages */

#notice, #error, #message {
  padding: 8px;
  margin-top: 15px;
  border: 1px solid #CCC;
  background: #F7F7F7;
  color: #384D81;
  
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}

#error {
  background: #EFB3B3;
}

.field_with_errors input,
.field_with_errors textarea,
.field_with_errors select {
  border: 1px solid #CC0000;
  color : #CC0000;	
}

.field_with_errors {
  padding: 0;
  margin: 0;
  display: inline;
}

#errorExplanation {
  margin: 20px 0;
  border: 1px solid #c00;
  padding: 7px;
  padding-bottom: 10px;
  margin-bottom: 20px;
  background-color: #f0f0f0;
  
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;  
}

#errorExplanation h2 {
  text-align: left;
  font-weight: bold;
  padding: 5px;
  font-size: 12px;
  margin: -7px;
  margin-bottom: 12px;
  background-color: #c00;
  color: #fff;
}

#errorExplanation p {
  display: none;
}

#errorExplanation ul li {
  font-size: 12px;
  list-style: none;
  margin: 8px 10px;
}

/* Clearer */

.clear {
	clear:both;
	padding: 0;
	margin: 0;
}

/* Launch Page - The below is required for 100% height flash in firefox 3.5 */

#flashwrapper {
  height: 100%;
}