body {
    background: #fff url(../img/background.png) repeat-x center 93px;
    color: #eee;
    font: 12px Verdana, Arial, Tahoma, "Trebuchet MS", sans-serif;
    line-height:1.4em;
    text-align:center;
    padding:0;
}

#wrap {
    width:95%;
    min-width:750px;
    background-color:#fff;
    color:#333;
    text-align:left;
    border:1px solid #555;
    border-top: 0;
    margin:0 auto;
    padding: 1% 1% 0 1%;
}

#top {
    width: 100%;
    height: 92px;
    border-bottom: 1px solid #000;
    background: #4fb7ff url(../img/header.gif) left top repeat-x;
}

#header {
    width: 100%;
    height: 61px;
}

#navigation {
    width:95%;
    min-width:750px;
    text-align:left;
    margin: 4px auto 0;
    padding:0 1%;
    height: 31px;
}

#navigation p {
    color: #000;
    padding-top: 6px;
    margin: 0;
}
#navigation a, #navigation a:visited {
    color: #000;
}
#navigation a:hover {
    text-decoration: underline;
}

#sitetitle {
    float: left;
    text-align: left;
    margin: 12px 0 0 8px;
    font-size: 36px;
    font-weight: bold;
}

acronym {
    text-decoration: none;
    border: 0;
}

acronym:hover {
    text-decoration: underline;
    cursor: help;
}

/* The main menu */

#mainmenu
{
    position: relative;
}
#mainmenu, #mainmenu ul { list-style: none; }
#mainmenu, #mainmenu * { padding: 0; margin: 0; }

#mainmenu li.headlink {
    float: left;
    margin-right: 1em;
    text-align: center;
    height: 26px;
    font-weight: bold;
    border: 1px #000 solid;
    border-bottom: 0;
    background-color: #fff;
}

#mainmenu li.headlink a {
    display: block;
    padding: 4px 15px;
}

#mainmenu li.headlink ul {
    margin-left: -1px;
    margin-top: 0;
    display: none;
    border: 1px black solid;
    text-align: left;
    font-weight: normal;
}

#mainmenu li.headlink ul li {
    padding: 1px 5px 1px 12px;
}

#mainmenu li.headlink:hover {
    background: #c4e1ff url('../img/menu-bg.gif') repeat-y left;
}

#mainmenu li.headlink ul li:hover {
    background: #c4e1ff url('../img/menu-bg.gif') repeat-y left;
}

#mainmenu li.headlink a:hover {
    text-decoration: underline;
}

#mainmenu li.headlink:hover ul {
    width: 192px;
    display: block;
    position: absolute;
    background-color: #fff;
}

#mainmenu li.headlink ul li a:hover {
    text-decoration: none;
}

#headline {
    text-align:center;
    border:1px solid #e0e0e0;
    background-color:#f0f0f0;
    color:#777;
    font-size:0.9em;
    margin:5px 0 15px;
}

#headline p {
    margin:2px;
    padding:0;
}

h2, h3, h4 {
    color:#333;
    font-weight:700;
    margin: 0;
    padding: 0;
}
h2 {
    padding-bottom: 5px;
    margin-bottom: 12px;
    font-size:1.7em;
    letter-spacing:-1px;
    clear:left;
    border-bottom:2px solid #ccc;
}

#content h3 {
    font-size: 1.4em;
    letter-spacing: -1px;
    margin: 0.5em 0;
}

#content h2 a, #content h3 a {
    font-weight: 700;
    border: 0;
}

#content p {
    margin: 0 1em 15px 0;
}

#content a {
    /*border-bottom:1px dotted #888;*/
}

#footer {
    clear:both;
    width:95%;
    line-height:1.6em;
    color: #aaa;
    margin: 0 auto 1.5em;
    padding:10px 0;
    font-size: 0.9em;
    text-transform: lowercase;
}
#footer a, #footer a:visited {
    color: #777;
}
#footer a:hover {
    text-decoration: underline;
}

a, a:visited {
    color: #00f;
    text-decoration: none;
}

a:hover, a:active {
    text-decoration: underline;
}

table a:hover,
table a:active {
    color: #000;
}

img,a img {
    border:0;
}

.textright {
    text-align:right;
}

.textcenter {
    text-align:center;
}

.introtext,.introtext a {
    font-weight:700;
}

hr {
    border: 0;
    background-color: #ccc;
    color: #ccc;
    height: 1px;
    margin: 5px 0;
}

hr.clear {
    visibility: hidden;
    clear: both;
    height: 2px;
}

hr.clearsilent {
    clear: both;
    height: 0;
}

.clear {
    clear: both;
}

*,#footer p {
    margin:0;
    padding:0;
}

#skiplinks a {
    color:#bacac8;
}

#skiplinks a:hover {
    color:#fff;
    text-decoration:none;
    border-bottom:1px dotted #fff;
}

#content,.textleft {
    text-align:left;
}

.trio {
    float:left;
    width:31%;
    padding:0 2% 0 0;
}

.trio_last {
    float:left;
    width:33%;
    padding:0;
}

.trio_solo {
    width: 33%;
    margin: 0 15% 40%;
}

/*
TABLES
-------------------------
*/

#content table {
    width: 100%;
    border-collapse: collapse;
    border: 1px #527aaa solid;
    margin: 0.5em 0;
}

#content th {
    padding: 3px 6px;
    border-bottom: 1px solid #527aaa;
    color: #fff;
    text-align: left;
    font-size: 14px;
    font-weight: bold;
    background: url(../img/tablebg.gif) #74b3ff top repeat-x;
}

#content tbody th {
    border-right: 1px solid #527aaa;
}

#content th a,
#content th a:visited {
    color: #fff !important;
    display: block;
}
#content th.header {
    cursor: pointer;
}
#content th.headerSortUp,
#content th.headerSortDown {
    color: #ff0;
}
#content th a:hover,
#content th.header:hover {
    color: #ff8 !important;
}

#content thead th+th {
    border-left: 1px solid #527aaa;
}

#content tr, tr.even {
    background-color: #e4edf3;
}

#content tr.odd {
    background-color: #f6f6f6;
}

#content tbody tr:hover {
    background-color: #b0ccdd;
}

#content td {
    border-bottom: 1px solid #527aaa;
    padding: 0 6px;
    text-align: left;
}

#content td a,
#content td a:visited {
    color: #000;
}
#content td a:hover {
    text-decoration: underline;
}

#content td+td {
    border-left: 1px solid #527aaa;
}

#content td.icon {
    padding: 0;
    width: 24px;
}

#content tfoot tr {
    background: url(../img/tablebg-total.gif) #c0cbd9 top repeat-x;
    height: 24px;
    font-size: 14px;
    font-weight: bold;
}
#content tfoot td.title {
    text-align: right;
    padding-right: 1em;
}

/*
PAGINATION
-------------------------
*/

.paging {
    background: #fff;
    margin-bottom: 2em;
    margin-top: 2em;
}

.paging .disabled {
    background: #fff;
    color: #888;
    display: inline;
}


/*
CAKEPHP
-------------------------
*/

#messages {
    float: left;
    padding-left: 8px;
}

#flashMessage, #authMessage, #emailMessage {
    float: left;
    display: block;
    padding: 0.5em;
    font-weight: bold;
    margin: 0 5px;
    color: #000;
    font-size: 12px;
    line-height: 14px;

    border: 1px #000 solid;
    border-top: 0;
    -moz-border-radius-bottomleft: 5px;
    -webkit-border-bottom-left-radius: 5px;
    -moz-border-radius-bottomright: 5px;
    -webkit-border-bottom-right-radius: 5px;
}

#flashMessage {
    background: #bfb;
}

#authMessage, #flashMessage.error {
    background: #fbb;
}

pre {
    color: #000;
    text-align: left;
}

/*
FORM ELEMENTS
-------------------------
*/

label {
    display: block;
    margin: 0.5em 0;
    font-weight: bold;
}

label.inline {
    display: inline;
}

input, textarea, select {
    display: block;
    font: 12px Verdana;
    margin: 12px 0 0 0;
    border: 1px #888 solid;
    background-color: #fff;
    padding: 2px;
    width: 320px;
}

input:hover,
textarea:hover,
select:hover {
    background-color: #eff;
}

select:focus,
input:focus,
textarea:focus {
    border-color: #444;
    background-color: #def;
}

input[type=checkbox] {
    display: inline;
    border: 0;
    width: auto;
}
input[type=submit] {
    padding: 4px;
    width: auto;
    font-weight: bold;
}
input[type=hidden] {
    display: none;
}

.form-error {
    border-color: #f88 !important;
    background-color: #fdd !important;
}

.error-message {
    color: #f00;
    font-weight: bold;
    font-size: 10px;
}

/*
DETAILS VIEW
-------------------------
*/
h2 em {
    color: #999;
    font-style: normal;
    margin-left: 1em;
    font-weight: normal;
}

#details #picture {
    border: 1px #000 solid;
    background: url(../img/detailsbg.png) #54b9ff bottom no-repeat;
    width: 72px;
    height: 72px;
    float: left;
}
#details #picture .inner {
    background-repeat: no-repeat;
    background-position: center;
    width: 70px;
    height: 70px;
    display: block;
    border: 1px #aaf solid;
}

#details dl {
    /*height: 70px;*/
    margin: 0 8px 0 8px;
    float: left;
}
#details dt {
    font-size: 14px;
    font-weight: bold;
    padding-right: 8px;
    min-width: 128px;
    border-bottom: 1px #aaa solid;
}
#details dd {
    margin-left: 8px;
}

.progressbar {
    background-color: #888;
    border: 1px #527AAA solid;
    position: relative;
    height: 2em;
    background: url(../img/tablebg-inactive.gif) #E7E7E7 top repeat-x;
}
.progressbar .bar {
    position: absolute;
    background-color: #f88;
    height: 100%;
    background: url(../img/tablebg.gif) #74b3ff top repeat-x;
    border-right: 1px #527AAA solid;
}
.progressbar .text {
    font: bold 14px Verdana;
    color: #2762AA;
    position: absolute;
    width: 100%;
    text-align: center;
    top: 12.5%;
}

/*
PAGINATION
-------------------------
*/

.pagination {
    font-size: 9px;
}
.pagination .current {
    font-weight: bold;
}
.pagination-nav {
    font-size: 9px;
}
.pagination-nav div {
    display: inline;
}

/*
MISC LAYOUT CLASSES
-------------------------
*/

.width100 {
  width: 100%;
}
.width95 {
  width: 95%;
}
.width75 {
  width: 74%;
}
.width66 {
  width: 65.4%;
}
.width50 {
  width: 49.7%;
}
.width45 {
  width: 45%;
}
.width33 {
  width: 32.7%;
}
.width25 {
  width: 24.7%;
}
.width20 {
  width: 19.8%;
}

.floatLeft {
    float: left;
}

.floatRight {
    float: right;
}

.marginRight {
    margin-right: 1em;
}
.marginRightBig {
    margin-right: 3em;
}

span.good {
    color: #0f0;
    font-weight: bold;
}
span.bad {
    color: #f00;
    font-weight: bold;
}

.inactive {
    color: #aaa;
}

.padSides {
    padding: 0 1em;
}

.alignLeft {
  text-align: left;
}

.alignRight {
  text-align: right;
}

.alignCenter {
  text-align: center;
}

/*
GRAPHS .. mainly
-------------------------
*/

.graph {
    margin-left: 1em;
    width: 400px;
    height: 300px;
}

.overflowWrapper {
    overflow: auto;
}

#content .legend table,
#content .legend td,
#content .legend tr,
#content .legend tr:hover {
    width: auto;
    background-color: #fff;
    border: 0;
}

.tabs {
    margin-bottom: 1em;
}

/* Various text formatting */

.small, .smallbd {
    font-size: 9px;
}
.smallbd {
    font-weight: bold;
}

/* JQuery Tools */

#tooltip {
    display: none;
    background-color: #C7E8FF;
    border: 1px #3190FF solid;
    color: #000;
    padding: 2px 4px;
    font: 10px Verdana;
    z-index: 10;
    max-width: 240px;
    text-align: center;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}

/* Generic lists */
ul {
    margin-left: 2em;
}
li {
    line-height: 150%;
}

/* Jumpbar */
div.jumpbar {
    font-size: 1.2em;
    color: #aaa;
}
div.jumpbar strong {
    float: left;
    line-height: 100% !important;
}
div.jumpbar ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
div.jumpbar ul li {
    margin-left: 1em;
    float: left;
    display: inline;
    padding: 0;
    line-height: 100% !important;
}

div.jumpbar ul li a,
div.jumpbar ul li a:visited  {
    color: #aaa;
}
div.jumpbar ul li a:hover {
    color: #999;
    text-decoration: underline;
}

.largeCounter {
    font-size: 1.4em;
    margin: 4px;
    padding: 0.5em;
    border: 1px solid #000;
    color: #fff;
    background: url(../img/tablebg.gif) #74b3ff top repeat-x;
}

div.largeCounter strong {
    width: 45%;
    float: left;
    text-align: right;
    padding-right: 5%;
}
div.largeCounter .value {
    width: 50%;
    float: right;
    margin: 0;
    text-align: left;
    font-size: 1.7em;
    font-weight: bold;
}
