/*#order * {margin:0;padding:0;}*/

/* Override Rails specific styles
----------------------------------------------- */
#errorExplanation {
	width: 400px;
	border: 2px solid red;
	padding: 7px;
	padding-bottom: 12px;
	margin-bottom: 20px;
	background-color: #f0f0f0;
}

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

#errorExplanation p {
	color: #333;
	margin-bottom: 0;
	padding: 5px;
}

#errorExplanation ul li {
	list-style: square;
}

div.uploadStatus {
	margin: 5px;
}

div.progressBar {
	margin: 5px;
}

div.progressBar div.border {
	background-color: #fff;
	border: 1px solid grey;
	width: 100%;
}

div.progressBar div.background {
	background-color: #333;
	height: 18px;
	width: 0%;
}

.fieldWithErrors {
	padding: 0px;
	/*background-color: transparent;*/
	background: #fdc;
	display: inline;
}
.fieldWithErrors input[type="checkbox"] {
	background-color: #f00;
}


/* Layouts
----------------------------------------------- */
#order {
}

#order #middleContainer {
	width: 540px;
	margin: 20px 39px 20px 35px;
	background: none;
	border: none;
	border-style: none;
}

#order #middleContainer p, #order #middleContainer h1, #order #middleContainer ol, #order #middleContainer ul {
        padding: 0;
        margin: 0 0 20px 0;
}

.fl {
	float: left;
}
.flc {
	float: left;
	clear: both;
}

.fr {
	float: right;
}
.frc {
	float: right;
	clear: both;
}

.l {
	text-align: left;
}
.c {
	text-align: center;
}
.r {
	text-align: right;
}

pre {
	white-space: -moz-pre-wrap; /* Mozilla */
	white-space: -pre-wrap;     /* Opera 4-6 */
	white-space: -o-pre-wrap;   /* Opera 7 */
	white-space: pre-wrap;      /* CSS3 */
	word-wrap: break-word;      /* IE 5.5+ */
	font-size: 100%;
}


/* Common styles
----------------------------------------------- */
#order h2 {
	margin: 35px 0 20px 0;
	clear: both;
}

#order h3 {
	margin: 20px 0 10px 0;
	clear: both;
}

#order h2 {
	font-size: 16px;
}

#order h3 {
	font-weight: bold;
	font-size: 12px;
}

#order .errorMessages {
	color: #c00;
}

#order .fieldWithErrors input,
#order .fieldWithErrors textarea,
#order .fieldWithErrors select {
	/*background: #ffd9cc;*/
	background: #fdc;
}

#order .required {
	color: #b00;
	font-weight: bold;
}


/* Order Sheet
----------------------------------------------- */
.orderSheet {
	padding: 20px;
	margin: 0;
	background: #eee;
	width: 500px;
	margin-bottom: 1.0em;
}

.orderSheet .required {
	display: inline;
	padding-left: 0.3em;
	margin-right: -0.5em;
}

.orderSheet .note {
	font-size: 12px;
	display: inline;
}

.orderSheet .itemError {
	background: #FFCCCC;
}

table.orderSheet {
	width: 100%;
	margin: 0;
	padding: 15px;
	line-height: 1.4;
}

table.orderSheet th, .orderSheet td {
	margin: 0;
	padding: 0;
	vertical-align: top;
	font-size: 12px;
	font-weight: normal;
	border: none;
}

table.orderSheet td .text, td .listbox {
	width: 100%;
}

table.orderSheet .label, table.orderSheet .text {
	padding: 3px 12px 0 0;
}

table.orderSheet th.label {
	width: 120px;
}

.orderSheet .label {
	font-weight:normal;
	/*font-size: 12px;*/
}

.orderSheet .input {
	padding-bottom: 8px;
}

.orderSheet .checkbox,
.orderSheet .radiobutton
{
	line-height: 2.0;
}

.orderSheet .text {
	font-size: 12px;
}

.orderSheet dl {
	margin: 0;
}
.orderSheet dt {
	clear: both;
	float: left;
}
.orderSheet dd {
	float: left;
	margin-bottom: 0.4em;
}
.orderSheet dl.totalDue dt {
	width: 6em;
}

table.orderSheet td.required {
	width:20px;
}

.orderSheet #order_name {
	width: 150px;
}

.orderSheet #order_zip1, .orderSheet #order_zip1 {
	width: 50px;
}

.orderSheet #order_address1, .orderSheet #order_address2 {
	width: 99%;
}

.orderSheet #order_tel {
	width: 150px;
}

.orderSheet #order_email {
	width: 150px;
}

.orderSheet #order_memo {
	width: 99%;
}



/* Order Form
----------------------------------------------- */
#order form input, #order form textarea, #order form select {
	font-size: 13px;
}

#order input.text, #order select {
	background:#fff;
}

#order input.text_ro {
	background:#fafafa;
	border:0px;
	color:#333;
}

#order .imgbutton {
	vertical-align:middle;
}

#order .unit {
	white-space:nowrap;
	margin-right:.5em;
}

#order form select {
	margin:0;
}

#order form textarea {
	background:#fff;
	display:block;
	clear:left;
	margin-bottom: 0.3em;
}

#order form .error input.text, #order form .error input.text0, #order form .error textarea, #order form .error select {
	border-color:#c66 #FFB2B2 #FFB2B2 #c66;
}

#order input, textarea, select {
	font-size: 13px;
}

#order input.button, #order input.submit {
	padding: 2px 5px 2px 5px;
}

#order input.button {
	background: #aaa;
	color: #fff;
}

#order input.submit {
	background: #84BE40;
	color: #fff;
}

#order #thanx {
	background:#eee;
	padding: 12px 12px 12px 12px;
	line-height: 1.6em;
}

#order #thanx table {
	width: 100%;
	background-color: #eee;
}

#order #thanx th, #order #thanx td {
	padding:5px 5px 5px 5px;
	font-weight:normal;
	vertical-align: top;
}

#order #thanx th {
	width: 100px;
}



/* Shopping Cart
----------------------------------------------- */
#cart {
}

#cart th, #cart td {
	border: none;
}

#cart .items {
        margin: 0 0 15px 0;
	width: 100%;
}

#cart .items td, .items th {
	padding:5px 0 5px 5px;
	vertical-align: top;
	font-size: 14px;
}

#cart .items th {
	font-weight: normal;
	font-size: 12px;
}

#cart .items .product {
	width: 400px;
}

#cart .items .price {
	width: 115px;
}

#cart .items .qty {
	width: 65px;
}

#cart .items .separatorLine th, #cart .items .separatorLine td {
	border-top:1px dotted #ccc;
	height: 3px;
}

#cart input.quantity {
	width: 50px;
}

#cart input.recalc {
	width: 50px;
	font-size: 12px;
}


