.http500,
.http401,
.http403 {
  padding-top: 50px;
}

.http500 .icon,
.http401 .icon,
.http403 .icon {
  font-size: 80px;
}

.http500 .icon {
  color: #FCBC0C;
}

.http401 .icon {
  color: darkred;
}

.http403 .icon {
  color: red;
}

.http500 
.error-message {
  margin-top: 30px;
}

.http500
.error-message p {
  color: DarkGray;
}

.http500
.error-detail {
  background: white;
  border: 1px dotted gainsboro;
  padding: 20px;
  text-align: center;
  margin-top: 20px;
  margin-bottom: 50px;
}

.http404 h1 {
  font-size: 300px;
}

.http404 h2 {
  font-size: 20px;
}
.activate-layout {
  background: #EFF2F7;
}

.activate-layout .loading.medium {
  margin: 0;
}

.activate-panel {
  width: 100%;
  margin: 5px;
  padding: 20px;
  border: 1px solid #D3DCE6;
  background: #FFF;
}

.activate-panel .alert {
  margin-bottom: 0;
}

.activate-logo {
  width: 200px;
  margin-bottom: 25px;
}

.activate-form .input-group label {
  margin-bottom: 0.25em;
  font-size: 1.1em;
}

.activate-form .input-group + .input-group,
.activate-form .help-block + .input-group {
  margin-top: 1em;
}

@media (min-width: 650px) {
  .activate-panel {
    width: 640px;
  }
}
.login-container {
  width: 100%;
  height: auto;
  background: url(/public/images/login/login-bg.png) repeat;
}

.error-list {
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
}

#login-wrp {
  background-color: #f7f7f7;
  margin-top: 200px;
  padding: 60px 0px;
  width: 100%;
}

#login-wrp > div {
  padding: 20px 0px;
}

#inner-wrp {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  width: 80%;
}

#main-logo {
  padding: 76px 30px;
  border-right: 2px solid #d1d0d0;
  width: 91%;
}

@media (min-width: 767px) and (max-width: 979px) {
  #inner-wrp .col-md-6 {
    width: 100%;
  }
}

@media (max-width: 767px) {
  #main-logo {
    border-right: none;
    margin-left: 10px;
    padding: 0 0 17px;
    float: left;
  }

  #username,
  #password {
    /*width:96% !important;*/
  }
}

.logout-container {
  background: white;
  text-align: center;
  height: 100%;
}

.logout-container img {
  display: inline;
  width: 115px;
}

.logout-container .logout-wrap {
  text-align: center;
  margin-top: 100px;
}

.system-login-label {
  font-size: 22px;
}

/* new login page */

.login-wrap {
  margin: 0 10px;
}

.login-container {
  width: 450px;
  height: auto;
  padding: 20px;
  background: white;
  border: 1px solid #D2D2D2;
}

.logo {
  width: 200px;
}

.login-container .label {
  width: 75px;
}

.login-container .logo {
  /*height: 30px;*/
}

.activate-container {
  width: 500px;
  padding: 20px;
  background: white;
  border: 1px solid whitesmoke;
}

.activate-container .label {
  width: 75px;
}

.activate-container .logo {
  //height: 30px;
}

.width-100 {
  width: 100%;
}

.double-margin-bottom {
  margin-bottom: 20px;
}

.instance-selection-container {
  width: 700px;
  border-radius: 10px;
}

.instance-selection-container .label {
  display: block;
  float: left;
  margin-bottom: 10px;
  background-color: white;
  border-radius: 15px;
  color: #939292;
  border: 1px solid #E5E5E5;
  font-weight: 400;
  font-size: 11px;
  line-height: 15px;
  padding-top: 2px;
  padding-bottom: 0;
  width: auto;
}

.c-h5 {
  font-weight: 500;
  font-size: 20px;
  line-height: 23px;
  margin-top: 0;
}

.c-h6 {
  font-weight: 400;
  font-size: 17px;
  line-height: 20px;
  margin-bottom: 12px;
  margin-top: 0;
}

.instance-wrp {
  border: 1px solid #E5E5E5;
  padding: 20px;
  margin-bottom: 17px;
}
.invoice-form .invoice-summary-table {
  font-size: 20px;
}

.invoice-form .invoice-summary-table td {
  text-align: right;
}

.invoice-form .invoice-summary-table .invoice-summary-label {
  font-weight: bold;
  padding-right: 10px;
}

.bank-receipt-container .loading {
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
}
.invoice-table tr .fold .fa {
  cursor: pointer;
}

.invoice-table tr td {
  vertical-align: middle!important;
}

.invoice-table .collapse-td {
  width: 50px;
}

.invoice-table .figures-highlight {
  background: whitesmoke;
}

.invoice-table .expanded-section .sub-title {
  color: gray;
}

.invoice-table .expanded-section > td {
  border-top: 0 none;
  background: whitesmoke;
}

.invoice-table .payment-table,
.invoice-table .credit-table {
  font-size: 12px;
}

.invoice-table .payment-table thead,
.invoice-table .credit-table thead {
  background: #b8b8b8;
  color: white;
}

.account-sprite {
  background: url('../../../images/accounting/accounting-sprite-icons.png') no-repeat;
  display: inline-block;
  width: 32px;
  height: 32px;
}

.account-sprite:hover {
  cursor: pointer;
}

.account-sprite.print {
  background-position: -89px -5px;
}

.account-sprite.credit {
  background-position: -5px -5px;
}

.account-sprite.visit-job {
  background-position: -257px -5px;
}

.account-sprite.visit-close-job {
  background-position: -173px -5px;
}

.account-sprite.print:hover {
  background-position: -131px -5px;
}

.account-sprite.credit:hover {
  background-position: -47px -5px;
}

.account-sprite.visit-job:hover {
  background-position: -299px -5px;
}

.account-sprite.visit-close-job:hover {
  background-position: -215px -5px;
}

.account-sprite.disabled {
  opacity: 0.25;
  cursor: not-allowed;
}

.accounting-filter-container {
  background: whitesmoke;
  padding: 10px 0;
  margin-bottom: 0!important;
}

.accounting-stats-container {
  background: #DAE7EE;
  padding: 13px 0 13px 0;
}

.total-invoiced-container {
  background: #1D89CF;
  overflow: hidden;
}

.total-invoiced-container .invoiced-icon,
.total-overdue-container .invoiced-icon,
.bank-receipt-container .bank-receipt-icon {
  width: 56px;
  background: #1981C1;
  float: left;
  color: white;
  font-size: 37px;
  padding: 7px 0 3px 9px;
}

.total-overdue-container .invoiced-icon.overdue {
  background: #D35445;
  padding-left: 11px;
}

.total-invoiced-container .invoiced-content,
.total-overdue-container .invoiced-content {
  float: left;
  padding: 8px 0 3px 8px;
}

.total-overdue-container {
  background: #E66454;
  overflow: hidden;
}

.total-invoiced-container h2,
.total-overdue-container h2 {
  color: white;
  padding: 0;
  margin: 0;
}

.total-invoiced-container p,
.total-overdue-container p {
  color: white;
  margin: 0;
}

.overdue-invoice-notice {
  padding: 5px;
  margin-bottom: 5px;
  background: #fde3e3;
}

.bank-receipt-container {
  background: transparent;
  padding-left: 11px;
  margin-top: 15px;
}

.invoicing-pagination-count {
  /*text-transform: uppercase;*/
  font-size: 13px;
}

.pagination-export-container {
  background: whitesmoke;
  padding: 10px 3px 10px 0;
}

.invoicing-pagination-count.main-title {
  font-weight: 700;
}

.invoicing-pagination-count.sub-title {
  color: gray;
}

.active-filters-container .filter-label {
  font-weight: 700;
}



/* Animations ------------------------------------------------------------------------- */

.active-filters-container.ng-enter {
  animation: flipInX 1s;
  -mox-animation: flipInX 1s;
}

.active-filters-container.ng-leave {
  animation: zoomOut 0.5s;
  -mox-animation: zoomOut 0.5s;
}

.invoice-table {
  margin-bottom: 0;
}

.invoice-table + [ng-table-pagination] {
  display: none;
}

.table[ng-table].table-statement {
  border: 0 none;
}

.table.table-statement[ng-table] thead {
  background: 0 none;
}

.table-statement .balance-row {
  background: whitesmoke;
  font-weight: bold;
}
.card {
  border: 1px solid #E8E8E8;
}

.header-text {
  color: #737376;
}

.pull-right {
  float: right;
}

.inner-card {
  background: rgba(241, 241, 241, 0.7);
}

.invoice-card {
  border-radius: 6px;
  background: #FFF;
  margin: 6px 0;
  padding: 6px 8px;
}

.common-card-info {
  margin: 12px 0;
  border-radius: 8px;
  padding: 12px;
}

.customer-payment-text {
  color: #222222;
}

.common-text-info {
  font-weight: 600 !important;
  font-size: 14px !important;
  line-height: 18px !important;
}

.bold {
  font-weight: 600;
}

.smt {
  margin-top: 6px;
}
.calendar-container {
  display: flex;
  flex-direction: row;
  background: whitesmoke;
  padding: 20px;
}

.calendar-container > .event {
  width: 400px;
  background: #FCFCFC;
  margin-left: 20px;
  margin-top: 52px;
  padding: 15px;
  position: relative;
}

.calendar-container > .calendar {
  flex-grow: 1;
}

.activity-times .activity-times-title {
  color: gray;
}

.event .close {
  font-size: 21px;
  position: absolute;
  right: 5px;
  top: 5px;
}

.event .title {
  color: gray;
  font-size: 12px;
  text-transform: uppercase;
}

/* Animations --------------------------------------------------------- */

.event.ng-hide-add {
  animation: 0.5s slideOutRight ease;
}

/* when showing the picture */

.event.ng-hide-remove {
  animation: 0.5s slideInRight ease;
}

@media (min-width: 768px) {
  [calendar="breakout"] .fc-basic-view .fc-body .fc-row {
    min-height: 4em;
  }
}

@media (min-width: 992px) {
  [calendar="breakout"] .fc-basic-view .fc-body .fc-row {
    min-height: 8em;
  }
}

@media (min-width: 1200px) {
  [calendar="breakout"] .fc-basic-view .fc-body .fc-row {
    min-height: 14em;
  }
}

.btn-group .btn-calendar-activity.active {
  background: gray;
  color: white;
}

.btn-group .btn-calendar-work.active {
  background: #d4e7cd;
  color: #006400;
}

.btn-group .btn-calendar-holiday.active {
  background: #62c462;
  color: white;
}

.btn-group .btn-calendar-training.active {
  background: #0073CC;
  color: white;
}

.btn-group .btn-calendar-non-attendance.active {
  background: #5BC0DE;
  color: white;
}

.btn-group .btn-calendar-car.active {
  background: #FBB450;
  color: white;
}

.btn-group .btn-calendar-sm-events.active {
  background: #7E5BEF;
  color: white;
}

.btn-group .btn-calendar-anniversaries.active {
  background: #85D7FF;
  color: white;
}

.btn-group .btn-calendar {
  background: #D3D3D3;
  color: #9E9E9E;
  box-shadow: none;
}
.title-controls .title-controls {
  margin-top: 5px;
}

.complaint-notes-wrp {
  border-top: 1px solid #CCC;
  padding-left: 35px;
}

.complaint-note {
  border-bottom: 1px solid #CCC;
}

.complaint-notes-wrp .complaint-note:last-child {
  border-bottom: none;
}

.complaint .title-controls .subject span {
  margin-right: 5px;
  font-size: 12px;
  padding: 5px;
}

.complaint .title-controls .subject span:first-child {
  margin-right: 0;
}

.add-complaint-btn-wrp {
  margin-bottom: 10px;
}
.feedback-container {
  background: whitesmoke;
  padding: 10px;
  margin-bottom: 10px;
}

.feedback-header {
  font-weight: bold;
  border-bottom: 1px solid gray;
  padding-bottom: 5px;
  margin-bottom: 5px;
}

.feedback-container .feedback-question {
  padding-bottom: 5px;
  margin-bottom: 5px;
  border-bottom: 1px solid gainsboro;
}

.feedback-container .feedback-question:last-child {
  border-bottom: 0;
}
/* Layout */

.content.dashboard > .content-scroll > .container-fluid {
  padding-top: 0;
}

.dashboard-nav-col {
  padding-left: 0;
  margin-bottom: -1px;
}

.dashboard-nav-filter {
  margin-bottom: 15px;
  border-bottom: 1px solid #DDD;
}

.dashboard-nav-filter {
  background: #F8F8F8;
  border-bottom: 1px solid #DDD;
}

.visit-name-address.inactive,
.tg-address.inactive {
  text-decoration: line-through;
}

/* Nav */

.dashboard-nav {
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.dashboard-nav .svg.overview svg {
  fill: #1FB6FF;
}

.dashboard-nav .svg.marketing svg {
  fill: #13CE66;
}

.dashboard-nav .svg.performance svg {
  fill: #FF7C47;
}

.dashboard-nav .svg.today svg {
  fill: #FF7C47;
}

.dashboard-nav .svg.job-resolution svg {
  fill: #8E47FF;
}

.dashboard-nav .svg.support svg {
  fill: #F8B700;
}

.dashboard-nav .svg.cart svg {
  fill: #2EF8A0;
}

.dashboard-nav .svg.training svg {
  fill: #F871AC;
}

.dashboard-nav a {
  text-align: center;
}

.dashboard-nav li {
  display: block;
  float: left;
  min-width: 100px;
  padding: 10px 25px;
  border-right: 1px solid #DDD;
  background: #F5F5F5;
  border-bottom: 1px solid #DDD;
}

.dashboard-nav li img {
  display: block;
  margin: 0 auto;
}

.dashboard-nav li span {
  display: block;
  margin-top: 10px;
  text-align: center;
  font-size: 12px;
  color: #AAA;
}

.dashboard-nav a {
  display: block;
  opacity: 0.8;
}

.dashboard-nav li.active {
  background: white;
  border-bottom: 0 solid transparent;
}

.dashboard-nav li.active span {
  font-weight: 600;
  color: #424141;
}

.dashboard-nav li.active a {
  cursor: default;
}

.dashboard-nav li.active a,
.dashboard-nav a:hover {
  opacity: 1;
  text-decoration: none;
}

.dashboard-nav li:hover {
  background: white;
}

/* Filter */

.dashboard-filter {
  margin-top: 11px;
}

.dashboard-filter form {
  margin: 0;
  /*padding: 65px 0 0;*/
}

.dashboard-filter form .row-group-addon {
  padding-left: 5px;
}

.panel-activities .loading.medium,
.panel-anniversaries .loading.medium,
.panel-stock-indicator .loading.medium {
  margin: 20px 0;
}

.panel-activities .alert,
.panel-anniversaries .alert,
.panel-stock-indicator .alert {
  margin: 0;
}

/* Activities panel */

.panel-activities .day:not(:first-child) {
  margin-top: 10px;
}

.panel-activities .day h3 {
  margin: 0 0 8px;
  padding: 0 0 2px;
  font-size: 15px;
  font-weight: bold;
  border-bottom: 1px solid #ddd;
  color: #286090;
}

.panel-activities .day ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.panel-activities .day .activity {
  margin: 2px 0;
  font-size: 13px;
}

.panel-activities .day .activity .time {
  float: left;
  width: 90px;
}

.panel-activities .day .activity .title {
  float: right;
  width: calc(100% - 90px);
}

/* Anniversaries panel */

.panel-anniversaries ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.panel-anniversaries .anniversary:not(:first-child) {
  margin-top: 10px;
}

.panel-anniversaries .anniversary .customer-name {
  font-weight: bold;
}

.panel-anniversaries .anniversary .date {
  color: #AAA;
}

.help {
  cursor: default;
}

.dashboard-placeholder-wrapper {
  height: 100%;
  width: 100%;
  display: table;
  background: #e7e7e7;
  border: 1px solid #d9d5d5;
}

.dashboard-placeholder-content {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  padding: 120px;
}

.dashboard-placeholder-content .fa {
  font-size: 60px;
  color: #9c9a9a;
  padding-bottom: 10px;
}

.dashboard-placeholder-content p {
  font-size: 14px;
  color: #9c9a9a;
  font-weight: 300;
}

.income-rpt {
  margin-bottom: 15px;
}

.income-rpt .week_no {
  text-align: center;
}

.income-rpt .week_no h5 {
  font-weight: 400;
  font-size: 12px;
  color: #5c5c5c;
  margin-bottom: 5px;
  text-transform: uppercase;
}

.income-rpt .week_no p {
  font-size: 20px;
  color: #4a4a4a;
}

.income-rpt .net {
  text-align: center;
  padding: 5px;
  font-size: 14px;
}

.income-rpt .title {
  padding: 8px;
  background-color: #F5F5F5;
  font-size: 15px;
}

.income-rpt .income-year-title {
  text-align: center;
  color: #a7a7a7;
  font-size: 11px;
  text-transform: uppercase;
  width: 80px;
}

.income-rpt .growth {
  color: gray;
  font-size: 12px;
}

.enquiry-rejected-reason-breakdown-filters .clean-type .chosen-container {
  width: 200px !important;
}

.anniversary-title {
  color: gray;
  text-transform: uppercase;
  font-size: 12px;
  margin: 0 0 10px;
  border-bottom: 1px solid whitesmoke;
  font-weight: 600;
  background: #efefef;
  padding: 3px;
}

.anniversary-title.employee {
  margin-top: 15px;
}

.flat-tile .flat-container {
  width: 100%;
  display: table;
  margin-bottom: 15px;
  height: 84px;
}

.flat-tile .flat-container .tile-icon {
  width: 100px;
  background: #91b9ac;
  color: white;
  padding: 15px;
  font-size: 29px;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}

.sm-month-summary {
  margin-bottom: 10px;
}

.sm-month-summary .sub-title {
  color: #4c4c4c;
}

.sm-mtd-earnings {
  background: #13CE66;
  padding: 10px;
}

.sm-mtd-earnings .amount,
.sm-booked-in .amount,
.sm-month-total .amount {
  color: white;
  font-size: 26px;
}

.sm-booked-in {
  padding: 10px;
  background: #FFC82C;
}

.sm-month-total {
  background: #1FB6FF;
  padding: 10px;
}

.sm-feedback-received {
  background: white;
  border: 1px solid gainsboro;
  margin-left: 10px;
  padding: 10px;
  color: black;
}

.sm-feedback-received .amount {
  color: black;
}

.flat-tile .flat-container .tile-content {
  background: #c0d7d0;
  display: table-cell;
  padding: 10px 5px 5px 10px;
}

.flat-tile .flat-container .tile-content .tile-title {
  text-transform: uppercase;
  font-size: 12px;
  color: #70A594;
  margin-bottom: 5px;
}

.flat-tile .flat-container .tile-content .tile-earning {
  color: #3d6a5c;
  font-weight: 400;
}

.flat-tile .flat-container .tile-content .help {
  font-size: 10px;
  color: gray;
}

.flat-tile .flat-container .tile-icon.cancelled {
  background: #ad6a6c;
}

.flat-tile .flat-container .tile-content.cancelled {
  background: #c39294;
}

.flat-tile .flat-container .tile-content .tile-title.cancelled {
  color: #914849;
}

.flat-tile .flat-container .tile-content .tile-cancelled {
  color: #8e5759;
}

.dashboard-tile-breakdown .close a {
  color: #585858;
  font-size: 14px;
}

.dashboard-tile-breakdown .breakdown-container {
  max-height: 500px;
  overflow-y: auto;
}

.dashboard-tile-breakdown .breakdown-container .first-clean {
  color: #979797;
}

/* todays tasks */

.sm-today-task-row {
  border-bottom: 1px solid whitesmoke;
  padding: 5px 0;
}

.panel-technician-job-notifications ul,
.panel-technician-job-notifications li {
  display: block;
  margin: 0;
  padding: 0;
}

.panel-technician-job-notifications .job-notification {
  padding: 5px 0;
}

.panel-technician-job-notifications .job-notification:not(:first-child) {
  border-top: 1px solid gainsboro;
}

/*
overview screen
 */

.dashboard-content-container {
  padding: 0 10px 10px 10px;
}



.dashboard-overview .left-panel {
  margin-right: 10px;
}

.dashboard-overview .panel-body {
  overflow-y: auto;
  min-height: 50px;
}

.dashboard-overview .panel:last-child {
  margin-bottom: 0;
}

.dashboard-overview .right-panel {
  /*width:480px;*/
}

.dashboard-overview .license-row .license-number {
  width: 35px;
  text-align: right;
  color: #68CDFF;
  margin-right: 5px;
}

.panel-tickets .ticket-row {
  border-bottom: 1px solid whitesmoke;
  padding: 5px;
  outline: none;
}

.panel-tickets .ticket-row:hover {
  cursor: pointer;
  background: whitesmoke;
}

.panel-tickets .ticket-status {
  border-radius: 4px;
  font-size: 12px;
  padding: 3px 5px;
  color: white;
}

.panel-tickets .ticket-status.submitted {
  background: gray;
}

.panel-tickets .ticket-status.in_progress {
  background: #13CE66;
}

.panel-tickets .ticket-created {
  font-size: 12px;
  color: gray;
  font-style: italic;
}

.panel-tickets .ticket-unread-count {
  width: 20px;
  height: 20px;
  margin-right: 10px;
  font-size: 11px;
  text-align: center;
  color: white;
  background: red;
  border-radius: 50%;
}

/* workflows */

.workflow-task__row {
  background: #fbfbfb;
  padding: 5px;
  border: 1px solid #f1efef;
  margin-bottom: 5px;
}

.workflow-task__name-title {
  color: #adabab;
  font-size: 10px;
  text-transform: uppercase;
}

.workflow-task__due-date {
  color: gray;
  font-size: 13px;
}

.workflow-task__note-container {
  background: white;
  padding: 10px;
  border-radius: 5px;
  border: 1px solid #e6e3e3;
  margin-top: 8px;
}

.workflow-note__row {
  padding: 10px;
  border-bottom: 1px solid #e0dfdf;
}

.workflow-task__note-container .workflow-note__row:last-child {
  border-bottom: 0;
}

.workflow-task__created-by {
  font-size: 13px;
  color: silver;
}

.workflow-task__new-note-container {
  margin-top: 8px;
  position: relative;
}

.workflow-task__new-note-container.dragover {
  border: 1px dashed gray;
  border-radius: 5px;
}

.workflow-task__textarea {
  height: 59px!important;
}

.workflow-task__add-note-label {
  font-weight: bold;
  font-size: 12px;
}

.worfklow-note__note-dropzone {
  position: absolute;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: 9999999;
  color: white;
  font-weight: bold;
}

.worfklow-note__note-dropzone .icon {
  margin-right: 10px;
}

.worfklow-note__note-dropzone svg {
  fill: white;
}

.workflow__attachment {
  font-size: 13px;
  color: #12A4FF;
  margin-right: 10px;
}

.workflow__attachment-icon {
  margin-right: 5px;
}

.workflow__attachment a {
  color: #12A4FF;
}

.dashboard-notification-message-container {
  background: #f7e6e6;
  color: #757575;
  padding: 20px;
  margin: 0 10px 10px 10px;
  white-space: pre-line;
  border: 1px solid #f9bfc2;
  font-weight: bold;
}

.panel-stock-indicator__value--short {
  font-weight: bold;
  color: #FF4949;
}

.non-refunded-label {
  color: #FF4949;
}

.activity-description {
  width: 100%;
  text-align: left;
}

@media (min-width: 320px) and (max-width: 480px) {
  .panel-business-info {
    margin-top: 10px;
  }

  .dashboard-nav li {
    padding: 10px 17px;
    min-width: auto;
  }
}
.sample-availability__filter {
  padding-right: 10px;
}
.fee-open-visit-row {
  padding: 10px 0;
  border-bottom: 1px solid whitesmoke;
}

.table-sliding-percent-head-date {
  background: #E5E5E5;
}

.table-sliding-percent-head-row {
  background: whitesmoke;
}

.table-sliding-percent-edit .material-icons {
  color: #337ab7;
  margin-left: 10px;
  outline: none;
}

/* Fee Submission License Breakdown Modal */

.fee-license-breakdown__title {
  font-weight: bold;
  margin-bottom: 5px;
}

.fee-license-breakdown__title,
.fee-license-breakdown__value {
  width: 140px;
}

.sliding-fee-wrp .fee-license-breakdown__title,
.sliding-fee-wrp .fee-license-breakdown__value {
  width: 100px;
}

.fee-license-breakdown__row {
  border-bottom: 1px solid whitesmoke;
  padding: 10px 0;
}

.fee-license-breakdown__value.negative input,
.fee-license-breakdown__value.negative {
  color: red;
}

.invoice-breakdown-table .invoice-row-tr {
  border-bottom: 1px solid gainsboro;
  outline: none;
}

.invoice-breakdown-table .invoice-row-tr:hover {
  cursor: pointer;
}

.invoice-breakdown-table .invoice-row-tr.selected {
  background: blue;
  color: white;
}

.invoice-breakdown-table .header tr td {
  font-weight: bold;
}

.invoice-breakdown-table .invoice-row-tr td.date-field {
  padding-left: 20px;
}

.invoice-breakdown-table .invoice-row-tr td {
  padding: 10px 0;
}

.invoice-breakdown-table .invoice-breakdown-row-tr td {
  padding: 10px 0 10px 10px;
  background: whitesmoke;
}

/* expenses */

.expense-row {
  padding: 8px 0;
  border-bottom: 1px solid gainsboro;
}
.note-list .row {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #CCC;
}

.note-body {
  white-space: pre-wrap;
  margin-top: 10px;
  margin-bottom: 10px;
}

.title-controls {
  font-size: 18px;
  margin-top: 20px;
}

.title-controls .controls a + a {
  margin-left: 5px;
}

.title-controls .title {
  margin-top: 0;
}

.note-list .title.subject {
  font-size: 18px;
  margin-bottom: 0;
}

.note-list .type {
  font-size: 14px;
  color: #5f5f5f;
  margin-top: 0;
}

.note-list .timestamp {
  font-size: 12px;
  padding-bottom: 6px;
  border-bottom: 1px solid #efefef;
}

.note-attachments-list {
  display: block;
  list-style: none;
  margin: 0;
  margin-top: -5px;
  margin-left: -5px !important;
  padding: 0;
}

.note-attachments-list-item {
  display: block;
  float: left;
  margin: 0;
  margin-top: 5px;
  margin-left: 5px;
  padding: 2px 5px;
  border: 1px solid #CCC;
}

.note-attachments-list-item a,
.all-note-attachments-list-item a {
  color: #337ab7;
}

.note-attachments-list-item.deleting a {
  text-decoration: line-through;
  color: #d9534f;
}

.note-attachments-list-item .delete-link {
  line-height: 1em;
  vertical-align: baseline;
  color: #333;
}

.all-note-attachments-list-item {
  text-align: center;
  padding-top: 20px;
  padding-bottom: 20px;
}

.all-note-attachments-list-item .icon,
.all-note-attachments-list-item .basename {
  display: block;
  margin: 0 auto;
}

.all-note-attachments-list-item .filesize {
  font-weight: bold;
}

@media (min-width: 768px) and (max-width: 991px) {
  /* sm */

  .all-note-attachments-list-item:nth-child(3n + 1) {
    clear: both;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  /* md */

  .all-note-attachments-list-item:nth-child(4n + 1) {
    clear: both;
  }
}

@media (min-width: 1200px) {
  /* lg */

  .all-note-attachments-list-item:nth-child(6n + 1) {
    clear: both;
  }
}
.mailchimpSend .advertising-group-container {
  border-top: 1px dotted lightgray;
  /*border-bottom: 1px dotted lightgray;*/
  padding: 5px 0 0;
  margin-bottom: 15px;
  /*margin: 5px 0px;*/
  /*display: block;*/
}

.mailchimpSend .border-right {
  border-right: 1px solid #eee;
  height: 60px;
}
.customer-in-group-container {
  background: whitesmoke;
  border: 1px solid #F8F8F8;
  padding: 5px;
}

.customer-in-group-container .customer-row {
  padding: 5px;
  margin-top: 3px;
  margin-bottom: 3px;
  background: white;
}

.marketing-table-index tr td:last-child {
  font-size: 18px;
}

.marketing-table-index tr td:last-child span:first-child {
  margin-right: 10px;
  color: #2489c5;
}

.marketing-table-campaigns-index .non-active-row {
  color: lightgray;
}

.butstyle {
  -moz-border-bottom-colors: none;
  -moz-border-left-colors: none;
  -moz-border-right-colors: none;
  -moz-border-top-colors: none;
  background-color: #f8f8f8;
  background-image: linear-gradient(to bottom, #fff 50%, #f8f8f8 100%);
  border-color: #dedfe0 #c8c8c8 #c8c8c8;
  border-image: none;
  border-style: solid;
  border-width: 1px;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.08);
  color: #333;
  cursor: pointer;
  display: inline-block;
  font-family: "Open Sans",Verdana,sans-serif;
  font-size: 11px;
  margin-bottom: 15px;
  margin-right: 1.8%;
  padding: 6px 9px 4px;
  transition: border-color 0.21s ease-out 0s;
  width: 14.2%;
  min-height: 75px;
}

.butstyle:hover {
  border: 1px solid #23517C;
  cursor: default;
}

.butpro {
  vertical-align: top;
}

.butpro .sub {
  padding-top: 4px;
}

.butpro .sub h2 {
  font-size: 11px;
  font-weight: normal;
  margin: 0 0 5px;
  text-align: center;
  text-transform: uppercase;
}

.butpro .sub span {
  color: #434d55;
  display: block;
  font-size: 18px;
  font-weight: 400;
  line-height: 26px;
  text-align: center;
}

.no-records .panel-body {
  padding: 40px;
}

.no-records .fa {
  font-size: 100px;
  color: #F5F5F5;
}

.no-records h1 {
  font-size: 20px;
  color: #555555;
  padding-bottom: 10px;
}

.add-initiative .panel-body {
  padding: 20px;
}

.add-initiative .fa {
  font-size: 50px;
  color: #F5F5F5;
}

.add-initiative h1 {
  font-size: 15px;
  color: #555555;
  padding-bottom: 5px;
}

.marketing-group-locked {
  color: #FF441C;
  font-size: 12px;
}

/* Animations ------------------------------------------------------------------------ */

.customer-in-group-container .customer-row.ng-enter {
  animation: zoomInRight 0.5s;
  -mox-animation: zoomInRight 0.5s;
}

.customer-in-group-container .customer-row.ng-leave {
  animation: zoomOut 0.5s;
  -mox-animation: zoomOut 0.5s;
}

.marketing__job-repeat-enquiry {
  padding: 5px;
  background: #FFD55F;
  color: #353434;
}
.report-planning .filter > label {
  font-weight: bold;
  display: block;
}

.report-planning .filter-show label {
  display: block;
  margin: 5px 0;
}

.report-planning .filter-show label span {
  margin-left: 2px;
}

.report-planning .layout-filter.layout-filter-margin-negative {
  margin: -10px;
}

.report-planning .layout-filter > * {
  margin: 10px;
}

.report-planning .layout-filter.layout-filter-margin-none {
  margin: 0;
}

.report-planning .layout-filter .chosen-container .chosen-drop {
  width: auto;
}

.report-planning .report-type-filters {
  margin: 10px 0;
  padding: 10px 0;
  border-style: solid;
  border-color: gainsboro;
  border-width: 1px 0;
}

.report-planning .report-planning-submit {
  margin-top: 10px;
}

.report-planning .filter-date-range input {
  width: 300px;
}
.report-index-container {
  padding: 20px;
}

.report-container .filters tr td:not(.submit):first-child {
  width: 130px;
  padding-top: 15px;
}

.report-container .filters tr td.submit {
  text-align: right;
}

.report-selection-container h3 {
  font-size: 14px;
  text-transform: uppercase;
  color: gray;
  border-bottom: 1px dotted gainsboro;
  padding-bottom: 10px;
}

.report-selection-container {
  background: whitesmoke;
}

.report-selection-container ul {
  list-style: none;
  padding-left: 0;
}

.report-selection-container li {
  margin-bottom: 14px;
}

.report-selection-container a {
  color: #428bca;
}

.report-selection-container ul li .report-description {
  margin-left: 26px;
  color: #a7a6a6;
}
.shared-dropzone .dz-message .fa-upload {
  font-size: 40px;
}

.shared-dropzone .dz-message p {
  margin-top: 10px;
  font-size: 17px;
  font-weight: 300;
}

.shared-dropzone.thin {
  min-height: 120px;
}

.shared-dropzone.thin .dz-message {
  margin: 0;
}

.shared-dropzone.thin .dz-preview {
  margin: 0;
  height: 80px;
}

.shared-dropzone.thin .dz-image {
  height: 80px;
  width: 80px;
}

.shared-dropzone.thin .dz-image img {
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.menu-tooltip {
  color: #d1cccc;
  display: block;
  font-size: 10px;
}
.well.credit-overview,
.well.credit-details {
  padding-bottom: 5px;
}
.payment-receipt-form-body .payment-details {
  background: whitesmoke;
  padding-top: 0;
  padding-bottom: 0;
}

.payment-receipt-form-body .payment-details .amount-received-col .form-group {
  margin-bottom: 5px;
}

.payment-receipt-form-body .payment-details .amount-remaining {
  font-size: 12px;
  color: #666;
}

.payment-receipt-form-body .customer-balance {
  font-size: 24px;
}
.activity-colour-option {
  float: left;
  width: 25px;
  height: 25px;
  margin: 2px;
  border-radius: 50%;
  border: 2px solid transparent;
  opacity: 0.8;
}

.activity-colour-option.selected {
  border-color: #000;
}

.activity-colour-option:hover {
  cursor: pointer;
}

.activity-colour-option.selected,
.activity-colour-option:hover {
  opacity: 1;
}

.activity-schedule-form-row .duration {
  display: inline-block;
  margin-left: 5px;
  margin-right: 5px;
}

.form-inline .form-control.activity-schedule-reminder-duration {
  width: 45px;
}
.customer-form {
  padding-bottom: 225px;
}

.customer-is-ecom {
  background: #FFC82C;
  color: white;
  padding: 2px 5px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 600;
}

.customer .contact-detail .type {
  color: #CCC;
}

.contact-details {
  border-top: 1px solid #EEE;
  margin-top: 15px;
  padding-top: 15px;
}

.clear-input-filter {
  position: absolute;
  right: 12px;
  top: 7px;
  width: 10px;
  height: 10px;
  outline: none!important;
  color: gray;
}

.clear-input-filter:hover {
  cursor: pointer;
}

.contact-detail-group {
  border-bottom: 1px solid #EEE;
  margin-bottom: 15px;
  padding-bottom: 15px;
}

.customer-status-container {
  width: 70px;
  float: left;
}

.customer-name-container {
  float: left;
}

.customer-last-inactive-on {
  color: gray;
  font-size: 12px;
}

.customer-name-container .customer-reference {
  margin: 5px 0 0;
  font-weight: normal;
  font-size: 14px;
}

.customer-name-container .customer-name-title {
  margin-top: 0;
}

.customer-status-circle {
  height: 50px;
  width: 50px;
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  border-radius: 50%;
  color: white;
  font-size: 12px;
}

.customer-status-circle.Pending {
  background: #4AB0CE;
  color: white;
}

.customer-status-circle.Active {
  background: #59B359;
  color: white;
}

.customer-status-circle.Prospect {
  background: #0065CC;
  color: white;
  font-size: 11px;
}

.customer-status-circle.Inactive {
  background: #D34943;
  color: white;
}

.customer .additional-treatment-title {
  font-size: 10px;
  text-transform: uppercase;
}

.customer .credit-amount .loading {
  display: inline-block;
  vertical-align: middle;
}

/* Customer Map -----------------------------------------------------------------------*/

/* Most styles in geocode.css */

.map-customer-breadcrumb {
  height: 34px;
  background: white;
}

.additional-contacts .actions,
.additional-sites .actions {
  width: 100px;
}

/* Customer Notes ---------------------------------------------------------------------*/

.customer-notes-selection {
  background: whitesmoke;
  border: 1px solid gainsboro;
  padding: 10px;
}

.customer-notes-selection .job-selection {
  margin-top: 5px;
}

.angular-google-map.customer-map {
  display: block;
  height: calc(100vh - 85px);
}
.employee-hero .gender-age {
  font-size: 14px;
}

.employee-hero .name,
.employee-hero .numbers {
  font-size: 18px;
}

.employee-emergency-detail {
  margin-bottom: 15px;
}

.employee-emergency-detail .controls {
  margin-top: 10px;
}

.employee-emergency-detail .controls hr {
  margin-top: 10px;
  margin-bottom: 10px;
}

.attendance-row {
  margin-left: 0;
  margin-right: 0;
}

.attendance-row > [class*="col-"]:first-child {
  padding-left: 0;
}

.attendance-row > [class*="col-"]:last-child {
  padding-right: 0;
}

.attendance-row.bg-danger {
  padding: 5px;
}

.employee-photo-container {
  /*width: 260px;*/
  float: left;
  width: 100%;
  margin-top: 30px;
  text-align: center;
}

.employee-photo-container.view {
  margin: 0;
  text-align: left;
  width: auto;
  text-align: center;
  margin-left: 48px;
}

.employee-header-info-container {
  margin-left: 260px;
}

.employee-header-info-container .employee-colour {
  display: inline-block;
  height: 8px;
  width: 20px;
  margin-bottom: 6px;
  border-radius: 3px;
}

.employee-header-info-container .alias {
  margin-top: -10px;
  margin-bottom: 10px;
  color: #aaaaaa;
}

.employee-header-info-container .dob {
  color: #aaa;
}

.employee-photo-container .profile-pic {
  text-align: center;
  margin-bottom: 10px;
}

.employee-photo-container .profile-pic.clip-circle {
  clip-path: circle(70px at center);
  margin-bottom: 0;
  width: 140px;
}

.profile-msg {
  margin: 10px 0 0 0;
}

.employee-header-info-container .address {
  margin-top: 10px;
  color: #767474;
}

.employee-detail-header {
  font-size: 17px;
  font-weight: 400;
  margin-bottom: 8px;
  margin-top: 8px;
  border-bottom: 1px solid #d8d8d8;
}

.employee-personal-details .row {
  margin-bottom: 5px;
}

.cropArea {
  background: whitesmoke;
  overflow: hidden;
  width: 390px;
  height: 300px;
  /*width:500px;*/
  /*height:350px;*/
}
.team-panels .panel-heading h2 {
  font-size: 18px;
  margin: 0;
}

.team-panels .employee-team .team-label {
  font-size: 16px;
  margin-top: 5px;
  margin-bottom: 15px;
}

.employee-team {
  padding-bottom: 10px;
  border-bottom: 1px solid #CCC;
}

.employee-team .input-group {
  margin-bottom: 5px;
}


.employee-unavailability-container .header .title {
  margin-right: 10px;
  margin-top: 6px;
  padding-right: 10px;
}

.unavailability-container {
  margin-top: 20px;
}

.unavailability-container .row {
  margin-bottom: 10px;
  margin-left: 0;
}

.unavailability-container .date-field {
  width: 250px;
}

.unavailability-container .time-field {
  width: 200px;
  margin-left: 10px;
}

.unavailability-container .remove {
  margin-left: 10px;
}

.bulk-record-add-container {
  margin-top: 20px;
  margin-bottom: 20px;
  background: whitesmoke;
  padding: 20px;
}
.training-key {
  margin-top: 50px;
}

.training-key__local {
  background: #2494f2;
  color: white;
  padding: 4px 10px;
  margin: 5px 0;
}

.training-key__in-progress {
  background: #FFC82C;
  color: white;
  padding: 4px 10px;
  margin: 5px 0;
}

.training-key__completed {
  background: #13CE66;
  color: white;
  padding: 4px 10px;
  margin: 5px 0;
}
.audit-event .data-dump pre {
  width: 20vw;
  max-height: 20vh;
}
/* Map */

.geocode-map {
  z-index: 10;
  display: block;
  height: calc(100vh - 85px);
}

/* Locations list */

.map-locations-container {
  height: calc(100vh - 171px);
  width: 280px;
  opacity: 0.75;
  box-shadow: 3px 3px 3px #888888;
  background: white;
  position: fixed;
  top: 131px;
  left: 50px;
  /*padding:10px;*/
  overflow-y: auto;
  z-index: 20;
}

.map-locations-container:hover {
  opacity: 0.9;
}

.map-locations-container .geocode-map-back {
  margin: 10px;
}

.map-locations-container h1 {
  font-size: 20px;
  margin: 10px 0 15px;
  padding: 0 10px;
}

.map-locations-container h1:first-child {
  margin-top: 25px;
}

.map-locations-container .instructions {
  font-style: italic;
  font-size: 12px;
  color: #AAA;
  padding: 0 10px;
}

.map-locations-container .classes .class {
  margin: 10px 0 0;
  padding: 10px 0 0;
  border-top: 1px solid #CCC;
}

.map-locations-container .classes .class:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}

.map-locations-container .class-name {
  margin: 0 0 10px;
  padding: 0 10px;
  font-size: 18px;
  font-style: italic;
}

.map-locations-container .map-location {
  padding: 5px 10px;
  cursor: pointer;
}

.not-geocoded-exclamation {
  display: none;
}

.map-locations-container .map-location.not-geocoded {
  padding-right: 30px;
  position: relative;
}

.map-locations-container .map-location.not-geocoded .not-geocoded-exclamation {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  padding: 10px 15px;
  font-size: 18px;
}

.map-locations-container .map-location .title {
  font-weight: 500;
}

.map-locations-container .map-location.selected {
  background: #dae7ee;
  cursor: default;
}

.map-locations-container .map-location p {
  font-size: 12px;
  color: gray;
}

.map-locations-container .map-location .requires-geocoding {
  font-size: 24px;
  color: red;
}

.map-locations-container .map-location .name {
  font-weight: bold;
}

.map-locations-container .map-location .address {
  margin-top: 2px;
}

/* Location editor */

.map-location-editor {
  width: 310px;
  opacity: 0.9;
  box-shadow: 3px 3px 3px #888888;
  background: white;
  position: fixed;
  top: 131px;
  right: 100px;
  padding: 10px;
  z-index: 20;
}

.map-location-editor h1 {
  font-size: 16px;
  font-weight: bold;
  margin: 0 0 5px;
}

.map-location-editor a {
  display: block;
  margin-top: 5px;
}

.map-location-editor .popover {
  max-width: 300px;
}


.change-log-container li {
  padding: 5px 0;
}
.manual-route-modal {
  height: 100%;
}

.manual-route-modal-title {
  margin: 0 0 10px 0;
}

.manual-route-modal-date {
  margin: 0 0 10px 0;
  font-size: 1.4em;
}

.manual-route-modal-details {
  padding-right: 8px;
}

.manual-route-modal-details,
.manual-route-modal-details .waypoints-container-scroll {
  overflow-y: auto;
}

.manual-route-modal-details .waypoints-container-scroll {
  height: 100%;
}

.manual-route-modal-details .waypoints-container {
  border: 1px solid #CCC;
}

.manual-route-modal-details,
.waypoints-list {
  margin-right: 5px;
}

.manual-route-modal-error {
  margin-bottom: 0.5em;
  padding: 1em;
  font-size: 1.5em;
}

.manual-route-modal-error ul {
  display: block;
  margin: 0;
  padding: 0;
}

.manual-route-modal-error li {
  display: block;
}

.manual-route-modal .waypoints-list[dnd-list] li[dnd-draggable],
.manual-route-modal .waypoints-list[dnd-list] li.dndPlaceholder {
  /*overflow: hidden;*/
  position: relative;
  height: 102px;
  padding: 0 0 0 55px;
  border: none;
  font-size: 12px;
  background: none;
}

.manual-route-modal .waypoints-list li .container-fluid {
  padding: 10px 20px 10px 0;
  height: 100%;
  overflow: hidden;
}

.manual-route-modal .waypoints-list li.dndPlaceholder {
  background: none;
}

.manual-route-modal .waypoints-list li[dnd-draggable].waypoint-invalid .container-fluid {
  background: red;
}

.manual-route-modal .waypoints-list li[dnd-draggable].waypoint.selected {
  background: #bdbdbd;
  color: white;
}

.manual-route-modal .waypoints-list li[dnd-draggable].dndDragging .container-fluid {
  background: #C9C9C9;
  padding-left: 10px;
}

.manual-route-modal .waypoints-list li[dnd-draggable].dndDraggingSource {
  cursor: grabbing;
}

.manual-route-modal .waypoints-list li.dndPlaceholder .container-fluid {
  background: whitesmoke;
  border: 2px dashed #CCC;
  text-align: center;
  line-height: 102px;
  padding: 0;
}

.manual-route-modal .waypoints-list .waypoint:not(:first-child):not(.dndPlaceholder):not(.dndDragging) .waypoint-attributes {
  border-top: 1px solid #CCC;
  /*border-bottom: none;*/
}

.manual-route-modal .waypoints-list .waypoint-order-label {
  font-size: 18px;
  height: 1.35em;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.manual-route-modal .waypoints-list .waypoint-order,
.manual-route-modal .waypoints-list .waypoint-label,
.manual-route-modal .waypoints-list .waypoint-arrive,
.manual-route-modal .waypoints-list .waypoint-leave {
  display: inline;
}

.manual-route-modal .waypoints-list .waypoint-travel-time {
  font-size: 18px;
}

.manual-route-modal .waypoints-list .waypoint-order::after {
  content: '.';
}

.manual-route-modal .waypoints-list .waypoint-arrive {
  margin-right: 10px;
}

.manual-route-modal .waypoints-list li:not(.dndDragging) .bullet {
  position: absolute;
  top: 37px;
  left: 16px;
  display: block;
  width: 28px;
  height: 28px;
  background: url('../../../../images/icons/waypoints/waypoint-bullet.png') center no-repeat;
  background-size: 20px;
}

.manual-route-modal .waypoints-list li:not(.dndDragging):not(:last-child):not(.last) .dots {
  position: absolute;
  top: 73px;
  left: 24px;
  display: block;
  width: 12px;
  height: 55px;
  background: url('../../../../images/icons/waypoints/waypoint-dots.png') center no-repeat;
  background-size: 8px;
  z-index: 10;
}

.manual-route-modal .waypoints-list .waypoint:not(.dndDragging):hover .handle {
  position: absolute;
  top: 38px;
  left: 5px;
  display: block;
  width: 7px;
  height: 25px;
  background: url('../../../../images/icons/waypoints/waypoint-handle.png') center no-repeat;
}

.manual-route-modal .waypoints-list .waypoint:hover {
  cursor: grab;
}

.manual-route-modal .waypoints-list .waypoint.dndDraggingSource {
  display: none;
}

.manual-route-modal .waypoints-list[dnd-list] .waypoint.dndDragging[dnd-draggable] {
  border-top: none;
}

.manual-route-modal .waypoint-attributes {
  padding: 10px 20px 10px 0;
  overflow-y: auto;
}

.manual-route-modal .waypoint-attribute-label::after {
  content: ': ';
}

.manual-route-modal .waypoint-attribute-label + .waypoint-attribute-value {
  font-weight: bold;
}

.manual-route-modal .waypoint-arrive,
.manual-route-modal .waypoint-leave {
  display: inline;
}

.has-manual-route-modal-loading-overlay {
  position: relative;
}

.has-manual-route-modal-loading-overlay > * {
  position: relative;
  z-index: 10;
}

.has-manual-route-modal-loading-overlay > .manual-route-modal-loading-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 20;
  background: rgba(255, 255, 255, 0.5);
}

.manual-route-return-journey {
  padding: 10px 0;
}

.manual-route-return-journey-label,
.manual-route-return-journey-arrival {
  font-size: 24px;
}

.manual-route-return-journey-label {
  padding-top: 22px;
}

.manual-route-return-journey-arrival-sup {
  font-size: 16px;
  color: #AAA;
  height: 22px;
  overflow: hidden;
}

.manual-route-return-journey-arrival {
  margin-bottom: 10px;
}

.manual-route-modal__auto-optimised {
  background: #fafbee;
  border: 1px solid #fafbdd;
  padding: 9px;
  font-weight: bold;
  margin-bottom: 10px;
}
.z-main-container {
  /*height: 100%;*/
}

.z-zones-container,
.z-postcode-container {
  height: 100%;
  overflow-y: auto;
}

.z-filter-row {
  margin-top: 10px;
  padding: 20px;
  background: whitesmoke;
  border: 1px solid gainsboro;
}

.z-main-container {
  margin-top: 10px;
}

.z-postcode-container {
  background: #F9F9F9;
  padding: 0 10px 0 10px;
}

.z-main-container .zone-actions {
  padding: 10px 10px 0 0;
  border-top: 1px solid gainsboro;
}

.z-postcode-container .postcode-row {
  padding: 10px;
  border: 1px dotted gray;
  margin-bottom: 5px;
}

.z-postcode-container .postcode-row:last-child {
  margin-bottom: 0;
}

.z-postcode-container .postcode-row:hover {
  cursor: move;
  /* fallback if grab cursor is unsupported */
  cursor: grab;
}

/*.z-postcode-container .postcode-row.dndDraggingSource {*/

/*display:none;*/

/*}*/

.z-main-container .zone-row {
  padding: 10px;
  background: whitesmoke;
  border: 1px solid #D9D9D9;
  margin-right: 6px;
  margin-bottom: 6px;
}

.z-main-container .license-row {
  border: 1px solid gainsboro;
  padding: 5px;
}

.z-main-container .license-row + .license-row {
  margin-top: 10px;
}

.z-main-container .license-row h3 {
  margin: 0 0 10px;
  padding: 0 0 2px;
  border-bottom: 1px solid gainsboro;
}

.z-main-container .license-row .alert {
  margin-bottom: 5px;
}

.z-postcode-container .postcode-row.dndDragging {
  border: 1px solid gray;
  list-style: none;
}

.zone-droppable-container {
  min-height: 70px;
  border: 1px dashed gray;
  list-style: none;
  padding: 10px;
  background: white;
}

.zone-droppable-container.dndDragover {
  border: 1px solid gray;
  background: #EAEAEA;
}

.zone-droppable-container .postcode-row.dropped {
  position: relative;
  border: 1px solid gainsboro;
  padding: 5px;
  width: auto;
  display: inline-block;
  margin-right: 15px;
  margin-bottom: 5px;
}

.zone-droppable-container .postcode-row.dropped .remove-postcode {
  position: absolute;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #80272D;
  right: -9px;
  top: -9px;
}

.zone-droppable-container .postcode-row.dropped .remove-postcode .fa {
  margin-top: 2px;
  display: block;
  font-size: 12px;
  color: white;
  margin-left: 3px;
}

.zone-droppable-container .postcode-row.dropped .remove-postcode:hover {
  cursor: pointer;
}
/* -------------------- Generic PDF -------------------- */

body.pdf,
body.pdf table {
  font-family: Arial, Tahoma, sans-serif;
  font-size: 12px;
}

.pdf h1 {
  font-size: 22px;
  font-weight: bold;
  padding: 0;
  margin: 5px;
}

.pdf h2 {
  font-size: 16px;
  font-weight: bold;
}

.pdf h3 {
  font-size: 14px;
  font-weight: bold;
}

.pdf .label-title {
  color: gray;
}

.pdf .line {
  border-top: 1px solid gray;
}

.pdf .line-light {
  border-top: 1px solid #dcdcdc;
}

/* -------------------- Customer Confirmation -------------------- */

.customer-confirmation-pdf .address {
  white-space: pre;
  border-right: 1px dashed gray;
}

.customer-confirmation-pdf .contact-info div {
  float: left;
  width: 100%;
  margin-bottom: 15px;
}

.customer-confirmation-pdf .contact-info div.half {
  width: 50%;
}

.customer-confirmation-pdf .job-visit-calendars {
  page-break-before: always;
  font-size: 0.8em;
}

.customer-confirmation-pdf .job-visit-calendars .row {
  overflow: hidden;
  page-break-inside: avoid;
  margin: 10px 0;
}

.customer-confirmation-pdf .job-visit-calendars .col {
  float: left;
  width: 33%;
  page-break-inside: avoid;
}

.customer-confirmation-pdf .job-visit-calendars .col .padding {
  padding: 0 5px;
}

.customer-confirmation-pdf .job-visit-calendars .col h3 {
  font-size: 1.25em;
  margin: 0 0 1em;
}

.customer-confirmation-pdf .calendar {
  text-align: center;
  table-layout: fixed;
  page-break-inside: avoid;
  width: 100%;
  border-collapse: collapse;
}

.customer-confirmation-pdf .calendar th {
  width: 14.26%;
}

.customer-confirmation-pdf .has-events {
  background: greenyellow;
}

.customer-confirmation-pdf .has-events .day-number {
  font-weight: bold;
}


.revenue-comparison__header tr td {
  font-weight: 500;
}
.employee-attendance-report .week-heading {
  margin: 5px 0;
  padding: 5px;
  background: gainsboro;
  font-size: 24px;
}

.employee-attendance-report .employee .name {
  background: whitesmoke;
  font-weight: bold;
}

.employee-attendance-report tfoot {
  font-weight: bold;
}
.employee-holiday-breakdown-report .name,
.employee-holiday-breakdown-report .holiday-start-date,
.employee-holiday-breakdown-report .holiday-end-date {
  width: 30%;
}
.mm-cash-collected-report th {
  text-align: left;
}

.mm-cash-collected-report .customer-heading {
  background: whitesmoke;
  color: #7ABE43;
}

.mm-cash-collected-report .job-part-link {
  text-align: center;
}

.mm-cash-collected-report .amount-paid {
  text-align: right;
}

.mm-cash-collected-report .cleaning-frequency-summary {
  margin-bottom: 20px;
  text-align: center;
  font-size: 2em;
}
.mm-weekly-frequency-revenue-report th {
  text-align: left;
}

.mm-weekly-frequency-revenue-report th,
.mm-weekly-frequency-revenue-report td {
  border: 1px solid gainsboro;
}

.mm-weekly-frequency-revenue-report .empty-cell,
.mm-weekly-frequency-revenue-report .empty-cell {
  border: none;
  background: none !important;
}

.mm-weekly-frequency-revenue-report .week-heading {
  background: #7ABE43;
  color: #FFF;
}

.mm-weekly-frequency-revenue-report .year-heading {
  text-align: center;
  background: gainsboro;
}

.mm-weekly-frequency-revenue-report .figure-headings th {
  background: whitesmoke;
}

.mm-weekly-frequency-revenue-report .net,
.mm-weekly-frequency-revenue-report .job-count,
.mm-weekly-frequency-revenue-report .growth {
  text-align: right;
}

.mm-weekly-frequency-revenue-report .year-right:not(:last-child) {
  border-right-color: #000;
}

.ytd-frequency-revenue-report th {
  background: #7ABE43;
  color: #FFF;
}

.ytd-frequency-revenue-report .job-count,
.ytd-frequency-revenue-report .net {
  text-align: right;
}
.mm-weekly-income-report .forecast-revenue-breakdown .date-heading {
  background: whitesmoke;
  color: #7ABE43;
}

.mm-weekly-income-report .forecast-revenue-breakdown .clean-net {
  text-align: right;
}
.payroll-by-employee-report table tbody:first-child .date-spacer {
  display: none;
}

.payroll-by-employee-report .date-headings {
  background: gainsboro;
  font-weight: bold;
}

.payroll-by-employee-report .date-summary {
  background: whitesmoke;
  font-weight: bold;
}

.payroll-by-employee-report .date-summary small {
  font-weight: normal;
  font-size: 0.85em;
}

.payroll-by-employee-report .total th {
  font-size: 1.2em;
  padding-top: 16px;
}

.payroll-by-employee-report .job-part-date {
  text-align: center;
}

.payroll-by-employee-report .adjusted-total {
  color: #A94442;
  background: #F2DEDE;
}
.ng-table th {
  text-align: center;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.ng-table th.sortable {
  cursor: pointer;
}

.ng-table th.sortable .sort-indicator {
  padding-right: 18px;
  position: relative;
}

.ng-table th.sortable .sort-indicator:after,
.ng-table th.sortable .sort-indicator:before {
  content: "";
  border-width: 0 4px 4px;
  border-style: solid;
  border-color: #000 transparent;
  visibility: visible;
  right: 5px;
  top: 50%;
  position: absolute;
  opacity: .3;
  margin-top: -4px;
}

.ng-table th.sortable .sort-indicator:before {
  margin-top: 2px;
  border-bottom: none;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid #000;
}

.ng-table th.sortable .sort-indicator:hover:after,
.ng-table th.sortable .sort-indicator:hover:before {
  opacity: 1;
  visibility: visible;
}

.ng-table th.sortable.sort-desc,
.ng-table th.sortable.sort-asc {
  background-color: rgba(141, 192, 219, 0.25);
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
}

.ng-table th.sortable.sort-desc .sort-indicator:after,
.ng-table th.sortable.sort-asc .sort-indicator:after {
  margin-top: -2px;
}

.ng-table th.sortable.sort-desc .sort-indicator:before,
.ng-table th.sortable.sort-asc .sort-indicator:before {
  visibility: hidden;
}

.ng-table th.sortable.sort-asc .sort-indicator:after,
.ng-table th.sortable.sort-asc .sort-indicator:hover:after {
  visibility: visible;
  filter: alpha(opacity=60);
  -khtml-opacity: 0.6;
  -moz-opacity: 0.6;
  opacity: 0.6;
}

.ng-table th.sortable.sort-desc .sort-indicator:after {
  border-bottom: none;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid #000;
  visibility: visible;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  filter: alpha(opacity=60);
  -khtml-opacity: 0.6;
  -moz-opacity: 0.6;
  opacity: 0.6;
}

.ng-table th.filter .input-filter {
  margin: 0;
  display: block;
  width: 100%;
  min-height: 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.ng-table + .pagination {
  margin-top: 0;
}

@media only screen and (max-width: 800px) {
  .ng-table-responsive {
    border-bottom: 1px solid #999999;
  }

  .ng-table-responsive tr {
    border-top: 1px solid #999999;
    border-left: 1px solid #999999;
    border-right: 1px solid #999999;
  }

  .ng-table-responsive td:before {
    position: absolute;
    padding: 8px;
    left: 0;
    top: 0;
    width: 50%;
    white-space: nowrap;
    text-align: left;
    font-weight: bold;
  }

  .ng-table-responsive thead tr th {
    text-align: left;
  }

  .ng-table-responsive thead tr.ng-table-filters th {
    padding: 0;
  }

  .ng-table-responsive thead tr.ng-table-filters th form > div {
    padding: 8px;
  }

  .ng-table-responsive td {
    border: none;
    border-bottom: 1px solid #eeeeee;
    position: relative;
    padding-left: 50%;
    white-space: normal;
    text-align: left;
  }

  .ng-table-responsive td:before {
    content: attr(data-title-text);
  }

  .ng-table-responsive,
  .ng-table-responsive thead,
  .ng-table-responsive tbody,
  .ng-table-responsive th,
  .ng-table-responsive td,
  .ng-table-responsive tr {
    display: block;
  }
}
.sm-employee-availability-calendar {
  margin-bottom: 20px;
}

.sm-employee-availability-calendar-header {
  padding: 2px;
  border: 1px solid #E9E9E9;
  border-bottom: none;
  font-size: 16px;
  font-weight: normal;
  background: whitesmoke;
}

.sm-employee-availability-calendar-title {
  padding-left: 10px;
}

.sm-employee-availability-calendar .btn-group.calendar-type .btn {
  padding: 0;
}

.sm-employee-availability-calendar .btn-group.calendar-type img {
  fill: #FFF;
}

.sm-employee-availability-calender-filter-toggle,
.sm-employee-availability-calender-filter-toggle:hover {
  text-decoration: none;
}

.sm-employee-availability-calender-filter {
  margin: 10px 0;
  padding: 10px;
  background: #F8F8F8;
}

.sm-employee-availability-calender-filter-employees {
  margin-top: 10px;
}

.sm-employee-availability-calendar-content {
  margin-top: 10px;
}

.sm-employee-availability-calendar-key {
  word-spacing: 10px;
  text-align: right;
}

.sm-employee-availability-calendar-key .key-item {
  display: inline-block;
  margin: 2px 0;
  white-space: nowrap;
  word-spacing: normal;
}

.sm-employee-availability-calendar-key .key-colour {
  display: inline-block;
  width: 14px;
  height: 14px;
  border: 1px solid #000;
  vertical-align: middle;
}

.sm-employee-availability-calendar-key .key-label {
  display: inline-block;
  font-size: 12px;
  vertical-align: middle;
}

.sm-employee-availability-calendar .table-responsive {
  max-height: 250px;
  overflow-y: auto;
}

.sm-employee-availability-calendar-table {
  min-width: 100%;
}

/*.sm-employee-availability-calendar-table.time-slots tbody {*/

/*background-color: #FFF;*/

/*background-image: repeating-linear-gradient(-45deg, transparent, transparent 4px, #F5F5F5 4px, #F5F5F5 8px);*/

/*}*/

.sm-employee-availability-calendar-table th {
  /*border-bottom: 1px solid #E9E9E9;*/
  text-align: center;
  font-weight: normal;
}

.sm-employee-availability-calendar-table td {
  padding: 5px 10px;
  height: 50px;
  vertical-align: top;
  /*border: 1px solid #E9E9E9;*/
}

.sm-employee-availability-calendar-table th:not(:first-child),
.sm-employee-availability-calendar-table td:not(:first-child) {
  border-left: 1px solid #CCC;
}

.sm-employee-availability-calendar-table th {
  border-bottom: 1px solid #CCC;
}

.sm-employee-availability-calendar-table.overview th {
  width: 14.29%;
}

.sm-employee-availability-calendar-table.overview th,
.sm-employee-availability-calendar-table.overview td {
  padding: 2px 5px;
}

.sm-employee-availability-calendar-table th:not(:first-child),
.sm-employee-availability-calendar-table td:not(:first-child) {
  /*border-left: 1px solid #E9E9E9;*/
}

.sm-employee-availability-calendar .employee-schedule-overview {
  margin: 15px 0;
  font-size: 13px;
  line-height: 1.15;
}

.sm-employee-availability-calendar .employee-schedule-overview-name {
  border-bottom: 2px solid gainsboro;
  padding-bottom: 5px;
  margin-bottom: 5px;
}

.sm-employee-availability-calendar .overview-detail {
  display: inline;
}

.sm-employee-availability-calendar .overview-detail-label {
  font-weight: normal;
}

.sm-employee-availability-calendar .overview-detail-label::after {
  display: inline;
  content: ":";
  font-weight: normal;
}

.sm-employee-availability-calendar .overview-detail-value {
  font-weight: bold;
}

.sm-employee-availability-calendar .employee-schedule-time-slot-container,
.sm-employee-availability-calendar .employee-start-time-container {
  height: 25px;
}

.sm-employee-availability-calendar .employee-schedule-time-slot-container {
  position: relative;
  overflow: hidden;
  width: 100%;
}

.sm-employee-availability-calendar .employee-profile-container,
.sm-employee-availability-calendar .employee-schedule-time-slot-container,
.sm-employee-availability-calendar .employee-start-time-container {
  margin-top: 2px;
  margin-bottom: 2px;
}

.sm-employee-availability-calendar .employee-start-time-container .btn {
  font-size: 12px;
  padding: 2px 4px;
}

.sm-employee-availability-calendar .employee-schedule-time-slot {
  position: absolute;
  /*width: 100%;*/
  height: 15px;
  top: 5px;
  z-index: 20;
}

.sm-employee-availability-calendar-key .key-item.available .key-colour,
.sm-employee-availability-calendar .employee-schedule-time-slot {
  background: #86C1FF;
}

.sm-employee-availability-calendar .employee-schedule-time-slot:hover {
  background: #547CA8;
  z-index: 30;
}

.sm-employee-availability-calendar .employee-schedule-time-slot-border {
  display: block;
  position: absolute;
  height: 15px;
  top: 5px;
  z-index: 30;
  border-left: 3px solid #BAD2F6;
}

.sm-employee-availability-calendar-key .key-item.taken .key-colour,
.sm-employee-availability-calendar .employee-schedule-time-slot.taken {
  background: #D70000;
}

.sm-employee-availability-calendar .employee-schedule-time-slot.taken:hover {
  background: #F00;
}

.sm-employee-availability-calendar-key .key-item.visit-travel .key-colour,
.sm-employee-availability-calendar .employee-schedule-time-slot.taken.visit-travel {
  background: #D78900;
}

.sm-employee-availability-calendar .employee-schedule-time-slot.taken.visit-travel:hover {
  background: #FFA500;
}

.sm-employee-availability-calendar-key .key-item.holiday .key-colour,
.sm-employee-availability-calendar .employee-schedule-time-slot.holiday {
  background: #ADFFE0;
}

.sm-employee-availability-calendar .employee-schedule-time-slot.holiday:hover {
  background: #F8B700;
}

.sm-employee-availability-calendar-key .key-item.unavailability .key-colour,
.sm-employee-availability-calendar .employee-schedule-time-slot.unavailability {
  background: #1F2D3D;
}

.sm-employee-availability-calendar .employee-schedule-time-slot.unavailability:hover {
  background: #273444;
}

.sm-employee-availability-calendar-key .key-item.unavailable .key-colour,
.sm-employee-availability-calendar .employee-schedule-time-slot.unavailable {
  /*background: gainsboro;*/
  /*background-image: repeating-linear-gradient(-45deg, transparent, transparent 4px, #F5F5F5 4px, #F5F5F5 8px);*/
  background: url(../../images/shared/fc-day-grid.png);
}

.sm-employee-availability-calendar .employee-schedule-time-slot.unavailable {
  border-top: 1px solid whitesmoke;
  border-bottom: 1px solid whitesmoke;
  width: 100%;
  z-index: 10;
}

.sm-employee-availability-calendar .employee-schedule-time-slot-label {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 2px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10px;
  line-height: 15px;
  color: #FFF;
  font-family: Arial, sans-serif;
}

.sm-employee-availability-calendar .time-slot-day-row {
  vertical-align: middle;
  padding: 5px 10px;
}

.sm-employee-availability-calendar-table.time-slots tbody tr:not(:first-child) td {
  border-top: 1px solid #CCC;
}

.sm-employee-availability-calendar .time-slot-row {
  padding-left: 0;
  padding-right: 0;
}

.sm-employee-availability-calendar .time-slot-hours-col {
  width: 1%;
}

.sm-employee-availability-calendar .time-slot-hour {
  height: 40px;
  background: #FFF;
}

.sm-employee-availability-calendar .time-slot-hour:not(:first-child) {
  border-top: 1px solid #EAEAEA;
}

.employee-start-time-btn.inactive {
  opacity: 0.5;
  cursor: not-allowed;
}
.sm-cleaning-list-row {
  font-size: 17px;
}

.sm-cleaning-list-row:not(:first-child),
.sm-cleaning-list-row.summary {
  border-top: 1px solid #F0EBEB;
  margin-top: 8px;
  padding-top: 10px;
}

.line-through {
  text-decoration: line-through;
}

.sm-cleaning-list-row.summary {
  border-top: 2px solid #ACA7A7;
  margin-bottom: 20px;
}

.sm-cleaning-list-row .sm-clean-type {
  /*font-weight:600;*/
}

.sm-cleaning-list-row .sm-clean-type.deleting .sm-clean-title {
  text-decoration: line-through;
  opacity: 0.5;
}

.sm-cleaning-list-row .sm-clean-figure {
  width: 100px;
}

.sm-cleaning-list-row .sm-clean-figure .custom-price {
  background: #B5C2D1;
  padding: 3px 3px 2px 3px;
  border-radius: 4px;
  color: white;
  font-weight: 600;
  font-size: 12px;
}

.sm-cleaning-list-row .sm-clean-figure .original-price {
  font-size: 0.75em;
  text-decoration: line-through;
}

.sm-cleaning-list-row .sm-clean-figure small {
  font-size: 14px;
}

.sm-cleaning-list-row .sm-clean-type md-icon {
  font-size: 18px;
}

.sm-cleaning-list-row .sm-clean-type .undo {
  text-decoration: none;
  font-size: 13px;
}

.sm-cleaning-list-row .sm-clean-type .edit md-icon:hover {
  color: #139EFF;
}

.sm-cleaning-list-row .sm-clean-type .delete md-icon:hover {
  color: #FF8273;
}

.sm-cleaning-list-row .sm-clean-type a {
  text-decoration: none;
}

.sm-cleaning-list-row .sm-discount-checkbox-container {
  box-sizing: content-box;
  width: 40px;
}

.cleaning-services-list .btn-add-discounts {
  margin-left: 10px;
  background: white;
  border: 1px solid #e2e0e0;
  color: #4c4b4b;
}

.cleaning-services-list .discount-fields {
  /* keep some margin at bottom */
  margin: -5px -5px 5px;
}

.cleaning-services-list .discount-fields > div {
  padding: 5px;
}

.cleaning-services-list .discount-fields label {
  margin-bottom: 5px;
}
.sm-visit-list label.title {
  margin-bottom: 0;
  text-transform: uppercase;
  font-size: 11px;
  color: gray;
}

.sm-visit-list .sm-visit-row {
  padding: 5px;
  background: whitesmoke;
  margin-bottom: 15px;
}

.sm-visit-list .sm-visit-row .visit-title {
  width: 120px;
  margin-bottom: 5px;
}

.sm-visit-list .sm-visit-row .mins {
  margin-right: 5px;
  width: 65px;
}

.sm-visit-list .sm-visit-row .time {
  width: 105px;
  margin-right: 5px;
}

.sm-visit-list .sm-visit-row .date {
  margin-right: 5px;
  width: 200px;
}

.sm-visit-list .sm-visit-row .employee-row {
  margin-bottom: 5px;
}

.sm-visit-list .sm-visit-row .employee-row .employee-title {
  margin-right: 5px;
}

.sm-visit-list .sm-visit-row .employee-row .employee-add-remove {
  width: 30px;
}

.sm-visit-list.inactive {
  opacity: 0.3;
}

.sm-visit-row.remove {
  background: #FF4053;
}
.under-allocated {
  color: #333338;
}

.over-allocated {
  color: red;
  font-weight: bold;
}

.allocated-all {
  color: #19B24F;
}

.sm-remove-visit md-icon {
  color: darkred;
}

.sm-job-visit-container .sm-job-visit-row {
  margin-bottom: 15px;
  background: whitesmoke;
  padding: 20px;
}

.sm-job-visit-container .sm-job-visit-row .sm-job-visit-date {
  font-size: 17px;
  font-weight: 500;
  padding-bottom: 4px;
}

.sm-btn-group button {
  background-color: #F8F8F8;
  /* Green background */
  border: 1px solid #E3E3E3;
  /* Green border */
  color: #626262;
  /* White text */
  padding: 10px 24px;
  /* Some padding */
  cursor: pointer;
  /* Pointer/hand icon */
  float: left;
  /* Float the buttons side by side */
  outline: none;
}

.sm-btn-group button:not(:last-child) {
  border-right: none;
  /* Prevent double borders */
}

.sm-btn-group button:last-child {
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}

.sm-btn-group button:first-child {
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}

/* Clear floats (clearfix hack) */

.sm-btn-group:after {
  content: "";
  clear: both;
  display: table;
}

/* Add a background color on hover */

.sm-btn-group button:hover {
  background-color: #E5E5E5;
}

.sm-btn-group button.selected {
  background-color: #E5E5E5;
}

.sm-job-summary thead tr:last-child th {
  border-bottom: 1px solid #999;
}

.sm-job-summary tfoot tr > :first-child,
.sm-job-summary .total {
  font-weight: bold;
}

.sm-job-summary tfoot tr:first-child td {
  border-top: 1px solid #999;
}

.sm-job-summary-value {
  width: 1%;
}

.sm-close-job-form-customer-payment-item {
  margin: 5px 0;
  border-bottom: 1px solid gainsboro;
}

.sm-close-job-form-customer-payment-item .controls {
  padding: 5px;
}

.ecom-job-label {
  display: inline-block;
  background: #FFC82C;
  border-radius: 4px;
  padding: 2px 5px;
  font-size: 12px;
  color: white;
  margin-left: 5px;
}

.visit-photo-drop-zone {
  margin-top: 16px;
}
.sm-quote-cleaning-figures p {
  font-size: 25px;
}

.sm-quote-detail {
  margin-bottom: 45px;
}

.sm-add-cleaning-service md-icon {
  font-size: 20px;
}

.cleaning-service-customer-price {
  font-size: 1.75em;
  font-weight: bold;
}
.collapsable-line-panel {
  border-right: 1px solid gainsboro;
  margin-right: 10px;
}

.collapsable-line-panel img {
  margin-right: -1px;
  margin-top: 10px;
}

.calendar-filter-container {
  background: whitesmoke;
  padding: 10px;
  margin-bottom: 20px;
}

.sm-schedule-left-panel {
  width: 450px;
  height: 100%;
  overflow-y: auto;
  margin-right: 20px;
}

.sm-schedule-container .calendar-filter-container .tg-schedule-menu .date-title {
  padding: 10px 0 10px 20px;
}

.sm-schedule-container .calendar-filter-container .tg-schedule-menu .date-title > span {
  color: gray;
}

.sm-schedule-day .date-header {
  background: #2970B8;
  padding: 12px;
  color: white;
  font-size: 17px;
  align-items: center;
}

.sm-schedule-day .date-header .fa {
  font-size: 26px;
  color: white;
}

.sm-schedule-day .date-header .you-are-view-visits {
  font-size: 12px;
}

.sm-schedule-day .collapse-icon {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  outline: none;
}

.sm-schedule-day .collapse-icon.collapsed {
  transform: rotate(90deg);
}

.sm-schedule-day .visit-container .sm-visit-header {
  outline: none;
}

.sm-schedule-day .visit-container .visit {
  background: #D4EAF6;
  padding: 10px;
  margin-bottom: 3px;
}

.sm-schedule-day .visit-container .sm-visit-header {
  align-items: center;
}

.sm-schedule-day .visit-container .sm-visit-header.inactive {
  text-decoration: line-through;
}

.sm-schedule-day .visit-container .job-value {
  margin-top: 5px;
}

.sm-schedule-day .visit-container .visit-minutes {
  font-size: 12px;
  color: gray;
}

.sm-schedule-day .visit-container .pre-invoice {
  margin: 10px 0 0 0;
}

.sm-schedule-day .visit-container .pre-invoice md-icon {
  color: green;
}

.sm-schedule-day .services-container {
  background: #E3F4F9;
  padding: 6px;
  margin-top: 10px;
}

.sm-schedule-day .services-number {
  background: #A4C9DE;
  border-radius: 0.8em;
  -moz-border-radius: 0.8em;
  -webkit-border-radius: 0.8em;
  color: #FFF;
  display: inline-block;
  font-weight: bold;
  line-height: 1.6em;
  margin-right: 5px;
  text-align: center;
  width: 1.6em;
}

.vm-show-linked {
  margin-bottom: 10px;
  display: block;
}

.sm-schedule-calendar-event .fc-content {
  /*padding-left:17px;*/
  overflow: hidden;
  text-overflow: clip;
  white-space: normal;
}

.sm-schedule-calendar-event.inactive {
  text-decoration: line-through;
  opacity: 0.4;
  background: none;
}

.sm-schedule-add-visit {
  background: #DCF3FF;
  padding: 11px;
  border: 1px solid #BAD2F6;
}

.sm-schedule-add-visit md-icon {
  color: #4685A7;
  font-size: 23px;
}

.sm-merge-row {
  align-items: center;
  border-bottom: 1px solid gainsboro;
}

.sm-merge-row:last-child {
  border: 0;
}

.sm-availability-modal .input-group {
  margin-bottom: 10px;
}

.sm-schedule-availability-panel {
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 2px solid #000;
}

.technician-notification-status-container {
  margin: 1em 0;
  color: #A94442;
}

.technician-notification-status-container.notification-confirmed {
  color: #3C763D;
}

.technician-notification-status-container .notification-status {
  margin: 0;
  font-size: 14px;
  font-weight: bold;
}

@media (min-width: 320px) and (max-width: 1024px) {
  .sm-schedule-left-panel {
    width: auto;
    height: 100%;
    overflow-y: auto;
    margin-right: 0px;
  }
}
.category-container {
  background: whitesmoke;
  padding: 10px;
  margin-bottom: 20px;
}

.category-container label {
  font-weight: bold;
}

.category-container .category-name {
  margin-right: 10px;
}

.category-container .category-field-row {
  margin-bottom: 10px;
}

.category-container .existing-category {
  padding: 3px 5px;
  background: white;
  border: 1px solid gainsboro;
  margin-right: 10px;
}

.category-container .existing-category .category-label,
.category-container .existing-category .category-edit {
  margin-right: 5px;
}

.online-matrix__category-title {
  padding: 5px;
  background: whitesmoke;
  margin-bottom: 4px;
}

.online-matrix__service-label {
  padding-left: 5px;
}

.online-matrix__service-desc {
  font-size: 12px;
  color: silver;
  padding-left: 5px;
}

.online-matrix__service-cost {
  font-weight: bold;
}

.ecom__status-container {
  background: #FFF9E9;
  padding: 15px;
  border: 1px solid whitesmoke;
}

.ecom__status-container img {
  width: 15px;
  margin-right: 10px;
  font-size: 13px;
}

.online-pricing--gross {
  font-size: 12px;
  font-style: italic;
  padding: 30px 0 10px 0;
}
.template__default-text {
  font-style: italic;
}

.template__placeholder-container {
  padding: 5px 0;
}

.template__placeholder-label {
  padding-right: 10px;
}

.template__placeholder {
  background: whitesmoke;
  border: 1px solid #e4e1e1;
  border-radius: 4px;
  font-size: 12px;
  padding: 2px 5px;
  color: darkgrey;
  margin-right: 5px;
  margin-bottom: 5px;
  display: inline-block;
}

.template__placeholder a:hover {
  text-decoration: none;
}

.template__preview {
  font-style: italic;
  font-size: 13px;
  padding: 10px 0;
}

.template__preview pre {
  white-space: pre-wrap;
}
.customer-reminder-settings .customer {
  border-bottom: 1px solid #CCC;
  margin-bottom: 10px;
  padding-bottom: 10px;
}

.customer-reminder-settings .panel-group {
  margin-bottom: 0;
}

.customer-reminder-settings .customer h2 {
  font-size: 18px;
}

.customer-reminder-settings .customer h2 label {
  margin: 0;
  font-size: 0.8em;
}

.customer-reminder-settings .reminder-schedule select.form-control {
  display: inline-block;
}

.customer-reminder-settings .reminder-schedule select.form-control.interval + .chosen-container {
  width: 60px !important;
}

.customer-reminder-settings .reminder-schedule select.form-control.frequency + .chosen-container,
.customer-reminder-settings .reminder-schedule select.form-control.send-method + .chosen-container {
  width: 110px !important;
}
.licenses-container .panel .panel-body {
  padding-top: 0;
  padding-bottom: 0;
}

.licenses-container .license-row {
  border-bottom: 1px solid #dcdcdc;
  padding-bottom: 8px;
}

.licenses-container .license-row:last-child {
  padding-bottom: 0;
}

.licenses-container .license-row i.edit,
.licenses-container .license-row i.remove {
  color: gray;
}

.licenses-container .license-row i.edit:hover {
  color: #7bcb7f;
}

.licenses-container .license-row i.remove:hover {
  color: #f12937;
}

.licenses-container .license-row:last-child {
  border: 0;
}
.alert-warning.mailchimp {
  padding: 20px;
}

.alert-warning.mailchimp a {
  color: #1c8b23 !important;
}


.online-slot__week {
  background: whitesmoke;
  padding: 13px;
  margin: 10px 0;
  font-weight: bold;
}

.online-slot__day {
  min-width: 250px;
}

.online-slots__day-title {
  font-weight: bold;
  font-size: 14px;
  padding-bottom: 8px;
}

.online-slot__slots {
  margin-bottom: 5px;
}

.online-slot__slots.overlap {
  border: 1px solid red;
  padding: 3px;
}

.online-slots__container .help-block {
  display: none !important;
}

.online-slots__container label.has-error {
  display: none !important;
}

.online-slot__remove {
  padding-left: 5px;
}

.online-slot__remove .remove {
  color: red;
}

.online-status-container__row {
  padding: 8px 0;
  border-bottom: 1px solid #EBEBEB;
}

.online-status-container__status-wrap {
  width: 100px;
  text-align: left;
}

.online-status-container__status {
  display: inline-block;
  background: #FF5260;
  color: white;
  padding: 2px 5px;
  border-radius: 5px;
  font-size: 10px;
  text-align: right;
}

.online-status-container__status.optional {
  background: gray;
}

.online-status-container__setup-link {
  width: 100px;
  text-align: left;
}

.online-status-container__desc {
  color: gray;
  font-size: 13px;
}

.online-sell-online {
  margin-top: 30px;
  background: whitesmoke;
  border: 1px solid gainsboro;
  padding: 20px;
}

.online-sell-online__ready {
  margin-top: 15px;
}

.online-sell-online__statement {
  font-weight: 500;
}

.online-sell-online__bullet {
  height: 16px;
  padding-right: 10px;
}

.settings-room-type small {
  font-weight: bold;
}

.settings-room-type .is-expanded {
  overflow: visible;
}

.settings-room-type .remove {
  float: left;
  width: 20px;
  margin-top: 10px;
  color: DarkRed;
}

.settings-room-type .remove:hover {
  cursor: pointer;
}

.settings-room-type .fa-lock {
  float: left;
  width: 20px;
  margin-top: 10px;
  color: darkgray;
}

.settings-room-type .reinstate {
  float: left;
  width: 20px;
  margin-top: 10px;
  color: Green;
}

.settings-room-type .reinstate:hover {
  cursor: pointer;
}

.settings-room-type v-pane-header.deleted input {
  color: red;
}

.settings-room-type .room-input {
  float: left;
}

.settings-add-room {
  margin-bottom: 10px;
}
.role-permission-container ul {
  list-style: none;
}
.tm-container {
  width: 480px;
}

.tm-container.full-width {
  width: auto;
}

.table-manager-container input[type="submit"] {
  margin-top: 15px;
}

.tm-container .item {
  padding: 15px;
  margin-bottom: 5px;
  background: #edeeed;
  color: #808080;
}

.tm-container .action {
  font-size: 16px;
}

.tm-container .action i:hover {
  cursor: pointer;
  cursor: hand;
  color: #5ab15a;
}

.tm-container .action i.remove:hover {
  color: red;
}

.tm-container .strikethrough {
  text-decoration: line-through;
}

.tm-container .action i:first-child {
  margin-right: 10px;
}

.tm-container .item.deleted {
  background: #da6d6d;
  color: white;
}

.table-manager-row .fa {
  font-size: 17px;
  margin-right: 3px;
}

.table-manager-row .fa:hover {
  cursor: pointer;
}

.table-manager-row .fa.fa-trash-o:hover {
  color: red;
}

.table-manager-row .fa-check:hover {
  color: green;
}

.table-manager-row .fa-pencil:hover {
  color: #5aaeff;
}

.table-manager-row .fa-check {
  margin-top: 6px;
}

.table-manager-row a {
  color: white;
}
.tg-inv-product-detail-container {
  margin-top: 20px;
}

.tg-inv-product-row {
  border-bottom: 1px solid gainsboro;
  padding: 5px 0;
}

.tg-inv-product-title {
  width: 150px;
}

.inv-stock-container {
  margin-top: 50px;
}

.inv-stock-container .inv-stock-title {
  width: 150px;
  padding-top: 5px;
}



.inv-stock-container .inv-submit {
  width: 100px;
}
.treatment-prices {
  max-width: 400px;
}

.treatment-rrp-row {
  margin-bottom: 12px;
}
.job-treatment-products-table .col-product {
  width: 50%;
}

.job-treatment-products-table .col-remove {
  width: 1%;
}

.job-treatment-products-table .col-remove .btn-link span {
  padding: 5px;
}

.job-treatments-list-item {
  border-bottom: 1px solid #CCC;
}

.job-treatments-list-item h4 {
  font-size: 20px;
}

.job-treatments-list-item .actions {
  font-size: 16px;
  padding-left: 10px;
}

.tg-job-table tr.old {
  color: #DA4E4E;
}

.tg-job-table tr.old:hover {
  color: #DA4E4E !important;
}

.tg-job-table tr td .status {
  padding: 3px;
  text-align: center;
  color: white;
}

.tg-job-table tr td .status.lost {
  background: #D34943;
}

.tg-job-table tr td .status.open {
  background: #59B359;
}

.lawn-size-total {
  background: whitesmoke;
  color: gray;
  padding: 5px;
}

.lawn-size-container {
  background: #77AB59;
  color: white;
}

/* rob */

.tg-treatments-table {
  width: 100%;
}

.tg-treatments-table td {
  padding: 10px;
  vertical-align: top;
}



.job-treatments-list .list-item {
  background: whitesmoke;
  margin-bottom: 3px;
  padding: 5px;
}

.job-treatments-list .list-item .title {
  font-size: 18px;
}

.job-treatments-list .list-item .price {
  font-size: 18px;
}

.job-treatments-list .list-item .price-label {
  color: #ababab;
  font-size: 12px;
}

.job-treatments-list .list-item .treatments-per-year {
  font-size: 12px;
  color: gray;
}

.job-treatments-list .list-item .lawn-size {
  font-size: 12px;
  color: darkgray;
}

.job-treatments-list .list-item .divider {
  border-top: 1px solid #eeeeee;
  font-size: 11px;
  color: darkgray;
  padding-bottom: 5px;
}

.job-treatments-list .list-item .product {
  padding-top: 0;
  padding-bottom: 5px;
}

.job-treatments-list .list-item .separator {
  background: #FCFCFC;
  padding: 5px 0;
}

/* Convert to job */

.convert-quote-container .job-no-title {
  font-size: 21px;
}

.unassigned-treatments {
  border: 1px solid gainsboro;
  background: whitesmoke;
  padding: 15px;
}

.invoicing .invoice-method {
  margin-top: 9px;
}

.invoice-method .invoice-method-description {
  margin-left: 27px;
  color: #636363;
  font-size: 12px;
}

.split-payment-tr td {
  padding: 5px;
}

.tg-quote-copied-message {
  margin-bottom: 10px;
  font-size: 14px;
}
.close-job-treatment-container {
  border: 1px solid #CBCBCB;
  margin-bottom: 5px;
  /*align-items: center;*/
}

.close-job-treatment-container .close-job-treatment {
  padding: 12px;
}

.close-job-treatment-container .treatment-list-title {
  font-weight: bold;
}

.close-job-treatment-container .treatment-list-title .treatment-cost {
  margin-right: 8px;
  color: gray;
}

.close-job-treatment-container.not-completed .treatment-list-title {
  color: white;
}

.close-job-treatment-container .products-title {
  font-size: 11px;
  color: #80808099;
}

.close-job-treatment-container .treatment-complete {
  border-left: 1px solid gainsboro;
  padding-left: 12px;
}

.close-job-treatment-container .treatment-complete label {
  margin-top: 7px;
  /*margin-bottom:5px;*/
}

.close-job-treatment .treatment-product {
  border-bottom: 1px dashed gainsboro;
  margin: 6px 10px 6px 0;
  padding-bottom: 3px;
}

.close-job-treatment .treatment-product .chemical-app-record {
  margin-left: 27px;
  font-size: 12px;
}

.close-job-treatment .treatment-product .chemical-app-record.additional {
  margin-left: 0;
}

.close-job-treatment .treatment-product .chemical-app-record .add-record span {
  color: #FF2444;
}

.close-job-treatment-container .treatment-product-title {
  font-weight: normal;
}

.close-job-treatment-container .treatment-product md-icon,
.close-job-treatment-container .edit-treatment md-icon {
  font-size: 20px;
  color: #448EFF;
}

.close-job-treatment-container .treatment-product md-icon:hover,
.close-job-treatment-container .edit-treatment md-icon:hover {
  font-size: 20px;
  color: #2252FF;
}

.close-job-treatment-container .delete-treatment md-icon {
  font-size: 20px;
  color: #FF4656;
}

.close-job-treatment-container .delete-treatment md-icon:hover {
  font-size: 20px;
  color: #FF0740;
}

.close-job-treatment-container.not-completed {
  background: #F96E6E;
}

.close-job-treatment-container.inactive {
  opacity: 0.4;
}

.close-job-treatment-container .job-treatment-reschedule {
  background: lemonchiffon;
  padding: 3px;
  border-bottom: 1px solid #FF2955;
  text-align: center;
}

.invoice-row {
  border-bottom: 1px solid gainsboro;
  padding-bottom: 3px;
}

.close-job-customer-invoice .discount-figure {
  color: red;
}

.close-job-customer-invoice .total-net {
  font-weight: bold;
}

.close-job-customer-invoice-table {
  margin-top: 20px;
}

.close-job-customer-invoice-table .invoice-title {
  text-align: center;
  font-size: 13px;
  color: gray;
  text-transform: uppercase;
  margin-bottom: 5px;
  border-bottom: 1px dotted #E4E4E4;
  padding-bottom: 10px;
}

.close-job-customer-invoice-table .discount-value {
  color: red;
}

.close-job-customer-invoice-table td {
  padding: 3px;
}

.close-job-customer-invoice-table .discount-title {
  color: #0C95FF;
}

.close-job-customer-invoice-table .discount-title md-icon {
  font-size: 21px;
  color: #FF2C47;
}

.close-job-customer-invoice-table .treatment-row {
  border-bottom: 1px solid gainsboro;
}

.close-job-customer-invoice .treatment-row {
  border-bottom: 1px solid gainsboro;
  margin: 5px 0;
  padding-bottom: 5px;
}

.tg-close-job-invoice-preview .item-row {
  border-bottom: 1px solid gainsboro;
}

.close-job-submit {
  margin-top: 15px;
}

/* -- Job Overview -- */

.add-new-visit {
  margin: 8px 0 0px 0px;
  font-size: small;
  color: #56A2EF;
}

.treatment-overview {
  background: #E6F5FD;
}

.treatment-overview .col-md-3 {
  border-right: 1px solid white;
  float: none;
  display: table-cell;
  vertical-align: middle;
}

.visit-body {
  width: 100%;
  padding: 10px;
  background-color: whitesmoke;
  border-bottom: solid 2px #EBEBEB;
}

.visit-first {
  border-top: solid 2px #EBEBEB;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}

.visit-last {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}

.visit-body:hover {
  background-color: #F7F7F7;
}

.visit-heading {
  font-weight: lighter;
  font-size: medium;
  margin-bottom: 0.5em;
}

.visit-divider {
  border-bottom: solid 1px #EBEBEB;
  margin-bottom: 0.5em;
}

.tg-close-list-row-header {
  margin-bottom: 20px;
}

.tg-visit-list {
  margin-bottom: 20px;
}

.tg-visit-list .visit-heading {
  background: whitesmoke;
  padding: 7px;
  font-weight: bold;
}

.previous-invoice-visit-date {
  font-style: italic;
  font-size: 11px;
  color: gray;
}
.sm-cj-work-completed .fa-ban {
  color: #A0A0A0;
  margin-right: 6px;
}

.sm-cj-work-completed:hover .fa-ban {
  color: #FF464F;
  text-decoration: none;
}

.sm-jc-visit-row {
  border-bottom: 1px solid gainsboro;
  padding: 15px 0;
}

.sm-jc-visit-row .sm-jc-employee-title {
  margin-top: 7px;
}

.well.danger-light {
  background-color: #f7e6e6;
  border: 1px solid #f9bfc2;
}
.tg-schedule-container-form {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.content.tg-schedule-container {
  padding: 10px;
  width: 100%;
  height: 100%;
  overflow: hidden;
  overflow-y: auto;
}

.tg-schedule-container .calendar-filter-container {
  padding: 10px;
  background: whitesmoke;
  border: 1px solid gainsboro;
  margin-bottom: 10px;
}

.tg-key {
  font-size: 12px;
  margin-bottom: 10px;
}

.tg-key img {
  width: 15px;
}

.tg-key .key-item {
  margin-right: 10px;
}

.tg-schedule-container .calendar-filter-container .tg-schedule-menu .date-title {
  padding: 10px 0 10px 20px;
}

.tg-schedule-container .calendar-filter-container .tg-schedule-menu .date-title > span {
  color: gray;
}

.tg-schedule-container .date-header {
  background: #C9C9C9;
  padding: 13px;
  font-size: 17px;
  color: gray;
}

.tg-schedule-container .date-header .you-are-view-visits {
  font-size: 11px;
  color: #707070;
}

.tg-schedule-container .employee-list {
  border: 1px solid gainsboro;
}

.tg-schedule-container .employee-container {
  padding: 11px 8px;
  outline: none;
  background: whitesmoke;
  color: darkgray;
}

.tg-schedule-container .employee-container .work-time {
  margin-left: 29px;
}

.tg-schedule-container .employee-container .actions-container {
  padding-left: 29px;
}

.tg-schedule-container .employee-container .actions-container button {
  border-right: 1px solid darkgray;
  padding-right: 5px;
  margin-right: 5px;
}

.tg-schedule-container .employee-container .actions-container button:last-child {
  border-right: none;
}

.tg-schedule-container .employee-container .calculate-travel-time-icon {
  font-size: 21px;
  color: #3C95FF;
}

.tg-schedule-container .employee-summary {
  /*align-items: center;*/
}

.tg-schedule-container .employee-summary .select-all {
  margin-left: 13px;
}

.tg-schedule-container .employee-summary .no-of-visits {
  margin-right: 5px;
  padding: 10px 0;
}

.tg-schedule-container .visit-container {
  padding: 8px;
}

.tg-schedule-container .visit-container .treatment-number {
  background: #cccccc;
  border-radius: 0.8em;
  -moz-border-radius: 0.8em;
  -webkit-border-radius: 0.8em;
  color: #ffffff;
  display: inline-block;
  font-weight: bold;
  line-height: 1.6em;
  margin-right: 5px;
  text-align: center;
  width: 1.6em;
}

.tg-schedule-container .visit-container .edit-visit-icon {
  font-size: 20px;
  color: darkseagreen;
}

.tg-schedule-container .visit-container .locked-visit-icon {
  font-size: 20px;
  color: gray;
}

.tg-schedule-container .collapse-icon {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  outline: none;
}

.tg-schedule-container .collapse-icon.collapsed {
  transform: rotate(90deg);
}

.tg-schedule-container .tg-visit-header {
  background: #F6FAEE;
  padding: 5px;
  margin-bottom: 5px;
  outline: none;
}

.tg-schedule-container .tg-visit-header.inactive {
  opacity: 0.5;
}

.tg-schedule-container .tg-visit-header .visit-minutes {
  font-size: 12px;
  /*margin-left: 31px;*/
  /*margin-top: -13px;*/
  color: gray;
}

.tg-schedule-container .visit-summary {
  padding: 5px 13px;
}

.tg-schedule-container .visit-summary .visit-summary-checkbox-container,
.tg-schedule-container .visit-summary .visit-summary-checkbox-label,
.tg-schedule-container .tg-visit-header .visit-checkbox-container,
.tg-schedule-container .tg-visit-header .visit-name-address {
  padding-right: 5px;
}

.tg-schedule-container .tg-visit-header.inactive .visit-name-address {
  text-decoration: line-through;
}

.tg-schedule-container .tg-visit-header .inactive-indicator {
  width: 16px;
}

.tg-schedule-container .tg-visit-header .tg-address {
  color: gray;
}

.tg-schedule-container .tg-visit-header .checkbox {
  margin-right: 6px;
}

.tg-schedule-container .treatments-container {
  padding: 5px;
  margin: 3px 3px 3px 5px;
}

.tg-schedule-container .treatment .treatment-additional-indicator {
  width: 18px;
}

.tg-schedule-container .treatments-container .treatment {
  margin-bottom: 4px;
  background: whitesmoke;
  padding: 4px;
}

.tg-schedule-container .treatments-container .treatment:last-child {
  margin-bottom: 0;
}

.tg-schedule-container .treatments-container .treatment-name.inactive {
  text-decoration: line-through;
}

.tg-schedule-container .treatments-container .treatment-name md-icon {
  font-size: 20px;
  color: darkred;
}

.tg-schedule-container .treatments-container .tg-treatment md-icon {
  font-size: 20px;
}

.tg-schedule-container .treatments-container .tg-treatment .lock-icon {
  font-size: 17px;
  padding-top: 4px;
}

.tg-schedule-container .treatments-container .duration {
  color: gray;
  font-size: 12px;
}

.tg-schedule-container .treatments-container .add-treatment {
  margin-top: 3px;
}

.tg-schedule-container .add-treatment md-icon {
  font-size: 21px;
  color: gray;
}

.mv-visit-container {
  background: whitesmoke;
  padding: 5px 15px;
  /*align-items:center;*/
  margin-bottom: 4px;
}

.mv-visit-container .mv-visit-name {
  margin-left: 5px;
}

.mv-treatment-container {
  /*align-items:center*/
}

.mv-treatment-container {
  margin-left: 35px;
  background: #F9F9F9;
  padding: 5px 15px;
}

.mv-treatment-container .mv-treatment-name {
  margin-left: 5px;
}

.mv-treatment-container .mv-treatment-name.inactive {
  text-decoration: line-through;
}

.mv-treatment-container .mv-treatment-name.delete {
  opacity: 0.2;
  text-decoration: line-through;
}

.mv-move-date {
  margin-top: 20px;
}

.mv-move-date > label {
  margin-top: 7px;
}

.mv-treatment-customer {
  background: gainsboro;
  color: #747171;
  padding: 10px;
  margin-bottom: 11px;
}

.mv-treatment-customer .addr {
  color: #989494;
}

.tg-schedule-calendar-event .fc-content {
  padding: 0 5px;
  white-space: normal;
  overflow: visible;
}

.tg-schedule-calendar-event .visit-status-icon {
  display: inline-block;
  width: 12px;
  height: auto;
  margin-right: 2px;
}

.tg-calendar-container {
  position: relative;
}

.move-forward {
  position: absolute;
  top: 190px;
  left: -42px;
  z-index: 1000;
}

/* inventory modal */

.tg-im-visit-container .tg-im-header {
  padding: 10px;
  background: #F6FAEE;
  margin-bottom: 3px;
}

.tg-im-visit-container .tg-im-header .tg-address {
  color: gray;
}

.tg-im-visit-container .im-product-container {
  background: whitesmoke;
  margin-bottom: 3px;
  padding: 10px;
}

.tg-im-visit-container .applied-to-lawn {
  color: gray;
}

.im-product-summary-row {
  border-bottom: 1px solid whitesmoke;
  padding: 5px 0;
  color: #595959;
}

.bulk-assign-container .employee-row {
  margin-bottom: 5px;
  padding-bottom: 5px;
  border-bottom: 1px solid gainsboro;
}

.bulk-assign-container .employee-row:last-child {
  border-bottom: 0;
}



.preinvoice-all-container .row-item {
  border-bottom: 1px solid whitesmoke;
  padding-bottom: 5px;
  margin-top: 5px;
}

.preinvoice-all-container .row-item .row-item-checkbox {
  margin-right: 15px;
  width: 75px;
}

.preinvoice-all-container .row-item .customer-name {
  font-weight: 600;
}

.preinvoice-all-container .row-item .customer-address {
  color: gray;
  font-size: 13px;
}

.tg-visit-inactive .fc-content {
  text-decoration: line-through;
  opacity: 0.4;
  background: none;
}

.fc-header-toolbar {
  position: absolute;
  z-index: 2;
  background-color: #FCFCFC;
  width: 75%;
}

.fc-view-container {
  padding-top: 45px;
}

@media (min-width: 320px) and (max-width: 767px) {
  .tg-schedule-container .tg-visit-header .visit-minutes {
    margin-left: 0;
    margin-top: 0;
  }

  .calendar-filter-container .btn-group {
    margin-top: 10px;
  }
}

@media (min-width: 960px) {
  .content.tg-schedule-container {
    overflow-y: hidden;
  }

  .tg-schedule-container-form {
    overflow: hidden;
  }

  .tg-schedule-container {
    overflow: hidden;
  }

  .tg-schedule-container .scroll-vertical {
    overflow-x: hidden;
    overflow-y: auto;
  }

  .tg-schedule-container .side-panel {
    /*height:100%;*/
    /*width:100%;*/
    /*margin-right:10px;*/
    padding-right: 10px;
    overflow: hidden;
  }

  .tg-schedule-container .tg-schedule-employees {
    min-height: 300px;
  }
}

@media (max-width: 960px) {
  .fc-header-toolbar {
    position: unset;
    width: 100%;
  }

  .fc-view-container {
    padding-top: 0;
  }
}
.vp-container {
  padding: 10px;
  width: 100%;
  height: 100%;
}

.vp-header {
  background: whitesmoke;
  padding: 15px;
  display: flex;
  flex-direction: row;
  align-items: center;
}

.vp-header .vp-action {
  text-align: right;
  flex-grow: 1;
}

.vp-action .cancel {
  margin-right: 10px;
}

.vp-content {
  padding: 15px;
  height: 100%;
  max-height: 100%;
}

.vp-treatments-container {
  min-height: 300px;
}

.vp-content .vp-treatments {
  min-height: 300px;
  overflow-y: auto;
}

.vp-content .title {
  color: gray;
  text-transform: uppercase;
  font-size: 14px;
  margin-bottom: 10px;
}

.vp-content .vp-technicians {
  overflow-y: scroll;
  max-height: 100%;
}

.vp-content .vp-visits {
  overflow-y: auto;
  max-height: 100%;
}

.vp-visits .title .preferred-days {
  color: #42baff;
  text-transform: lowercase;
  margin-left: 10px;
}

.treatment-draggable {
  background: whitesmoke;
  border-radius: 5px;
  border: 1px dashed gainsboro;
  margin: 0 5px 5px 0;
  padding: 5px;
  min-height: 50px;
}

.treatment-draggable.dropped {
  display: flex;
}

.treatment-draggable:hover {
  cursor: grab;
}

.treatment-draggable .treatment-name {
  font-weight: 600;
  flex-grow: 1;
}

.treatment-draggable .treatment-remove {
  text-align: right;
  width: 100px;
  font-size: 12px;
}

.treatment-draggable.dndDraggingSource {
  display: none;
}

.treatment-draggable .treatment-type {
  color: #b0b0b0;
  text-transform: uppercase;
  font-size: 12px;
}

.treatment-draggable .treatment-number {
  font-weight: normal;
  color: gray;
  font-size: 10px;
  text-transform: uppercase;
}

.treatment-draggable .treatment-time {
  font-weight: normal;
}

.treatment-draggable .product-name {
  font-size: 11px;
  font-weight: normal;
}

.vp-visits .visit-container {
  border: 1px solid gainsboro;
  margin: 0 5px 5px 0;
}

.visit-container .save-visit-message {
  padding: 5px;
  background: lemonchiffon;
  color: darkred;
  text-align: center;
}

.visit-container .save-visit-message.visit-date {
  border-bottom: 1px solid #e5e494;
}

.visit-container .visit-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  background: whitesmoke;
  padding: 10px;
  outline: none;
}

.visit-container .visit-header.selected {
  background: #ACD1E9;
}

.visit-header .visit-name {
  flex-grow: 1;
  font-weight: 600;
}

.visit-collapse {
  margin-left: 10px;
}

.visit-collapse .collapse-icon {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  outline: none;
}

.visit-header .remove-icon {
  color: #ff573f;
}

.visit-header .remove-icon:hover {
  color: #ff462e;
}

.visit-collapse .collapse-icon.collapsed {
  transform: rotate(90deg);
}

.visit-header .visit-action {
  width: 180px;
  text-align: right;
}

.vp-visits .visit-droppable-container {
  min-height: 200px;
  border-top: 1px solid #b3b3b3;
  padding: 10px 4px 10px 10px;
}

.vp-visits .visit-footer {
  background: whitesmoke;
  border-top: 1px solid #b3b3b3;
  padding: 10px;
  display: flex;
}

.visit-footer .treatment-count {
  width: 200px;
}

.visit-footer .treatment-time {
  flex-grow: 1;
  text-align: right;
}

.treatment-placeholder {
  display: flex;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  text-transform: uppercase;
  color: gray;
  font-size: 12px;
}

.vp-visits .no-visits {
  display: flex;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  text-transform: uppercase;
  color: gray;
  font-size: 12px;
  height: 200px;
  border: 1px dotted gray;
  background: whitesmoke;
  margin: 5px;
}

.vp-treatments .no-treatments {
  display: flex;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  text-transform: uppercase;
  color: gray;
  font-size: 12px;
  padding: 10px;
  border: 1px dotted gray;
  background: whitesmoke;
  margin: 0 5px 0 0;
}

.visit-summary-container {
  border: 1px solid #ACD1E9;
  background: whitesmoke;
  padding: 5px;
}

.visit-summary-container .technician-title {
  margin-bottom: 5px;
}

.visit-summary-container .visit-summary-title {
  text-align: center;
  background: gainsboro;
  padding: 5px;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 8px;
}

.technician-visits {
  margin-top: 10px;
}

.technician-visits .site-address,
.all-visits-summary-container .site-address {
  font-size: 12px;
}

.technician-visits .visit-minutes,
.all-visits-summary-container .visit-minutes {
  color: gray;
}

.technician-visits .technician-name {
  border-bottom: 1px solid #d5d5d5;
  margin-bottom: 5px;
  background: #eefdec;
  padding: 5px;
}

.technician-visits .site-address:last-child {
  /*margin-bottom:10px;*/
}

.technician-visits .visit {
  border-bottom: 1px solid #e3e3e3;
  margin-bottom: 5px;
  padding-bottom: 6px;
}

.all-visits-summary-container .visit-row {
  border-bottom: 1px solid white;
  padding-bottom: 3px;
}

.technician-visits .route-summary,
.all-visits-summary-container .route-summary {
  background: #BEBEBE;
  color: white;
  padding: 5px;
}

.all-visits-summary-container {
  border: 1px solid #ACD1E9;
  background: whitesmoke;
  padding: 5px;
}

.all-visits-summary-container .summary-title {
  /*font-weight:600;*/
  font-size: 18px;
}

.all-visits-summary-container .route-date {
  text-align: left;
  background: gainsboro;
  padding: 5px;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 8px;
}

.all-visits-summary-container .route-date {
  margin-top: 10px;
}

.all-visits-summary-container .employee-name {
  margin-bottom: 5px;
}

.recommendations-container {
  background: #FCF8E3;
  border: 1px solid #F3F19B;
  padding: 5px;
  margin-bottom: 5px;
}

.recommendations-container .recommendation-title {
  font-size: 16px;
  color: gray;
}

.recommendations-container .recommendation-sub-title {
  font-size: 12px;
  color: #b7afaf;
  margin-bottom: 10px;
}

.recommendations-container .day-title {
  margin: 5px 0 5px;
  font-size: 11px;
  text-transform: uppercase;
  color: #5f687b;
  border-bottom: 1px solid #a6b2b9;
}

.recommendations-container .distance {
  font-size: 12px;
  color: gainsboro;
  color: #4a779e;
}
div .salesPipelineOverview {
  background-color: #0db9f0;
  color: whitesmoke;
}
.MMHouseTemplateList li {
  padding: 0.5em !important;
  margin-bottom: 5px !important;
  background-color: #f5f5f5 !important;
  border-radius: 4px;
  border-color: #ddd;
  color: black;
}

.MMHouseTemplateList .col-md-10 {
  padding-right: 0px !important;
}

.MMHouseTemplateList .col-md-2 {
  padding-left: 0px !important;
}
.bulk-inactive__date-filter {
  padding-top: 20px;
  padding-bottom: 20px;
}

.bulk-inactive__customer-header {
  width: 100%;
  padding: 10px;
  background: whitesmoke;
  margin-bottom: 5px;
}

.bulk-inactive__job-row {
  width: 100%;
}

.bulk-inactive__select-all {
  padding: 10px;
  background: #e6e4e4;
  margin-bottom: 13px;
}
mm-job-clean-rotation-view th,
mm-job-clean-rotation-view td {
  padding: 2px 5px;
}

mm-job-clean-rotation-view .rotation {
  text-align: center;
}

mm-job-clean-rotation-view th,
mm-job-clean-rotation-view .room {
  font-weight: bold;
}

/*mm-job-clean-rotation-view tr {*/

/*background: whitesmoke;*/

/*}*/

mm-job-clean-rotation-view tbody tr:nth-child(2n+1) {
  background: whitesmoke;
}
.manual-route {
  height: 900px;
  min-width: 800px;
  overflow-y: auto;
}

.manual-route strong {
  color: #666;
}

.manual-route-layout {
  height: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.manual-route-route {
  width: 33%;
  height: 100%;
  display: flex;
  flex-direction: column;
  flex: 0 0 auto;
  overflow: hidden;
}

.manual-route-start i,
.manual-route-return i {
  font-size: 34px;
  margin: 10px 0;
  color: #9D9D9D;
}

.manual-route-start .container-fluid,
.manual-route-return .container-fluid {
  padding-right: 20px;
}

.manual-route-start .location,
.manual-route-return .location {
  font-size: 20px;
  font-weight: 300;
  line-height: 54px;
}

.manual-route-start .arrival-time,
.manual-route-return .arrival-time {
  font-size: 20px;
  line-height: 54px;
}

.manual-route-waypoints,
.manual-route-waypoints .waypoint {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
}

.manual-route-waypoints[dnd-list] {
  flex: 0 1 auto;
  overflow-y: auto;
}

.manual-route-waypoints[dnd-list] li[dnd-draggable],
.manual-route-waypoints[dnd-list] li.dndPlaceholder {
  /*overflow: hidden;*/
  height: 102px;
  padding: 0 0 0 55px;
  border: none;
  font-size: 12px;
  background: none;
}

.manual-route-waypoints li .container-fluid {
  padding: 10px 20px 10px 0;
  height: 100%;
  overflow: hidden;
}

.manual-route-waypoints li.dndPlaceholder {
  background: none;
}

.manual-route-waypoints li[dnd-draggable].dndDragging .container-fluid {
  background: #C9C9C9;
  padding-left: 10px;
}

.manual-route-waypoints li[dnd-draggable].dndDraggingSource {
  cursor: grabbing;
}

.manual-route-waypoints li.dndPlaceholder .container-fluid {
  background: whitesmoke;
  border: 2px dashed #CCC;
  text-align: center;
  line-height: 102px;
  padding: 0;
}

.manual-route-waypoints .waypoint:not(:first-child):not(.dndPlaceholder):not(.dndDragging) .container-fluid {
  border-top: 1px solid #CCC;
  /*border-bottom: none;*/
}

.manual-route-waypoints .waypoint .order-customer-name {
  font-size: 18px;
  height: 1.35em;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.manual-route-waypoints .waypoint .order,
.manual-route-waypoints .waypoint .customer-name,
.manual-route-waypoints .waypoint .arrive,
.manual-route-waypoints .waypoint .leave {
  display: inline;
}

.manual-route-waypoints .waypoint .travel-time {
  font-size: 18px;
}

.manual-route-waypoints .waypoint .order::after {
  content: '.';
}

.manual-route-waypoints li {
  position: relative;
}

.manual-route-waypoints li:not(.dndDragging) .bullet {
  position: absolute;
  top: 37px;
  left: 16px;
  display: block;
  width: 28px;
  height: 28px;
  background: url('../../../../../images/icons/waypoints/waypoint-bullet.png') center no-repeat;
  background-size: 20px;
}

.manual-route-waypoints li:not(.dndDragging):not(:last-child):not(.last) .dots {
  position: absolute;
  top: 73px;
  left: 24px;
  display: block;
  width: 12px;
  height: 55px;
  background: url('../../../../../images/icons/waypoints/waypoint-dots.png') center no-repeat;
  background-size: 8px;
  z-index: 10;
}

.manual-route-waypoints .waypoint:not(.dndDragging):hover .handle {
  position: absolute;
  top: 38px;
  left: 5px;
  display: block;
  width: 7px;
  height: 25px;
  background: url('../../../../../images/icons/waypoints/waypoint-handle.png') center no-repeat;
}

.manual-route-waypoints .waypoint:hover {
  cursor: grab;
}

.manual-route-waypoints .waypoint .arrive {
  margin-right: 10px;
}

.manual-route-waypoints .waypoint.dndDraggingSource {
  display: none;
}

.manual-route-waypoints[dnd-list] .waypoint.dndDragging[dnd-draggable] {
  border-top: none;
}

.manual-route-map {
  min-width: 0;
  flex: 1 1 0;
  background: #C9C9C9;
}

.manual-route .border-bottom {
  border-bottom: 1px solid #CCC;
}

.manual-route .padding {
  padding: 10px;
}

.manual-route .route-failed-msg {
  font-weight: bold;
  padding: 25px;
  font-size: 20px;
}
.employee-profile-directive {
  display: inline-block;
}

.employee-profile-directive img {
  margin-bottom: 0;
  background: white;
  border-radius: 50%;
}

.employee-profile-directive img.small {
  /*clip-path: circle(19px at center);*/
  width: 40px;
}

.employee-profile-directive img.large {
  /*clip-path: circle(70px at center);*/
  width: 140px;
}
#input_img {
  position: absolute;
  top: 8px;
  right: 20px;
  width: 20px;
  height: 20px;
}

input[input-loader] {
  padding-right: 40px;
}
.loading {
  font-size: 14px;
}

.loading.small {
  display: block-inline;
}

.loading.large,
.loading.medium {
  text-align: center;
  font-size: 19px;
  margin-top: 100px;
}

.reloadable-attribute .loading.large {
  margin-top: 0;
  margin-bottom: 0;
}

.tab-pane .loading.large {
  margin-top: 20px;
  margin-bottom: 20px;
}

.loading-text {
  font-size: 14px;
  margin-top: 5px;
}

.modal-content .loading.large {
  margin-top: 20px;
  margin-bottom: 20px;
}

.modal-content .loading.medium {
  margin-top: 35px;
  margin-bottom: 35px;
}

.tab-pane .loading.medium {
  margin-top: 20px;
  margin-bottom: 20px;
}
/**
 * For the correct positioning of the placeholder element, the dnd-list and
 * it's children must have position: relative
 */

ul[dnd-list],
ul[dnd-list] > li[dnd-draggable] {
  position: relative;
}

/**
 * The dnd-list should always have a min-height,
 * otherwise you can't drop to it once it's empty
 */

ul[dnd-list] {
  min-height: 42px;
  padding-left: 0px;
}

/**
 * The dndDraggingSource class will be applied to
 * the source element of a drag operation. It makes
 * sense to hide it to give the user the feeling
 * that he's actually moving it.
 */

ul[dnd-list] li[dnd-draggable].dndDraggingSource {
  display: none;
}

/**
 * An element with .dndPlaceholder class will be
 * added to the dnd-list while the user is dragging
 * over it.
 */

ul[dnd-list] .dndPlaceholder {
  display: block;
  background-color: #ddd;
  padding: 10px 15px;
  min-height: 42px;
}

/**
 * The dnd-lists's child elements currently MUST have
 * position: relative. Otherwise we can not determine
 * whether the mouse pointer is in the upper or lower
 * half of the element we are dragging over. In other
 * browsers we can use event.offsetY for this.
 */

ul[dnd-list] li[dnd-draggable] {
  background-color: #fff;
  border: 1px solid #ddd;
  /*border-top-right-radius: 4px;*/
  /*border-top-left-radius: 4px;*/
  display: block;
  margin-bottom: -1px;
  /* Disable text selection if item is not draggable */
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

ul[dnd-list] li[dnd-draggable] dnd-nodrag {
  display: block;
  padding: 10px 15px;
}

/*/!***/

/** Gender-specifc background*/

/**!/*/

/*.typesDemo ul[dnd-list] li.background-man {*/

/*background-color: #CAE0FC;*/

/*}*/

/*.typesDemo ul[dnd-list] li.background-woman {*/

/*background-color: #FFE2F5;*/

/*}*/

/*.typesDemo ul[dnd-list] input.background-man {*/

/*background-color: #D8E9FF;*/

/*color: #2F4D99;*/

/*}*/

/*.typesDemo ul[dnd-list] input.background-woman {*/

/*background-color: #FFF0FA;*/

/*color: #D84FA7;*/

/*}*/

/*/!***/

/** Handle positioning*/

/**!/*/

/*ul[dnd-list] li .handle {*/

/*cursor: move;*/

/*position: absolute;*/

/*top: 14px;*/

/*}*/

/*ul[dnd-list] li .name {*/

/*margin-left: 20px;*/

/*}*/
/*
 * angular-tooltips
 * 1.1.7
 *
 * Angular.js tooltips module.
 * http://720kb.github.io/angular-tooltips
 *
 * MIT license
 * Wed Aug 31 2016
 */

._exradicated-tooltip {
  display: block;
  opacity: 1;
  position: absolute;
  z-index: 999;
}

tooltip {
  display: inline-block;
  position: relative;
}

@-webkit-keyframes animate-tooltip {
  0% {
    opacity: 0;
  }

  50% {
    opacity: .5;
  }

  60% {
    opacity: .8;
  }

  70% {
    opacity: .9;
  }

  90% {
    opacity: 1;
  }
}

@-moz-keyframes animate-tooltip {
  0% {
    opacity: 0;
  }

  50% {
    opacity: .5;
  }

  60% {
    opacity: .8;
  }

  70% {
    opacity: .9;
  }

  90% {
    opacity: 1;
  }
}

@-ms-keyframes animate-tooltip {
  tooltip, 0% {
    opacity: 0;
  }

  tooltip, 50% {
    opacity: .5;
  }

  tooltip, 60% {
    opacity: .8;
  }

  tooltip, 70% {
    opacity: .9;
  }

  tooltip, 90% {
    opacity: 1;
  }
}

@keyframes animate-tooltip {
  0% {
    opacity: 0;
  }

  50% {
    opacity: .5;
  }

  60% {
    opacity: .8;
  }

  70% {
    opacity: .9;
  }

  90% {
    opacity: 1;
  }
}

tooltip._multiline {
  display: block;
}

tooltip._slow._ready tip {
  animation: animate-tooltip 0.65s;
}

tooltip._fast._ready tip {
  animation: animate-tooltip 0.15s;
}

tooltip._steady._ready tip {
  animation: animate-tooltip 0.35s;
}

tooltip tip {
  border-radius: 3px;
  background: rgba(0, 0, 0, 0.85);
  color: #fff;
  display: none;
  line-height: normal;
  max-width: 500px;
  min-width: 100px;
  opacity: 0;
  padding: 8px 16px;
  position: absolute;
  text-align: center;
  width: auto;
  will-change: top, left, bottom, right;
}

tooltip tip._hidden {
  display: block;
  visibility: hidden;
}

tooltip.active:not(._force-hidden) tip {
  display: block;
  opacity: 1;
  z-index: 999;
}

tooltip tip-tip {
  font-size: 0.95em;
}

tooltip tip-tip._large {
  font-size: 1.1em;
}

tooltip tip-tip._small {
  font-size: 0.8em;
}

tooltip._top tip {
  left: 50%;
  top: -9px;
  -webkit-transform: translateX(-50%) translateY(-100%);
  transform: translateX(-50%) translateY(-100%);
}

tooltip._top tip tip-arrow {
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid rgba(0, 0, 0, 0.85);
  content: '';
  height: 0;
  left: 50%;
  margin-left: -6px;
  position: absolute;
  top: 100%;
  width: 0;
}

tooltip._bottom tip {
  right: 50%;
  top: 100%;
  -webkit-transform: translateX(50%) translateY(9px);
  transform: translateX(50%) translateY(9px);
}

tooltip._bottom tip tip-arrow {
  border-bottom: 6px solid rgba(0, 0, 0, 0.85);
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  bottom: 100%;
  content: '';
  height: 0;
  left: 50%;
  margin-left: -6px;
  position: absolute;
  width: 0;
}

tooltip._right tip {
  left: 100%;
  top: 50%;
  -webkit-transform: translateX(9px) translateY(-50%);
  transform: translateX(9px) translateY(-50%);
}

tooltip._right tip tip-arrow {
  border-bottom: 6px solid transparent;
  border-right: 6px solid rgba(0, 0, 0, 0.85);
  border-top: 6px solid transparent;
  content: '';
  height: 0;
  margin-top: -6px;
  position: absolute;
  right: 100%;
  top: 50%;
  width: 0;
}

tooltip._left tip {
  left: -9px;
  top: 50%;
  -webkit-transform: translateX(-100%) translateY(-50%);
  transform: translateX(-100%) translateY(-50%);
}

tooltip._left tip tip-arrow {
  border-bottom: 6px solid transparent;
  border-left: 6px solid rgba(0, 0, 0, 0.85);
  border-top: 6px solid transparent;
  content: '';
  height: 0;
  left: 100%;
  margin-top: -6px;
  position: absolute;
  top: 50%;
  width: 0;
}

tip-tip #close-button {
  cursor: pointer;
  float: right;
  left: 8%;
  margin-top: -7%;
  padding: 3px;
  position: relative;
}
/*! angularjs-slider - v6.1.0 -  (c) Rafal Zajac <rzajac@gmail.com>, Valentin Hervieu <valentin@hervieu.me>, Jussi Saarivirta <jusasi@gmail.com>, Angelin Sirbu <angelin.sirbu@gmail.com> -  https://github.com/angular-slider/angularjs-slider -  2017-03-06 */

.rzslider {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 4px;
  margin: 35px 0 15px 0;
  vertical-align: middle;
  user-select: none;
}

.rzslider.with-legend {
  margin-bottom: 40px;
}

.rzslider[disabled] {
  cursor: not-allowed;
}

.rzslider[disabled] .rz-pointer {
  cursor: not-allowed;
  background-color: #d8e0f3;
}

.rzslider[disabled] .rz-draggable {
  cursor: not-allowed;
}

.rzslider[disabled] .rz-selection {
  background: #8b91a2;
}

.rzslider[disabled] .rz-tick {
  cursor: not-allowed;
}

.rzslider[disabled] .rz-tick.rz-selected {
  background: #8b91a2;
}

.rzslider span {
  position: absolute;
  display: inline-block;
  white-space: nowrap;
}

.rzslider .rz-base {
  width: 100%;
  height: 100%;
  padding: 0;
}

.rzslider .rz-bar-wrapper {
  left: 0;
  z-index: 1;
  width: 100%;
  height: 32px;
  padding-top: 16px;
  margin-top: -16px;
  box-sizing: border-box;
}

.rzslider .rz-draggable {
  cursor: move;
}

.rzslider .rz-bar {
  left: 0;
  z-index: 1;
  width: 100%;
  height: 4px;
  background: #d8e0f3;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}

.rzslider .rz-selection {
  z-index: 2;
  background: #0db9f0;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}

.rzslider .rz-pointer {
  top: -14px;
  z-index: 3;
  width: 32px;
  height: 32px;
  cursor: pointer;
  background-color: #0db9f0;
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  border-radius: 16px;
}

.rzslider .rz-pointer:after {
  position: absolute;
  top: 12px;
  left: 12px;
  width: 8px;
  height: 8px;
  background: #fff;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  content: '';
}

.rzslider .rz-pointer:hover:after {
  background-color: #fff;
}

.rzslider .rz-pointer.rz-active {
  z-index: 4;
}

.rzslider .rz-pointer.rz-active:after {
  background-color: #451aff;
}

.rzslider .rz-bubble {
  bottom: 16px;
  padding: 1px 3px;
  color: #55637d;
  cursor: default;
}

.rzslider .rz-bubble.rz-limit {
  color: #55637d;
}

.rzslider .rz-ticks {
  position: absolute;
  top: -3px;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 0;
  margin: 0;
  list-style: none;
  box-sizing: border-box;
}

.rzslider .rz-ticks-values-under .rz-tick-value {
  top: initial;
  bottom: -32px;
}

.rzslider .rz-tick {
  position: absolute;
  top: 0;
  left: 0;
  width: 10px;
  height: 10px;
  margin-left: 11px;
  text-align: center;
  cursor: pointer;
  background: #d8e0f3;
  border-radius: 50%;
}

.rzslider .rz-tick.rz-selected {
  background: #0db9f0;
}

.rzslider .rz-tick-value {
  position: absolute;
  top: -30px;
  transform: translate(-50%,0);
}

.rzslider .rz-tick-legend {
  position: absolute;
  top: 24px;
  max-width: 50px;
  white-space: normal;
  transform: translate(-50%,0);
}

.rzslider.rz-vertical {
  position: relative;
  width: 4px;
  height: 100%;
  padding: 0;
  margin: 0 20px;
  vertical-align: baseline;
}

.rzslider.rz-vertical .rz-base {
  width: 100%;
  height: 100%;
  padding: 0;
}

.rzslider.rz-vertical .rz-bar-wrapper {
  top: auto;
  left: 0;
  width: 32px;
  height: 100%;
  padding: 0 0 0 16px;
  margin: 0 0 0 -16px;
}

.rzslider.rz-vertical .rz-bar {
  bottom: 0;
  left: auto;
  width: 4px;
  height: 100%;
}

.rzslider.rz-vertical .rz-pointer {
  top: auto;
  bottom: 0;
  left: -14px!important;
}

.rzslider.rz-vertical .rz-bubble {
  bottom: 0;
  left: 16px!important;
  margin-left: 3px;
}

.rzslider.rz-vertical .rz-ticks {
  top: 0;
  left: -3px;
  z-index: 1;
  width: 0;
  height: 100%;
}

.rzslider.rz-vertical .rz-tick {
  margin-top: 11px;
  margin-left: auto;
  vertical-align: middle;
}

.rzslider.rz-vertical .rz-tick-value {
  top: initial;
  left: 24px;
  transform: translate(0,-28%);
}

.rzslider.rz-vertical .rz-tick-legend {
  top: initial;
  right: 24px;
  max-width: none;
  white-space: nowrap;
  transform: translate(0,-28%);
}

.rzslider.rz-vertical .rz-ticks-values-under .rz-tick-value {
  right: 24px;
  bottom: initial;
  left: initial;
}
/**
 * vAccordion - AngularJS multi-level accordion component
 * @version v1.3.0
 * @link http://lukaszwatroba.github.io/v-accordion
 * @author Łukasz Wątroba <l@lukaszwatroba.com>
 * @license MIT License, http://www.opensource.org/licenses/MIT
 */

/***************************************
  vAccordion
 ***************************************/

/**
 * Example HTML:
 *
  <v-accordion class="vAccordion--default">
    <v-pane>
      <v-pane-header id="pane-header" aria-controls="pane-content">
         [content]
      </v-pane-header>
      <v-pane-content id="pane-content" aria-labelledby="pane-header">
        [content]
      </v-pane-content>
    </v-pane>
  </v-accordion>
 */

/* Base styles
 ***************************************/

v-accordion {
  display: block;
}

v-pane {
  display: block;
}

v-pane.is-expanded > v-pane-content > div {
  visibility: visible;
}

v-pane[disabled] > v-pane-header {
  opacity: 0.6;
  cursor: not-allowed;
}

v-pane-header {
  display: block;
  position: relative;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  outline: none;
}

v-pane-header:focus {
  outline: none;
}

v-pane-header[disabled] {
  pointer-events: none;
}

v-pane-header > div {
  display: block;
}

v-pane-content {
  display: block;
  position: relative;
  overflow: hidden;
  max-height: 0px;
}

v-pane-content > div {
  visibility: none;
}

/* Theme: default
   ***************************************/

.vAccordion--default v-accordion {
  margin-top: 20px;
  padding-left: 20px;
}

.vAccordion--default v-pane {
  -webkit-transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
}

.vAccordion--default v-pane.is-expanded > v-pane-header {
  border-bottom-color: #2196F3;
}

.vAccordion--default v-pane.is-expanded > v-pane-header::after {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  opacity: 0;
}

.vAccordion--default v-pane.is-expanded > v-pane-header::before {
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
}

.vAccordion--default v-pane.is-expanded > v-pane-content > div {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.vAccordion--default v-pane.is-expanded-add > v-pane-content,
.vAccordion--default v-pane.is-expanded-remove > v-pane-content {
  -webkit-transition: max-height 0.5s;
  transition: max-height 0.5s;
}

.vAccordion--default v-pane-header {
  padding: 5px 0;
  margin-bottom: 20px;
  border-bottom: 2px solid #D8D8D8;
  -webkit-transition: color 0.25s, border-color 0.5s;
  transition: color 0.25s, border-color 0.5s;
}

.vAccordion--default v-pane-header::after,
.vAccordion--default v-pane-header::before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 10px;
  height: 1px;
  background-color: #2196F3;
  -webkit-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
}

.vAccordion--default v-pane-header::before {
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.vAccordion--default v-pane-header:hover,
.vAccordion--default v-pane-header:focus {
  color: #2196F3;
}

.vAccordion--default v-pane-content > div {
  padding-bottom: 20px;
  will-change: transform, opacity;
  opacity: 0;
  -webkit-transform: translate3d(0, 30px, 0);
  transform: translate3d(0, 30px, 0);
  -webkit-transition: -webkit-transform 0.5s, opacity 0.5s;
  transition: transform 0.5s, opacity 0.5s;
}
.contact-detail-address-row,
.business-contact-detail-row {
  border-bottom: 1px solid gainsboro;
  margin-bottom: 15px;
  padding-bottom: 15px;
}