/* Basic layout for the Tolkien Meta-FAQ and related pages.       */
/* Created by Steuard Jensen, 13 June 2009. Updated 18 July 2009. */

body, html {
  margin: 0;
  padding: 0;
  font-size: large;
  font-family: Constantia, "Lucida Bright", Lucidabright,
    "Lucida Serif", Lucida, "DejaVu Serif", "Bitstream Vera Serif",
    Georgia, serif;
  /*font-family: "Palatino Linotype", Palatino, Palladio,
    "URW Palladio L", "Book Antiqua", Baskerville,
    "Bitstream Charter", Georgia, serif;*/
}

p, blockquote, pre {
  font-weight: normal;
}
p { text-indent: 1.5em; text-align: left; }
p.noindent, p.crossref, p.centered { text-indent: 0em; }
p.nojust { text-indent: 0em; text-align: left; }

ul,ol,dl {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
dd { margin-bottom: 1em; }

pre { overflow: auto; width: 100%; }

/**********         Styles by Class         **********/

.content {
  margin: 1em 11.1em 1em 10.85em;
  padding: 1px;
}
.content p, .content ul, .content ol, .content dl, .content pre,
.content table, .content blockquote, .refitem {
  font-size: medium;
}

.content p, .content .spaced, .content hr, .content dl {
  margin-left: 1em; margin-right: 1em;
}
.content .qlist p { margin-left: 0; margin-right: 0; }

.content .intro {
  width: 80%;
  margin-left: auto; margin-right: auto;
}

.content h2 {
  font-size: 1.25em;
  margin: 1em 2em 0.8em 0em;
  margin-right: 10%;
  margin-left: -1px;
  padding: 0.5em 0em 0.5em 2em;
  padding-right: 1%;
  padding-left: 11%;
  text-align: center;
  border: none;
}

.content h3 {
  text-align: center;
  margin-top: 0.75em; margin-bottom: 0.75em;
  margin-left: 15%; margin-right: 15%;
  padding: 0.25em 0.5em;
  font-size: 1.1em;
}
.qgroup h3 { font-size: 1em; margin-left: 20%; margin-right: 20%; }
.sections li h3 {
  text-align: left;
  margin: 0.75em 0;
  margin-right: 20%;
}

.content h4 {
  margin-top: 0.5em; margin-bottom: 0.5em;
  margin-left: auto; margin-right: auto;
  text-align: center;
  font-weight: bold;
}
.content ol h4 {
  margin-left: 0;
  text-align: left;
}

.content .qgroup {
  margin-top: 1em; margin-bottom: 1em;
  margin-left: auto; margin-right: auto;
  width: 95%;
  border: thin solid;
  padding-bottom: 0.5em; 
   /* Padding ONLY for Firefox table curved corner bug: FIX. */
}

/* Table formatting */
.content table {
  border: none;
  table-layout: fixed;
  border-collapse: collapse;
}

.contents, .topcontents { margin-left: auto; margin-right: auto; }
.contents col.space { width: 2em; }

.content .topcontents {
  margin-top: 1em;
  border: solid 1px;
  width: 90%;
}
.topcontents td { padding: 0.5em; }
.topcontents col.list { width: 49%; }

td.emph, td.topemph {
  font-weight: bold;
  text-align: center;
}
td.topemph {
  padding-bottom: 1em;
}
td.bottomrows {
  text-align: center;
  padding-top: 1em;
}

col.qcol { width: 60%; }
col.acol { width: 40%; }
.qgroup td.alinks { padding-left: 1em; border-left: thin solid; }
.qgroup td { padding: 0.25em; }

/* Question list entries (OL.qlist) */
.qlist {
  margin: 0.5em 1em;
  padding: 0;
  list-style-type: decimal;
}

.qlist li { 
  border: thin solid;
  list-style-position: inside;
  padding: 0.5em 0 0 0.5em;
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: bold;
}
/*.qlist li.nobreak { 
  border-top: thick solid;
  margin-top: -1.2em;
}*/

.qlist .answer {
  margin: 1em 0 0 3em;
  padding: 0 0.5em 0.1em 1em;
}

.qlist pre { text-indent: 0em; }
.qlist blockquote {
  margin-left: 2em;
  padding-left: 0.5em;
  text-indent: 0;
}
.qlist blockquote p { margin-left: 0em; text-indent: 0; }

.qlist .answer p:first-child {
  padding-top: 0.5em;
}
.qlist .answer p.crossref {
  margin: 0 -0.5em 0 -1em;
  padding: 0.5em 1.5em 0.5em 1em;
}

.qlist li li {
  border: none;
  list-style-position: outside;
  padding: 0em 2em 0em 0em;
  margin-left: -1em;
  text-indent: 0em;
  margin-top: 0em;
  margin-bottom: 0em;
  font-weight: normal;
}

/* Spaced lists, as opposed to default close lines */
.spaced li, .qlist li .spaced li, ol.minorlist li,
ol.sections li, ol.subsections li {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
.spaced li li, .qlist li .spaced li li, ol.minorlist li li,
ol.section li li, ol.subsections li li {
  margin-top: 0em;
  margin-bottom: 0em;
 }

ol.sections { list-style-type: upper-roman; }
ol.subsections { list-style-type: upper-alpha; }
ol.qcontents { list-style-type: decimal; }
ol.minorlist { list-style-type: lower-alpha; }

.secgroup { margin-top: 0.25em; margin-bottom: 0.5em; }

hr { margin-top: 0.5em; margin-bottom: 0.5em; }
hr.endq { display: none } /* HRs separate Qs when styles are missing*/

a.qname { position: relative; top: -2.5em; } /* Q link targets*/


/* Misc. utility classes */
.noshow { visibility: hidden; }
.clearall { clear: both; }
.smaller { font-size: smaller; }
.smalltext { font-size: 0.67em; }
.title, .vocab { font-style: italic; }
.important { font-weight: bold; }
.noborder { border: none; }
.secintro { font-weight: bold; text-decoration: underline; }

.optlist th, .optlist td { text-align: center; }
.optlist .tleft { text-align: left; }

/* Centering classes */
.displayed, .centered, .centeronly, .centered td.bottomrows,
.centered td.centered, .centered td.topemph { text-align: center; }
div.displayed, div.centered { margin-top: 1em; margin-bottom: 1em; }
img.displayed, img.centered, table.displayed, table.centered {
  margin-left: auto; margin-right: auto;
}
.displayed>*, .centered>*, .centeronly>* {
  margin-left: auto; margin-right: auto;
}
.displayed td, .centered td {
  text-align: left;
}

.inset {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  text-align: center;
  border: solid 1px;
}
.inset p { text-align: center; }

/* Float classes */
.content .alignleft, .content .alignright {
  position: relative;
  /*font: large Georgia, serif;*/
  margin: 0.25em 0;
  border-style: none;
}
.content .alignleft {
  float: left;
  left: -1px;
  padding: 0.5em 0.5em 0.5em 0;
  clear: left;
}
.content .alignright {
  float: right;
  right: -1px;
  padding: 0.5em 0 0.5em 0.5em;
  clear: right;
}


/**********          Styles by ID          **********/

/* Header definitions */
#header {
  margin: 0.5em 11.1em 1em 0em;
  padding: 0em 1em 0em 10.85em;
  text-align: center;
  min-height: 123px;
  /*-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
  filter: alpha(opacity=80);
  opacity: 0.4;*/
}

#headimg img {
  position: absolute;
  left: 1.35em;
  top: 18px;
  margin: 0 1em 0 0;
  border: none;
}
body>#headimg img { position: fixed; }
#header h1 {
  /*font-family: Apple Chancery,URW Chancery,Monotype Corsiva,serif;*/
  font-size: 2.1em;
  margin: 0.2em 0;
}
#header h2 {
  margin: 0.15em 0;
  font-size: 1.6em;
}
#header h3 {
  margin: 0.1em 0;
  padding: 0 0 1px 0;
  width: 100%;
  text-align: right;
  font-size: 1.2em;
  font-weight: normal;
  font-style: italic;
}
#header h3 span {
  font-size: 0.6em;
}
#header h4 {
  margin: 0;
  padding: 0 0 2px 0;
  width: 100%;
  text-align: right;
  font-size: 0.8em;
  font-weight: normal;
}

/* Navigation panel: links to site pages */
#nav {
  position: absolute;
  top: 0.5em;
  left: 0.5em;
  width: 9.25em;
}
body>#nav { position: fixed; }

#hoverpre {
  position: absolute;
  bottom: 0.5em;
  left: 0;
  width: 1px;
  height: 1px;
  z-index: -1;
}

#nav a {
  border: none;
  display: block;
  width: 100%;
  padding: 0.25em;
  margin: 0.5em 0;
  text-align: center;
  text-decoration: none;
}
#nav>a {
  border: 1px solid;
  border-color: transparent;
}
#nav a.logo {
  border: none;
  padding: 0 0 3px 0;
  margin-top: 0.1em;
  margin-bottom: 0.66em;/*1em;*/
  margin-left: auto;
  margin-right: auto;
}
#nav a.logo img {
  border: none;
  /*margin-bottom: -1px;*/
}

/* Navigation information popup span */
#nav a span { display: none; }
#nav a:hover span {
  display: inline;
  position: absolute;
  top: 100%;
  width: 100%;
  left: 0;
  margin: 0.5em 0;
  padding: 0.25em;
  border: none;
  font-size: medium;
}
#nav>a:hover>span {
  border: 1px solid;
  border-color: transparent;
}
#nav a:hover span span {
  position: static;
  margin: 0;
  padding: 0;
}


/* Reference column: search and newsgroups */
#ref {
  position: absolute;
  /*top: 142px;*/
  top: 123px;
  padding-top: 1.5em;
  right: 0;
  width: 10.5em;
  overflow: hidden;
}
body>#ref { position: fixed; }

.refitem {
  margin: 0 0 0.5em 0;
  padding: 0.4em;
}

#ref ul {
  margin: 0 0 0 0.5em;
  padding: 0;
  list-style-type: none;
}
#ref .cleartop {
  margin: 0.5em 0 0 0;
}

/* Add borders to distinguish targeted elements */
.qlist li:target .answer {
  border-top: 1px solid;
  border-left: 1px solid;
}
.content h2:target {
  border-top: 1px solid;
  border-right: 1px solid;
  border-bottom: 1px solid;
}

/* CSS3 corner rounding: recent browsers only */
.content, #nav a, #nav a:hover span, .content h3, .inset,
.topcontents {
  -moz-border-radius: 1em;
  -webkit-border-radius: 1em;
  border-radius: 1em;
}
/* Webkit doesn't curve if border is too big for box */
#nav a, .content h3 { -webkit-border-radius: 0.8em; }
#header, .content h2, .alignleft {
  -moz-border-radius-topright: 1em;
  -moz-border-radius-bottomright: 1em;
  -webkit-border-top-right-radius: 1em;
  -webkit-border-bottom-right-radius: 1em;
  border-top-right-radius: 1em;
  border-bottom-right-radius: 1em;
}
.refitem {
  -moz-border-radius-topleft: 1em;
  -moz-border-radius-bottomleft: 1em;
  -webkit-border-top-left-radius: 1em;
  -webkit-border-bottom-left-radius: 1em;
  border-top-left-radius: 1em;
  border-bottom-left-radius: 1em;
}
/* Firefox doesn't seem to support table corner curving*/
/*.qgroup table tr.odd:last-child td:last-child,*/
.qgroup {
  -moz-border-radius-bottomright: 0.67em;
  -webkit-border-bottom-right-radius: 0.67em;
  border-bottom-right-radius: 0.67em;
}
.qlist li, .qlist .answer {
  -moz-border-radius-bottomright: 1em;
  -webkit-border-bottom-right-radius: 1em;
  border-bottom-right-radius: 1em;
}
.qlist li li {
  -moz-border-radius-bottomright: 0;
  -webkit-border-bottom-right-radius: 0;
  border-bottom-right-radius: 0;
}


/* Fallback styling in case Google stylesheet doesn't load */
.cse-branding-bottom .cse-branding-text {padding-top:4px;}
.cse-branding-bottom .cse-branding-logo,
.cse-branding-bottom .cse-branding-text {display:block;float:left;}
.cse-branding-text {-x-system-font:none;font-family:Arial;
font-size:10px;font-size-adjust:none;font-stretch:normal;
font-style:normal;font-variant:normal;font-weight:normal;
line-height:normal;}
/* Also, override their now-redundant margin setting. */
.cse-branding-bottom .cse-branding-form {margin-bottom:0 !important;}
