.column {
  float:left;
  display:inline;
  margin:0 1.5% 1em;
  padding: 10px 0;
  clear:none;
}

.column:first-child {
  margin-left:0;
}

.column:last-child {
  margin-right:0;
}

div.column {
  
}

table.column {
  display:table;
}

.single {
  float:none;
  display:block;
  margin:0 auto !important;
}

.full {
  width:96%;
  min-width:75%;
}

.half {
  width:46% !important;
  min-width:25%;
}

.thirds {
  width:29%;
  min-width:15%;
}

.sub {
  margin:0 2.5% 1em;
  min-width:auto;
  padding:0;
}

/*.sub + .sub {
  margin-left:7%;
}*/

.sub:first-child {
  margin-left:0;
}

.sub:last-child {
  margin-right:0;
}

.span-4 {
 width:39%;
}

.span-6 {
  width:53%;
}

.module {
  border-top:1px solid #ccc;
  padding-top:10px;
}

.box {
  overflow:hidden;
  background:white;
  padding:3px;
}

/*Type Setup
------------------------------------------------*/  

html { font-size: 100%; /*For IE*/ }

@media screen and (-webkit-min-device-pixel-ratio:0) {
/* Safari 3.0 and Opera 9 rules here */
  html { font-size: 16px; /*For Safari*/ }
}


body { font-size:62.5% }


/*---------------------------------------
GENERAL
-----------------------------------------*/

body {
  margin:0;
  font-family:courier, "Courier New", monospace;
  color:#000;
  min-width:780px;
  word-spacing:-0.3em;
  line-height:1.5;
}

h1,h2,h3,p {
  margin-top:0;
}

h1 {
  font-size:2.4em;
  letter-spacing:-0.03em;
  word-spacing:-0.3em;
}

form {
  margin:0;
}

h2,
legend {
  color:black;
  letter-spacing:-0.03em;
/*  word-spacing:-0.05em;*/
}

h2 {
  font-size: 1.8em;
  margin-bottom:0;
}

h2 a {
  color:black;
}

h3 {
  font-size:1.4em;
}

p {
  font-size:1.4em;
}

ul {
  margin:0 0 1em 0;
  padding-left:0;
}

li,dt,dd {
  font-size:1.2em;
  line-height:1em;
}

dl ul {
  margin-bottom:0;
}

dl li{
  font-size:1em;
}

dt,dd {
  line-height:1.2em;
}

a {
  color:#267bfa;
  text-decoration:none;

}
a:hover {
  color:#33CCFF;
}

a img {
  border:none;
}

acronym {
  font-size: 1.2em;
  text-transform:lowercase;
  font-variant:small-headers;
  border:0;
}

.ui {
  font-size:1.1em;
}

select,
input[type="text"],
input[type="password"],
textarea {
  width:100%;
  float:left;
  display:inline;
  margin-top:3px;
  border:1px solid;
  border-color: #999 #ccc #ccc #999;
  font-size:1em;
  color:#333;
  padding:2px 2px;
}

button {
  border:none;
  background-color:transparent;
}

.note {
  font-size:1em !important;
}

/*---------------------------------------
header
-----------------------------------------*/
#header {
  width:100%;
  min-width:780px;
  height:60px;
  margin-left:auto;
  margin-right:auto;
  overflow:hidden;
}

#logo {   
  float:left;
  display:inline;
  margin:16px 20px;
  font-size:4em; 
  line-height:1em;
  font-weight:normal;
/*  text-transform:uppercase;*/
  letter-spacing:-0.09em;
  word-spacing:-0.3em;
}

#logo strong {
}

#logo a {
  color:black;
}

ul#nav {
  padding:0;
  padding-top:0.5em;
  margin:20px 20px 20px 40px;
  float:left;
  list-style:none;
}
#nav li {
  display:inline;
}
#header form {
  margin: 20px 17px 0 0;
  float:right;
  width:230px;
  text-align:right;
}
#header form #criteria {
  width:150px;
  display:inline;
  float:none;
  font-size:1.2em;
}

#header form * {
  vertical-align:middle;

}

#busy {
  padding-right:5px;
}

/*---------------------------------------
main
-----------------------------------------*/
#main {
  width:100%;
  clear:both;
  background:url(/images/hvb_bg.gif) no-repeat;
  overflow:hidden;
}
#catalog,
#checkout {
  float:left;
  clear:both;
  margin-left:auto;
  margin-right:auto;
  padding:20px;
  padding-bottom:120px; 
}

#catalog {
  padding-right:0;
}

.tools {
  margin: 0 20px;
  clear:both;
}

.tools p {
  padding:2px 5px;
  float:left;
  background:white;
  margin:0;
}

/*---------------------------------------
catalog
-----------------------------------------*/
.page-nav {
  float:right;
  margin-bottom:10px;
  font-weight:bold;
}

#catalog .page-nav {
  clear:both;
}

#catalog {
  width:97%;
}

#book-list {
  padding:0;
  clear:left;
}

#book-list .item {
  border-top: 6px solid #ccc;
  padding:10px;
  width:29%;
  min-width:180px;
  max-width:29%;
  float:left;
  display:inline;
  margin:0 2% 20px 0;
  white-space:no-wrap;
  height:17em;
  font-size:1em;
}

.homepage #book-list .item {
  width:43%;
  max-width:43%;
}

#book-list .item img {
  max-height:190px;
  max-width:105px;
  width:auto;
  background:#CCC;
  float:left;
  display:inline;
  margin-right:4%;
  border:1px solid #ccc;
}


#book-list .item .details {
  padding-left:115px;
}

#book-list .item h2 {
  line-height:.9em;
  margin-bottom:.2em;
}

#book-list .item .publisher {
  min-width:100px;
  max-width:200px;
  line-height:1;
  font-size:1.1em;
  margin-bottom: 2.4em;
}

#book-list .author-list {
  list-style:none;
  margin-bottom:1em;
  padding-left:0;
 }

.author-list li {
  margin-bottom:.3em;
  font-size:1.4em;
}

.details .ui a {
  white-space:nowrap;
}

/*---------------------------------------
cart
-----------------------------------------*/

#cart-background {
  width:100%;
  min-width:780px;
  position:fixed;
  bottom:0;
  left:0;
  padding:15px 0 15px;  
  border-top:2px solid #999;
  background:#000;
  opacity: 0.85;
  -moz-opacity: 0.85;
  filter:alpha(opacity=85);
/*  background-image:url(/images/cart_bg.png);*/
  background-repeat: repeat-x;
  z-index:100;
  height:95px;
  color:white;
}

#cart-background p {
}

#cart {
  width:50%;
  height:78px;
  padding:10px 10px 5px 10px;
  margin: 0 auto;
  background:#333;
  border:1px solid;
  border-color: #999 #ccc #ccc #999;
  -moz-border-radius:3px;
  -webkit-border-radius:3px;
}

#cart-count {
  width:15%;
  min-width:125px;
  margin-right:20px;
  margin-left:20px;
  font-size:1.2em;
  position:absolute;
  top:20px;
  left:0;
}

#cart-indicator {
position:absolute;
left:20px;
bottom:60px;
z-index:200;
}

#cart ul {
  padding:0;
  margin:0;
}
#cart li {
  width:50px;
  float:left;
  display:inline;
  margin-right:20px;
  text-align:center;
  position:relative;
}

#cart li a {
  display:block;
  width:50px;
  height:75px;
  position:absolute;
  top:0;
  left:0;
}

#cart .cart-item {
  width:auto;
  height:75px;
  background:#CCC;
  margin-right:20px;
}

#cart .remove-btn {
 position:relative;
 top:-7px;
 left:-22px;
 visibility:hidden;
}

#cart li a:hover .remove-btn {
  visibility:visible;
}

/* maybe not necessary
#cart #emptycart {
  float:left;
  display:inline;
  }
*/
#total {
  text-align:center;
  min-width:100px;
  width:20%;
  margin-right:20px;
  padding-top:5px;
  position:absolute;
  right:0;
  top:20px;
}


#total p{
  float:none;
  font-size:1.2em;
}



/*---------------------
#checkout form
-----------------------*/
#checkout p {
  font-size:1.4em;
  line-height:1.5em;
}

#checkout fieldset {
  border:0;
  padding:0;
}

#checkout legend {
  font-size:1.6em;
  font-weight:bold;
  padding:0;
  margin-bottom:1em;
}
#checkout label {
  float:left;
  display:inline;
  margin: 0 20px 1.2em 0;
  font-size:1.2em;
}
#checkout input.text,
#checkout textarea,
#checkout select {
  float:none;
  display:block;
  font-size: 12px !important;
  padding: 1px 3px !important;
  margin-top:4px;
  border-bottom:1px solid #ddd;
  border-right:1px solid #ddd;
}
#checkout input[type="button"],
#checkout input[type="submit"] {
  width:105px;
  margin:1em 0;
}
#order_name, #order_email, #order_pay_type {
  width:140px;
}
#order_address {
  width:300px;
}

/*---------------------
detail page
-----------------------*/

#item dt {
  float:left;
  clear:left;
  width:100px;
  padding:5px 0;
}

#item dd {
  border-top: 1px solid #ccc;
  padding-left:110px;
  margin-left:0;
  padding:5px 0 5px 100px;
  font-weight:bold;
}

#item ul {
  list-style:none;
}

#item .meta {
}

#item h1 {
  font-size: 1.8em;
}

/*---------------------
debug
-----------------------*/

#debug {
  width:200px;
  height:300px;
  position:absolute;
  bottom:0;
  right:0;
  z-index: 20;
  color: #00679B;
  display:none;
}

#notice,
.errorExplanation {
  margin:0 20px 10px 20px;
  background:red;
  float:left;
  clear:both;
  padding:10px;
  color:white;
}

#notice {
  background: #CF6;
  font-size:1.4em;
  color:black;
}


/*---------------------------------------
homepage
-----------------------------------------*/

#intro {
  background:white;
}

#featured_tags h2 {
  margin-bottom:.3em;
}

#featured_tags h2 a {
  padding:3px;
  margin-bottom:10px;
  color:white;
}

.tag0 {background-color:#50cf9c;}
.tag1 {background-color:#98be55;}
.tag2 {background-color:#c7860c;}
.tag3 {background-color:#cc3b25;}
.tag4 {background-color:#a6082d;}
.tag5 {background-color:#622d0a;}
.tag6 {background-color:#172638;}
.tag7 {background-color:#1f0983;}
.tag8 {background-color:#2f52bc;}
.tag9 {background-color:;}
.tag10{background-color:;}
.tag11{background-color:;}
.tag12{background-color:;}

/*#cloud .size0 {font-size: 1.2em;}
#cloud .size1 {font-size: 1.4em;}
#cloud .size2 {font-size: 1.6em;}
#cloud .size3 {font-size: 1.8em;}
#cloud .size4 {font-size: 2.0em;}
#cloud .size5 {font-size: 2.2em;}
#cloud .size6 {font-size: 2.4em;}
#cloud .size7 {font-size: 2.6em;}
#cloud .size8 {font-size: 2.8em;}*/

#cloud {
}

#cloud a {
  vertical-align:baseline;
  color:white;
  line-height:2em;
  padding:3px;
/*  float:left;
  display:inline;*/
  height:20px;
  overflow:hidden;
/*  margin:3px;*/
  font-size:1.8em;
  font-weight:bold;
}

#cloud a:hover {
  background-color:#F1DF00;
  color:black;
}
.addtocart {
  font-size:1.3em;
  font-weight:bold;
}