/* General page structure */

body { 
padding:0;
margin:0;
background:url(images/back.jpg) #000000;
color:#E0B6B6;
font-size:82%;
font-family:Arial,Helvetica,Verdana,"Adobe Helvetica",sans-serif
}

#content ul, dl, ol, blockquote, table, p, fieldset, ins { max-width:650px }

#header {
background-position:bottom;
background-repeat:repeat-x;
background-color:black;
background-image:url(images/header.jpg);
color:inherit;
height:176px;
}

#header h1 {
margin:0;
padding:0;
background-repeat:no-repeat;
background-color:black;
background-image:url(images/h1.jpg);
color:inherit;
height:61px;
width:565px;
position:absolute;
left:0;
top:0
}


#header h1 a {
display:block;
margin:11px 255px 0 55px;
}
#header h1 a img {
width:310px;
height:50px
}


#header #mainmenu {
position:absolute;
margin:0;
padding:0;
display:block;
margin-top:60px;
width:610px;
left:0;
top:0;
height:88px;
background-color:black;
background-image:url(images/mainmenu_back.jpg);
background-position:right;
background-repeat:no-repeat;
color:inherit
}

#header #mainmenu img, .header #mainmenu a { margin:0; padding:0 }
#header #mainmenu span { display:none }


#subnavigation {
position:absolute;
width:162px; /* for IE 5.5 */
top:181px;
left:5px;
}

#subnavigation h2 {
font-size:1em;
text-align:center;
text-transform:uppercase;
font-weight:bold;
padding:0 0 8px 0;
margin:0;
border-bottom:1px solid #E0B6B6
}
#subnavigation h2 a, #subnavigation h2 a:visited {
color:#E0B6B6;
background:transparent;
text-decoration:none
}

#content {
margin-left:175px; margin-top:5px; margin-right:5px
}



/* Pretty borders */

.generic-container { padding-bottom:16px }

.top {
height:30px;
background:url('images/div_topleft.jpg');
color:inherit
}
.top div {
height:30px;
padding-left:30px;
padding-right:30px;
background-image:url('images/div_topright.jpg');
background-position:right;
background-repeat:no-repeat;
color:inherit
}
.top div div {
height:30px;
background:url('images/div_top.jpg');
color:inherit
}

.bottom {
height:30px;
background:url('images/div_bottomleft.jpg');
color:inherit
}
.bottom div {
height:30px;
padding-left:30px;
padding-right:30px;
background-image:url('images/div_bottomright.jpg');
background-position:right;
background-repeat:no-repeat;
color:inherit
}
.bottom div div {
height:30px;
background:url('images/div_bottom.jpg');
color:inherit
}

.center {
background:url('images/div_left.jpg');
color:inherit
}
.center div {
padding-left:30px;
padding-right:30px;
background-image:url('images/div_right.jpg');
background-position:right;
background-repeat:repeat-y
}
.center div div {
color:inherit;
background-image:url('images/div_back.jpg');
background-color:#333333;
text-align:left
}

/* undo some formats for inner divs */
.generic-container div div div { 
padding:0;
background-position:0 0;
background-repeat:repeat
}



#subnavigation #sister-pages { 
text-align:center;
list-style-type:none;
text-transform:uppercase;
margin:0;
padding:11px 0 0 0;
border-top:2px solid black
}
#subnavigation #sister-pages li { margin:0; padding:7px 0 0 0; font-size:0.9em }
#subnavigation #sister-pages li.current {
font-weight:bold;
color:white;
background:inherit;
}
#subnavigation #sister-pages li.separate {
margin-top:18px;
padding-top:18px;
border-top:1px solid #E0B6B6;
}
#subnavigation #sister-pages a, #subnavigation #sister-pages a:visited { text-decoration:none } 



/* Bottom notice */

address {
display:block;
margin:20px 0 0 175px;
padding-bottom:20px;
text-align:center;
background:transparent;
color:#888888;
font-size:0.9em;
font-style:normal
}
address a , address a:visited {
color:#888888;
background:transparent;
text-transform:uppercase;
font-weight:bold
}
address a.mail, address a.mail:visited { line-height:2em; text-align:center; text-transform:none }


/* Horizontal rules */

hr {
height:1px;
border:0 solid #E0B6B6;
margin-top:30px;
margin-bottom:0;
background:#E0B6B6;
color:#E0B6B6
}


/* Languages */

a#language, a#language:visited {
position:absolute;
right:6px;
top:4px;
text-decoration:none;
font-weight:bold;
font-size:0.9em;
background-position:right;
background-repeat:no-repeat;
padding-right:40px;
color:#AAAAAA
}

#header a.german { background-image:url(images/german.jpg) }
#header a.english { background-image:url(images/english.jpg) }
#header a:hover { color:white }


/* Font size switcher */

#font-size-switcher input { cursor:pointer }

#font-size-switcher { /* IE */
position:absolute;
right:0;
top:30px
} 

#font-size-switcher[id="font-size-switcher"] {
position:fixed;
top:auto; 
right:0;
bottom:5px
}


/* Random quote */

#subnavigation #randomquote { text-align:center }

#subnavigation #randomquote h2 {
text-align:center;
color:#E0B6B6;
background:transparent;
font-weight:bold;
font-size:0.95em;
font-family:Arial,Helvetica,Verdana,"Adobe Helvetica",sans-serif;
margin:0;
padding:0;
border:0
}

#subnavigation #randomquote blockquote {
text-align:center;
text-decoration:none;
font-style:italic;
font-size:0.95em;
font-family:"Times New Roman",Times,"Urw Chancery I",serif;
padding:0;
width:100%;
overflow:hidden;
margin:5px 0 0 0
}


/* Poll */

#subnavigation form#poll {
text-align:left;
margin:0 0 16px 0;
}

#subnavigation form#poll h2 {
text-align:left;
text-transform:uppercase;
background:transparent;
color:inherit;
font-weight:bold;
font-style:normal;
font-size:0.95em;
margin:0 0 8px 0;
padding:0;
border:0
}

#subnavigation form#poll input { margin-top:6px; padding:0 }

#subnavigation form#poll label:hover { color:#F0E6E6; background:transparent }



/* Search */

#quicksearch {
position:absolute;
right:4px;
top:110px;
padding:0;
width:160px
}

#quicksearch input {
width:90px;
margin:0
}

#quicksearch input.submit {
width:55px;
margin-left:5px
}

#searchresults { margin:20px }
#searchresults #quicksearch { position:static; width:auto }

#searchresults #quicksearch input {
width:auto;
display:inline;
margin:auto
}

#bigsearch input { margin-right:0.7em }



/* Common inline elements */

#content a, #subnavigation a, #searchresults a {
color:#FFDDDD;
background:transparent;
font-weight:bold
}
#content a:visited, #subnavigation a:visited, #searchresults a:visited { color:#FFB4B4; background:transparent }

img { border:0 }

.filename { font-family:Courier New,Courier,monospace }

.comment { background:transparent; color:#CE8080; font-size:0.9em } 
.comment a { background:transparent; color:inherit } 

q:before { content:"" }
q:after { content:"" }
q { font-style:italic }

acronym { border-bottom:1px dotted #957676; cursor:help }
a acronym { border:0; cursor:inherit }

ins {
font-style:italic;
text-decoration:inherit;
font-weight:bold;
border-top:1px solid #E0B6B6;
border-bottom:1px solid #E0B6B6;
padding:10px 0;
display:block
}

var { color:#F0C9C9; background:transparent; border-bottom:1px dashed #F0C9C9 }

strong { color:#EBBDBD; background:transparent; font-weight:bolder }
strong.intense { font-size:1.6em; text-align:center; display:block }



/* Common block elements */

p {
padding:0;
margin:19px 0 0 0;
font-family:Arial,Helvetica,Verdana,"Adobe Helvetica",serif
}

h2 {
margin:0;
padding:15px 0 0 0;
text-align:left;
font-size:1.9em
}

h2 img {
margin:0 0 20px 0;
padding:0;
}

h3 {
font-family:Arial,Helvetica,Verdana,"Adobe Helvetica",sans-serif;
color:#F4CACA;
background:transparent;
font-size:1.3em;
font-weight:bold;
margin:35px 0 0 0;
text-align:left;
border-bottom:1px solid #F4CACA;
padding:0 0 7px 0;
clear:left
}

h3 em { font-style:normal; text-transform:uppercase }

blockquote { font-style:italic; width:80%; margin:14px 30px 14px 30px; padding:0 }
blockquote em { text-transform:uppercase }

p.breadcrumb { font-size:0.9em; margin:0; padding:20px 0 20px 0 }

p#author { margin-bottom:35px } 

p.return-top {
margin:38px 0 0 0;
padding:0;
text-align:right;
font-size:0.85em;
height:30px;
max-width:inherit;
display:none /* CSS browsers need not show all "return to top" links */
}
#content p.return-top { display:block }
#content p.return-top a:link {
float:right;
padding-left:30px;
background-image:url(images/top1.gif);
background-repeat:no-repeat;
background-position:bottom left;
text-decoration:none;
border-bottom:1px solid #FFDDDD 
}
#content p.return-top a:visited {
float:right;
padding-left:30px;
background-image:url(images/top2.gif);
background-repeat:no-repeat;
background-position:bottom left;
text-decoration:none;
border-bottom:1px solid #FFB4B4 
}



/* Generic images */

p.extraimage {
float:left;
width:130px; /* for Opera 5 and 6 */
margin:0 1em 1.5em 0;
padding:0;
font-weight:bold;
font-size:0.9em;
text-align:center
}

p.extraimage img { margin-bottom:3px; }


p.blockpic { margin-top:19px; font-weight:bold; font-size:0.9em; text-align:center }
p.blockpic img { border:1px solid black }

ul.thumbnails { font-size:0.85em; margin:13px 0 10px 0; padding:0; list-style-type:none }
ul.thumbnails li { display:inline; margin:0; padding:0 }
ul.thumbnails li img { margin:10px 10px 0 0 }
p.thumbnails { clear:left; font-size:0.85em; margin-top:0; padding:0 }

ul.screenshots { clear:both; list-style-type:none; margin:30px 0 0 0; font-weight:bold; font-size:0.9em; padding:15px 0 0 0 }
ul.screenshots li { margin:0 0 20px 0; padding-left:0 }
ul.screenshots img { border:1px solid black }


/* Webrings and banners */

ul#banners { text-align:center; list-style-type:none; margin:0 0 10px 0; padding:0; font-size:0.7em }
ul#banners li { padding:0; margin:20px 0 0 0 }
ul#banners img { margin:0 }

ul#banners #ring-of-dragons { text-align:center; margin:47px 0 47px 0 }
ul#banners #ring-of-dragons img { display:block; margin:0 auto -75px auto }
ul#banners #ring-of-dragons a img { display:inline; margin:0 }

/* Nitpick lists */

ul.nitpicks {
list-style:square;
margin:0 0 0 20px;
padding-left:0;
text-align:left;
max-width:650px
}

ul.nitpicks p { margin-top:0; padding-bottom:1.5em }

ul.nitpicks ul { list-style-type:disc; margin-bottom:12px; margin-top:8px }
ul.nitpicks ol { margin-bottom:12px; margin-top:8px }
ul.nitpicks ul li { padding-top:4px }
ul.nitpicks ol li { padding-top:4px }

ul.nitpicks li table {
margin-top:2em;
font-size:1em
}
ul.nitpicks li th {
padding-right:2em;
text-align:left
}
ul.nitpicks li th.spanning {
padding-top:2em;
border-bottom:1px solid #E0B6B6
}

/* Introduction + funny quote */
div#introduction { max-width:650px; margin-top:1em }
div#introduction p { margin-top:0 }
div#introduction img { float:right }
div#introduction blockquote#funny {
margin:0 0 18px 18px;
padding:7px;
float:right;
border:2px ridge #E0B6B6;
width:150px;
text-align:center;
background-image:url('images/div_back_dark.jpg');
color:#EACBCB
}
div#introduction blockquote#funny p { margin:0; padding:0; font-size:1.05em; font-family:serif }
div#introduction br { display:block; margin-top:1em }

#new-nitpicks-links {
font-weight:bold;
margin:0 0 18px 18px;
padding:25px 7px 7px 7px;
float:right;
clear:right;
border:2px ridge #E0B6B6;
width:150px;
background-image:url('images/div_back_dark.jpg');
color:#EACBCB
}

#new-nitpicks-links ul {
margin:-17px 0 0 0;
padding:27px 0.5em 0.5em 0.5em;
list-style-type:none;
}

#new-nitpicks-links h3 {
margin:0;
height:20px;
padding:0;
font-size:1em;
border:0;
}

#new-nitpicks-links h3 img { float:none }


ul.nitpicks li {
margin:0 0 0 15px;
padding-top:38px;
padding-bottom:0;
}

ul.nitpicks p.patch {
background:transparent;
color:#CE8080;
font-style:italic;
font-size:0.85em; 
border-top:1px solid #CE8080;
margin-top:5px;
padding-top:2px;
width:70%;
margin-bottom:0;
text-align:left
}
ul.nitpicks p.patch a, ul.nitpicks p.patch a:visited { color:#CE8080 }

ul.nitpicks img { margin-top:7px }
ul.nitpicks img.patch { float:right; margin-top:0; margin-bottom:5px }
ul.nitpicks img.nitpick-ss { margin-top:5px }

ul.nitpicks .foundby {
display:block;
margin-top:10px;
margin-bottom:15px;
font-size:0.85em
}

ul.nitscategories { clear:left }
ul.nitscategories li { font-style:italic; font-size:0.9em }
ul.nitscategories li a { font-style:normal; font-size:1.1em; margin-right:5px }

ul.nitpicks img.new { width:40px; height:17px; vertical-align:bottom }

/* Forms */

form { margin:0 }

body#guestbook #content form { margin-top:10px; text-align:left }
body#guestbook #content form label { display:block; font-weight:bold; padding-top:20px; padding-bottom:6px }
body#guestbook #content form textarea { margin-bottom:20px } 

body#submit #content form { margin-top:30px; margin-bottom:20px; width:auto }
body#submit #content form textarea { margin-top:0; margin-bottom:10px }
body#submit #content form label { display:block; margin-bottom:2px; margin-top:12px }

body#newsletter #content form { margin-top:30px; margin-bottom:40px }
body#newsletter #content form input { margin-top:12px; margin-bottom:0 } 
body#newsletter #content form input#address { margin-left:1em } 

fieldset { margin:0; padding:0; border-color:#000; border-width:0; border-style:dotted }



/* News */

.news { max-width:680px; padding-bottom:20px }
.news h3 { margin-top:65px; border:0; padding-bottom:3px; margin-bottom:22px }
.news h3#latest { margin-top:42px }
.news h3 img { float:left; margin-right:8px }

.news h3 span {
display:block;
margin-left:50px;
background:transparent;
color:#CE8080;
font-weight:normal;
font-style:italic;
font-size:0.65em;
padding-top:2px;
padding-bottom:6px;
border-bottom:1px solid #E0B6B6
}

.news p { clear:left }
.news p.archive { margin-top:45px; margin-left:40px; display:list-item; list-style-type:square }

.news table.pollsummary { border:0; margin:10px 0 10px 20px }
.news table.pollsummary caption { text-align:left; font-style:italic; font-weight:bold; padding-top:22px; padding-bottom:13px }
.news table.pollsummary td { padding-right:10px; vertical-align:top }
.news table.pollsummary td.percentage { font-weight:bold; padding-right:0 }

.news dl { margin:10px 0 40px 10px }
.news dl dt { float:left }
.news dl dd { height:33px }
.news h3.legend {
margin:35px 0 5px 0;
font-style:italic;
font-size:1.1em;
font-weight:normal;
clear:both;
padding-top:40px
}


/* Special elements: Nitpicks index */

#nitpicksmain {
background-image:url(images/nitpicks.jpg);
background-repeat:no-repeat;
background-color:transparent;
color:inherit;
padding-left:130px;
height:400px;

display:table-cell;
/* I have to use this as a workaround for an odd bug in Opera 7; any other suggestions welcome */

font-size:1em;
vertical-align:top
/* I have to use those to fix the display in Opera 6 due to the workaround above */

}

#nitpicksmain ul { margin:0 0 0 30px; padding:0 }
#nitpicksmain ul li { margin:0; padding:0 }
#nitpicksmain p { margin:15px 0 20px 15px; padding:0 }


/* Special elements: FAQ */

dl.faq { text-align:left; list-style:none; padding-left:0; margin-left:0  }
dl.faq dt { font-size:1em; font-weight:bold; font-style:italic; padding:0; padding-right:5px; margin-left:0; margin-top:35px }
dl.faq dd { font-weight:normal; font-style:normal; padding-left:20px; margin-top:10px; margin-left:0 }
dl.faq blockquote { font-weight:normal }


/* Special elements: Nitpicking rules */

ul.rules { list-style-type:none; margin-left:10px; padding-left:0; margin-top:0; margin-bottom:50px }
ul.rules li { margin-left:0; padding-left:0; padding-top:33px }
ul.rules ul { margin-top:10px; font-style:italic; width:88%; clear:left }
ul.rules ul li { padding-top:2px }
ul.rules img { float:left; margin-right:10px; margin-bottom:20px }
ul.rules li h4 {
background:transparent;
color:#F4CACA;
font-weight:bold;
font-size:1.3em;
margin-top:5px;
margin-bottom:5px;
text-align:left;
}


/* Special elements: Links page */

ul.links { list-style-type:none; margin-left:0; padding-left:0 }
ul.links li { padding:20px 15px 0 15px }


/* Special elements: Various lists */
 
ul.index li { margin-top:1.5em }  
ul.index { padding-bottom:25px }  

ul.sisters { list-style-type:none }
ul.sisters li { float:left; margin-right:10px }

ul { margin-bottom:0 }

dl { margin-left:30px; list-style-position:outside }
dl dt { font-weight:bold; margin-top:35px; display:list-item }
dl dd { margin:5px 0 25px 0 }

dl.code {
font-family:Courier New,Courier,monospace;
list-style-type:none /* for Opera 6 */
}
dl.code dt { display:block; float:left; clear:left; margin:0; width:2.6em }
dl.code dd { margin:0 }

dl#fun {
background-image:url('images/fun.jpg');
background-repeat:no-repeat;
color:inherit;
min-height:250px;
padding:0 0 0 210px;
margin:0;
}
dl#fun dt { margin-top:0 }
dl#fun dd { margin-bottom:18px }

.fun #content ul#category {
list-style-type:none;
padding:0;
margin:20px 0 0 0
}
.fun #content ul#category li { display:block; height:90px }
.fun #content ul#category img { display:block; float:left; width:90px; height:68px; margin-right:15px }



/* Special elements: Poll archive */

table.poll {
margin-bottom:55px;
table-layout:fixed;
border-collapse:collapse
}
table.poll caption {
text-align:left;
font-weight:bold;
padding-top:18px;
padding-bottom:18px
}
table.poll caption span {
font-size:0.85em;
font-weight:normal
}
table.poll td { vertical-align:top; padding:10px 10px 0 5px }
table.poll td.option { width:240px }
table.poll td.percentage { width:50px; font-weight:bold }
table.poll td.graph { width:360px }
table.poll td.graph img {
border-left:1px solid #B09393;
border-right:1px solid #B09393;
}


/* Special elements: Credits */

body#credits #content div#list { width:480px; margin:20px 0 0 0 }
body#credits #content div#list ul { position:relative; width:47%; list-style-type:none; list-style-position:inside; margin:0 0 20px 0; padding:0 }
body#credits #content div#list ul li { padding:0 } 
body#credits #content div#list ul#first { float:left; text-align:right }
body#credits #content div#list ul#second { float:right; text-align:left }
body#credits #content div#list p { clear:both }



/* Special elements: Quiz */

form#quiz { padding-bottom:50px }
form#quiz h3 { margin-bottom:10px; padding:0 0 10px 0; font-size:1.1em }
form#quiz fieldset { margin-top:40px }
form#quiz input { float:left; clear:left }
form#quiz #results input { float:none }
form#quiz label { display:block; padding-left:30px }



/* Things to hide from CSS-*capable* browsers */

hr { display:none }
.generic-container hr { display:block }


/* Printer layout */

@media print {

body { color:black; background:transparent }

p.return-top, p.return-top a, p.return-top a:visited, #header, .top-outer,
.bottom-outer, #subnavigation {
display:none
}
.center-outer, .center-middle { padding:0 }

#content, address { margin-left:0 }
address a { color:black; background:transparent }
address a { display:none }
address a.mail { display:block }

a, a:visited {
color:black;
text-decoration:none;
font-weight:inherit;
background:transparent
}
acronym { border:0 }
acronym:after { content:" ("attr(title)")" }
address, address a { color:inherit; background:transparent }
address:first-line { color:inherit; background:transparent }

ul, ol, dl { color:inherit }
hr { color:black; background-color:black; border-color:black }
h2 { text-align:left }

h2 img[src] { width:0; height:0; border:0 }
h2 img:before { content:attr(alt) } 

.news h3 span, h3 { color:black; background:transparent; border-color:black }

h3, ul.nitpicks li p { border-color:black }

ul.nitpicks img {
display:block;
padding-bottom:6pt;
border:0;
color:black;
background:transparent;
font-family:Arial,Helvetica,Verdana,"Adobe Helvetica",sans-serif;
font-size:10pt;
font-style:italic
}

ul.nitpicks img:after { content:attr(title) }
ul.nitpicks p.patch { color:black; border-color:black }
ul.nitpicks img.patch { padding:0 0 4pt 4pt }
img.new { border:0 }

#links #content dl a:after {
display:block;
content:" [ "attr(href)" ]";
font-family:monospace;
font-weight:normal;
font-size:0.85em
}

}
