/*
 * Set the default fonts (in order of font preference)
 */
body {
    font-family:            Verdana, Arial, Helvetica, Sans-Serif;
}

/* -------------------
	Trolley
 * ------------------- */
.trolley_parcel_header {
	background-color: #FFCC00;
	font-size: 9pt;
	color: #000;
}

tr.trolley_parcel_header > td {
	background: url('images/trolley/parcel.gif') no-repeat 2px 2px;
	padding-left: 48px;
	min-height: 28px;
	border:1px solid #999;
}

.trolley_parcel_subheader {
	background-color: #EEEEC0;
	color: #000000;
}

.trolley_shipping_total {
	border-right:1px solid #999;
	border-top:1px solid #999;
	background-color: #FFFFFF;
}

.trolley_total {
	border:1px solid #999;
	border-left:0;
	background-color: #31C400;
	color: #FFFFFF;
}

.trolley_gst {
	border:1px solid #999;
	border-left:0;
}

.trolley_parcel_header .avail_name {
	font-weight: bold;
}

.trolley_parcel_header .parcel_cnt {
	font-weight: bold;
}

.trolley_confirm {
	font-weight: bold;
	border: 1px solid red;
	background-color: #FEE;
	padding: 4px;
	text-align: left;
}

/* -------------------
	Checkout
 * ------------------- */
.checkout_table_heading {
	background-color: #FFCC66;
}

.checkout_table_body {
	background-color: #FFF;
}

.checkout_table2_body {
	background-color: #FFEBFF;
}

.checkout_sidetable_body {
	background-color: #CBDCED;
}

.checkout_table_confirm_body {
	background-color: #FFFFCC;
}

.checkout_content ul.credit-conditions {
	margin-left: 0px;
	padding-left: 20px;
}

/* -------------------
	Login
 * ------------------- */
.login_personal_details {
	border-top: 1px solid #ACACAC;
	border-bottom: 1px solid #ACACAC;
}

.login_box {
	margin: 0 auto;
}
.login_form {
	width: 100%;
	margin: 0 auto;
}

.hs_header {
	border-bottom:1px solid #999;
	background-repeat: no-repeat;
	background-position: 4px 4px;
	padding: 4px;
	margin-bottom: 8px;
}

.hs_header .hs_header_subheader {
	display: inline-block;
	float: right;
}

.hs_header h3 {
	margin: 0;
}

.hs_header h5 {
	margin: 0;
	font-weight: normal;
}

.hs_header_login {
	background-image: url('/login/images/lock.gif');
	padding: 16px 0 0 36px;
	height: 34px;
}

/* -------------------
	Reviews
 * ------------------- */
.review_titles {
	font-size:10pt;
	font-weight:bold;
	color:maroon;
	border-bottom:1px maroon solid;
}
.review_content {
	font-size:10pt;
	color:#666;
	line-height:1.2em;
	padding:5px 0 5px 0;
}
.review_wrapper {
	padding:10px;
	background-color:#eee;
}
.review_container {
	width:400px;
	border:1px #666 solid;
	margin: 0 0 20px 0;
	font-size:9pt;
}
.review_top {
	border-bottom:1px #666 solid;
	padding:5px;
	background-color:#999;
	color:#eee;
}
.review_bottom {
	padding:5px;
	line-height:1.2em;
}
.review_input {
	padding:5px;
}
.review_textbox {
	border:1px black solid;
	width:150px;
}
.review_textarea {
	border:1px black solid;
	width:300px;
}
.review_errors {
	padding:10px;
	color:maroon;
	font-size:9pt;
	font-weight:bold;
}
.review_list_all {
	padding:10px 0 10px 0;
}

/*
 * Generic shared styles
 */
.hstexterror {
	color: #D00;
}

/* Display errors */
div.error {
	border: 1px solid #CC6666;
	background-color: #FEE;
	padding: 5px;
}

div.error h3 {
	color: #D00;
}

ul.errors {
	font-weight: normal;
	color: #333;
}

select.error, input.error, .errorfield select, .errorfield input {
	background-color: #FEE;
	border: 1px solid #D00;
}

.hs_info_box {
	background-color: #FFFFCC;
	border: 1px solid #ECECEC;
	padding: 5px;
	margin-top: 6px;
}

.hs_warning_box {
	background-color: #FFD9D9;
	border: 1px solid #ECECEC;
	padding: 6px;
}

.hs_box {
	background-color: #F2F2F2;
}

input[type=text], input[type=password], input[type=email], input[type=search], input[type=tel], textarea, select {
	background-color: #FFF;
}

:required,
input[type=text]:required, input[type=password]:required, input[type=email]:required, input[type=search]:required, input[type=tel]:required, textarea:required, select:required {
	background-color: #ffffc0;
}


#hs_shared_account .panel {
	margin-top: 8px;
	padding-top: 8px;
	border-top: 1px solid #CCC;
}

/*
 * Order summary
 */
#order_summary .parcel_message {
	background-color: #DDDDC0;
}

#order_summary .item_gift {
	background-color: #DDDDC0;
}

#order_summary .item_ordered {
	background-color: #f6fff6;
	font-size: 12pt;
	font-weight: bold;
	text-align: center; 
}

#order_summary .item_dispatched {
	background-color: #f6f6f6;
	font-size: 12pt;
	font-weight: bold;
	text-align: center; 
}

#order_summary .item_cancelled {
	background-color: #FFF6CC;
	font-size: 12pt;
	font-weight: bold;
	text-align: center;
	color: #CC0000;
}

#order_summary .item_returned {
	background-color: #F5E1FF;
	font-size: 12pt;
	font-weight: bold;
	text-align: center;
	color: #CC0000;
}

#order_summary .consignment {
	padding: 0;
	margin-top: 15px;
	background-color: #F1F1F1;
	border: 1px solid #999;
}

#order_summary .consignment h3 {
	margin: 0;
	padding: 3px;
	background-color: #BBB;
	border-bottom: 1px solid #999;
}

/*
 * Checkout
 */
.checkout_header h1 {
	margin: 5px 0 5px 0;
	width: 471px;
	height: 25px;
	background-image: url(/checkout/images/header_step1.gif);
	background-repeat: no-repeat;
	text-indent: -9999px;
}

.content-payment .checkout_header h1 {
	background-image: url(/checkout/images/header_step2.gif);
}

.checkout_title {
	height: 36px;
	padding-left: 34px;
	background-repeat: no-repeat;
}
.checkout_title h4 {
	font-size: 13px;
	margin: 0;
	padding: 7px 0 0 0;
	font-weight: bold;
	border-bottom: 1px solid #d3ceaa;
	color: #666;
}
.checkout_title img {
	margin-top: 9px;
}

.checkout_title.title-shippingtype {
	background-image: url(/checkout/images/shippingtype.gif);
}
.checkout_title.title-address {
	background-image: url(/checkout/images/mailbox.gif);
}
.checkout_title.title-date {
	background-image: url(/checkout/images/future.gif);
}
.checkout_title.title-gift {
	background-image: url(/checkout/images/giftbox_lrg.gif);
}
.checkout_title.title-credits {
	background-image: url(/checkout/images/credits.gif);
}

.checkout_content h2 {
	margin: 0;
}

.ft_table {
	margin-top: 8px;
	margin-bottom: 12px;
	width: 100%;
}
.ft_table th {
	background-color: #E7E8D1;
	font-weight: bold;
	border-top: 1px solid #F2F3E7;
	border-right: 1px solid #D3CEAA;
	border-bottom: 1px solid #D3CEAA;
	border-left: 1px solid #F2F3E7;
	padding: 3px 6px 3px 6px;
}
.ft_table td {
	border-bottom:1px solid #CCC;
	border-right:1px solid #ccc;
	padding: 2px 2px 4px 2px;
	font-size: 11px;
}
.ft_table .noborder {
	border: 0;
}

/*
 * Collapse all borders
 */
table {
    border-collapse: collapse;
}

/* TODO: remove all use of class="odd/even" and replace with tbody class="striped" */
tr.odd:nth-child(odd), tr.even:nth-child(odd), tbody.striped > tr:nth-child(odd) {
	background-color: #f5f5f5;
}

tr.odd:nth-child(even), tr.even:nth-child(even), tbody.striped > tr:nth-child(even) {
	background-color: #fcfcfc;
}

/*
 * HS Default Text Sizes
 */
.hsprice {
    font-weight: bold;
}

.hstextleftnav {
    font-size: 9pt;
}

.hstextsm {
    font-size: 8pt;
}

.hstextlg {
    font-size: 10pt;
}

.hsheading {
    font-size: 10pt;
}

.hstableheading {
    font-size: 10pt;
    border: 1px solid #ACACAC;
}

.form-table label {
	float: right;
	text-align: right;
}
.form-table label:after {
	content: ":";
}
.form-table .hstexterror {
	display: block;
}
.form-table > tr > td {
	padding: 4px;
}
