body {
    font-family: Trebuchet MS, Lucida Sans Unicode, Lucida Grande, Lucida Sans, Arial, sans-serif;
    font-size: 16px;
    line-height: 150%;
    color: #222;
    margin: 0;
    padding: 0;
}

ul,ol,dl,h1,h2,h3,h4,h5,h6,td,th,caption,pre,p,blockquote,input,textarea {
    font-size: 16px;
    line-height: 150%;
}

h1,h2,h3,h4,h5,h6 { 
    font-family: Trebuchet MS, Tahoma, Arial, sans-serif;
    margin: 0; 
    padding: 5px 0;
    color: #000;
    clear: both; 
}


h1 { font-size: 240%; line-height: 130%; font-weight: normal; }
h2 { font-size: 180%; line-height: 130%; font-weight: normal; margin: 0 }
h3 { font-size: 140%; line-height: 130%; font-weight: normal; }
h4 { font-size: 100%; line-height: 130%; font-weight: bold }
h5 { font-size:  90%; line-height: 130%; font-weight: bold }
h6 { font-size:  80%; line-height: 130%; font-weight: bold }

#header,
#footer {
    position: relative;
    height: 100px;
    padding-left: 100px;
    background: black url('images/header.png') repeat-x left top;
}

#footer {
    padding: 0;
    background-image: url('images/footer.png');
}

#header h1.title {
    font-size: 2em;
    line-height: 200%;
    color: white;
}

#header a.logo {
    display: block;
    position: absolute;
    top: 5px;
    left: 10px;
    width: 60px;
    height: 70px;
    background: url('images/logo_small.png') no-repeat left top;
}

#header div.slide_no {
    position: absolute;
    top: 43px;
    right: 20px;
    width: 10em;
    height: 30px;
    color: #666;
    font-size: 0.8em;
    text-align: right;
}

#header a.presentation {
    display: block;
    position: absolute;
    top: 12px;
    right: 20px;
    width: 15em;
    height: 20px;
    color: #666;
    font-size: 1.8em;
    text-align: right;
    font-weight: normal;
    text-decoration: none;
}

#footer {
    position: fixed;
    bottom: 0px;
    left: 0;
    height: 80px;
    width: 100%;
}

#footer div.controls {
    position: relative;
    top: 46px;
    left: 20px;
    float: left;
    width: 40%;
    color: #777;
}

#footer div.controls a {
    text-decoration: none;
    font-size: 0.8em;
    color: #777;
    outline: none;
}

a:hover,
#header a.presentation:hover,
#footer div.controls a:hover {
    color: #ff7f00;
}

#footer div#clock {
    position: absolute;
    top: 0px;
    left: 20px;
    width: 7em;
    color: #bbb;
    font-size: 0.8em;
}

#footer div#elapsed {
    position: absolute;
    top: 0px;
    right: 20px;
    width: 5em;
    color: #bbb;
    text-align: right;
    font-size: 0.8em;
}

#footer div#elapsed.cool {
    color: #8888ff;
}

#footer div#elapsed.warm {
    color: #cccc00;
}

#footer div#elapsed.warn {
    color: #ff7f00;
}

#footer div#elapsed.over {
    color: #ff0000;
}

#footer div.copyright {
    position: relative;
    top: 46px;
    font-size: 0.8em;
    float: right;
    margin-right: 20px;
    width: 40%;
    color: #777;
    text-align: right;
    font-size: 0.8em;
}

#footer a.website {
    position: relative;
    display: block;
    width: 25em;
    margin: 0 auto;
    top: 46px;
    text-align: center;
    font-size: 0.8em;
    color: #777;
    text-decoration: none;
    outline: none;
}

#footer a.website:hover {
    color: #ff7f00;
}


#content {
    margin: 20px 0 10px 80px;
    padding-bottom: 100px;
}

#content h1 {
    /* each slide should have just one h1 which we put in the header */
    display: none;
}

div.frontis {
    margin-right: 100px;
    text-align: center;
}

div.frontis h1, 
div.frontis h2, 
div.frontis h3, 
div.frontis h4 {
    text-align: center;
    margin: 10px 0;
}

#content div.frontis h1 {
    display: block;
}

ul {
    margin: 0;
}

ul li {
    list-style: disc;
    font-size: 1.4em;
    line-height: 150%;
}

ol.toc li {
    font-size: 0.9em;
    line-height: 120%;
}

div.more {
    padding: 4em 0 0 20em;
    font-style: italic;
    color: #aaa;
    font-size: 0.8em;
}

pre {
    /*padding-left: 25px; */
    line-height: 135%;
    padding: 0 0 0 20px;
    margin-top: 0px;
}

code {
    color: #008;
}

span.edit {
    font-weight: bold;
    background-color: #eef;
    padding: 3px 2px;
}

span.keyword {
    color: #A00;
}

span.package {
    color: #080;
}

span.variable {
    color: #00a;
}

span.placeholder {
    color: #084;
}

span.string,
span.string span.package {
    color: #66F;
}

span.arrow {
    color: #666;
}

span.comment {
    color: #888;
}

span.error {
    color: #a00;
}

span.ok {
    color: #0a0;
}

body.fullscreen #footer {
    display: none;
}

body.fullscreen #header {
    display: none;
}

body.fullscreen #content h1 {
    display: block;
    font-size: 1.5em;
}

body.fullscreen #content h2 {
    font-size: 1.3em;
}

a.website {
    font-size: 1.2em;
    color: #ff7f00;
    margin: 10px;
}

a {
    outline: none;
}

h5 {
    color: #444;
    margin-top: 20px;
    margin-bottom: 0;
}

p.abw {
    color: #666;
    font-size: 0.7em;
    line-height: 130%;
    margin: 0 5em 1.5em 0;
    padding: 0;
}
