body {
    margin:20px 0; font:small sans-serif; color:#bbb;
    background:#111 url(body.png) repeat fixed;
}

::-moz-selection {
    color:#000; background-color:#fff;
}
a::-moz-selection {
    color:#444; background-color:#bbb;
}

a {
    text-decoration:underline; color:#777;
}
a {
    padding-left:17px; background:url(link.gif) no-repeat left center;
}
a[target] {
    padding-left:15px; background-image:url(external_link.gif);
}
a.internal {
    padding-left:15px; background-image:url(internal_link.gif);
}
a:hover, a:focus {
    background-image:url(link_active.gif); color:#fff;
}
a[target]:hover, a[target]:focus {
    background-image:url(external_link_active.gif);
}
a.internal:hover, a.internal:focus {
    background-image:url(internal_link_active.gif);
}
a img {
    border:none;
}
a.imagelink {
    padding:0 !important; background:none !important;
}

h1, h2, h3 {
    margin-top:0; text-align:left; color:#fff;
}
h1 {
    margin:-20px -20px 20px -20px; padding:10px 20px;
    background:url(heading.png) repeat fixed; font-size:180%;
}
h2 {
    border-bottom:1px solid #888; font-size:150%;
}
h3 {
    font-size:120%;
}
hr {
    clear:both; height:1px; border:none; background-color:#888;
}
table {
    border-collapse:collapse;
}
tr {
    vertical-align:top;
}
ul {
    list-style-image:url(bullet.gif);
}

table.projects tr {
    border-top:1px dashed #888;
}
table.projects tr td {
    padding:20px 0;
}
td.image {
    padding-left:20px !important;
}

#main {
    width:900px; margin:0 auto;
}

#top {
    padding-bottom:10px;
}

#navi {
    float:left; width:200px; height:100%; list-style:none none; margin:0;
    padding:0; font-size:120%;
}
#navi li {
    margin:0;
}
#navi li a {
    display:block; width:170px; padding:10px 10px 10px 20px !important;
    font-weight:bold; text-decoration:none; color:#888; background:none;
}
#navi li a:hover, #navi li a:focus {
    color:#fff;
}
#navi li .active {
    color:#fff; background:#666 url(navi.gif) repeat-y left top;
}


#navi li ul {
   list-style:none none; margin:0; padding:0; font-size:80%;
}
#navi li ul li {
   
}
#navi li ul li a {
   display:block; width:150px; padding:5px 10px 5px 40px !important;
   font-weight:bold; text-decoration:none; color:#888; background:none;
}
#navi li ul li .active {
    color:#fff; background:#444;
}

#content {
    margin-left:210px; padding:20px; text-align:left;
    background:#222 url(content.png) repeat fixed;
}
#content_footer {
    position:relative; width:690px; height:20px; margin-left:210px;
    margin-top:-20px; background:url(content_footer.png) no-repeat top left;
}

#footer {
    width:900px; margin:10px auto 0 auto; text-align:right;
}

