*:focus, *:active, *:hover, a:focus, a:active, a:hover {
    outline: none !important;
}

html {
    min-height: 100%;
    background-color: #2F2F2F;
    background: url(/intranet/tiles-left.png), url(/intranet/bg.png);
    background-repeat: no-repeat, repeat;
    background-position: left bottom, top left;
    background-attachment: fixed, fixed;

    -ms-touch-action: manipulation;
    touch-action: manipulation;
}

body {
    height: 100%;
    background: none;
    font-family: 'Karla', sans-serif;
    font-size: 14px;
}

/* COMMON */
body, a .default-text {
    color: #333;
}

a, a:hover, a:focus, a:active,
.link, .link:hover, .link:focus, .link:active,
.link.hover {
    color: #D84444;
    text-decoration: none;
}

a:hover, .link:hover, .link.hover {
    text-decoration: underline;
    cursor: pointer;
}

.btn {
    border-radius: 3px;
}

.btn.btn-theme {
    background: #D84444;
    color: #FFF;
    border-color: #AE2A2A;
}

.btn.btn-theme:hover {
    background: #AE2A2A;
}

.btn.btn-inverse {
    background: #403F3F;
    border-color: #292929;
    color: #FFF;
}

.btn.btn-inverse:hover {
    background: #212121;
    border-color: #111;
}

.form-control, .uneditable-input {
    border: 1px #DDD solid;
    box-shadow: none;
    border-radius: 1px;
}

.form-control:focus, .uneditable-input:focus {
    border-color: #AAA;
    box-shadow: none;
    outline: none;
}

.form-control:not(select) {
    -webkit-appearance: none;
    appearance: none;
}

textarea {
    resize: vertical;
    min-height: 34px;
}

.table.table-no-borders, .table.table-no-borders th, .table.table-no-borders td, .table.table-no-borders tr {
    border: none;
}

.alert {
    padding: 13px 16px;
    border-radius: 3px;
}

.alert.alert-grey {
    background: #F3F3F3;
    border-color: #E4E4E4;
}

#alert-block-wrapper .alert {
    border: none;
    border-bottom: 2px #1A1A1A solid;
}

.alert.alert-no-margin {
    margin: 0;
}

.alert-icon {
    position: relative;
    padding-left: 45px;
}

.alert-icon .icon {
    position: absolute;
    height: 100%;
    width: 16px;
    left: 15px;
    top: 0;
}

.alert-icon .icon-helper {
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    position: relative;
}

.alert-icon .icon-helper img {
    position: absolute;
    top: 50%;
    margin-top: -8px;
}

.table > thead > tr > th[valign="middle"],
.table > tbody > tr > td[valign="middle"],
.table > tfoot > tr > td[valign="middle"] {
    vertical-align: middle;
}

label:hover {
    cursor: pointer;
}

label.checkbox.checkbox-row,
label.radio.radio-row {
    padding-left: 35px;
    font-weight: normal;
}

label.checkbox.checkbox-row input[type="checkbox"],
label.radio.radio-row input[type="radio"] {
    margin-left: -28px;
}

.bordered-heading {
    margin: 0 0 10px;
    padding: 0 0 6px;
    border-bottom: 1px #EEE solid;
}

* + .bordered-heading {
    margin-top: 20px;
}

.highlighted {
    background: #FBDDDD;
    background: rgba(215, 68, 68, 0.15);
    color: #010101;
    display: inline;
}

[class*="col-"].no-gutter {
    padding: 0;
}

.danger-warning {
    display: block;
    background: #E07474;
    color: #FFF;
    font-weight: bold;
    padding: 2px 6px;
    margin-bottom: 5px;
    font-size: 10px;
    text-transform: uppercase;
    -webkit-border-radius: 3px;
    border-radius: 3px;
}

/* BOX */
.box-heading {
    margin: 0 0 16px;
    padding: 0 0 10px;
    border-bottom: 1px #EEE solid;
}

.box.box-heading, .box.box-heading h1, .box.box-heading h2, .box.box-heading h3, .box.box-heading h4, .box.box-heading h5, .box.box-heading h6 {
    margin: 0;
    padding: 0;
}

.box {
    position: relative;
    display: block;
    border: 1px #1A1A1A solid;
    border-bottom-width: 2px;

    border-radius: 3px;
}

.box:not(.alert) {
    background: #FFF;
}

label.box {
    font-weight: normal;
}

.box:empty {
    display: none;
}

.box.padding-xs, .box.inner-padding-xs > .box-inner {
    padding: 5px;
}

.box.padding-sm, .box.inner-padding-sm > .box-inner {
    padding: 10px;
}

.box.padding-md, .box.inner-padding-md > .box-inner {
    padding: 15px;
}

.box.padding-lg, .box.inner-padding-lg > .box-inner {
    padding: 20px;
}

.box > table:last-child, .box > .form-group:last-child {
    margin-bottom: 0;
}

.box + .box, .box.push-top, .merge-boxes.push-top {
    margin-top: 17px;
}

.box.push-bottom, .merge-boxes.push-bottom {
    margin-bottom: 15px;
}

.box.wrap-overflow {
    overflow: hidden;
}

.merge-boxes .box {
    border-radius: 0;
    border-bottom: none;
}

.merge-boxes .box + .box {
    margin-top: 0;
    border-top: 1px #EEE solid;
}

.merge-boxes .box:first-child, .merge-boxes .box.first-child-mask {
    border-radius: 3px 3px 0 0;
    border-bottom: none;
}

.merge-boxes .box.first-child-mask,
.merge-boxes .box.first-child-mask:only-child {
    border-top: none;
}

.merge-boxes .box:last-child {
    border-radius: 0 0 3px 3px;
    border-bottom: 2px #1A1A1A solid;
}

.merge-boxes.merge-first-box .box:first-child, .merge-boxes .box.first-box {
    border-top: none;
    border-radius: 0;
}

.merge-boxes .box:only-child:not(.first-box) {
    border-radius: 3px;
}

.merge-boxes .box.bottom-cornered,
.merge-boxes .box:only-child.bottom-cornered,
.merge-boxes .box.last-child-mask,
.merge-boxes .box.last-child-mask:only-child,
.merge-boxes .box.bottom-cornered .file-inner,
.merge-boxes .box:only-child.bottom-cornered .file-inner,
.merge-boxes .box.last-child-mask .file-inner,
.merge-boxes .box.last-child-mask:only-child .file-inner {
    border-radius: 0 0 3px 3px;
}

.box.box-top-arrow,
.merge-boxes .box.first-child-mask.box-top-arrow {
    margin-top: 17px;
}

.box.box-bottom-arrow,
.merge-boxes .box.last-child-mask.box-bottom-arrow {
    margin-bottom: 17px;
}

.box.box-top-arrow:before,
.box.box-bottom-arrow:before,
.box.box-bottom-arrow:after,
.box.box-left-arrow:before,
.box.box-left-arrow:after {
    content: "";
    display: block;
    position: absolute;
    border: 8px transparent solid;
    height: 0;
    width: 0;
}

.box.box-top-arrow:before {
    border-bottom-color: #FFF;
    top: -16px;
    left: 18px;
}

.box.box-bottom-arrow:before {
    border-top-color: #1A1A1A;
    border-width: 10px;
    bottom: -21px;
    left: 16px;
}

.box.box-bottom-arrow:after {
    border-top-color: #FFF;
    bottom: -16px;
    left: 18px;
}

.box.box-left-arrow:before {
    border-right-color: #1A1A1A;
    left: -16px;
    top: 20px;
}

.box.box-left-arrow:after {
    border-right-color: #FFF;
    top: 18px;
    left: -16px;
}



.clickable-boxes a.box:hover,
.box.clickable:hover {
    background: #F6F6F6;
    text-decoration: none;
    cursor: pointer;
}

.clickable-boxes a.box-top-arrow:hover:before,
.clickable.box-top-arrow:hover:before {
    border-bottom-color: #F6F6F6;
}

.box.box-header.box-top-arrow:before {
    border-bottom-color: #F5F5F5;
}

.box.box-header {
    font-weight: bold;
    padding: 6px;
}

.box.box-header,
.box.box-darker {
    background: #F5F5F5;
}

.box.box-header.padding-sm {
    padding-left: 10px;
    padding-right: 10px;
}

.box.box-header.padding-md {
    padding-left: 15px;
    padding-right: 15px;
}

.box.box-header.padding-lg {
    padding-left: 20px;
    padding-right: 20px;
}

.box.hidden-box {
    display: none;
}

.box.show-all-boxes, .box.show-all-boxes:focus {
    font-weight: bold;
    background: #FCFCFC;
    text-align: center;
    padding: 8px;
    border-bottom: 2px #1A1A1A solid;

    border-radius: 0 0 3px 3px;
}

.box.show-all-boxes:hover {
    background: #F4F4F4;
    text-decoration: none;
}

.box.box-header .result-count {
    float: right;
}

.box.positioned-box {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

.box .box-file-attached .file-inner {
    display: block;
    position: relative;
    background: #EDEDED;
    padding-top: 5px;
    padding-bottom: 4px;
    border-bottom: 1px #E3E3E3 solid;
    margin-top: 5px;
}

.box .box-file-attached .file-inner:before {
    content: "";
    display: block;
    position: absolute;
    top: -16px;
    left: 19px;
    border: 8px transparent solid;
    border-bottom-color: #EDEDED;
}

.box .box-file-attached .file-inner:hover {
    background: #E6E6E6;
    text-decoration: none;
}

.box .box-file-attached .file-inner:hover:before {
    border-bottom-color: #E6E6E6;
}

.box .box-file-attached .file-inner .file-name {
    font-weight: bold;
    padding: 0 1px;
}

.box.inner-padding-xs .box-file-attached .file-inner {
    padding-left: 5px;
    padding-right: 5px;
}

.box.inner-padding-sm .box-file-attached .file-inner {
    padding-left: 10px;
    padding-right: 10px;
}

.box.inner-padding-md .box-file-attached .file-inner {
    padding-left: 15px;
    padding-right: 15px;
}

.box.inner-padding-lg .box-file-attached .file-inner {
    padding-left: 20px;
    padding-right: 20px;
}

.box.box-list .list-group {
    margin: 0;
    border: 0;
}

.box.box-list .list-group .list-group-item:not(.active) {
    border-color: #EEE;
}

.box.box-list .list-group .list-group-item {
    border-left: none;
    border-right: none;
}

.box.box-list .list-group .list-group-item:first-child,
.box.box-list .list-group .list-group-item:last-child {
    border-radius: 0;
}

.box.box-list .list-group .list-group-item:first-child {
    border-top: none;
}

.box.box-list .list-group .list-group-item:last-child {
    border-bottom: none;
}

.alt-boxes .box:nth-child(even):not(.no-alt):not(.box-darker):not(.box-header) {
    background: #FCFCFC;
}

.clickable-boxes.alt-boxes.clickable-boxes a.box:nth-child(even):not(.no-alt):not(.box-darker):not(.box-header):hover {
    background: #F6F6F6;
}

.limit-boxes {
    display: none;
}

.table.table-overflow-text {
    table-layout: fixed;
}

.table.table-overflow-text td.overflow-cell,
.overflow-text {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#wide-wrapper #dashboard-overview {
    padding: 20px 10px;
}

#dashboard-overview .row {
    margin: 0;
}

#dashboard-overview li {
    padding: 0 8px;
    margin-left: 0;
    margin-right: 0;
}


/* NAVIGATION */
#navigation {
    position: fixed;
    width: 65px;
    height: 100%;
    background: #171717;
    background: rgba(10, 10, 10, 0.6);
    border-right: 1px #111 solid;

    top: 0;
    left: 0;
    z-index: 10;

    box-shadow: inset -2px 0 12px rgba(0, 0, 0, 0.27);
}

#navigation .logo {
    position: relative;
    padding: 20px 12px 10px;
    z-index: 4;
}

#navigation .logo img,
#navigation .profile-photo img {
    max-width: 100%;
}

#navigation .profile-photo {
    padding: 0 8px;
}

#navigation li .profile-photo a {
    padding-bottom: 18px;
}

#navigation .photo-holder {
    position: relative;
    border: 1px #000 solid;
    border-radius: 50%;

    box-shadow: 0 2px rgba(255, 255, 255, 0.2);
}

#navigation .photo-holder:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    border-radius: 50%;
    box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.74);
}

#navigation .profile-photo img {
    border-radius: 50%;
    overflow: hidden;
}

#navigation .text-nav {
    display: none;
}

#navigation ul {
    position: relative;
    margin: 0;
    padding: 0;
    list-style: none;
    z-index: 4;
}

.keep-header-open #navigation ul {
    margin-top: 10px;
}

#navigation li a {
    position: relative;
    display: block;
    text-align: center;
    font-size: 20px;
    padding: 14px 0 12px;
    color: #8C8C8C;
    text-shadow: 0 -1px #000;
    transition: all ease-in-out 200ms;
}

#navigation li a .glyphicon {
    vertical-align: text-top;
}

#navigation li a.active, #navigation li a:hover {
    color: #FFF;
    text-decoration: none;
}

#navigation li a.active .glyphicon, #navigation li a:hover .glyphicon {
    transform: scale(1.2, 1.2);
}

#nav-tracking-line {
    position: absolute;
    background: #0E0E0E;
    top: 0;
    left: 0;
    height: 0;
    width: 100%;
    z-index: 2;

    box-shadow: inset 0 1px 2px #000, 0 1px rgba(255, 255, 255, 0.11);
}


/* TOP HEADER */
#top-navigation {
    position: fixed;
    background: #111;
    background: rgba(0, 0, 0, 0.88);
    border-bottom: 3px rgba(0, 0, 0, 0.9) solid;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9;

    box-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
}

#top-navigation .navigation-wrapper {
    position: relative;
}

#top-navigation .navigation-padding {
    padding: 12px 12px 6px 77px;
}

#top-navigation .navigation-row,
.keep-header-open #show-header-navigation {
    display: none;
}

.keep-header-open #top-navigation .navigation-row {
    display: block;
}

#navigation-inline-nav > ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

#navigation-inline-nav > ul > li {
    float: left;
}

#navigation-inline-nav > ul > li > a, #navigation-inline-nav .dropdown > a {
    display: block;
    padding: 10px 12px;
}

#navigation-inline-nav a:hover {
    cursor: pointer;
}

#global-search {
    position: relative;
    height: 46px;
}

#global-search .search-icon {
    position: absolute;
    top: 0;
    left: -20px;
    height: 100%;
    width: 30px;
    color: #FFF;
    font-size: 20px;
}

#global-search .search-icon .glyphicon {
    top: 12px;
}

#global-search .form-control {
    position: absolute;
    background: transparent;
    border: none;
    color: #FFF;
    left: 0;
    top: 0;
    z-index: 4;
}

#global-search .autocomplete-text {
    z-index: 2;
    color: #A4A4A4;
}

#global-results {
    display: none;
    position: absolute;
    top: 100%;
    top: calc(100% + 9px);
    right: -4px;
    background: #111;
    background: rgba(0, 0, 0, 0.89);
    border: 1px #000 solid;
    border-bottom-width: 2px;
    z-index: 5;
    max-width: 580px;

    border-radius: 0 0 3px 3px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
}

#global-results:empty:before {
    content: "No results found";
    display: block;
    font-size: 18px;
    padding: 12px 22px;
    width: 580px;
    color: #FFF;
}

#global-search.searching #global-results:before {
    content: "";
    display: block;
    background: url(/intranet/red-loader.gif) 18px center no-repeat;
    height: 50px;
    width: 580px;
}

#global-results ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

#global-results li + li {
    border-top: 1px #2B2B2B solid;
}

#global-results .result-header {
    background: #000;
    background: rgba(0, 0, 0, 0.88);
    color: #FFF;
    font-weight: bold;
    padding: 4px 16px;
}

#global-results .result-header .result-count {
    float: right;
}

#global-results a {
    display: block;
    color: #B5B5B5;
    padding: 12px 16px;
    text-shadow: 0 1px #000;
    min-width: 580px;
    transition: all ease-in-out 140ms;
}

#global-results a:hover, #global-results a:focus, #global-results li.focused-row a {
    background: rgba(0, 0, 0, 0.8);
    color: #D84444;
    text-decoration: none;
}

#global-results h4 {
    margin: 0;
}

#global-results h4, #global-results .sub-text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#global-results .full-result a {
    color: #FFF;
    font-weight: bold;
    padding: 15px 0;
    text-align: center;
}


#show-header-navigation {
    position: absolute;
    background: rgba(0, 0, 0, 0.5);
    color: #FFF;
    bottom: -50px;
    right: 8px;

    border-radius: 0 0 2px 2px;
}

#show-header-navigation:hover {
    cursor: pointer;
}

#show-header-navigation .show-nav-box {
    padding: 10px 16px;
}

/* CONTENT */
#wide-wrapper {
    padding: 10px 0 0;
}

#wide-wrapper .wrapper-inner {
    padding: 20px 0 15px;
    height: auto;
}

#content {
    padding-left: 65px;
}

#main-container {
    padding-top: 50px;
	padding-bottom: 50px;
}

.keep-header-open #main-container {
    padding-top: 100px;
}

.keep-header-open #wide-wrapper {
    padding-top: 65px;
}

.overview-search {
    padding-bottom: 14px;
    margin-bottom: 14px;
    border-bottom: 1px #EEE solid;
}

.showing-result-count {
    color: #888;
    padding: 7px 0;
    margin: 0;
    text-align: right;
}

.pagination {
    width: 100%;
}

.pagination.pagination-bordered {
    margin: 14px 0 0;
    padding: 14px 0 0;
    border-top: 1px #EEE solid;
}

.pagination > li > a, .pagination > li > span, .pagination > li > a:hover, .pagination > li > span:hover, .pagination > li > a:focus, .pagination > li > span:focus {
    color: #D84444;
}

.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus {
    background: #D84444;
    border-color: #D84444;
    color: #FFF;
}

.box.pagination-box .pagination {
    margin: 0;
}

/* RESULTS PAGE */
.box.result-box {
    padding-left: 20px;
    padding-right: 20px;
}

.box.result-box h4,
.box .inner-box-heading {
    margin: 0;
}

.box .result-sub-cell + .result-sub-cell {
    padding-left: 10px;
}

.box .result-sub-text {
    display: block;
    color: #777;
    padding-top: 2px;
}


/* CUSTOMER PAGE */
#customer-support-banner {
    display: block;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #FFF;
    text-shadow: 0 -1px #A23030;
    font-size: 18px;
    padding: 12px 20px;
    border: 1px #000 solid;
    background: #D84444;
    margin: 0 0 15px;

    border-radius: 3px;

    box-shadow: inset 0 1px rgba(255, 255, 255, 0.3), 0 3px 1px rgba(0, 0, 0, 0.17);
}
#customer-support-banner .support-contract-name {
    font-size: 14px;
}

.merge-boxes #customer-map {
    overflow: hidden;
    background: #E5E3DF;
    border-bottom: 1px #C6C6C6 solid;
}

#customer-map img {
    max-width: 100%;
}

#customer-map img:hover {
    cursor: pointer;
}

#customer-map iframe {
    display: block;
    border: none;
    height: 280px;
    width: 100%;
    vertical-align: baseline;
}

#customer-info-sidebar .customer-address {
    border: 1px #EEE solid;
    background: #F8F8F8;
    padding: 10px 14px;

    border-radius: 2px;
}

#customer-info-sidebar .customer-address p {
    margin: 0;
}

#customer-info-sidebar .customer-address p + p {
    margin-top: 5px;
}

#customer-info-sidebar .customer-details-wrapper {
    position: relative;
}

#customer-info-sidebar .customer-form {
    display: none;
}

.is-support-contract .customer-address {
    margin-top: 36px;
}
.is-support-contract.has-support-contract-name .customer-address {
    margin-top: 66px;
}

.is-support-contract .customer-form .form-group:first-child {
    margin-top: 60px;
}

.support-contract-label {
    display: none;
}

.is-support-contract .support-contract-label {
    position: absolute;
    display: block;
    width: 100%;
    z-index: 4;
    margin-top: 12px;
}

.is-support-contract .support-contract-label .label-inner {
    position: relative;
    float: right;
    margin-right: -10px;
}

.is-support-contract .support-contract-label .label-inner:before {
    content: "";
    display: block;
    position: absolute;
    border: 10px transparent solid;
    border-left-color: #942525;
    top: 37px;
    right: -9px;
    z-index: -1;
}

.is-support-contract .support-contract-label .label-inner span {
    display: block;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #FFF;
    text-shadow: 0 -1px #A23030;
    font-size: 18px;
    padding: 10px 20px;
    border: 1px #9A2525 solid;
    background: #D84444;

    border-radius: 2px 0 0 2px;

    box-shadow: 0 3px 1px rgba(0, 0, 0, 0.17);
}

.support-contract-name {
    font-size: 12px;
}

.entries .remove-entry {
	position: absolute;
	top: 5px;
	right: 5px;
	z-index: 8;
}

#job-sheets {
    position: relative;
}

#job-sheets-tabs .left-cell {
    padding-right: 0;
}

#job-sheets-tabs .left-cell .tab-cell {
    margin-right: 12px;
    margin-left: 8px;
}

#job-sheets-tabs .right-cell {
    padding-left: 0;
    border-left: 1px #EEE solid;
}

#job-sheets-tabs .right-cell .tab-cell {
    margin-left: 12px;
    margin-right: 8px;
}

#job-sheets-tabs .tab-cell {
    display: block;
    margin-top: 10px;
    margin-bottom: 10px;
    text-align: center;
    text-transform: uppercase;
    border: 1px transparent solid;

    border-radius: 2px;

    transition: all ease-in-out 50ms;
}

#job-sheets-tabs .tab-cell a {
    display: block;
    padding: 10px;
    font-weight: bold;
    font-size: 18px;
}

#job-sheets-tabs .tab-cell:hover a,
#job-sheets-tabs .tab-cell.active a {
    text-decoration: none;
    color: #FFF;
}

#job-sheets-tabs .current-jobs a {
    color: #C62828;
}

#job-sheets-tabs .current-jobs:hover,
#job-sheets-tabs .current-jobs.active {
    background: #C62828;
}

#job-sheets-tabs .completed-jobs a {
    color: #44B347;
}

#job-sheets-tabs .completed-jobs:hover,
#job-sheets-tabs .completed-jobs.active {
    background: #44B347;
}

#job-sheets-tabs a.new-tab + a.new-tab {
    border-left: 1px #EBEBEB solid;
}

#job-sheets-tabs a.new-tab {
    display: block;
    background: #F9F9F9;
    text-align: center;
    padding: 12px 10px;
    border-top: 1px #DADADA solid;
    border-radius: 0 0 3px 3px;
}

#job-sheets-tabs a.new-tab:hover {
    text-decoration: none;
    background: #F3F3F3;
}

#job-sheets-tabs a.new-tab:active {
    text-decoration: none;
    background: #EFEFEF;
}

#job-modal.job-sheet-call-out .job-in-house,
#job-modal.job-sheet-call-out .job-workshop,
#job-modal.job-sheet-call-out .job-quote,

#job-modal.job-sheet-in-house .job-call-out,
#job-modal.job-sheet-in-house .job-workshop,
#job-modal.job-sheet-in-house .job-quote,

#job-modal.job-sheet-workshop .job-call-out,
#job-modal.job-sheet-workshop .job-in-house,
#job-modal.job-sheet-workshop .job-quote,

#job-modal.job-sheet-quote .job-call-out,
#job-modal.job-sheet-quote .job-in-house,
#job-modal.job-sheet-quote .job-workshop {
    display: none;
}

#job-modal.job-sheet-call-out .job-call-out,
#job-modal.job-sheet-in-house .job-in-house,
#job-modal.job-sheet-workshop .job-workshop,
#job-modal.job-sheet-quote .job-quote {
    display: block;
}

.submit-bg {
    background: #F9F9F9;
    border-top: 1px #EBEBEB solid;
    border-bottom: 1px #EBEBEB solid;
    padding: 10px;
    overflow: hidden;
}

.submit-bg .submit-note-wrapper {
    float: right;
}

.submit-bg .attach-file {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    overflow: hidden;
}

.submit-bg .input-file-btn {
    border: 1px #CCC solid;
    border-bottom-width: 2px;
    padding: 5px 12px;
    line-height: normal;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    max-width: 200px;

    border-radius: 3px;
}

.submit-bg .input-file-btn.no-file {
    font-style: italic;
    color: #7E7474;
}

.submit-bg .attach-file input,
.hidden-file-input {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    padding: 0;
    font-size: 20px;
    cursor: pointer;
    opacity: 0;
    filter: alpha(opacity=0);
}

.submit-bg .attach-file input:hover + .input-file-btn {
    background: #EDEDED;
}

.submit-bg .attach-file input:active + .input-file-btn {
    border-bottom-width: 1px;
    margin-top: 1px;
}

.editable-block {
    position: relative;
    border: 1px #DDD dotted;
    padding: 12px;
}

.editable-block .contents-block p:last-child {
    margin: 0;
}

.editable-block:hover {
    border-color: #AAA;
}

.editable-block textarea,
.editable-block input[type="text"] {
    margin-bottom: 5px;
}

.editable-block button {
    float: right;
}

.form-group .editable-block {
    padding-top: 7px;
    padding-bottom: 7px;
}

.editable-block form,
.editable-block.editing .contents-block {
    display: none;
}

.editable-block.editing {
    border-color: transparent;
    padding-left: 0;
    padding-right: 0;
}

.editable-block.editing form {
    display: block;
}

#search-pending-jobs {
    display: none;
}

.animate-col {
    transition: width 0.3s ease, margin 0.3s ease;
}

#order-job-sheet-info.constrain-paragraphs .job-sheet-description p {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    margin: 0;
}

#phone-notes, #uploaded-files, #job-files {
    display: none;
}

#switch-note-types {
    position: relative;
    overflow: hidden;
}

#switch-note-types .row {
    margin: 0;
}

#switch-note-types .note-column {
    display: block;
    width: 25%;
    float: left;
    text-align: center;
    padding: 13px 15px 16px;
    border-bottom: 1px #EEE solid;
    color: #A6A6A6;

    box-shadow: inset 0 3px rgba(0, 0, 0, 0.02);

    transition: all ease-in-out 170ms;
}

#switch-note-types .note-column .label {
    float: right;
    margin: 3px 0 0;
    background: #C6C3C3;
}

#switch-note-types .note-column:hover,
#switch-note-types .note-column:focus,
#switch-note-types .note-column.active {
    color: #222;
    text-decoration: none;
}

#switch-note-types .note-column.active .label {
    background: #D9534F;
}

#switch-note-types .note-column + .note-column {
    border-left: 1px #EEE solid;
}

#switch-note-types .note-column .glyphicon {
    vertical-align: text-top;
    margin-right: 4px;
}

#switch-note-types .column-line {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 25%;
    height: 3px;
    background: #D84444;
}

#customer-note-form textarea {
    border: none;
    padding: 15px;
    min-height: 80px;
}

#blank-note-row {
    display: none;
}


.note-row {
    position: relative;
}

.note-row .note-inner {
    padding: 15px;
}

.box .box-thumbnail,
.box .box-icon {
    float: left;
}

.box .box-thumbnail img.profile-photo {
    width: 23px;
    height: 23px;

    border-radius: 50%;
}

.box .box-thumbnail + .box-contents {
    padding-left: 40px;
}

.box .box-icon img {
    margin-top: -1px;
}

.box .box-icon + .box-contents {
    padding-left: 30px;
}

#log-time-modal .modal-body h4 {
    text-align: center;
    margin-bottom: 15px;
}

#log-time-modal .manual-time-label {
    margin: 4px 0 0;
    font-weight: bold;
}

#invoicing-modal .table:last-child {
    margin: 0;
}

#invoicing-modal .table + .table {
    margin: 15px 0 0;
}

#job-filters .list-group-item input[type="checkbox"] {
    margin: 4px 10px 0 -1px;
}


.row-date {
    display: block;
    float: right;
    color: #AAA;
    margin: 0 0 10px 10px;

    transition: color ease-in 90ms;
}

.box:hover .row-date {
    color: #D84444;
}

.box .box-contents {
    word-wrap: break-word;
}

.pre-wrap {
    white-space: pre-wrap;
    word-wrap: break-word;
    margin: 0;
}

.box-contents.file-attachment {
    padding-right: 55px;
}

.box .box-contents.file-attachment .file-box {
    display: block;
    background: #FFF;
    border: 1px #EEE solid;
    border-bottom-width: 2px;
    padding: 7px 12px 7px 35px;

    border-radius: 2px;
}

.box .box-contents.file-attachment .note-contents-block + .file-box {
    margin-top: 15px;
}

.box .box-contents.file-attachment .file-box:hover,
.box .box-contents.file-attachment .file-box:focus {
    text-decoration: none;
    background: #FCFCFC;
}

.box .box-contents.file-attachment .file-box .glyphicon {
    float: left;
    margin: 2px 0 0 -23px;
}

.box .box-contents.file-attachment .file-box .glyphicon,
.box .box-contents.file-attachment .file-box .uploaded-date {
    color: #777;
}

.job-status-1 .job-type-column {
    border-right-color: #D04545;
}

.job-status-2 .job-type-column {
    border-right-color: #F5AE23;
}

.job-status-3 .job-type-column {
    border-right-color: #9DE042;
}


.job-row, .job-row:hover, .job-row:focus {
    padding-left: 50px;
    position: relative;
    color: #333;
}

.job-type-column {
    float: left;
    position: absolute;
    top: 0;
    left: 0;
    width: 50px;
    height: 100%;
    padding: 15px 0;
    text-align: center;
    border-right: 2px transparent solid;
    color: #333;
}

.job-icon-1:before { content: "\e163"; }
.job-icon-2:before { content: "\e021"; }
.job-icon-3:before { content: "\e019"; }
.job-icon-4:before { content: "\e111"; }

.job-row .job-description {
    padding: 15px;
}

.job-row .box-contents .status-box::before {
    left: -99px;
    top: 40px;
    margin-top: 0;
}

.job-row .box-contents .status-box {
    padding-left: 0;
}

.job-row .order-keys:empty + .box-contents .status-box:before {
    left: -34px;
}

.hide-newlines p {
    display: inline;
    margin: 0;
}

.hide-newlines p br {
    display: none;
}

.hide-newlines p + p {
    margin-left: 5px;
}

.wrapped-full-text {
    display: none;
}

.wrapped-full-text p:last-child {
    margin-bottom: 0;
}

.box.job-row .order-keys {
    max-width: 75px;
    padding: 15px 10px 2px 15px;
}

/* SIGNATURE OVERLAY */
#signature-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9990;
    background: rgba(170, 159, 159, 0.63);
}

#signature-overlay .overlay-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
}

#signature-overlay .signature-wrapper {
    position: absolute;
    left: 50%;
    margin-left: -400px;
    top: 50%;
    margin-top: -160px;
    width: 800px;
    height: 320px;
}

#signature-overlay .signature-block {
    background: #FFF;
    min-height: 130px;
    border: 2px #555 solid;
    margin-bottom: 20px;

    border-radius: 3px;
    box-shadow: 0 0 25px rgba(0, 0, 0, 0.4);
}

#signature-overlay .signature-block.red-warning {
    border-color: #D84444;
}

#signature-overlay .signature-tools {
    margin-bottom: 20px;
}

#signature-overlay .signature-tools .btn {
    border-bottom-width: 2px;
}

body.signature-blur #content {
    -moz-filter: blur(10px);
    -webkit-filter: blur(10px);
    filter: blur(10px);
}

#job-signature-box img {
    max-width: 100%;
}

#job-signature-box .signed-date {
    margin: 5px 0 0;
    color: #999;
    text-align: right;
}

#job-tools .job-info-label {
    margin: 0;
    color: #555;
}

#job-tools .job-info-label + .job-info-label {
    margin-top: 2px;
}

#job-invoice-form .invoiced-amount,
#job-time-taken {
    margin-top: 0;
}

.job-cost {
    text-align: center;
}

.job-cost .cost-amount {
    margin: 0 0 10px;
}

.job-cost h4 {
    margin: 0;
}

.job-cost .help-block {
    margin: 5px 0 0;
}


#customer-phones .box.contact-number-row:hover, #add-contact-method:hover {
    background: #F6F6F6;
    text-decoration: none;
    cursor: pointer;
}

#customer-phones .box.contact-number-row:hover:before {
    border-bottom-color: #F6F6F6;
}

#customer-contact-methods .table {
    margin: 0;
}

.popover.phone-extension-popover {
    max-width: 282px;
}

.popover.phone-extension-popover .popover-content {
    padding: 4px 0 4px 4px;
}

.popover.phone-extension-popover .call-ext-btn {
    margin: 5px;
}


#add-contact-method {
    display: block;
    padding: 15px;
    font-weight: bold;
    text-align: center;
}

#contact-method-form {
    background: #F9F9F9
}

#contact-method-form .caller-id-block {
    display: none;
}

#contact-method-form .form-group:last-child {
    margin-bottom: 0;
}

#customer-contact-methods .merge-boxes {
    position: relative;
}

#customer-contact-methods table td {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

td .website-favicon, th .website-favicon {
    vertical-align: text-top;
    margin-right: 4px;
}

#customer-contact-methods .delete-contact-method {
    display: block;
    position: absolute;
    height: 100%;
    width: 0;
    top: 0;
    left: 8px;
    z-index: 3;
    text-align: center;

    transition: width ease-in 90ms;
}

#customer-contact-methods .delete-contact-method .delete-x {
    display: block;
    padding: 3px 0;
    font-size: 30px;
    color: #E0E0E0;
}

#customer-contact-methods .contact-row:hover .delete-contact-method .delete-x {
    color: #BBB;
}

#customer-contact-methods .contact-row .delete-contact-method .delete-x:hover {
    color: #D84444;
    cursor: pointer;
}

#customer-contact-methods .contact-row {
    position: relative;
    padding-right: 20px;
    padding-left: 23px;
    /*transition: padding-left ease-in 100ms;*/
}

#customer-contact-methods .contact-row .primary-clip {
    content: "";
    display: none;
    position: absolute;
    background: transparent url(/intranet/primary-clip.png);
    top: -1px;
    right: 0;
    height: 42px;
    width: 42px;
    opacity: 0.2;
    z-index: 2;

    transition: opacity ease-in 80ms;
}

#customer-contact-methods .contact-row.is-primary-contact .primary-clip {
    display: block;
    opacity: 1;
}

#customer-contact-methods .contact-row:hover .primary-clip {
    display: block;
}

#customer-contact-methods .contact-row .primary-clip:hover {
    opacity: 1;
    cursor: pointer;
}

#customer-contact-methods .merge-boxes > .contact-row:first-child .primary-clip {
    top: 0;
    overflow: hidden;
    border-radius: 0 3px 0 0;
}


/*#customer-contact-methods .contact-row:hover {
    padding-left: 32px;
}

#customer-contact-methods .contact-row:hover .delete-contact-method {
    width: 38px;
    transition-delay: 100ms;
}*/

#customer-contact-methods .box.push-top:not(.box-top-arrow) {
    margin-top: 4px;
}



/* PURCHASE REQUEST */
.autocomplete-wrapper {
    position: relative;
}

.autocomplete-wrapper .autocomplete-results {
    position: absolute;
    top: 36px;
    left: 0;
    z-index: 5;
    min-width: 100%;
}

.autocomplete-wrapper .autocomplete-results:empty {
    display: none;
}

.autocomplete-wrapper .autocomplete-results ul {
    background: #FFF;
    padding: 0;
    margin: 0;
    list-style: none;
    border: 1px #DDD solid;

    border-radius: 0 0 3px 3px;
}

.autocomplete-wrapper .autocomplete-results li {
}

.autocomplete-wrapper .autocomplete-results li:nth-child(even) {
    background: #FAFAFA;
}

.autocomplete-wrapper .autocomplete-results li a {
    display: block;
    padding: 10px 14px;
}

.autocomplete-wrapper .autocomplete-results li + li a {
    border-top: 1px #EEE solid;
}

.autocomplete-wrapper .autocomplete-results li a:hover {
    background: #F2F2F2;
    color: #111;
    text-decoration: none;
}

.autocomplete-wrapper .autocomplete-results li .autocomplete-subtext {
    float: right;
    color: #888;
}

.heading-label, .heading-label:focus {
    display: block;
    float: right;
    position: relative;
    background: #D84444;
    color: #FFF;
    font-size: 14px;
    padding: 4px 8px;

    border-radius: 3px;
}

h3 .heading-label {
    top: 3px;
}

h4 .heading-label {
    top: -2px;
}

.heading-label:hover {
    background: #C5331C;
    color: #FFF;
    text-decoration: none;
}

.heading-label + .heading-label {
    margin-right: 4px;
}

.heading-label.blue-label, .heading-label.blue-label:focus {
    background: #337AB7;
}

.heading-label.blue-label:hover {
    background: #1F5178;
}

/* PURCHASE ORDERS */
#change-order-number-input {
    width: 220px;
    text-align: center;
}

td.good-profit, .span-yes {
    color: #3BBB35;
}

td.bad-profit, .span-no {
    color: #D84444;
}

.box .order-keys {
    position: absolute;
    padding: 0 10px 0 0;
    max-width: 50px;
    transition: all ease-in-out 180ms;
    z-index: 2;
}

.box .order-keys + .box-contents {
    padding-left: 65px;
}

.box .order-keys:empty {
    display: none;
}

.box .order-keys:empty + .box-contents {
    padding-left: 0;
}

.box .order-keys .heading-label {
    float: none;
    text-align: center;
    font-size: 10px;
    padding: 2px 6px;
    margin: 0;
    clear: both;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.box .order-keys .heading-label + .heading-label {
    margin-top: 2px;
}

.box .order-keys:hover {
    max-width: 140px;
    background: #F6F6F6;
}

.order-data {
    display: block;
    padding-top: 2px;
    color: #777;
}

.order-data .order-data-cell + .order-data-cell {
    padding-left: 10px;
}

.box-contents .status-box {
    position: relative;
    padding-left: 30px;
}

.box-contents .status-box:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    margin-top: -9px;
    left: 0;
    height: 18px;
    width: 18px;
    overflow: hidden;
}

.traffic-light {
    display: block;
    height: 25px;
    width: 25px;
}

.traffic-light.inline-light {
    display: inline-block;
}

.box-contents .status-box:before,
.traffic-light {
    border: 1px #ABABAB solid;
    background: #D5D5D5;
    border-radius: 50%;
    box-shadow: inset 2px 3px rgba(255, 255, 255, 0.26);
}

.status-box.status-1:before, .traffic-light.red { background: #D04545; border-color: #A34343; }
.status-box.status-2:before, .traffic-light.yellow { background: #F5AE23; border-color: #DD9739; }
.status-box.status-3:before, .traffic-light.green { background: #9DE042; border-color: #6FAE73; }

#purchase-requests .box .order-keys + .box-contents {
    padding-left: 55px;
}

/* PROJECTS PAGE */
#projects-table {
    padding: 15px;
}

#project-keys {
	text-align: right;
}

#project-keys ul {
	margin: 0;
}

#project-keys li + li {
	margin-left: 15px;
}

#project-keys .key-box {
	border: 1px transparent solid;
	height: 14px;
	width: 14px;
	margin-right: 4px;
}

#project-keys .key-text,
#project-keys .key-box {
	display: inline-block;
	vertical-align: middle;
}

#projects-header-table {
	display: none;
}

#projects-header-table.sticky-header {
	display: table;
	position: fixed;
	z-index: 2;
	border-bottom: 1px #CECECE solid;

	-webkit-box-shadow: 0 4px 1px rgba(0, 0, 0, .1);
	box-shadow: 0 4px 1px rgba(0, 0, 0, .1);
}

#projects-table table {
    width: 100%;
}

#projects-table th, #projects-table td {
    text-align: center;
    padding: 12px 8px;
}

#projects-table th {
    background: #F2F2F2;
    padding-top: 6px;
    padding-bottom: 6px;
}

#projects-table th.text-left, #projects-table td.text-left {
    text-align: left;
}

#projects-table td.highlighted-column {
	background-color: #F4F4F4;
}

#projects-table tr + tr td {
    border-top: 1px #ECECEC solid;
}

#projects-table tr td + td {
    border-left: 1px #ECECEC solid;
}

#projects-table tr.success td,
#project-keys .key-box.success {
    background: #DFF0D8;
	border-color: #BDDEAF;
}

#projects-table tr.success td.highlighted-column {
	background-color: #CFE4C6;
}

#projects-table tr.warning td,
#project-keys .key-box.warning {
    background: #FCF8E3;
	border-color: #EFE4AE;
}

#projects-table tr.warning td.highlighted-column {
	background-color: #EFE9CD;
}

#projects-table tr.danger td,
#project-keys .key-box.danger {
    background: #F2DEDE;
	border-color: #E4B1B1;
}

#projects-table tr.danger td.highlighted-column {
	background-color: #E6BFBF;
}

#projects-table tr.coder-split th {
	position: relative;
	background: none;
    text-align: left;
    font-weight: normal;
	font-size: 18px;
	padding: 50px 15px 5px;
	border-bottom: 1px #ECECEC solid;
}

#projects-table tr.coder-split th:before {
    content: "";
    position: absolute;
    height: 1px;
    background: #ECECEC;
    width: 100%;
    top: 0;
    left: 0;
}

#projects-table tr.coder-split + tr td {
	border-top: none;
}

#projects-table tr.project-due-warning td {
	font-weight: bold;
    text-align: left;
    padding: 5px 40px;
    background: #BF6060;
    color: #FFF;
}

#projects-table tr.project-due-warning td,
#projects-table tr.project-due-warning + tr td,
#projects-table tr.danger td.url-cell {
	border: 1px #BF6060 solid;

}

#projects-table td.project-notes-cell {
	padding: 0 3px;
}

#projects-table .notes-wrapper {
	font-size: 9px;
    line-height: 115%;
    display: block;
	max-width: 100%;
	text-overflow: ellipsis;
	word-break: break-all;
}

#projects-table .notes-wrapper br + br {
	display: none;
}

#projects-table table a {
	color: inherit;
}

#projects-table tr td.url-cell {
	padding: 0 5px;
	font-size: 10px;
	text-align: left;
}

#projects-table tr td.url-cell > * {
	display: inline-block;
	vertical-align: middle;
}

#projects-table tr td.url-cell a {
	white-space: nowrap;
	max-width: 70px;
	text-overflow: ellipsis;
	overflow: hidden;
}

#projects-table tr td.url-cell em {
	display: block;
	text-align: center;
}


/* CALENDAR */
#calendar {
    display: table;
    width: 100%;
    table-layout: fixed;
}

#calendar .calendar-row {
    display: table-row;
    width: 100%;
}

#calendar .calendar-column {
    display: table-cell;
    float: none;
    padding: 0;
    height: 100%;
    width: 14.2857143%
}

#calendar .calendar-column + .calendar-column {
    border-left: 1px #EEE solid;
}

#calendar .calendar-column:nth-child(even) {
    background: #FCFCFC;
}

#calendar .calendar-heading {
    border-bottom: 1px #EEE solid;
    text-align: center;
    padding: 5px;
    font-weight: bold;
}

#calendar .calendar-slots {
    overflow: hidden;
}

#calendar .calendar-slots .calendar-slots-inner {
    overflow-y: scroll;
    width: 100%;
    width: calc(100% + 50px);
    max-height: 520px;
    -webkit-overflow-scrolling: touch;
}

#calendar .slot {
    position: relative;
    display: block;
    margin: 5px 38px 5px 5px;
    overflow: hidden;

    border-radius: 2px;
    box-shadow: 0 2px 0 rgba(0, 0, 0, 0.15);
    opacity: 0.92;
}

#calendar .slot.loading:after,
#calendar-overview .slot.loading:after {
    content: "";
    position: absolute;
    background: rgba(170, 159, 159, 0.8) url(/intranet/grey-loader.gif) center center no-repeat;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
}

#calendar .slot:not(.loading):hover,
#calendar-overview .slot:not(.loading):hover {
    cursor: pointer;
    opacity: 1;
}

#calendar .slot + .slot {
    margin-top: 7px;
}

#calendar .slot .slot-inner {
    padding: 0 0 4px;
    border-bottom-width: 2px;
    border-bottom-style: solid;
}

#calendar .slot .title,
#calendar .slot .time,
#calendar .slot .description {
    padding: 0 6px;
    margin: 0;
}

#calendar .slot .name {
    font-weight: bold;
}

#calendar .slot .time {
    position: relative;
    border-bottom: 1px rgba(0, 0, 0, 0.09) solid;
    padding: 3px 6px;
    margin-bottom: 3px;
}

#calendar .slot .profile-photo {
    position: absolute;
    display: block;
    top: 5px;
    left: 5px;
    height: 65%;
    height: calc(100% - 9px);
    border: 1px rgba(0, 0, 0, 0.32) solid;

    border-radius: 50%;
}

#calendar .slot .time .slot-time {
    border: none;
    padding-left: 22px;
}

#calendar .slot .address {
    font-size: 12px;
}

#calendar .no-slots {
    padding: 20px 33px 20px 0;
    text-align: center;
}

#job-popover {
    max-height: 400px;
    min-width: 300px;
    overflow-y: scroll;
    padding: 10px;
    -webkit-overflow-scrolling: touch;
}

.popover.job-info-popover {
    max-width: 480px;
}

.popover.job-info-popover .popover-content {
    padding: 2px;
}

#job-popover p:last-child {
    margin-bottom: 0;
}

/* CALENDAR OVERVIEW */
#calendar-overview .calendar-overview-wrapper {
    padding: 0 15px;
}

#calendar-overview .calendar-header {
    border-bottom: 1px #EEE solid;
    padding-bottom: 15px;
    margin-bottom: 10px;
}

#calendar-overview .calendar-header h3 {
    margin: 0;
    text-align: center;
}

.calendar-scroller-main {
    position: relative;
    width: 100%;
}

.calendar-scroller-main .calendar-column-row {
    line-height: 85px;
    text-align: right;
}

.calendar-scroller-main .calendar-scrollable-view {
    position: relative;
    border-left: 1px #DDD solid;
    border-right: 1px #DDD solid;
    font-size: 0;
    overflow-x: scroll;
    overflow-y: hidden;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
}

.calendar-scroller-main .calendar-inner-view + .calendar-inner-view {
    border-left: 5px #E4E4E4 solid;
}

.calendar-scroller-main .calendar-inner-view {
    display: inline-block;
    /*position: relative;
    z-index: 4;*/
}

.calendar-height {
    height: 85px;
}

.calendar-scroller-main .calendar-row + .calendar-row .day-column {
    border-top: 1px #F3F3F3 solid;
}

.calendar-scroller-main .calendar-scrollable-view .calendar-row.slots-row:nth-child(odd) .day-column {
    background: #FCFCFC;
}

.calendar-scroller-main .day-column {
    bottom: 0;
    display: inline-block;
    font-size: 12px;
    position: relative;
}

.calendar-scroller-main .day-column + .day-column {
    border-left: 1px #F3F3F3 solid;
}

.calendar-scroller-main .time-row .day-column {
    background-color: #E4E4E4;
    height: 20px;
}

.calendar-scroller-main .time-row .day-column span {
    padding-left: 3px;
    font-weight: bold;
}

.calendar-scroller-main .slot-wrapper {
    position: absolute;
    z-index: 6;
    border: 1px transparent solid;
    overflow: hidden;
    color: #333;

    border-radius: 2px;
}

.calendar-scroller-main .slot {
    position: relative;
    line-height: normal;
    overflow: hidden;
    padding-left: 36px;
}

.calendar-scroller-main .slot .photo {
    float: left;
    height: 36px;
    width: 36px;
    margin-left: -36px;
}

.calendar-scroller-main .slot .photo img {
    display: block;
    vertical-align: middle;
    margin: 3px;
    height: 30px;
}

.calendar-scroller-main .slot .time,
.calendar-scroller-main .slot .info {
    padding: 1px 3px 1px 5px;
}

#calendar-types {

}

#user-calendars .list-group-item .badge {
    display: block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
}

#time-pointer {
    background: rgba(192, 3, 3, 0.4);
    height: 100%;
    height: calc(100% - 40px);
    position: absolute;
    top: 0;
    top: calc(20px);
    width: 1px;
    z-index: 4;
}

/* USERS */
#permissions-table label {
    font-weight: normal;
    margin-bottom: 20px;
}

#permissions-table label strong {
    font-weight: bold;
}

#profile-photo {
    text-align: center;
}

#profile-photo .select-profile-photo {
    position: relative;
    margin: 10px 0 0;
}

#profile-photo .select-profile-photo span {
    border-bottom: 1px #B7B4B4 dotted;
}

#profile-photo .select-profile-photo input:hover + span {
    color: #444;
}

#profile-photo .profile-photo .photo-holder {
    position: relative;
    background: #EEE;
    display: inline-block;
    overflow: hidden;
    border-radius: 50%;
}

#profile-photo .profile-photo .photo-holder:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    border-radius: 50%;
    box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.42);
}

#profile-photo .profile-photo .photo-holder.uploading:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(170, 159, 159, 0.63) url(/intranet/grey-loader.gif) center center no-repeat;
    z-index: 3;
}

#profile-photo .profile-photo img {
    max-width: 100%;
}

.lunch-timer-block {
    position: relative;
    width: 170px;
    height: 170px;
    margin: 0 auto;
}

#lunch-timer {
    background: transparent;
    width: 170px;
    height: 170px;
    border-radius: 50%;
    overflow: hidden;
}

.lunch-timer-block .time-left {
    display: none;
    position: absolute;
    height: 20px;
    width: 100%;
    top: 50%;
    margin-top: -7px;
    text-align: center;
    z-index: 5;
}

.lunch-timer-block.ticking .time-left {
    display: block;
}

.lunch-timer-wrapper .help-block {
    margin: 15px 0 0;
}

#start-lunch-break {
    margin-top: 19px;
}

#broadband-order-table label {
    margin: 0;
    font-weight: normal;
}


/* DRAG DROP FILE */
.dd-dragging:after,
.dd-dragged:after,
.dd-dropped:after,
.dd-uploading:after {
    content: "";
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 8;
    background: rgba(0, 0, 0, 0.87) center center no-repeat;
}

.dd-dragging:after {
    background-image: url(/intranet/drop-to-upload.png);
}

.dd-uploading:after {
    background-image: url(/intranet/overlay-loader.gif);
}


/* PHONE POPUP */
#phone-popup {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 5000;
}

#phone-backdrop {
    display: block;
    position: fixed;
    bottom: 10px;
    right: 10px;
    background: #2F2F2F url(/intranet/bg.png) repeat;
    border-radius: 50%;
    width: 0;
    height: 0;
    transition: all 600ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
    z-index: 8;

    box-shadow: 0 0 40px rgba(0, 0, 0, 0.5);
}

#phone-backdrop.full-mode {
    height: 5000px;
    width: 5000px;
    bottom: -2500px;
    right: -2500px;
}

#phone-dialler {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 60005;
}

#phone-dialler .dialler-inner {
    position: relative;
    height: 100%;
    width: 100%;
}

#phone-dialler .dialler-box {
    position: absolute;
    width: 250px;
    height: 451px;
    top: 50%;
    left: 50%;
    margin-top: -230px;
    margin-left: -125px;
}

#phone-dialler .dialler-wrapper {
    position: relative;
    background: #181818;
    border: 1px #000 solid;
    display: none;
    height: 100%;
    width: 100%;
    top: 50px;

    border-radius: 3px;
    box-shadow: 0 0 50px rgba(0, 0, 0, 0.74), inset 0 1px rgba(255, 255, 255, 0.12);
}

#close-phone-dialler, #close-phone-dialler:hover, #close-phone-dialler:focus {
    position: absolute;
    font-size: 48px;
    color: #DDD;
    top: -50px;
    right: -35px;
    text-decoration: none;
    text-shadow: 0 1px 4px #000;
}

#phone-dialler .board-inner {
    overflow: hidden;
    padding: 5px;
}

#phone-dialler .dial-number {
    padding: 12px 12px 2px;
}

#dial-number-input {
    height: 50px;
    font-size: 26px;
    width: 100%;
    border: none;
    text-align: center;
}

#phone-dialler .dial-key {
    float: left;
    width: 33.33%;
    height: 83px;
    padding: 7px;
}

#phone-dialler .dial-key button {
    width: 100%;
    height: 100%;
    font-size: 24px;
    background: none;
    border: 1px #292929 solid;
    color: #FFF;
    border-radius: 5px;

    transition: all ease-in-out 80ms;
}

#phone-dialler .dial-key button:hover {
    border-color: #4E4E4E;
}

#phone-dialler .dial-key button:active,
#phone-dialler .dial-key button.clicked {
    background: #222;
}

#phone-dialler .dial-key button[data-key="*"] {
    font-size: 50px;
    line-height: 165%;
}

#phone-dialler .call-key {
    padding: 0 7px;
}

#call-dialled-number {
    background: #3BBB35;
    color: #FFF;
    text-shadow: 0 -1px #333;
    border: none;
    width: 100%;
    height: 30px;
    margin-top: 5px;

    border-radius: 2px;
}

.job-complete-check div {
	display: none;
}

.job-complete-check.needs-check.needs-equipment-info a {
	display: none;
}
.job-complete-check.needs-check.needs-equipment-info div {
	display: block;
}

.modal.loading .modal-dialog .modal-content {
    background: #FFF url(/intranet/modal-loader.gif) center center no-repeat;
}

.modal.loading .modal-dialog .modal-body > * {
    visibility: hidden;
}




/* FIXES */
.row.row-normal {
    margin-left: 0;
    margin-right: 0;
}

.clearfix {
    height: 0;
}

.form-control::-webkit-input-placeholder { color: #A4A4A4; opacity: 1; }
.form-control:-moz-placeholder { color: #A4A4A4; opacity: 1; }
.form-control::-moz-placeholder { color: #A4A4A4; opacity: 1; }
.form-control:-ms-input-placeholder { color: #A4A4A4; opacity: 1; }

.tooltip-inner {
    background: #000;
    border-radius: 2px;
    padding: 6px 8px;
    font-size: 12px;
    line-height: 16px;
    font-family: Helvetica, Arial, "lucida grande", tahoma, verdana, arial, sans-serif;
}

.tooltip, .tooltip.in {
    opacity: 1;
}

.modal.fade .modal-dialog {
    transform: translate(0, 0);
}

.modal-backdrop {
    position: fixed;
}

.modal-content {
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.22);
    border-radius: 3px;
}

.popover {
    z-index: 8;
    border-radius: 3px;
}

.popover-content {
    padding: 7px;
}

.table-responsive {
    overflow-x: visible;
}

.list-group.alt-items > .list-group-item:nth-child(odd):not(:hover) {
    background-color: #FCFCFC;
}

.list-group.alt-items > .list-group-item:nth-child(odd).active,
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
    background-color: #D84444;
    border-color: #B04444;
}

.list-group-item.active > .badge {
    background: #7A2828;
    color: #FFF;
}

/* SWEET ALERT OVERRIDE */
body.stop-scrolling {
    height: auto;
    overflow: visible;
}

.sweet-alert {
    padding: 12px 17px 17px;
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.36);
    border-radius: 3px;
}

.sweet-alert .sa-icon {
    height: 0;
    width: 0;
    margin: 0;
    padding: 0;
    visibility: hidden;
}

.sweet-alert h2 {
    margin: 0 0 15px;
}

.sweet-alert button {
    box-shadow: none !important;
    border-radius: 3px;
}

.sweet-alert button.cancel, .sweet-alert button.cancel:hover, .sweet-alert button.cancel:focus {
    color: #A9A9A9;
    background: #3A3A3A;
}

.sweet-alert button.cancel:hover, .sweet-alert button.cancel:focus {
    background: #2C2C2C;
}

/* jQuery Datepicker */
.ui-datepicker {
    padding: 4px;
    border-radius: 3px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    z-index: 20 !important;
}

.ui-widget-content {
    background: #FFF;
    border-color: #D9D9D9;
    color: #111;
}

.ui-widget-header {
    background: #FFF;
    border: none;
}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
    display: inline-block;
    border: transparent;
    background: none;
    text-align: center;
    border-radius: 50%;
    padding: 0;
    margin: 0;
    width: 30px;
    height: 30px;
    line-height: 29px;
}

.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
    background: none;
    color: #111;
}

.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus {
    background: #F4F4F4;
    color: #111;
}

.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active {
    background: #D84444;
    color: #FFF;
}

.ui-datepicker .ui-datepicker-header {
    padding: 0 0 8px;
    border-bottom: 1px #EEE solid;
}

.ui-datepicker .ui-datepicker-title {
    padding: 4px 0 0;
}

.ui-datepicker table {
    margin: 0;
}

.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
    border-radius: 50%;
    border: none;
}

.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {
    opacity: 0.4;
}

.ui-datepicker .ui-datepicker-next-hover {
    right: 2px;
}

.ui-datepicker .ui-datepicker-prev-hover {
    left: 2px;
}

.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover {
    top: 2px;
}

.ui-datepicker .ui-datepicker-prev-hover span, .ui-datepicker .ui-datepicker-next-hover span {
    opacity: 1;
}

.ui-datepicker .ui-datepicker-buttonpane button,
button.ui-state-default {
    border-radius: 2px;
    font-size: 12px;
    line-height: normal;
    margin: 4px 0 1px;
    padding: 2px 10px;
}

.customer-filters .checkbox,
.customer-filters .radio
{
	margin: 0;
}

/* JQUERY UI TIMEPICKER */
.ui-timepicker-div .ui-widget-header { margin-bottom: 8px; }
.ui-timepicker-div dl { text-align: left; }
.ui-timepicker-div dl dt { float: left; clear:left; padding: 0 0 0 5px; }
.ui-timepicker-div dl dd { margin: 0 10px 10px 40%; }
.ui-timepicker-div td { font-size: 90%; }
.ui-tpicker-grid-label { background: none; border: none; margin: 0; padding: 0; }
.ui-timepicker-div .ui_tpicker_unit_hide{ display: none; }
.ui-timepicker-div.ui-timepicker-oneLine { padding-right: 2px; }
.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_time,
.ui-timepicker-div.ui-timepicker-oneLine dt { display: none; }
.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_time_label { display: block; padding-top: 2px; }
.ui-timepicker-div.ui-timepicker-oneLine dl { text-align: right; }
.ui-timepicker-div.ui-timepicker-oneLine dl dd,
.ui-timepicker-div.ui-timepicker-oneLine dl dd > div { display:inline-block; margin:0; }
.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_minute:before,
.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_second:before { content:':'; display:inline-block; }
.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_millisec:before,
.ui-timepicker-div.ui-timepicker-oneLine dl dd.ui_tpicker_microsec:before { content:'.'; display:inline-block; }
.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_unit_hide,
.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_unit_hide:before{ display: none; }

.ui-slider .ui-slider-handle {
    background: #EEEAEA;
    border: 1px #B1A3A3 solid;
    height: 1.2em;
    width: 1.2em;
    margin-left: -0.6em;
}

@-webkit-keyframes blinker {
    0% { color: #D84444; }
    10% { color: #FFF; }
    100% { color: #D84444; }
}

@keyframes blinker {
    0% { color: #D84444; }
    10% { color: #FFF; }
    100% { color: #D84444; }
}

@media (min-width: 767px) {

    #navigation-toggle {
        display: none;
    }

    #collapse-navigation {
        display: block;
    }
}


/* MEDIA QUERIES */
@media (max-width: 767px) {

    #top-navigation, #nav-tracking-line {
        display: none;
    }

    #navigation {
        background: #000;
        width: 100%;
        height: auto;
        border: none;

        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
    }

    #navigation .logo {
        padding: 8px 0;
        text-align: center;
    }

    #navigation .logo img {
        height: 30px;
    }

    #navigation-toggle {
        display: block;
        position: absolute;
        background: none;
        border: none;
        padding: 0;
        margin: 0;
        top: 0;
        right: 0;
        height: 100%;
        padding: 0 15px;
        text-align: center;
        z-index: 100000;
    }

    #navigation-toggle .icon-bar {
        display: block;
        background: #FFF;
        height: 2px;
        width: 18px;
    }

    #navigation-toggle .icon-bar + .icon-bar {
        margin-top: 6px;
    }

    #collapse-navigation {
        background: #1E1E1E;
    }

    ul#main-navigation {
        overflow-x: scroll;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        white-space: nowrap;
    }

    .keep-header-open #navigation ul {
        margin: 0;
    }

    .keep-header-open #main-container, #main-container {
        padding: 53px 15px 0;
    }

    .keep-header-open #main-container:not([class*="col-"]), #main-container:not([class*="col-"]) {
        overflow: hidden;
        padding-left: 0;
        padding-right: 0;
    }

    .table.table-overflow-text td.overflow-cell, .overflow-text {
        overflow: visible;
    }

    #main-navigation li {
        display: inline-block;
        position: relative;
    }

    #main-navigation li + li:before {
        content: "";
        display: block;
        position: absolute;
        background: #333;
        width: 1px;
        height: 24px;
        top: 50%;
        margin-top: -12px;
        left: -3px;
    }

    #main-navigation li a {
        padding: 14px 12px;
        font-size: 16px;
    }

    #main-navigation .glyphicon,
    #navigation .photo-holder {
        display: none;
    }

    #main-navigation .text-nav {
        display: inline;
    }

    #main-container {
        padding: 125px 15px 15px;
    }

    #content {
        padding: 0 6px 6px;
    }

    #projects-table {
        padding: 0;
    }

    .box.padding-xs, .box.inner-padding-xs > .box-inner {
        padding: 3px;
    }

    .box.padding-sm, .box.inner-padding-sm > .box-inner {
        padding: 7px;
    }

    .box.padding-md, .box.inner-padding-md > .box-inner {
        padding: 11px;
    }

    .box.padding-lg, .box.inner-padding-lg > .box-inner {
        padding: 16px;
    }

    #customer-contact-methods .table-responsive {
        border: none;
        margin: 0;
    }

    .pagination li:not(.prev-link):not(.next-link) {
        display: none;
    }

    .pagination li a {
        border-radius: 3px;
    }

    .pagination .prev-link {
        float: left;
    }

    .pagination .next-link {
        float: right;
    }

    .box.box-heading, .box.box-heading h1, .box.box-heading h2, .box.box-heading h3, .box.box-heading h4, .box.box-heading h5, .box.box-heading h6 {
        font-size: 16px;
    }

    .row-date {
        float: none;
        margin: 0 0 5px;
        font-size: 12px;
        text-align: right;
    }

    .sweet-alert h2 {
        font-size: 22px;
        margin: 0 0 5px;
    }

    .sweet-alert p {
        font-size: 14px;
    }

    .sweet-alert button {
        font-size: 16px;
        font-weight: 400;
        padding: 7px 17px;
        margin: 20px 0 0;
    }


    /* FIXES */
    .table-responsive {
        -webkit-overflow-scrolling: touch;
        overflow-x: auto;
    }

    .table-responsive .table {
        width: auto;
    }
}
