body {
	margin-bottom:50px;
}

body, td {
	font-family: Verdana, Cursor;
	font-size: 10px;
	font-weight: bold;
}

a:link,a:visited,a:active {
	color: #444;
}

a:hover {
	color: #000000;
}

table {
	border-spacing: 1px 1px;
}

table td {
	padding: 3px 0px 3px 0px;
	text-align: center;
}

.Project {
	width: 100px;
}

.LastBuild, .Activity {
	padding: 0 0 0 4px;
}

.LastBuild, .Activity, .Builder, .BuildStep {
        width: 155px;
        max-width: 155px;
}

td.Time {
	color: #000;
	border-bottom: 1px solid #aaa;
	background-color: #eee;
}

td.Activity, td.Change, td.Builder {
	color: #333333;
	background-color: #CCCCCC;
}

td.Change {
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
td.Event {
	color: #777;
	background-color: #ddd;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

td.Activity {
	border-top-left-radius: 10px;
	-webkit-border-top-left-radius: 10px;
	-moz-border-radius-topleft: 10px;
	min-height: 20px;
	padding: 2px 0 2px 0;
}

td.idle, td.waiting, td.offline, td.building {
	border-top-left-radius: 0px;
	-webkit-border-top-left-radius: 0px;
	-moz-border-radius-topleft: 0px;
}

.LastBuild {
	border-top-left-radius: 5px;
	-webkit-border-top-left-radius: 5px;
	-moz-border-radius-topleft: 5px;
	border-top-right-radius: 5px;
	-webkit-border-top-right-radius: 5px;
	-moz-border-radius-topright: 5px;
}

/* Console view styles */

td.DevRev {
        padding: 4px 8px 4px 8px;
        color: #333333;
        border-top-left-radius: 5px;
        -webkit-border-top-left-radius: 5px;
        -moz-border-radius-topleft: 5px;
        background-color: #eee;
        width: 1%;
}

td.DevRevCollapse {
        border-bottom-left-radius: 5px;
        -webkit-border-bottom-left-radius: 5px;
        -moz-border-radius-bottomleft: 5px;
}

td.DevName {
        padding: 4px 8px 4px 8px;
        color: #333333;
        background-color: #eee;
        width: 1%;
        text-align: left;
}

td.DevStatus {
        padding: 4px 4px 4px 4px;
        color: #333333;
        background-color: #eee;
}

td.DevSlave {
        padding: 4px 4px 4px 4px;
        color: #333333;
        background-color: #eee;
}

td.first {
        border-top-left-radius: 5px;
        -webkit-border-top-left-radius: 5px;
        -moz-border-radius-topleft: 5px;
}

td.last {
        border-top-right-radius: 5px;
        -webkit-border-top-right-radius: 5px;
        -moz-border-radius-topright: 5px;
}

td.DevStatusCategory {
        border-radius: 5px;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        border-width:1px;
        border-style:solid;
}

td.DevStatusCollapse {
        border-bottom-right-radius: 5px;
        -webkit-border-bottom-right-radius: 5px;
        -moz-border-radius-bottomright: 5px;
}

td.DevDetails {
        font-weight: normal;
        padding: 8px 8px 8px 8px;
        color: #333333;
        background-color: #eee;
        text-align: left;
}

td.DevComment {
        font-weight: normal;
        padding: 8px 8px 8px 8px;
        color: #333333;
        border-bottom-right-radius: 5px;
        -webkit-border-bottom-right-radius: 5px;
        -moz-border-radius-bottomright: 5px;
        border-bottom-left-radius: 5px;
        -webkit-border-bottom-left-radius: 5px;
        -moz-border-radius-bottomleft: 5px;
        background-color: #eee;
        text-align: left;
}
.DevCommentDate {
        float: right;
        font-style: italic;
}

td.Alt {
        background-color: #CCCCCC;
}

.legend {
        border-radius: 5px;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        width: 100px;
        max-width: 100px;
        text-align:center;
        padding: 2px 2px 2px 2px;
        height:14px;
        white-space:nowrap;
}

.DevStatusBox {
        text-align:center;
        height:20px;
        padding:0 2px;
        line-height:0;
        white-space:nowrap;
}

.DevStatusBox a {
        opacity: 0.85;
        border-width:1px;
        border-style:solid;
        border-radius: 4px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        display:block;
        width:90%;
        height:20px;
        line-height:20px;
        margin-left: auto;
        margin-right: auto;
}

.DevSlaveBox {
        text-align:center;
        height:10px;
        padding:0 2px;
        line-height:0;
        white-space:nowrap;
}

.DevSlaveBox a {
        opacity: 0.85;
        border-width:1px;
        border-style:solid;
        border-radius: 4px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        display:block;
        width:90%;
        height:10px;
        line-height:20px;
        margin-left: auto;
        margin-right: auto;
}

a.noround {
        border-radius: 0px;
        -webkit-border-radius: 0px;
        -moz-border-radius: 0px;
        position: relative;
        margin-top: -8px;
        margin-bottom: -8px;
        height: 36px;
        border-top-width: 0;
        border-bottom-width: 0;
}

a.begin {
        border-top-width:1px;
        position: relative;
        margin-top: 0px;
        margin-bottom: -7px;
        height: 27px;
	border-top-left-radius: 4px;
	-webkit-border-top-left-radius: 4px;
        -moz-border-radius-topleft: 4px;
	border-top-right-radius: 4px;
	-webkit-border-top-right-radius: 4px;
        -moz-border-radius-topright: 4px;
}

a.end {
        border-bottom-width:1px;
        position: relative;
        margin-top: -7px;
        margin-bottom: 0px;
        height: 27px;
	border-bottom-left-radius: 4px;
	-webkit-border-bottom-left-radius: 4px;
        -moz-border-radius-bottomleft: 4px;
	border-bottom-right-radius: 4px;
	-webkit-border-bottom-right-radius: 4px;
        -moz-border-radius-bottomright: 4px;
}

.center_align {
        text-align: center;
}

.right_align {
        text-align: right;
}

.left_align {
        text-align: left;
}

div.BuildWaterfall {
	border-radius: 7px;
	-webkit-border-radius: 7px;
	-moz-border-radius: 7px;
        position: absolute;
        left: 0px;
        top: 0px;
        background-color: #FFFFFF;
        padding: 4px 4px 4px 4px;
        float: left;
        display: none;
        border-width: 1px;
        border-style: solid;
}

/* LastBuild, BuildStep states */
.success {
	color: #FFFFFF;
	background-color: #8fdf5f;
        border-color: #4F8530;
}
.success.Alt {
	background-color: #6fbf3f;
}

.failure {
	color: #FFFFFF;
	background-color: #e98080;
        border-color: #A77272;
}
.failure.Alt {
	background-color: #c96060;
}

.warnings {
	color: #FFFFFF;
	background-color: #ffc343;
        border-color: #C29D46;
}
.warnings.Alt {
	background-color: #dfa323;
}

.exception, td.offline {
	color: #FFFFFF;
	background-color: #e0b0ff;
        border-color: #ACA0B3;
}
.exception.Alt {
	background-color: #c090df;
}

.start,.running, td.building {
	color: #666666;
	background-color: #fffc6c;
        border-color: #C5C56D;
}

.start {
	border-bottom-left-radius: 10px;
	-webkit-border-bottom-left-radius: 10px;
	-moz-border-radius-bottomleft: 10px;
	border-bottom-right-radius: 10px;
	-webkit-border-bottom-right-radius: 10px;
	-moz-border-radius-bottomright: 10px;
}

.notstarted {
        border-width:1px;
        border-style:solid;
        border-color:#aaa;
}

td.Project a:hover, td.start a:hover {
        color: #000;
}

/* grid styles */

table.Grid {
        border-collapse: collapse;
}

table.Grid tr td {
        padding: 0.2em;
        margin: 0px;
        text-align: center;
}

table.Grid tr td.title {
        font-size: 90%;
        border-right: 1px gray solid;
        border-bottom: 1px gray solid;
}

table.Grid tr td.sourcestamp {
        font-size: 90%;
}

table.Grid tr td.builder {
        text-align: right;
        font-size: 90%;
}

table.Grid tr td.build {
        border: 1px gray solid;
}
