/*
 * style.css: default style sheet
 */


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Default Styles
 *
 */

/* Default document settings */
body {
    margin: 0px;
    background: #E8F5E6;
    color: black;
    font-size: 12px;
    font-family: verdana, helvetica, sans;
    text-align: center; /* IE center page hack */
}

/* Header formats */
h1 {
    margin-top: 10px;
    margin-bottom: 10px;
    color: #627C5B;
    font-family: 'Trebuchet MS', verdana, helvetica, sans-serif;
    font-size: 22px; 
    font-weight: bold;
}
h2 {
    margin-top: 15px;
    margin-bottom: 6px;
    color: #154015;
    font-family: 'Trebuchet MS', verdana, helvetica, sans-serif;
    font-size: 16px;
    font-weight: bold;
}
h3 {
    margin-top: 15px;
    margin-bottom: 5px;
    font-family: 'Trebuchet MS', verdana, helvetica, sans-serif;
    font-size: 12px;
    font-weight: bold;
}

/* Separator style */
hr {
    width: 100%;
    height: 1px;
    margin-top: 40px; 
    border-top: none;
    border-bottom: 1px solid #627C5B;
    color: #627C5B;
}

/* Paragraph style */
p {
    margin-top: 0px;
    margin-bottom: 12px;
}

/* Link styles */
a {
    font-weight: bold;
    text-decoration: none;
}
a:link,
a.novisit:visited,
a.novisit:active {
    color: #627C5B;
}
a:visited,
a:active {
    color: #90AC89;
}
.no-touchscreen a:hover,
a.hover {
    text-decoration: underline;
}
a img {
    border-style: none;
}

/* Image style */
img {
    vertical-align: middle;
}

/* List styles */
ul,
ol, 
dl {
    margin-top: 12px;
    margin-bottom: 12px;
}
dt {
    margin-top: 9px; 
    margin-bottom: 0px;
    margin-left: 25px;
}
dd {
    font-size: smaller;
    margin-left: 25px; 
    margin-top: 4px; 
    margin-bottom: 12px;
}
li {
    margin-top: 6px;
    margin-bottom: 6px;
}

/* Quote styles */
blockquote {
    margin: 12px 40px 12px 40px;
}
blockquote cite {
    display: block;
    text-align: right;
    font-style: italic;
}

/* Preformatted styles */
pre, code {
    color: #555555;
    font-family: monospace;
    font-weight: bold;
}
var {
    color: #338877;
    font-family: monospace;
    font-weight: normal;
    font-style: italic;
}
var:before {
    content: "<"
}
var:after {
    content: ">"
}


/* Table style */
table {
    width: auto;
    margin-top: 0px;
    margin-bottom: 15px;
    margin-left: 0px;
    margin-right: 0px;
    border: none;
    border-collapse: collapse;
    padding: 0px;
    font-size: 12px;
    font-family: verdana, helvetica;
}
tr {
    margin: 0px;
    border: none;
    padding: 0px;
}
th {
    margin: 0px;
    border: none;
    padding: 0px; 
    vertical-align: top; 
    text-align: left; 
}
td {
    margin: 0px;
    border: none;
    padding: 0px; 
    vertical-align: top; 
}

/* Form style */
button {
    margin-top: 8px;
    margin-bottom: 8px;
    vertical-align: middle;
    font-size: 12px;
    font-weight: bold;
}
input,
textarea,
select {
    margin-top: 2px;
    margin-bottom: 2px;
    margin-left: 5px;
    margin-right: 5px;
    vertical-align: middle;
}
input,
textarea {
    font-size: 12px;
    font-family: monospace;
    resize: none;
}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Layout Styles
 *
 */

/* Main style */
.layout-root {
    width: 770px;
    margin-left: auto; 
    margin-right: auto;
    text-align: left; /* IE center page hack */
    background: url(../images/backgrounds/background.jpg) repeat-y;
}

/* Header style */
.layout-header {
    width: 770px;
    height: 230px;
    background: url(../images/backgrounds/header.jpg) no-repeat;
}
.layout-header h1 {
    height: 55px;
    margin: 0px;
    padding-top: 85px;
    padding-bottom: 66px;
    text-align: center;
    font-size: 44px;
    color: white;
}
.layout-header h1 a:link,
.layout-header h1 a:visited,
.layout-header h1 a:active,
.layout-header h1 a:hover {
    color: white;
    text-decoration: none;
}

/* Menu style */
.layout-menu {
    position: relative;
    padding-left: 25px;
    font-size: 13px;
    letter-spacing: 2px;
}
.layout-menu a {
    padding-top: 0px;
    padding-bottom: 1px;
    padding-left: 3px;
    padding-right: 3px;
}
.layout-menu a:link,
.layout-menu a:active,
.layout-menu a:visited {
    color: black;
}
.layout-menu a.active,
.no-touchscreen .layout-menu a:hover,
.no-touchscreen .layout-menu a.selected:hover {
    background: #88C178;
    color: white;
    text-decoration: none;
}
.layout-menu a.selected {
    background: #33462E;
}
.layout-menu a.selected:link,
.layout-menu a.selected:active,
.layout-menu a.selected:visited {
    color: white;
}
.layout-menu-submenu {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 200px;
    border: 1px solid #627C5B;
    border-radius: 6px 6px;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
    padding: 2px 4px 2px 4px;
    background: #E8F5E6;
    display: none;
    z-index: 1;
}
.layout-menu-submenu a {
    display: block;
    font-size: 12px;
    letter-spacing: 0px;
}

/* Center style */
.layout-center {
    width: 770px;
}
.layout-center-content {
    float: left;
    width: 530px;
    margin: 10px 0px 10px 20px;
}
.layout-center-content img {
    margin: 5px 10px 5px 10px;
}
.layout-center-content hr {
    width: 66%;
    margin-top: 10px; 
    border-top: 10px;
}
.layout-center-content table {
    margin-top: 10px;
    margin-bottom: 10px;
}
.layout-center-content th,
.layout-center-content td {
    padding: 3px 6px 3px 6px;
}
.layout-center-content table hr {
    width: 100%;
    text-align: left;
}
.layout-center-sidebar {
    float: right;
    width: 170px;
    margin-top: 10px;
    margin-right: 20px;
}

/* Footer style */
.layout-footer {
    width: 770px;
    clear: both;
    background: url(../images/backgrounds/footer.jpg) no-repeat bottom left;
}
.layout-footer-text {
    width: 530px;
    padding: 0px 0px 28px 20px;
    font-size: smaller;
}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Other Styles
 *
 */

/* Admin style */
.admin {
    padding: 3px;
    background: #F0F0F0;
    color: #5A5A5A;
    font-weight: normal;
    font-size: smaller;
}

/* Box style */
.box,
td.box {
    margin: 10px;
    border: 1px solid #627C5B;
    border-radius: 6px 6px;
    padding-top: 3px;
    padding-bottom: 6px;
    padding-left: 10px;
    padding-right: 10px;
    background: #F8FFF5;
}
.box h2 {
    margin-top: 10px;
}
.box p {
    margin-top: 0px;
    margin-bottom: 3px;
}
div.box img {
    margin: 6px;
}
.box pre {
    font-weight: bold;
    color: #335533;
}

/* Figure style */
.figure {
    text-align: center;
    margin: 10px;
}
.figure img {
    margin: 0px;
}

/* Note reference style */
.noteref img {
    margin: -4px 0 0 0;
}
.note {
    position: absolute;
    width: 300px;
    z-index: 1;
}
.note .close {
    float: right;
    width: 16px;
    height: 16px;
    margin: 0 -6px 10px 10px;
    background: url(../images/icons/close.gif) no-repeat;
    cursor: pointer;
}
.note .note-arrow-outer {
    position: absolute;
    top: -18px;
    left: 150px;
    width: 0px;
    height: 0px;
    border: 9px solid;
    border-color: transparent transparent #627C5B;
}
.note .note-arrow-inner {
    position: absolute;
    top: -16px;
    left: 151px;
    width: 0px;
    height: 0px;
    border: 8px solid;
    border-color: transparent transparent #F8FFF5;
    z-index: 2;
}

/* Directory style */
.directory {
    margin-bottom: 20px;
}
.directory h3 {
    margin: 0px; 
    margin-top: 1em;
    font-size: 11pt;
}
.directory p {
    margin: 0px;
}
.directory div {
    display: none; 
    margin: 0px; 
    margin-left: 16px;
}
.directory img {
    vertical-align: text-top;
    margin: 1px;
}

/* Location style */
.location {
    margin-top: 0px;
    font-weight: bolder;
    font-size: smaller;
    color: #C8C8C8;
}

/* Pager style */
.pager {
    font-weight: bold;
    text-align: center;
}

/* Search filter */
.search {
    position: relative;
    top: -14px;
    width: 150px;
    margin: 0 5px;
    display: inline-block;
}
.search .left {
    position: absolute;
    left: 0;
    top: 0;
    width: 20px;
    height: 19px;
    background: url("../images/backgrounds/search_left.png");
    background-repeat: no-repeat;
}
.search input {
    position: absolute;
    left: 20px;
    top: 0;
    width: 110px;
    height: 16px;
    margin: 0;
    padding: 2px 0 1px 0;
    border: 0 none;
    outline: medium none;
    background: url("../images/backgrounds/search_repeat.png");
    background-repeat: repeat-x;
    font: 10px verdana, helvetica, sans;
    color: #666;
}
.search .right {
    position: absolute;
    right: 0;
    top: 0;
    width: 20px;
    height: 19px;
    background: url("../images/backgrounds/search_right.png");
    background-repeat: no-repeat;
    cursor: pointer;
}

/* Details (in curriculum) */
.details {
    font-size: smaller;
    color: #666;
}

/* Tabs (in tools) */
.tab-label-list {
    position: relative;
}
.tab-label,
*.tab-label {
    display: inline-block;
    margin: 0;
    border: solid #CCCCCC;
    border-width: 1px 1px 0px 1px;
    border-radius: 6px 6px 0 0;
    padding: 2px 4px;
    background: #EEEEEE;
    background: -moz-linear-gradient(center top , #FFFFFF, #DDDDDD);
    background: -webkit-linear-gradient(center top , #FFFFFF, #DDDDDD);
    background: linear-gradient(center top , #FFFFFF, #DDDDDD);
    cursor: pointer;
}
.tab-label.active {
    border-color: #CCDDCC;
    background: #F8FFF5;
    background: -moz-linear-gradient(center top , #FFFFFF, #F8FFF5);
    background: -webkit-linear-gradient(center top , #FFFFFF, #F8FFF5);
    background: linear-gradient(center top , #FFFFFF, #F8FFF5);
}
.tab-label img {
    margin: 0;
    padding: 0;
}
.tab-content,
*.tab-content {
    width: 95%;
    min-height: 300px;
    margin: -1px 0 0 0;
    padding: 2px 4px;
    border: 1px solid #CCDDCC;
    border-radius: 6px 6px;
    border-top-left-radius: 0 0;
    box-shadow: 2px 2px 5px #CCCCCC;
    background: #F8FFF5;
    color: #335533;
}
.tab-content .highlight {
    font-size: larger;
    color: #849084;
}
.tab-content .highlight a:link,
.tab-content .highlight a:visited,
.tab-content .highlight a:active {
    color: #849084;
}
.tab-content .obscure {
    font-size: smaller;
    color: #AAAAAA;
}
.tab-content .obscure a:link,
.tab-content .obscure a:visited,
.tab-content .obscure a:active {
    color: #AAAAAA;
}
.tab-content p {
    margin: 6px 6px;
}

/* Indentation (in tools) */
.indent {
    margin: 5px 20px;
}

/* Input and output (in tools) */
textarea.input {
    width: 95%;
    height: 200px;
}
textarea.output {
    width: 95%;
    height: 300px;
    padding: 2px 4px;
    border: 1px solid #CCDDCC;
    background: #F8FFF5;
    color: #335533;
}

/* Image preview (in tools) */
.image-preview {
    border: 1px solid #F0F8E8;
    background-color: #FFFFFF;
    background-image: -moz-linear-gradient(45deg, #F0F8E8 25%, transparent 25%, transparent 75%, #F0F8E8 75%, #F0F8E8),
                      -moz-linear-gradient(45deg, #F0F8E8 25%, #FFFFFF 25%, #FFFFFF 75%, #F0F8E8 75%, #F0F8E8);
    background-image: -webkit-linear-gradient(45deg, #F0F8E8 25%, transparent 25%, transparent 75%, #F0F8E8 75%, #F0F8E8),
                      -webkit-linear-gradient(45deg, #F0F8E8 25%, #FFFFFF 25%, #FFFFFF 75%, #F0F8E8 75%, #F0F8E8);
    background-image: linear-gradient(45deg, #F0F8E8 25%, transparent 25%, transparent 75%, #F0F8E8 75%, #F0F8E8),
                      linear-gradient(45deg, #F0F8E8 25%, #FFFFFF 25%, #FFFFFF 75%, #F0F8E8 75%, #F0F8E8);
    background-size: 10px 10px;
    background-position: 0 0, 5px 5px;
}

/* Target link style */
.target {
    cursor: pointer;
}
.target.hover {
    border-radius: 6px 6px;
    background: #F8FFF5;
}

/* Error style */
.error {
    border: 1px solid #DDCCAA;
    background: #FFFAEE;
    border-radius: 6px;
    font-size: 14px;
}
.error table {
    font-size: 14px;
}

/* Float styles */
.float-clear {
    clear: both;
}
.float-left {
    float: left;
    margin: 0 30px 20px 0;
}
.float-right {
    float: right;
    margin: 0 0 20px 30px;
}

/* Hidden style */
.hidden {
    display: none;
}
