body {
	margin: 0;
	padding: 0;
	font-family: "Lucida Grande", Verdana, sans-serif;
	font-size: small;
	text-align: center;
	color: #333;
}

/* links */
a, a:link, a:visited {
	color: #06b;
}
a:hover {
	color: #38f;
	text-decoration: underline;
}

a.cancel:link,
a.cancel:visited,
a.cancel:hover {
	color: #c00;
}

/* common */
h3, h4 { margin: 0; padding: 0; }
ul {
  list-style: none;
}
ul.bulleted {
  list-style: disc;
}
img {
  padding: 2px;
  border: 1px solid #dcdcdc;
}
img.logo,
img.noborder {
  border: none;
}

table {
  margin: 1em 0;
	border-collapse: collapse;
}
th, td {
  padding: 5px 10px;
  vertical-align: top;
}
th {
  background: #dcdcdc;
}
td.label {
	text-align: right;
	vertical-align: top;
}
th.currency,
td.currency {
	text-align: right;
	vertical-align: top;
}
tr.divider {
	border-top: 1px solid #ccc;
}

input.currency {
  width: 50px;
  text-align: right;
}

.upcase {
  text-transform: uppercase;
}

.errorExplanation {
  margin: 10px 0;
	background: #ffd1d1;	
	border: 1px solid #c99;
}

.errorExplanation h2,
.errorExplanation p {
  display: none;
}

#page-header {
  padding-top: 20px;
  font-size: 200%;
}

/* shopping & checkout */
tr.product-category,
tr.section-heading {
  font-size: 125%;
  text-transform: uppercase;
  color: #555;
  background: #f5f5f5;
}

table#line-items th,
table#line-items td {
	padding: 0.5em 1em;
}

tr.dependent_product {
  color: #777;
}
tr.dependent_product .product-name {
  font-size: 85%;
  font-style: italic;
	padding-left: 2em;
}

.checkout-section {
	margin-bottom: 0.3em;
}
.checkout-section strong {
	font-size: 125%;
	text-decoration: underline;
}

.warning {
  color: #f00;
}

/* two col */
.two-col {
}
.two-col .left {
	width: 50%;
	float: left;
}
.two-col .right {
	width: 50%;
	float: right;
}                    
.two-col .inner {
	padding: 0.5em;
}
.two-col .right .inner {
	border-left: 1px solid #dcdcdc;
}

/* flashes */
#flashes {
	margin-top: 10px;
}
.flash {
	margin: 5px 0;
	padding: 5px 10px;
	color: inherit;
	-webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
.flash.info {
	background: #ffffcc;
	border: 1px solid #ccc;    
}
.flash.notice {
	background: #e2f9e3;	
	border: 1px solid #9c9;    
}
.flash.error {
	background: #ffd1d1;	
	border: 1px solid #c99;
}

/* textile */
.textile ul {
  list-style: disc;
}
.textile th,
.textile td {
  padding: 3px 5px;
}
.textile table td {
  border: 1px solid #dcdcdc;
}

/* self-clearing floats */
.two-col:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

/* trigger hasLayout and target ie5+6/win only */
* html .two-col {
	height: 1%;
}

/* trigger hasLayout and target ie7/win only */
*:first-child+html .two-col {
	min-height: 1px;
}