html, body { margin: 0; padding: 0; }
body { color: #333; font-size: medium; font-family: helvetica, arial, sans-serif; }

html { background: url(images/web-day-logo-web.png) no-repeat 50% -40px; }
body { position: relative; width: 760px; margin: 0 auto; }

div#header { height: 340px; }
div#content { padding-right: 160px; }
ul#nav { position: absolute; top: 340px; right: 0; width: 130px; margin: 0; padding: 10px 0 10px 20px; }
p#fineprint { margin: 2em 0; padding: 0; text-align: center; }


div#header {}
div#header h1, div#header p.slogan { margin: 0; padding: 0; text-indent: -10000px; }


ul#nav { list-style: none; background: url(images/nav_separator.png) left top no-repeat; }
ul#nav li { margin: 0 0 1em 0; padding: 0; background: url(images/link_background.png) left center no-repeat; }
ul#nav li a { color: #bd2838; font-weight: bold; text-decoration: none; letter-spacing: 1px; }


div#content {}
div#content h2 { font-size: 1.25em; margin: 0 0 0.5em 0; color: #bd2838; }
div#content h3 { font-size: 1.15em; color: #bd2838; }
div#content h4 { font-size: 1.0em; color: #bd2838; }
div#content p { margin: 0.5em 0; }
div#content a { color: #bd2838; text-decoration: none; }
div#content a:hover { text-decoration: underline; }

div#content div#time, div#content div#topics { padding: 0 0 1.5em 95px; background-position: 0px 6px; background-repeat: no-repeat; }
div#content div#time { background-image: url(images/time.png); }
div#content div#topics { background-image: url(images/program.png); }


p#fineprint { font-size: 0.75em; color: gray; }
p#fineprint a { color: gray; text-decoration: none; }
p#fineprint a:hover { text-decoration: underline; }


div#contact { padding-left: 125px; background: url(images/hdm_logo.gif) -28px 0 no-repeat; }


table#schedule { margin: 1em 0; }
table#schedule td { padding: 0.25em 0; }
table#schedule td.time { width: 7em; vertical-align: top; color: #555; }
table#schedule td.action { padding-left: 1em; }
table#schedule td.action em { display: block; }


div#content.overlayed { position: absolute; top: 0; left: -40px; width: 600px; padding: 1em 40px 0 40px; margin: 0; background: url(images/content_background.png) repeat-y left top; }

div#chat { margin: 1em 0; background-color: white; }
div#chat #messages { padding: 1px; border: 1px solid gray; overflow: auto; height: 330px; }
div#chat #messages table tr td.time { padding-right: 0.5em; vertical-align: top; opacity: 0.75; }
div#chat #messages table tr td.message {}
div#chat #messages table tr td em { opacity: 0.75; }
div#chat #messages table tr.fake td.time { text-indent: -10000px; background: url(images/loading.gif) no-repeat left center; }

div#chat form, div#chat form p { margin: 0; padding: 0; }
div#chat form p { position: relative; }
div#chat form p input { padding: 2px; border: 1px solid gray; }
div#chat form p input#message_content { display: block; width: 99%; margin: 0.5em 0; }
div#chat form p input#message_author { width: 10em; }
div#chat form p button { position: absolute; top: 0; right: 0; }

div#chat form p input.empty { font-style: italic; color: gray; }
div#chat form p input.with_error { padding: 0; border: 3px solid red; }

div#chat form p.tools { margin: 0.75em 0; font-size: 0.75em; }