body {
    background-color: #f0f0f0;
    font-family: "open sans", Helvetica, sans;
}

.page-name {
    margin-bottom: 16pt;
}

#container {
    margin: 8pt;
    max-width: 700pt;
    margin-left: auto;
    margin-right: auto;
}

#status-tiles {
}

.status-tile {
    display: inline-block;
    margin: 4pt;
    background-color: #e0e0e0;
    border: 1pt solid #a0a0a0;
    border-radius: 4pt;
    width: 220pt;
    height: 80pt;
    z-index: 20;
}

.site-label {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 18pt;
    font-size: 12pt;
    font-weight: bold;
    color: #202020;
}

.branch-tiles {
    float: left;
}

.branch-tile {
    position: relative;
    display: inline-block;
    width: 110pt;
    height: 16pt;
    font-size: 8.5pt;
    padding: 2pt;
    padding-top: 1pt;
    border: 1pt solid #a0a0a0;
    margin-top: -1pt;
    margin-left: -1pt;
    background-color: #c0ffa0;
    z-index: 10;
}

.branch-tile-name {
    width: 80pt;
    overflow: hidden;
    text-overflow: ellipsis;
}

.branch-tile .counts {
    position: absolute;
    right: 1pt;
    top: 1pt;
    height: 16pt;
}

.highlightable:hover {
    box-shadow: 1pt 1pt 5pt #80a0ff !important;
}

.clickable {
    cursor: pointer;
}

.branch-ellipsis {
    width: 80pt;
    text-align: center;
}

.site-running {
    display: inline;
    float: right;
    top: 0;
}

.counts {
    font-weight: bold;
    display: inline-block;
    float: right;
}

.failed-count {
    display: inline-block;
    padding-top: 1pt;
    padding-left: 4pt;
    padding-right: 4pt;
    padding-bottom: 1pt;
    background-color: rgba(255, 0, 0, 0.60);
    color: #ffffff;
    border-radius: 2pt;
    height: 16pt;
    margin-top: -2pt;
}

.status-tile.state-somewhat-bad {
    background-color: #f0f0d0;
}

.status-tile.state-really-bad {
    background-color: #f0e0e0;
}

.status-tile.state-good {
    background-color: #e0f0e0;
}

.branch-tile.state-somewhat-bad,
.branch-heading.state-somewhat-bad,
.site-heading.state-somewhat-bad {
    background-color: #ffefa0;
}

.branch-tile.state-really-bad,
.branch-heading.state-really-bad,
.site-heading.state-really-bad {
    background-color: #ffb0a0;
}

.branch-tile.state-good,
.branch-heading.state-good,
.site-heading.state-good {
    background-color: #b0ffa0;
}

.check-mark {
    height: 10pt;
}

#toolbar {
    width: 100%;
    text-align: right;
    margin-bottom: 32pt;
}

#toolbar .spacer {
    display: inline-block;
    width: 8pt;
}

#breadcrumbs {
    float: left;
}

#breadcrumbs .v-breadcrumbs {
    margin: 0pt;
    padding-bottom: 4pt;
    padding-top: 4pt;
}

#breadcrumbs li:not(.v-breadcrumbs__divider) {
    display: inline-block;
    box-shadow: 1pt 1pt 3pt #606060;
    cursor: pointer;
    background-color: #ffffff;
    padding: 4pt;
}

#breadcrumbs li:hover:not(.v-breadcrumbs__divider) {
    box-shadow: 1pt 1pt 5pt #80a0ff !important;
}


.button {
    display: inline-block;
    box-shadow: 1pt 1pt 3pt #606060;
    cursor: pointer;
    background-color: #ffffff;
    padding: 3pt;
    font-size: 11pt;
    padding-left: 8pt;
    padding-right: 8pt;
}

.button.icon-button {
    padding-left: 3pt;
    padding-right: 3pt;
}

.button.selected {
    background-color: #d0e0ff !important;
}

.branch-heading {
    display: inline-block;
    font-size: 11pt;
    width: 100pt;
    padding: 4pt;
    border: 1pt solid #a0a0a0;
    border-radius: 4pt;
    margin: 4pt;
}

.site-heading {
    display: inline-block;
    width: 180pt;
    border: 1pt solid #a0a0a0;
    border-radius: 4pt;
    padding: 8pt;
    margin: 4pt;
}


.site-branch-cell {
    position: relative;
    width: 128pt;
    border: 1pt solid #a0a0a0;
    margin: 4pt;
    padding: 4pt;
    padding-right: 8pt;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
}

.site-branch-cell-name {
    width: 100pt;
    overflow: hidden;
    text-overflow: ellipsis;
}

.site-branch-cell .counts {
    position: absolute;
    top: 6pt;
    right: 2pt;
}

.site-branch-cell.state-somewhat-bad {
    background-color: #f0f0d0;
}

.site-branch-cell.state-really-bad {
    background-color: #f0e0e0;
}

.site-branch-cell.state-good {
    background-color: #e0f0e0;
}

.site-branch-cell:not(.absent) {
    cursor: pointer;
}

.site-branch-cell.absent {
    border: none;
}


.split-cell {
    position: relative;
    padding: 4pt;
    border: thin solid #808080;
    border-radius: 4pt;
    background-color: #f0f0f0;
    background-image: -webkit-linear-gradient(80deg, #f0f0f0 50%, #e0e0e0 50%);
}

.split-cell-bottom-left {
    position: absolute;
    bottom: 4pt;
    left: 4pt;
}

.split-cell-top-right {
    position: absolute;
    top: 4pt;
    right: 4pt;
}

#run-table {
    font-size: 11pt;
    text-align: left;
}

#col-run-time {
    width: 160pt;
}

#col-run-id {
    width: 80pt;
}

#run-table th, #run-table td {
    padding: 6pt;
    padding-right
}

td.run-id {
    font-family: monospace;
}

.run-branch {
    display: inline-block;
}

#run-table .site-branch-cell {
    margin: 0pt;
    text-align: left;
}

#run-table .site-branch-cell .counts {
    float: right;
}

.branch-list-summary {
    margin-bottom: 16pt;
}

.branch-list h2 {
    display: block;
}

.run-env th {
    text-align: left;
}

.run-env .env-name {
    text-align: right;
    padding-right: 8pt;
}

.run-env .col-env-name {
    width: 120pt;
}

.run-env .col-env-value {
    width: 180pt;
}

.run-branch .site-branch-cell {
    font-size: 11pt;
}

.branch {
    margin-top: 8pt;
}

#container .theme--light.v-expansion-panels .v-expansion-panel {
    background-color: #f0f0f0;
    transition: .1s cubic-bezier(.25,.8,.5,1);
    margin: 4pt;
    border-radius: 4pt;
    min-height: 32pt;
}

.run-env tr {
    font-size: 11pt;
    height: 20pt;
}

.run-env .env-name, .run-env .env-value {
    padding-top: 4pt;
    vertical-align: top;
}

.executor-name {
    display: inline-block;
    margin-top: -2pt;
    padding: 2pt;
    padding-left: 4pt;
    padding-right: 4pt;
    background-color: #f7f7f7;
    border: thin solid #e0e0e0;
    border-radius: 2pt;
}

.listing {
    width: 500pt;
    white-space: pre;
    font-size: 9pt;
    font-family: monospace;
    background-color: #d0d0d0;
    border: thin solid #c0c0c0;
    border-radius: 4pt;
    overflow: auto;
    padding: 4pt;
    margin-top: -4pt;
}

.listing-log {
    max-height: 256pt;
    white-space: pre-wrap;
}

.env-missing-value.material-icons {
    display: inline-block;
    font-size: 16pt;
    margin-top: -3pt;
    color: #808080;
}

.branch-tests {
    margin-left: 16pt;
}

.branch-tests .v-expansion-panel-header {
    margin: 2pt;
    padding: 2pt;
    min-height: 16pt;
}

#container .branch-tests .theme--light.v-expansion-panels .v-expansion-panel {
    background-color: #e0e0e0;
    margin: 2pt;
    min-height: 0pt;
}

.branch-tests .v-expansion-panel {
    margin: 4pt;
    padding: 2pt;
    background-color: #d0d0d0;
    border: thin solid #c0c0c0;
    border-radius: 4pt;
}

#container .branch-tests .theme--light.v-expansion-panels .v-expansion-panel .test-status {
    position: absolute;
    right: 8pt;
    font-weight: bold;
}

#container .branch-tests .theme--light.v-expansion-panels .v-expansion-panel.test-status-passed .test-status {
    color: #20a000;
}

#container .branch-tests .theme--light.v-expansion-panels .v-expansion-panel.test-status-failed .test-status {
    color: rgba(255, 0, 0, 0.7);
}

#container .branch-tests .theme--light.v-expansion-panels .v-expansion-panel.test-status-skipped .test-status {
    color: rgba(180, 180, 180, 0.7);
}


.test-failure {
    padding-bottom: 12pt;
    padding-left: 8pt;
    width: 600pt;
}

.ansi-bright-green-fg {
    color: rgb(30, 140, 0);
}

.ansi-bright-blue-fg {
    color: rgb(0, 0, 180);
}

.ansi-bright-red-fg {
    color: rgb(255, 0, 0);
}

.ansi-red-fg {
    color: rgb(180, 0, 0);
}



#status-calendar table tr:first-child th {
    position: sticky;
    top: 0pt;
}

.calendar-month {
    height: 14pt;
    font-weight: normal;
    font-size: 11pt;
    width: 50pt;
}

.calendar-day {
    height: 18pt;
    font-weight: normal;
    font-size: 11pt;
    padding-bottom: 4pt;
    margin-bottom: 2pt;
}

.calendar-site {
    text-align: left;
    font-weight: 300;
    font-size: 11pt;
    height: 24pt;
    padding: 4pt;
    border-radius: 4pt;
}

.calendar-site .scheduler {
    border-radius: 2pt;
    background-color: #5070ff;
    padding: 2pt 3pt 1pt 3pt;
    margin-left: 4pt;
    color: white;
}

.status-table-tile {
    text-align: left;
    height: 10pt;
    align-content: left;
    margin-left: calc(50% - 4pt);
}

.status-bubble {
    border-radius: 100pt;
    border: 0.5px solid rgba(0, 0, 0, 0.2);
    display: inline-block;
}

.status-bubble.bubble-large {
    width: 8pt;
    height: 8pt;
    margin-right: 0pt;
}

.status-bubble.bubble-small {
    width: 3pt;
    height: 3pt;
    margin-right: 1pt;
    margin-bottom: 1pt;
    left: 0;
}

.status-bubble.state-good {
	background-color: rgb(106, 255, 77);
}

.status-bubble.state-somewhat-bad {
	background-color: rgb(242, 219, 73);
}

.status-bubble.state-really-bad {
	background-color: #ffb0a0;
}

.status-bubble.state-missing-and-good {
    background: linear-gradient(90deg, rgb(106, 255, 77) 35%, rgba(0, 0, 0, 0.2) 35%, rgba(0, 0, 0, 0.2) 55%, #e0e0e0 55%);
}

.status-bubble.state-missing-and-bad {
    background: linear-gradient(90deg, #ffb0a0 35%, rgba(0, 0, 0, 0.2) 35%, rgba(0, 0, 0, 0.2) 55%, #e0e0e0 55%);
}



.bg {
    background-color: #f0f0f0;
}

.status-table-cell {
    text-align: center;
}

.status-table .status-header-cell {
    width: 60pt;
}

.status-table th.status-header-cell {
	text-align: center;
}

.status-table .status-cell {
    padding: 0;
    width: 60pt;
    min-width: 60pt;
}

.status-table th, .status-table td {
    font-size: 11pt;
}

.status-table th {
    font-weight: normal;
}

.status-table .status-table-header {
    border-bottom: 2pt solid #e0e0e0;
}

#status {
    margin-top: 16pt;
}

.status-table .scheduler-header-cell, .status-table .scheduler-cell {
    width: 100pt;
}

.status-table .scheduler-header-cell {
    text-align: left;
}

#status .status-table .v-data-table {
    background-color: #f0f0f0;
}

#status .status-table .v-data-table table, .status-table .v-data-table__wrapper {
    width: 700pt;
    border-collapse: collapse;
    overflow-x: hidden;
}

#status .status-table .v-data-table td,
#status .status-table .v-data-table th {
    padding-left: 4pt;
    padding-right: 4pt;
    height: 20pt;
    font-size: 11pt;
    border-bottom: none;
}

#status .status-table .v-data-table td.hline {
    height: 8pt;
}

#status .status-table .v-row-group__header th.group-open {
}

#status .status-table .v-row-group__summary {
    height: 8pt;
}

#status .status-table .v-row-group__summary td {
    height: 8pt;
}

#status .status-table .v-row-group__summary .group-footer {
    margin-left: 10pt;
    width: 100%;
    height: 8pt;
    border-top: thin solid #e0e0e0;
}

#status .status-table .top-row {
    border-bottom: 2pt solid #e0e0e0;
}

#status .status-table .v-data-table th.calendar-site {
    padding-left: 12pt;
    white-space: nowrap;
}

#status .status-table .v-data-table th.calendar-site .site-label {
    display: inline-block;
    font-size: 11pt;
    font-weight: normal;
    height: 100%;
    vertical-align: middle;
}

#status .status-table .v-data-table th.table-group-header {
    text-align: left;
    font-weight: 600;
    cursor: pointer;
}

#status .status-table .v-data-table .expander {
    display: inline-block;
    width: 6pt;
    margin: 2pt;
}

#status .status-table .v-data-table .group-name {
    padding-left: 0pt;
}

#status .status-table .calendar-site:hover {
    background-color: #80a0ff10;
}

#status .status-table .footer {
    font-size: 11pt;
    margin-top: 8pt;
    margin-left: 24pt;
}

#status .status-table .group-indicator {
    width: 8pt;
    height: 100%;
    display: inline-block;
}

.indicator-in-group {
    border-left: thin solid #e0e0e0;
}

.branches-container {
    display: inline-flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-content: flex-start;
    width: 40%;
    height: 100%;
    margin: 0;
    padding: 0;
}

#auth .sep {
    display: block;
    height: 36pt;
}

#auth .theme--light.v-application {
    background-color: #f0f0f0;
}

#auth .v-tabs {
    flex: none;
}

.run .v-skeleton-loader > div {
    margin-top: 16pt;
}

.run .v-skeleton-loader__text {
    height: 24pt;
    margin-left: 32pt;
    margin-right: 32pt;
}