/* Styles shared by all sections */

    html, body {
        font-size:        14px;
        font-family:      sans-serif;
        color:            white;
        background-color: #444;
        border:           0px;
        margin:           0px;
        padding:          0px;
    }

    a, a:visited {
        color:              #062;
        text-decoration:    underline;
    }
    a:hover {
        color:              #2c6;
    }

    #header {
        background-color:       black;
        position:           fixed;
        top:                0px;
        right:              0px;
        left:               0px;
        height:             38px;
        border-bottom:      4px solid #050;
        z-index:            50;
    }
    #header_text {
        font-weight:        bold;
        color:              #cdcccc;
        padding-left:       200px;
        line-height:        2em;
        font-weight:        bold;
    }
    #header_text a, #header_text a:visited {
        color:              #cdcccc;
    }
    #header_text a:hover {
        color:              #fff;
    }
    #header_text ul {
        padding:            0;
        margin:             0;
    }
    #header_text li {
        list-style-type:        none;
        float:                  left;
        padding:                0;
        margin:                 11px 4px 0 0;
        height:                 26px;
        border-top:             1px solid #6a6;
        border-right:           1px solid #252;
        border-left:            1px solid #6a6;
        white-space:            nowrap;
        background-color:       black;
        -moz-border-radius:     8px 8px 0 0;
        -webkit-border-radius:  8px 8px 0 0;
    }
    #header_text li a {
        padding:            .5em 1em;
        text-decoration:    none;
    }
    #header_text li a:hover {
        text-decoration:    underline;
        color:              #fff;
    }
    #header_text li div {
        display:            none;
    }
    #header_text li:hover {
        background-color:   #191;
    }
    #header_text li:hover a {
    }
    #header_text li.cur {
        background-color:   #050;
    }
    #header_text li.cur a {
        color:              #fff;
    }
    #header_text li.cur:hover {
        background-color:   #191;
    }
    #header_text li.cur:hover a:hover {
    }
    #header_text li.cur:hover li a {
        color:          #cdcccc;
    }
    #header_text li.cur:hover li a:hover {
    }
    #header_text li:hover div {
        display:        block;
        position:       absolute;
        width:          784px;
        top:            30px;
        left:           190px;
        line-height:    2em;
        padding:        8px 10px 20px 10px;
    }
    #header_text li ul {
        list-style-type: none;
    }

    #header_text li:hover ul li {
        background-color:   #040;
        background-image:   none;
        color:              #cdcccc;
        margin:             0;
        float:              left;
        height:             2em !important;
        padding:            0em 1em;
        border-left:        none;
        border-top:         2px solid #191;
        border-right:       1px solid #6a6;
        border-bottom:      1px solid #474;
        -moz-border-radius:     0px;
        -webkit-border-radius:  0px;
    }
    #header_text li:hover ul li.first {
        border-left:        1px solid #6a6;
        -moz-border-radius-bottomleft:      11px;
        -webkit-border-radius-bottomleft:   11px;
    }
    #header_text li:hover ul li.last {
        border-right:       1px solid #363;
        -moz-border-radius-bottomright:     11px;
        -webkit-border-radius-bottomright:  11px;
    }
    #header_text li:hover ul li:hover {
        background-color:   #191;
    }
    #header_text li:hover ul li a {
        margin:             0em -1em;
    }
    #header_text li:hover ul li a:hover {
        color:              #fff;
    }

    #header_logo {
        position:           absolute;
        display:            inline;
        left:               10px;
        top:                100%;
        height:             64px;
        margin-top:         -32px;
        z-index:            99;
    }
    #header_logo a {
        font-size:          160%;
        color:              white;
        text-decoration:    none;
        font-weight:        bold;
    }

    #header-end {
        background-repeat:  repeat-x;
        margin-top:         40px;
        height:             36px;
    }

    #content {
        margin:             0px;
        padding:            5em 0em 7em 0em;
        width:              964px;
    }

    #footer-start {
    }
    #footer {
    }
    #copyright {
        position:           absolute;
        top:                .25em;
        right:              .5em;
        font-size:          80%;
        color:              #ddd;
        margin:             .5em;
        z-index:            999;
    }

/* Shared formatting for the left-handed dark border */

    .inset {
        position:               relative;
        background-color:       #e6e6f0;
        color:                  #115;
        background-position:    top;
        background-repeat:      repeat-x;
        margin:                 0;
        margin-left:            25px;
    }
    .inset .left {
        position:               absolute;
        top:                    0;
        bottom:                 0;
        margin:                 0 0 0 -25px;
        width:                  30px;
        float:                  left;
    }
    .inset .left .middle {
        position:               absolute;
        top:                    12px;
        bottom:                 12px;
        width:                  30px;
        background-repeat:      repeat-y;
        background-position:    left;
    }
    .inset .left .top {
        position:               absolute;
        top:                    0;
        height:                 12px;
        width:                  30px;
        background-repeat:      no-repeat;
        background-position:    top left;
    }
    .inset .left .middle .title {
        position:               absolute;
        top:                    0;
        bottom:                 0;
        width:                  100%;
        background-repeat:      no-repeat;
        background-position:    8px .5em;
    }
    .inset .left .bottom {
        position:               absolute;
        bottom:                 0;
        height:                 12px;
        width:                  30px;
        background-repeat:      no-repeat;
        background-position:    bottom left;
    }
    .inset .content {
        padding:        .25em 1em;
    }

/* index.php */

    #index-top {
        position:           relative;
    }

    #index-whois {
        width:              65%;
        height:             16em;
        -moz-border-radius:     12px;
        -webkit-border-radius:  12px;
    }
    #index-whois .left .middle .title {
        background-position:    8px top;
    }
    #index-whois .content {
        padding:            .5em 1em;
    }
    #index-whois h1 {
        font-size:          140%;
        margin:             .25em 0;
    }
    #index-whois p.quote {
        font-style:         italic;
    }
    #index-whois p.quote .signature {
        display:            block;
        text-align:         right;
    }

    #index-quicklinks {
        position:           absolute;
        top:                0;
        right:              0;
        width:              28%;
        height:             16em;
        -moz-border-radius:     12px;
        -webkit-border-radius:  12px;
    }
    #index-quicklinks .left .middle .title {
        display: none;
    }
    #index-quicklinks .content {
        padding:            3px 10px;
        position:           relative;
    }
    #index-quicklinks .content h3 {
        margin:             .5em 0;
    }
    #index-quicklinks ul {
        margin-top:         0;
        padding:            0 0 0 1em;
    }
    #index-quicklinks li {
    }
    #index-quicklinks li a {
        text-decoration:        none;
        display:                block;
        padding:                .2em;
    }
    #index-quicklinks li a:hover {
        text-decoration:        underline;
    }

    #index-news {
        clear:              both;
        padding-top:        .5em;
    }
    #index-news h2 {
        display:            none;
    }
    #index-news .continue {
        margin:     1em 2em;
    }
    #index-news .continue a {
        color:      #4c3;
    }

/* news.php and shared news formatting */

    .news-post {
        margin-top:             1em;
        font-size:              12px;
        -moz-border-radius:     12px 0px 0px 12px;
        -webkit-border-radius:  12px 0px 0px 12px;
    }
    .news-post.news {
    }
    .news-post.news .left .middle .title {
    }
    .news-post.announcement {
    }
    .news-post.announcement .left .middle .title {
    }
    .news-post .content {
        padding:            15px 10px 1.5em 10px;
    }
    .news-post .content h1, .news-post .content h3 {
        font-size:          140%;
        margin:             -.5em 0 .25em 0;
        padding:            3px 10px;
        float:              left;
    }
    .news-post .content .author {
        position:               absolute;
        top:                    0;
        right:                  0;
        height:                 13px;
        padding:                4px 16px;
        min-width:              20em;
        text-align:             center;
        float:                  right;
        font-size:              90%;
        background-color:       #aab;
        -moz-border-radius-bottomleft:      12px;
        -webkit-border-radius-bottomleft:   12px;
    }
    /* users have requested that this small font size not be italic,
     * but we include the <i> tag to distinguis the author in browsers
     * that do not have css. */
    .news-post .content .author i {
        font-style:             normal !important;
    }
    .news-post .content .author a {
        color:              #bcf;
        text-decoration:    none;
    }
    .news-post .content .author a:hover {
        text-decoration:    underline;
    }
    .news-post .content .author .aleft {
        position:               absolute;
        top:                    0;
        left:                   0;
        height:                 26px;
        width:                  18px;
        background-position:    top left;
        background-repeat:      no-repeat;
    }
    .news-post .content .author .aright {
        position:               absolute;
        top:                    0;
        right:                  0;
        height:                 23px;
        width:                  18px;
        background-position:    top right;
        background-repeat:      no-repeat;
    }
    .news-post .content .post {
        clear:              both;
        margin:             .5em 1em .5em 2.5em;
    }
    .news-post .content .post ul {
        margin-left:        0;
        padding-left:       1.5em;
    }
    .news-post .content .archive-link {
        position:           absolute;
        bottom:             .5em;
        right:              .5em;
    }
    .news-post .content .digg {
        margin:             .25em;
        position:           absolute;
        right:              .25em;
        top:                2.25em;
    }

/* contact.php */

    #contact {
        width:          50em;
    }

    #contact .left .middle .title {
    }
    #contact .content {
        padding:        .25em 1em;
    }
    #contact .content h1 {
        margin:        .5em;
        font-size:      150%;
    }
    #contact .error {
        border-color:   red;
    }
    #contact div.error {
        border:             2px solid red;
        background-color:   #fdd;
        padding:            .5em;
        margin:             .5em auto;
    }

/* news.php */

    #news-archive {
    }
    #news-archive h1 {
        font-size:  150%;
    }
    #news-archive .left .middle .title {
    }
    #news-archive li .topic {
        font-size:  80%;
        font-style: italic;
    }

/* resume.php */

    #resume {
    }
    #resume-caveat {
        font-size:  85%;
    }
    #resume h1 {
        font-size:  140%;
        text-align: center;
        margin:     auto;
    }
    #resume h2 {
        font-size:  110%;
    }
    #resume h3 {
        display:    inline;
        font-size:  100%;
    }
    #resume hr {
        margin:     1em 0;
    }

    #googlevoice {
        float: right;
        margin: 0 0 1em 1em;
    }

/* photos.php */

    #photos {
    }
    #photos .content {
        overflow:       auto;
    }
    #photos .content .subdirs {
        float:          right;
        margin:         -4em 1em 1em 1em;
    }
    #photos .content .subdirs ul {
        list-style-type:    none;
        margin:             0;
        padding:            0;
    }
    #photos .content .images {
        clear: both;
    }
    #photos .img {
        float: left;
        height:             150px;
        width:              150px;
        margin:             5px;
        padding:            10px;
        border:             1px outset black;
        background:         #eee;
        text-align:         center;
        overflow:           hidden;
        -moz-border-radius:     9px;
        -webkit-border-radius:  9px;
    }
    #photos .img img {
        border: 1px solid black;
    }
    #photos .img img.horiz {
        margin-top: 20px;
    }

