/* ----- DIVS ----- */
div#progress {
   text-align: center;
	 padding: 8px;
	 margin-bottom: 16px;
}

/* ----- Form Elements ----- */
input.reg_text, input.reg_tiny_text, input.reg_initial, select.reg_select {
   padding: 3px;
	 border: 1px solid silver;
}

div#reg_wrapper input.reg_tiny_text {
   width: 100px;
}

div#reg_wrapper input.reg_text {
   width: 300px;
}

div#reg_wrapper input.reg_required, div#reg_wrapper select.reg_required {
   border-left: 2px solid red;
}

div#reg_wrapper input.reg_initial {
   width: 32px;
}

div#reg_wrapper input.invalid {
   background-color: #ffcccc;
}

div#reg_wrapper label {
   font-weight: bold;
	 font-size: 100%;
	 margin-right:1em;
}

div#reg_wrapper input.button {
   margin: 3px;
	 padding:3px;
}

div#reg_wrapper label.reg_cat {
   font-weight:normal;
}


/* ----- Tables ----- */

table#registration {
   border-collapse:collapse;
	 margin-bottom: 32px;
}

table#registration td {
	 padding: 3px;
}

table#registration td.spacer {
	 border-bottom: 1px solid silver;
}

table#registration tr.reg_table_subarea {
   font-weight: bold;
	 font-size: 140%;
}

table#registration tr.reg_table_subarea td{
   padding-bottom: 8px;
}

table.reg_cat {
   width:100%;
	 margin-bottom: 32px;
}

table.reg_cat th.fixed {
   width: 32px;
}
table.reg_cat tr.head {
	 border: 1px solid black;
}

table#invoice {
   background-color: #e1e1e1;
	 width: 75%;
   margin: 0 auto 16px auto;
}

table#invoice th.fixed {
   width: 8em;
}

