header {
    box-shadow: none;
    margin-bottom: 0;
}

body {
    font-size: 16px;
}

.background {
    background-size: cover;
    background-position: 50% 42.5%;
}

@media screen and (min-width: 1200px) {
    #block-header .container {
        width: 66.66666667%!important;
        padding-left: 0;
        padding-right: 0;
    }
}

@media screen and (min-width: 992px) {
    #block-header .container {
        width: 66.66666667%!important;
        padding-left: 0;
        padding-right: 0;
    }
}

h1, h2, h3, h4, h5, h6, h7, h8 {font-family: 'Roboto', Helvetica, Arial, Sans-Serif;}
p, * {font-family: 'Open Sans', Helvetica, Arial, Sans-Serif;}

h1, h2 {text-transform: uppercase; font-weight: 300;}

h2.page-title {
    margin: 30px 0 20px 0;
    padding: 5px 0px;
}

h2.page-title.archived {
    background-color: #efefef;
}

h2.page-title > span.page-title-sub-header {
    font-size: 0.5em;
}

h3.page-title {
    margin: 10px 0 10px 0;
    padding: 5px 0px;
    text-transform: capitalize;
}

.page-title-item-code {
    color: #cecece;
}

.page-title-separator {
    color: #009966;
}

.panel-borderless {
    border: 0;
    box-shadow: none;
}

.shaded_bg {background-color: #f3f3f3}

.dark_bg {background-color: #193441; color: #fff; }

.no-gutter {
    padding-left: 0px;
    padding-right: 0px;
}

#block-header {
    margin-bottom: 0px;
}

#block-header h1, #block-header h2, #block-header h3, #block-header h4, #block-header h5, #block-header h6 {
    text-decoration: none!important;
    border-bottom: none;
}

#block-header h1 > i {
    color: #009966;
}

#block-header h2 {
    color: #99cc33;
}

.block-header-h2-sub-title {
    font-size: 0.65em;
    color: #cecece;
}

.list-item-name {
    color: #009966;
}

#content-body {
    margin-bottom: 100px;
}

.footer {
    height: 80px;
}

#footer-developer-block  {
    overflow: visible;
}

#footer-developer-block a, #footer-developer-block a:hover, #footer-developer-block a:visited {
    color: #fbfbfb;
}

#footer-developer-block img {
    height: 100%;
    max-height: 40px;
    width: auto;
    padding: 0 3px;
}

#loading {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    display: block;
    opacity: 0.9;
    background-color: #fff;
    z-index: 99;
    text-align: center;
}

#loading-image {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 100;
} 

/* Misc Styles - Start */
.form-control,
.form-control .input-group {
    margin-bottom: 14px;
}

.form-group div.col-sm-9 > span {
    padding: 7px 15px 0 0;
    display: block;
}

.form-group span.help-block {
    font-size: .9em;
    color: red;
}

div.row > div.col-xs-12 > a.btn {
    margin-top: 20px;
    margin-bottom: 10px;
}

div.row > div.col-xs-12 > a.btn.btn-circle {
    margin-top: 0px;
    margin-bottom: 10px;
}

.map-legend a.btn {
    margin-top: 0!important;
}

span.pending, .btn-text-danger {
    color: #ff5349;
}

table td > i.positive {    
    color: #009966;
}

table td > i.maybe {    
    color: #193441;
}

table td > i.negative {    
    color: #ff5349;
}

#btn-bar-top {
    margin-bottom:2vh;
}

.table-hover > tbody > tr:hover {
    background-color: #dff0d8;
}

tr.lead {
    background-color:#ffa !important; 
    font-size: inherit;
    font-weight: 400;
}

.green {
    background-color: #afa !important;
}

.red {
    background-color: #ff5349 !important;
}

.purple {
    background-color: purple !important;
    color: #fff !important;
}

.purple td {
    border: none !important;
    border-bottom: 1px solid #cecece !important;
}

.purple td > b {    
    font-weight: 400 !important;
}

.panel-heading-datetime {
    display: inline-block;
    color: #009966;
}

.btn-circle {
	margin: 2px;
	width: 38px;
	height: 38px;
	text-align: center;
	padding: 6px 0;
	font-size: 16px;
	line-height: 1.428571429;
	border-radius: 19px;
}
.btn-circle.btn-med {
	width: 40px;
	height: 40px;
	padding: 10px 16px;
	font-size: 16px;
	line-height: 1.33;
	border-radius: 20px;
}
.btn-circle.btn-lg {
	width: 50px;
	height: 50px;
	padding: 10px 16px;
	font-size: 18px;
	line-height: 1.33;
	border-radius: 25px;
}
.btn-circle.btn-xl {
	width: 70px;
	height: 70px;
	padding: 10px 16px;
	font-size: 24px;
	line-height: 1.33;
	border-radius: 35px;
}
.priority-circle {
    display: inline-block;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    text-align: center;
    font-size: 3.5rem;
    font-weight: bold;
    line-height: 1.75;
    position: relative;
    background: #38a9e4;
    color: white;
    font-family: inherit, sans;
}
.map-marker-content {
    font-weight: 400;
    min-width: 300px;
}
.map-marker-description {
    font-size: 13px;
    background-color: #ececec;
    padding: 5px 7px;
}
button.gm-ui-hover-effect {
    top: 0!important;
    right: 0!important;
    width: 36px!important;
    height: 36px!important;
}
.gm-ui-hover-effect > span {
    background-color: #000;
    width: 24px!important;
    height: 24px!important;
}

.table_row_sub_text_italic {
    font-style: italic;
    color: #8da3a6;
    font-size: 70%;
}

span.lyco-table-cell-subtext {
    font-size: 90%;
}

tr.completed > td {
    background-color: #efefef;
}

tr.lyco-readonly-row > td,
tr.lyco-readonly-row > td a,
tr.lyco-readonly-row > td a:visited,
tr.lyco-readonly-row > td a:hover {
    color: #999;
    text-decoration: line-through;
}

tr.lyco-readonly-row > td > i {
    color: #666!important;
}

tr.lyco-row-supersedes > td,
tr.lyco-row-supersedes > td a,
tr.lyco-row-supersedes > td a:visited,
tr.lyco-row-supersedes > td a:hover {
    font-weight: bold;
}

td.date_column {
    white-space: nowrap;
}

td.action-column {
    white-space: nowrap;
}

thead > tr > td {
    vertical-align: bottom!important;
}

.nowrap {
    white-space: nowrap;
}

div.lyco-filter-nav > a.btn {
    margin-top: 0!important;
    margin-bottom: 0!important;
}

p.lyco-site-blk-tgl > span.lyco-site-blk-title.archived {
    color: orange;
}

p.lyco-site-blk-tgl > span.lyco-site-blk-title > span.sub-header {
    font-size: 0.8em;
    color: #cdcdcd;
}

p.lyco-idx-item {
    display: table-row;
}

.list-item-name, .list-item-descr, .list-item-actions {
    padding: 5px 7px;
    border-bottom: 1px solid #efefef;
    display: table-cell;
    vertical-align: top;
}

.list-item-sub-title {
    color: #cdcdcd;
    font-size: 0.8em;
}

.list-item-sub-title.archived {
    color: #cdcdcd;
}

.list-item-name a {
    color: #009966;
}

.list-item-name.archived a {
    color: orange;
}

.list-item-name {
    width: 25%;
    text-align: left;
}

.list-item-descr {
    width: 59%;
    text-align: left;
}

.list-item-actions {
    width: 5%;
    text-align: center;
}

/* Correct Bootstrap Btn Overflow Issue */
button {
    overflow: hidden;
}

.container.lycomms-table-footer-link {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    text-align: right; 
}

.container.lycomms-table-footer-link a {
    font-size: 0.85em; 
}

@media screen and (max-width: 1024px) {
    .map-legend {
        display: flex;
        flex-direction: column-reverse;
    }
    .map-legend a.btn {
        margin-top: 0!important;
    }
}

.btn-lyco.btn {
    padding: 12px 25px;
    font-size: 16px;
    box-shadow: none;
}

.btn-lyco.btn-info {
    background-image: unset;
    background-color: #193441;
    border-width: 2px;
    border-color: #193441;
    color: #fff;
    text-shadow: none;
    font-weight: 600!important;
}

.btn-lyco.btn-info i {
    color: #009966;
}

.btn-lyco.btn-info:hover {
    background-color: #009966;
    border-width: 2px;
    border-color: #009966;
    color: #fff;
    text-shadow: none;
    font-weight: 600!important;
}

.btn-lyco.btn-info:hover i {
    color: #193441;
}

.btn-black {
    background-image: unset;
    background-color: #000;
    border-width: 2px;
    border-color: #000;
    color: #fff;
    text-shadow: none;
    font-weight: 400!important;
}

.btn-black:hover {
    background-image: unset;
    background-color: rgba(0,0,0,0.75);
    border-width: 2px;
    border-color: rgba(0,0,0,0.75);
    color: #fff;
    text-shadow: none;
    font-weight: 400!important;
}

.btn-light-red {
    background-image: unset;
    background-color: rgb(217, 83, 79);
    border-width: 2px;
    border-color: rgb(217, 83, 79);
    color: #fff;
    text-shadow: none;
    font-weight: 400!important;
}

.btn-light-red:hover {
    background-image: unset;
    background-color: rgba(217, 83, 79, 0.75);
    border-width: 2px;
    border-color: rgba(217, 83, 79, 0.75);
    color: #fff;
    text-shadow: none;
    font-weight: 400!important;
}

.btn-light-green {
    background-image: unset;
    background-color: rgb(92, 184, 92);
    border-width: 2px;
    border-color: rgb(92, 184, 92);
    color: #fff;
    text-shadow: none;
    font-weight: 400!important;
}

.btn-light-green:hover {
    background-image: unset;
    background-color: rgba(92, 184, 92, 0.75);
    border-width: 2px;
    border-color: rgba(92, 184, 92, 0.75);
    color: #fff;
    text-shadow: none;
    font-weight: 400!important;
}

.btn-circle.btn-xs {
    width: 25px!important;
    height: 25px!important;
    padding: 5px 0!important;
    font-size: 11px!important;
    line-height: 1;
}

.lyco-defect-proposed {
    color: red!important;
}

/* Misc Styles - End */

.status-pill {
    display: inline-block;
    border-radius: 5px;
    background-color: #cecece;
    padding: 0.625rem 1.25rem;
}

/* Badge Colours - Start */

.status-error,
.badge-error {
    background-color: #b94a48!important;
    color: #fff!important;
}
.badge-error:hover {
    background-color: #953b39!important;
    color: #fff!important;
}
.status-warning,
.badge-warning {
    background-color: #f89406!important;
    color: #fff!important;
}
.badge-warning:hover {
    background-color: #c67605!important;
    color: #fff!important;
}
.status-success,
.badge-success {
    background-color: #468847!important;
    color: #fff!important;
}
.badge-success:hover {
    background-color: #356635!important;
    color: #fff!important;
}
.status-info {
    background-color: #cecece!important;
    color: #666!important;
}
.status-info,
.badge-info {
    background-color: #2d6987!important;
    color: #fff!important;
}
.badge-info:hover {
    background-color: #2d6987!important;
    color: #fff!important;
}

/* Badge Colours - End */

/* Client Portal - Start */
#lyco-cp-page-header-logo {
    max-width: 100px;
    max-height: 40px;
    width: auto;
    height: auto;
    margin: 20px 0 10px;
}

#lyco-cp-print-header-logo {
    max-width: 100px;
    max-height: 40px;
    width: auto;
    height: auto;
    margin: 0;
}

.client-tablerow-title {
    font-weight: 600;
}

.client-tablerow-subtitle {
    color: #4186e0;
    padding-left: 20px;
}

table td > i {
    color: #009966;
}

table.chartdata td {
    text-align: right;
}

.semi-opaque {
    opacity: 0.5;
}

.active-data {
    font-weight: bold;
}

.colour-priority-e {
    background-color: #e8384f;
}

.colour-priority-p1 {
    background-color: #fd612c;
}

.colour-priority-p2 {
    background-color: #eec300;
}

.colour-priority-p3 {
    background-color: #62d26f;
}

.colour-priority-p4 {
    background-color: #37c5ab;
}

.colour-priority-m {
    background-color: #8da3a6;
}

#erow th {
    background-color: #e8384f;
    color: #fff;
    font-weight: 400;
}

#p1row th {
    background-color: #fd612c;
    color: #fff;
    font-weight: 400;
}

#p2row th {
    background-color: #eec300;
    color: #fff;
    font-weight: 400;
}

#p3row th {
    background-color: #62d26f;
    color: #fff;
    font-weight: 400;
}

#p4row th {
    background-color: #37c5ab;
    font-weight: 400;
}

#mrow th {
    background-color: #8da3a6;
    font-weight: 400;
}
/* Client Portal - End */

/* Schedule - Start */

table > tbody > tr > td > button.btn {
    padding: 2px 4px;
    min-width: 24px;
    min-height: 24px;
}

/* Schedule - End */

/* Work Orders - Start */

td.workflow-comments {
    font-size: 0.9em;
}
/* Work Orders - End */

/* Tooltip container */
.tooltip-icon {
    position: relative;
    display: inline-block;
    cursor: pointer;
    color: #e67e22; /* orange for warning */
    font-size: 22px;
    line-height: 1;
}

/* Tooltip text - START */
.tooltip-icon .tooltip-text {
    visibility: hidden;
    width: 200px;
    background-color: #333;
    color: #fff;
    text-align: left;
    padding: 8px;
    border-radius: 4px;
    position: absolute;
    z-index: 100;
    bottom: 125%; /* position above icon */
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    transition: opacity 0.3s;
    font-size: 13px;
    line-height: 1.3;
}

/* Arrow */
.tooltip-icon .tooltip-text::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #333 transparent transparent transparent;
}

/* Show tooltip on hover */
.tooltip-icon:hover .tooltip-text {
    visibility: visible;
    opacity: 1;
}
/* Tooltip text - END */