body {
    background-color: #ffffff;
    margin: 0.5cm;
    font-size: Verdana,Arial,Helvetica,Swiss medium;
}

/* link colors */
a:link {
    color: #000099;
}
a:visited {
    color: #990099;
}
a:hover {
    color: #000099;
    background-color: #dddddd;
}
a:active {
    color: #ff0000;
    background-color: #dddddd;
}

/* used for print stylesheet, but not shown on screen */
.print {
    display: none;
}

/* headings */
.head {
    background-color: #dddddd;
    padding: 0.15cm;
}

h1 {
    color: #333333;
    font-size: 2.5ex;
    padding:0.2cm;
    margin-top: 0px;
    border-left: solid medium black;
    border-top: solid medium black;
    background-color: #9999ff;
}
h2 {
    font-size: 2ex;
    border-left: solid thin black;
    border-top: solid thin black;
    padding: 0.2cm;
    margin-top: 2ex;
}
h3 {
    font-size: 1.5ex;
}
h2, h3, h4 {
    color: #666666;
}

/* lists */
ul {
    margin-top: -0.3ex;
    margin-bottom: -0.3ex;
}
li {
    padding: 0.5ex;
    list-style-position: outside;
    margin-left: -1em;
}

/* general table format */
table {
    border-collapse: collapse;
    padding: 0.1cm;
    border: none;
}
tr {
    padding: 0.1cm;
    border: none;
}
td {
    padding: 0.15cm;
    vertical-align: top;
    border: none;
}

/* page layout */
.page {
    /* intentionally left blank */
}
.navigation {
    width: 15%;
    font-size: smaller;
}
.content {
    width: 73%;
    padding-top: 0cm;
    padding-left: 0.5cm;
}
.page, *.navigation, *.content {
    border: none;
    vertical-align: top;
}
p.footer {
    color: #333333;
    font-size: small;
    border-top: solid thin black;
    padding-top: 0.2cm;
    margin-top:1cm;
}

/* special index page format (currently on the homepage) */
div.index tr {
    border: solid thin;
}
div.index td {
    border: solid thin black;
}
div.index td.upper_left {
    border-top-style: hidden;
    border-left-style:hidden;
}

/* summary table on software page */
div.summary table {
    border: solid thin black;
}
div.summary tr {
    border-left: solid thin black;
    border-right: solid thin black;
}

/* title of publications (and talks) */
span.pubtitle {
    font-style: italic;
}

/* search form */
div.searchform form {
    margin-bottom: 20px;
}

/* author data in talk "slides" */
p.author {
    text-align: center;
    font-size: 2ex;
    font-weight: bold;
    margin-top: 5ex;
    margin-bottom: 5ex;
}

/* for quick reference layout */
.ref_question, .ref_answer, .ref_notes, .ref_example, .ref_see_also {
    margin-bottom: 0.5em;
}

.ref_question {
    font-weight: bold;
    margin-top: 1em;
}

.ref_answer {
}

.ref_notes {
    font-size: smaller;
}

.ref_example {
    color: green;
}

.ref_see_also {
    color: blue;
}

