/* full width: 853px (!)
   global padding: 12px
   Nav bar width: 841px
   Open div padding: 10px (+1px border)
   Inner columns: 830px (24 columns)
   banner position: 108px
*/

a         {text-decoration:none;}
a:link    {color: #000099;text-decoration:none;}
a:visited {color: #3333CC;text-decoration:none;}
a:hover   {color: #CC0000; text-decoration: none;}
a:active  {color: #FF3300; text-decoration:none;}
a img {border: none;}

p {
  margin: 0;
  font-size: 1em;
  margin-bottom: 0px;
  clear: left;
}
ul {clear: left;}
div {
  text-align: left;
}
html,body {
	margin:0;
	padding:0;
	height:100%; /* needed for container min-height */
}
body {
/* icon bg: #71A7FB; main bg: FFEFD5 */
/*  background-color: #DBF3FF #DCDCDC #B0C4DE;  #E6E6FA;  #F0F8FF; */
  background-color: #D5E5FE;
  font-size:   0.65em;
  line-height: 1.7em;
  font-family: Verdana;
  text-align: center;
}
div#container {
  /* From http://www.xs4all.nl/~peterned/examples/csslayout1.html */
	position:relative; /* needed for footer positioning*/
	margin:0 auto; /* center, not in IE5 */
	
/*	height:100%; */ /* IE6: treaded as min-height*/

	min-height:100%; /* real browsers */

	height:auto !important; /* real browsers */

  background-color: #FFEFD5; /*#efefff;*/
/*  padding-top: 16px;*/
  text-align: left;

  width: 853px;
  border-left:  1px solid #999999;
  border-right: 1px solid #999999;
  padding-left: 12px;
}
div#header {
  position: relative;
  padding: 16px 0 0 0;
}
img#logo    { position: relative;	left:  0px; top:  0px; }
img#banner  { position: absolute;	left: 113px; top:  16px; border: 1px solid black;}
#action-bar {
    position: absolute;	left: 112px; top: 98px; width: 723px; padding-right: 8px;
}
#searchform {display:inline; float:right; margin-top: 2px; margin-right: 0px;}
#searchform input.submit {
  letter-spacing: 0.01em;
  font-size: 1.1em;
  font-weight: bold;
  background-color: #ffffff;
  color: #000000;
  border: 3px double black;
  margin-left: 6px;
/*  margin-top: 0em;
  padding-bottom: 0.3em;
  height: 2.3em; */
}
#searchform input.text {
  position: relative;
  top: -0.0em;
  border: solid 1px black;
  height: 1.4em;
  padding-left: 0.2em;
}
div#nav  { position: relative;	top:  -14px; width: 841px; 
                     font-size: 1.2em; padding: 0px; background-color: black; color: white;
                    text-align: center;
}
ul#navitems { display: inline;
                            list-style-type: none;
                          padding: 2px; margin: 2px;
}
#navitems li {display: inline;
    padding-top: 0;
    padding-bottom: 0;
    padding-left:  5.25%;
    padding-right: 5.25%;
}
#navitems li.first {
    padding-left: 0;
}
#navitems li.last {
    padding-right: 0;
}
#navitems a         {text-decoration:underline; color: white;}
#navitems a:hover   {color: #CC0000;}
#navitems a:active  {color: #FF3300;}
#navitems .selected {color: #6699FF;font-weight: bold;text-decoration:none;}
#action-bar ul {
  position: relative; top: 2px;
  float: left;
}
#content { 
  border: none; 
  margin-left: 0px; 
  height: 100%;
  position: relative;
  top: -6px;
}
#hpcontent { 
  border: none; 
  margin-left: 0px; 
  height: 100%;
  padding-bottom: 2px;
  position: relative;
  top: -6px;
}
.inline {
  font-size: 1em;
  margin: 0em;
  padding: 0.2em 0;
}
ul.inline li {
  display: inline;
  border-right: 2px solid black;
  padding: 0 1em;
}
ul.inline li.first {
  font-weight: bold;
  border-right: 0;
  padding-left: 0;
}
ul.inline li.last { border-right: 0; }
ul.inline li.reallylast {	border-left: 2px solid black; border-right: 0 }
.lt {float: left;}
.rt {float: right;}
.textinput {
  position: relative;
  top: -0.0em;
  font-size: 1.1em;
  width: 12em;
  background-color: #D7E5F2;/* F2F1D7 complimentary */
  border: solid 1px black;
  margin-right: 0.4em;
  margin-top: 0em;
  padding-top: 0.25em;
  padding-left: 0.3em;
  height: 1.4em;
}
div.cmpl-msg {
    clear: left;
    position: relative;
    top: -16px;
    left: 10px;
}
span.cmpl {
    color: #CC0000;
}
.signup div.input {
  margin-bottom: 1.2em;
}
.mainform label {
    float: left;
    display: block;
    padding: 0;
    margin-bottom: 0px;
    font-size: 1.3em;
    font-weight: bold;
}
.mainform a.hlink {
    cursor: help;
    float: right;
}
.mainform a.hlink img {
  margin-bottom: 0px;
}
.mainform a.ti {
  position: relative;
  top:  3px;
  left: 3px;
}
.mainform a.ta {
  position: relative;
  top: 3px;
  right: 3px;
}
.mainform a.hlinkinline {
  cursor: help;
  margin-left: 16px;
  position: relative;
  bottom: 6px;
}
.mainform a.hlinkinline img {
  margin-bottom: 0px;
}
.mainform .title input {
  font-size: 1.6em;
  margin-bottom: 20px;
}
.mainform .title label {
  margin-bottom: 2px;
}
.mainform .inpt-row {
  margin-bottom: 24px;
}
.mainform input,textarea {
  font-size: 1.2em;
  line-height: 2.2em;
  border: solid 1px black;
  margin-top: 0em;
  margin-bottom: 0.6em;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  padding-left: 0.3em;
  clear: left;
}
.mainform input {
  width: 100%;
}
.mainform textarea {
  width: 100%;
  clear: both;
  margin-bottom: 1em;
  font-size: 1.4em;
  line-height: 1.6em;
  padding: 0.4em 0 0.4em 8px;
}
form div.span-16 textarea {
  width: 540px;
}
form div.span-18 textarea {
  width: 610px;
}
.mainform .chk-box {
	margin-top: 6px;
  font-weight: bold;
}
.mainform .chk-box input {
  width: 1.2em;
  height: 1.2em;
}
.mainform .chk-box label {
  margin-left: 4px;
  position: relative;
  bottom: 1px;
	font-size: 1.1em; display: inline; float: none
}
.mainform .pvsubmit {
  border: 3px double black;
  width: 10em;
  clear: both;
  background: white;
}
.mainform input.submit {
  border: 3px double black;
  width: 7em;
}
.mainform .date,select {
  border: 1px solid black;
  font-size: 1.2em;
  padding: 0px;
  margin-left: 0.4em;
  margin-right: 0em;
  margin-top: 0em;
  margin-bottom: 0.6em;
}
.mainform input.date {
  width: 2.6em;
  margin-right: 0.4em;
  padding: 1px 4px;
}
.mainform .intro {
  height: 8em;
}
.mainform .date-holder {
  text-align: right;
}
.mainform .date-input {
  text-align: right;
  position: relative;
  left: 6px;
  clear: left;
  padding-top: 3px;
  padding-right: 0;
}
.mainform .ta-trln {
    height: 40em;
}

div.subscribe {
  font-size: 1.1em;
  background: #dddddd;
  border: 1px solid #aaaaaa;
  margin: 8px;
  margin-right: 2px;
  padding: 8px;
  padding-right: 16px;
}
div.subscribe label {
  font-size: 0.9em;
}
div.subscribe input.textfield {
  width: 18em;
  font-size: 1.0em;
}
div.subscribe input.submit {
  margin-top: 8px;
  font-size: 0.95em;
}
div.hpsubscribe {
  font-size: 1.0em;
  background: #dddddd;
  border: 1px solid #aaaaaa;
  margin: 8px 0 8px 6px;
  padding: 8px;
  padding-right: 16px;
}
div.hpsubscribe div.sbpnl { font-size: 0.95em;}
div.hpsubscribe label {
  font-size: 0.9em;
	padding-bottom: 6px;
}
div.hpsubscribe input.textfield {
  width: 10.5em;
	height: 1.4em;
  font-size: 1.0em;
}
div.hpsubscribe input.submit {
  margin-top: 0px;
  font-size: 0.9em;
	padding-bottom: 8px;
}
div.hpsubscribe table,tr,td {
	margin: 0;
	padding: 0;
}
div.hpsubscribe table {margin-top: 4px;}


.ta-trln-invalid {
  height: 40em;
  width: 100%;
  font-size: 1.3em;
  background: #eeeeee;
}
.tnc {
  font-size: 0.95em;
}
.tnc li {
  margin-bottom: 0.6em;
}
div.panel form {
  margin-left: 6px;
}
.commentform {
  font-size: 1.1em;
  line-height: 2.2em;
  border: 1px solid black;
  margin-left: 0px;
  margin-right: 0.4em;
  margin-top: 0em;
  padding-top: 0.25em;
  padding-left: 0.3em;
  height: 100px;
  margin-bottom: 0;
}
.comment-name {margin-right: 6px;}
#simple_captcha div{display: table;}
#simple_captcha .simple_captcha_field{
  border: 1px solid black;
  margin: 0px 0px 2px 0px !important;
  padding: 0px !important;
}
#simple_captcha .simple_captcha_image{
  border: 1px solid #ccc;
  margin: 0px 0px 2px 0px !important;
  padding: 0px !important;
}
#simple_captcha .simple_captcha_image img{
  margin: 0px !important;
  padding: 0px !important;
  width: 110px !important;
}
#simple_captcha .simple_captcha_label{margin-top: 0.5em; font-size: 12px;}
#simple_captcha .simple_captcha_field input{
  width: 180px !important;
  border: none;
  padding-bottom: 0; 
  margin-bottom: 0;
}
.comment-form input{
  width: 180px;
}
.fieldWithErrors {
    padding: 0;
    margin: 0;
}
.fieldWithErrors input,textarea {
  padding-left: 1em;
  padding-right: 1em;
  font-size: 1.1em;
  line-height: 2.2em;
  margin-right: 0.4em;
  margin-top: 0em;
  padding-top: 0.25em;
  padding-left: 0.3em;
}
.submit {
  letter-spacing: 0.01em;
  font-size: 1.1em;
  font-weight: bold;
  background-color: #ffffff;
  color: #000000;
  border: 3px double black;
  margin-left: 6px;
  margin-top: 0em;
  padding-bottom: 0.3em;
  height: 2.3em;
}
#sbmcompare {
  letter-spacing: 0.01em;
  font-size: 1.1em;
  font-weight: bold;
  background-color: #ffffff;
  color: #000000;
  border: 3px double black;
  padding:0;
  width: 66%;
  margin-left: 34%;
}
div.letterindex {
	padding-top: 0.1em;
	padding-bottom: 1.8em;
}
.browsenav ul {
    text-align: center;
		margin: 1em 0em;
}
.browsenav li {
    font-size: 1.8em;
		padding: 0em 0.15em;
    display: inline;
		color: #999999;
}
.browsenav li strong { color: #000000; }
.browseelem {
    width: 45px;
}
div.open {
  margin-top: -1px;
  margin-bottom: 12px;
  border: 1px solid #777;
  border-bottom: 0;
  border-right: 0;
  padding-bottom: 0;
  padding-right: 0;
  padding-left: 10px;
  width: 830px; /* Not the right place for this if open is used elsewhere */
  /* I _know_ this is a horrible way of achieving this... */
  min-height: 800px;
}
.open h1 {
  font-size: 2em;
  float:left; 
  position: relative;
  left: 6px;
  font-weight: normal;
  margin-top: 8px;
  margin-bottom: 18px;
  border-bottom: 1px solid #777;
  letter-spacing: -1px;
  clear: left;
  margin-left: -2px;
}
.transtitle {
  font-size: 1.4em;
  font-style: italic;
  position: relative;
  left: 6px;
  float: left;
  clear: left;
  font-weight: normal;
  padding: 0;
  padding-bottom: 0.4em;
  margin-top: -0.8em; 
  margin-bottom: 1em;
  letter-spacing: -1px;
}
div.editinfo {
  float: right; 
  text-align: right; 
  margin: 6px 6px 12px 0;
}
div.lastedited {
  text-align: right; 
  margin-top: 6px; 
  margin-right: 4px; 
  font-size: 0.9em; 
  line-height: 1.4em;
}
a.edit-link-main {
  background: white;
  border: 1px solid black;
  padding: 2px 4px;
}
.open h2 {
  font-size: 1.7em;
  float:left;
  position: relative;
  left: 6px;
  font-weight: normal;
  border-bottom: 1px solid #aaa;
  padding-bottom: 0.1em;
  letter-spacing: -1px;
  clear: both;
  margin-top: 14px;
  margin-bottom: 14px;
}
.open div.prose h2 {
  font-size: 1.6em;
  text-align:left;
  float: none;
  font-weight: bold;
  border-bottom: none;
  padding-top: 0.4em;
  padding-bottom: 0em;
  letter-spacing: -1px;
  clear: both;
}
.open div.first {
  
}
.open div.bottom {clear: both;} /* This to make .open divs to extend all the way down */
h3.open {
  font-size: 1.4em;
  float:left;
  font-weight: normal;
  border: none;
  border-bottom: 1px solid #777;
  padding: 0.1em 0;
  margin-left: 6px;
  margin-top: 4px;
  letter-spacing: -1px;
  clear: both;
}
h4.open {
  font-size: 1.3em;
  float:left;
  font-weight: normal;
  border: none;
  border-bottom: 1px solid #777;
  padding: 0.1em 0;
  margin-left: 6px;
  margin-top: 4px;
  letter-spacing: -1px;
  clear: both;
}
h3.open {
}
h4.open {
}
.panel {
  border: 1px solid black;
  background-color: white;
  height: 100%;  /* Could do this a with a second class... */
  clear: both;
  padding-right: 6px;
  margin-bottom: 8px;
}
.panel p {
  margin-left: 6px;
  clear:left;
  margin-bottom: 4px;
}
div.pp br, div.ll br {
	margin-bottom: 0.5em;
}
/* This is a bit of a hack right here */
div.panel div.prose p {
  margin-top: 8px;
  clear: none;
}
div.panel div.prose p img {
  margin-left: 8px;
  margin-right: 8px;
  margin-bottom: 4px;
}
div.panel div.allowlowtext {
  margin-bottom: 3em;
}
div.open h3.open {
  border-bottom: 1px solid #aaa;
}
div.panel h3.open {
  border-bottom: 1px solid #777;
}
div.panel ul {
    clear: both;
/*    list-style: none; */
    padding: 4px 16px;
}
div.panel div.md-img {
  text-align: center;
  margin-top: 8px;
}
div.panel div.md-img img {
  margin-bottom: 0px;
}
div.rhc li { padding: 6px 0;}
.open #pg-actns {
    clear: both;
    padding-top: 6px;
    float: right;
    margin: 0px;
    text-align: right;
}
.open .first {
  clear:both;
}
/* REMOVE?! */
.pnl {
  border: 1px solid black;
  background-color: white;
  clear: left;
  margin: 0;
  margin-bottom: 8px;
}
/* REMOVE?! */
.rhc {
    float: right;
    clear: both;
    width:214px;
}
.pnl-lnk {
    text-align: right;
    margin: 4px;
    padding: 0px;
}
.pnl-wd {
    width: 550px;
  border: 1px solid black;
  background-color: white;
  clear: left;
  margin: 0;
  margin-bottom: 8px;
}

.pnl-wd p {
    margin-left: 8px;
    clear:left;
}
.panel ul {font-size: 1em;}
.ctr-hf {
    width: 380px;
    position: relative;
    top:0;
    left:0;
    height: 100%;

}
.pnl-hf {
    margin: 8px;
    width: 360px;
}
h3,h4.pnl-hd {
    float: left;
    clear: left;
    padding-top: 0.2em;
    padding-left: 0.4em;
    padding-right: 0.6em;
    padding-bottom: 0.2em;
    border-style: solid; border-width: 0px 1px 1px 0px;
    margin-left: 0em;
    margin-top: 0em;
    margin-bottom: 0.7em;
}
h3.pnl-hd { font-size: 1.2em; border-color: black;}
h4.pnl-hd { font-size: 1.0em; border-color: gray; font-weight: normal;}

.ll {clear:both; padding: 0 6px; margin-left: 6px;}
.pp {clear:both; margin-left: 6px;}
.sbpnl {
  border: 1px solid gray;
  background-color: white;
  clear: left;
  margin-right: 0px;
  margin-left: 0;
  margin-top: 0px;
  margin-bottom: 8px;
}
.sbpnl p {
	padding-bottom: 0.35em;
}
.panel p, .sbpnl p { line-height: 1.54em;}
p.edit-page {
  float: right;
  clear: both;
  padding: 0.2em 0.4em 0.2em 0.6em;
  margin: 0 -6px 0.5em 0;
}
.flash {
  width: 837px; /* TODO: Would rather just inherit this width from a parent div */
  background-color: white;
  margin: 0 0 6px 0;
  font-size: 1.1em;
  font-weight: bold;
  text-align: center;
  line-height: 2.5em;
}
.flnotice {
  border: 2px dotted blue;
}
.flmessage {
  border: 2px dotted green;
}
.flerror {
  border: 2px dotted red;
}
.pagination {
  width: 100%;
  font-size: 1.1em;
  text-align: center;
}
.commenterror {
  clear: both;
  border: 2px dotted red;
  margin-left: 6px;
  margin-bottom: 8px;
/*  margin: 0px 16px 8px 16px;*/
  padding: 4px;
}
.newusermessage {
  clear: both;
  border: 2px dotted blue;
  background-color: white;
  width: 80%;
  margin-left: 10%;
  margin-right: 10%;
  margin-bottom: 16px;
  font-size: 1.1em;
  font-weight: bold;
  text-align: center;
  line-height: 2.5em;
}
div.legend {
  border: 2px solid black;
  position: relative;
  top: 19px;
}
.legend h3 {
  font-size: 1.7em;
  position: relative;
  float:left;
  left: 0px;
  font-weight: normal;
    border: none;
  border-bottom: 1px solid #aaa;
  padding: 0.1em 0 0.1em 0;
    margin: 0 8px;
    letter-spacing: -1px;
    clear: both;
}
.legend table {
    margin: 8px 0 0 4px;
}
.legend table,tr,td {
    padding: 0;
}
.legend ul {
    clear: both;
    list-style: none;
    margin: 0;
    padding-left:0;
    margin-bottom: 8px;
}
.legend .markup-expl {
    font-size: 1.5em;
}
.legend td {
  vertical-align: top;
}
.legend .markup-expl pre {
  position: relative;
  top: 0.3em;
  display: inline;
}
.legend td.arrow img {
  position: relative;
  top: 0.4em;
}
.legend td.markedup span {
  position: relative;
  left: 1.2em;
  top: 0.5em;
}
.validationerror {
  clear: both;
  border: 2px dotted red;
  background-color: white;
  width: 80%;
  margin-left: 10%;
  margin-right: 10%;
  margin-bottom: 16px;
  font-size: 1.1em;
  font-weight: bold;
  text-align: center;
  line-height: 2.5em;
}
.validationerror p {
    clear: left;
}
textarea.ordererror {
  font-size: 1.2em;
  color: #555555;
  margin: 12px 20% 12px 15%; 
  background: white; 
  width: 60%; 
  height: 90px; 
  border: 1px solid gray;
}
.smbook {
/*	border:1px dashed black; */
/*	padding: 0 2px;
  margin: 4px 8px; */
}
#loginpage {
  min-height: 500px;
}
#loginpage table {
    margin-left: 40px;
  clear: left;
}
#forgotpage {
  min-height: 500px;
}
#welcomepage {
  min-height: 500px;
}
.txtlt {
  text-align: left;
}
.txtrt {
  text-align: right;
}
#lnsubmit {
  position: relative;
  top: 8px;
  padding-top: 0.2em;
    margin-left:0;
}
#lgn-reg {
    position:relative;
    top: 16px;
}
#uloginbar {
  position: relative;
  top: 2em;
  left: 9em;
}
.helplink {
    float: right;
}
div#footer {
  position: relative;
  width: 841px;
/*  margin-top: 24px;*/
  padding-top: 4px;
  padding-bottom: 12px;
  clear: both;
  border: 0;
  border-top: 1px solid black;
  text-align: center;
}
div#footer ul {
    margin: 0;
}
div#footer ul li {
    display: inline;
    padding: 0 0.8em 0 0.4em;
    margin-right: 0;
    border-right: 1px solid black;
}
div#footer ul li.last {
    display: inline;
    border-right: 0;
}
div#footer img.ccimg {position: relative; top: 1.6em;}
.withfeedlink {padding-bottom: 2.4em;}
div.holding {position: relative;}
.lowtextleft  { margin: 0px 8px 4px 8px;  position:absolute; bottom: 0px; left: 0px}
.lowtextright { margin: 0px 8px 4px 8px;  position:absolute; bottom: 0px; right: 0px; text-align: right;}
span.subscribe {margin: 10px 8px 12px 8px;  position:absolute; bottom: 0px; left: 0px;}
span.subscribe-rhs {margin: 4px 8px;  position:absolute; bottom: 0px; left: 0px;} /* should replace with lowtextleft at some point */
img.feedimg {position: relative; top: 20px;} /* To offset the typography in grid.css */
span.cctext {position: relative; top: -0.4em;}
span.cctext img {border: 4px solid green;}

div.comments {margin: -4px 0px -4px 6px; min-height: 50px; clear: left;}
div.comments div.comment {clear: both; border: 1px solid gray; padding: 4px; margin: 8px 0px;}

.fullheight {height: 100%;}
.lastrow {margin-bottom: 42px;}

/* Dimensions */
.fixrow-1 {
  height: 382px;
  margin-bottom: 12px;
}
.hpgrid {
  width: 841px;
}
/* Expanded, splitting 11px across 24 columns */
.hpspan-1   { width: 25.458px;  }
.hpspan-2   { width: 60.916px;  }
.hpspan-3   { width: 96.374px;  }
.hpspan-4   { width: 131.833px; }
.hpspan-5   { width: 167.291px; }
.hpspan-6   { width: 202.749px; }
.hpspan-7   { width: 238.208px; }
.hpspan-8   { width: 273.666px; }
.hpspan-9   { width: 309.124px; }
.hpspan-10  { width: 344.583px; }
.hpspan-11  { width: 380.041px; }
.hpspan-12  { width: 415.499px; }
.hpspan-13  { width: 450.958px; }
.hpspan-14  { width: 486.416px; }
.hpspan-15  { width: 521.874px; }
.hpspan-16  { width: 557.333px; }
.hpspan-17  { width: 592.791px; }
.hpspan-18  { width: 628.249px; }
.hpspan-19  { width: 663.708px; }
.hpspan-20  { width: 699.166px; }
.hpspan-21  { width: 734.624px; }
.hpspan-22  { width: 770.083px; }
.hpspan-23  { width: 805.541px; }
.hpspan-24  { width: 840.999px;	margin: 0; }

img.bk-cover {
  border: 1px solid #999999;
}
.bk-table {
  width:100%;
  clear: left; 
  margin-left: 8px;
 }
.bk-details {
  width: 75%;
  vertical-align: top;
}
.bk-details div {
  padding-left: 1em;
}
td.bk-details div.date {
  font-size: 0.9em;
  font-style: italic;
}
.bk-image {
  width: 25%;
}
div.signup {
  clear: left;
}
.blogpost p {
  margin: 4px 8px;
  padding: 0;
}
.tagline {
 text-align: right; 
 margin: 0
}
div.prev-posts {
  clear: left;
  padding-left: 6px;
}
div.prev-posts div {
  margin-bottom: 0.6em;
}
div.book-details {
  min-height: 332px;
}
div.book-details ul {padding-left: 28px;}
div.book-details ul li {
  padding: 0;
}
div.book-details ul li.creators {
  font-size: 1.2em;
}
div.book-details ul li.publisher {
  font-size: 1.1em;
}
div.book-info-rt {
  min-height: 228px;
  margin-bottom: 96px;
}
div.book-info div.contributors {
  position: absolute;
  bottom: 0px;
  min-height: 78px;
  width:  618px;/* Bit inelegant - shouldn't be needed */
}
div.book-info div.contributors div.ll { /* this is the actual bit which holds the contributors */
  min-height: 24px;  
}
div.contributors-legend {
  clear: both;
  margin-bottom: 0.6em; 
}
div.contributors-attribution {
	clear: both;
	margin-top: 1em;
}
div.contributors-attribution div.panel {
	padding: 4px 10px; 
	margin: 6px;
}

ul.plain-list {
  list-style: none;
  text-indent: -1.4em;
  margin: 0;
}
ul.plain-list li {padding: 4px 6px;}

