/*
 *  OVERRIDE BOOTSTRAP
 */
* {
  font-family: 'Noto Sans TC', sans-serif;
}
.pac-container {
  z-index: 1051 !important; /* google maps api autocomplete */
}
.modal-header span {
  color: white;
  text-shadow: none;
}
.modal-content {
  border-radius: .5rem;
}
.modal-header {
  background: #374146;
  color: white;
}
.modal-content input {
  width: 100%;
}
.no_data_row {
  background: transparent;
}
thead {
  background-color: #13242f;
  color: #f3f7f9;
}
.time-middle-to {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.under-input-label {
  display: none;
  color: gray;
  font-size: 12px;
  margin: 0 6px 4px;
}
.label_note {
  font-size: 12px;
  color: #768692;
}
.table_label_comment {
    font-size: 12px;
    color: #ababab;
    padding-left: 0px;
}
.btn-secondary {
  color: #fff;
  background-color: #3064b2;
  border-color: #3064b2;
}
.btn-secondary:hover, .btn-secondary:not(:disabled):not(.disabled).active, .btn-secondary:not(:disabled):not(.disabled):active, .show>.btn-secondary.dropdown-toggle {
  background-color: #224984;
  border-color: #224984;
}
.dropdown-menu {
  padding: 0;
}
.dropdown-menu .dropdown-item {
  border: solid 1px lightgray;
  padding: 5px 20px;
  color: black;
  background: white;
}
.dropdown-menu .dropdown-item:last-child {
  /* border-bottom: none; */
}
.dropdown-toggle {
  position: relative;
  padding: 5px 35px 5px 15px;
}
.dropdown .dropdown-toggle {
  min-width: 140px;
}
.dropdown-toggle::after {
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  margin-left: .255em;
  vertical-align: .255em;
  content: "";
  border-top: .3em solid;
  border-right: .3em solid transparent;
  border-bottom: 0;
  border-left: .3em solid transparent;
}
.dropdown .dropdown-menu {
  padding: 5px 20px 8px 20px;
  width: 250px;
  background: #ebebef;
  max-height: 250px;
  overflow-y: auto;
  overflow-x: visible;
}
.error_msg {
  padding: 6px;
  text-align: center;
  background: #dc3545;
  margin-bottom: 6px;
  color: white;
}
.quickbooks_logo_img {
  display: inline-block;
  max-width: 18px;
  vertical-align: top;
  margin-right: 5px;
  margin-top: -2px;
  max-height: 18px;
}
#current-status.dropdown-toggle {
  min-height: 25px;
}
.status-dropdown .dropdown-menu button:focus:before,
.status-dropdown .dropdown-menu button:hover:before,
.invoice_status_dropdown .dropdown-menu button:focus:before,
.invoice_status_dropdown .dropdown-menu button:hover:before
 {
  content: "";
  position: absolute;
  left: 5px;
  top: 50%;
  transform: translateY(-50%);
  height: 10px;
  width: 10px;
  background: #cccccc;
  border-radius: 50%;
  z-index: 88;
}
.status-dropdown .dropdown-menu button, .invoice_status_dropdown .dropdown-menu button {
  display: block!important;
  position: relative;
}
#locationField, #controls {
  position: relative;
  width: 480px;
  max-width: 100%;
}
#autocomplete {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 99%;
}
.label {
  text-align: right;
  font-weight: bold;
  width: 100px;
  color: #303030;
  font-family: "Roboto";
}
#address {
  border: 1px solid #000090;
  background-color: #f0f9ff;
  width: 480px;
  padding-right: 2px;
}
#address td {
  font-size: 10pt;
}
.field {
  width: 99%;
}
.slimField {
  width: 80px;
}
.wideField {
  width: 200px;
}
#locationField {
  height: 40px;
  margin-bottom: 2px;
}
#map {
  height: 100%;
}
.coord_label {
  border: none;
  background: transparent;
  font-size: 10px;
  display: inline-block;
  margin: 0 4px;
  color: gray;
  width: auto!important;
}
.popover_hint_btn {
  font-size: 16px;
  line-height: 22px;
  height: 24px;
  width: 24px;
  text-align: center;
  vertical-align: middle;
  display: inline-block;
  border-radius: 50%;
  background: #83878a;
  color: white;
}
.popover_hint_btn:focus, .popover_hint_btn:hover {
  cursor: pointer;
  background: #7a7c7d;
  color: white;
}
input[type="password"] {
  font: small-caption;
  font-size: 16px;
}
.required_input_fail {
  border: solid 2px red;
}
/*
 * GENERAL STYLES
 */
body {
  background: #c9cfd4;
  background: #d4dce2;
  color: #111315;
}
a:hover, button:hover {
  text-decoration: none;
  cursor: pointer;
}
p {
  margin-bottom: 0;
}
label {
  font-size: 14px;
  color: #768692; /* #7c8f9c;  #8598a5; */
  margin-bottom: 0;
  margin-top: 10px;
}
label sup {
  color: #de3838;
}
input, textarea, select, option {
  margin-top: 3px;
  padding: 5px;
  max-width: 100%;
}
input[type="color"] {
  padding: 0;
  width: 100px;
  max-width: 100%;
}
textarea {
  width: 100%;
}
hr {
  margin: 20px 0;
}
img {
  max-width: 100%;
}
#eye_icon {
  color: gray;
  position: absolute;
  top: 50%;
  right: 3px;
  transform: translateY(-50%);
}
.sort_header_link {
  display: block;
}
.container_title {
	font-size: 22px;
}
.container_title, .container_description {
	padding-left: 15px;
}
.container_description {
	margin: 3px auto 12px;
  color: #768692;
	font-size: 14px;
	line-height: 20px;
}
.current_sort:after {
  content: "\f062";
  position: relative;
  font-family: "Font Awesome 5 Free";
  font-size: 14px;
  line-height: 100%;
  margin-left: 3px;
}
.current_sort.sort_dir_DESC:after {
  content: "\f062";
}
.current_sort.sort_dir_ASC:after {
  content: "\f063";
}
[type=button], [type=reset], [type=submit], button {
    -webkit-appearance: unset;
}
.action-link {
  transition: all .3s;
}
.green-text {
  color: #29ce7b;
}
.red-text {
  color: #f34747;
}
.people-tag {
  color: white;
  border-radius: 2px;
  padding: 3px 10px;
  margin-left: 10px;
  font-size: .8rem;
  border: solid 2px transparent;
}
.employee-tag {
  background: #5c6165;
}
.new-tag {
  background: #0172ff;
}
.main-tag {
  background: #0172ff;
}
.unsaved-tag {
  background: transparent;
  color: black;
  animation: blink-unsaved .5s step-end infinite alternate;
}
.empty-content-text {
  color: #484848;
  font-size: 1.5rem;
  text-align: center;
  background: transparent;
  margin: 30px auto;
}
.details_inner_link {
	display: block;
	margin: 3px 0 0 0;
}
.col-12 .details_inner_link:first-child {
	margin-top: 0;
}
.fa-sign-out-alt {
  transform: rotate(180deg);
}
.latest_update_btn {
  font-size: 14px;
}
.latest_update_btn i {
  display: none;
  color: #ff671f;
  margin: 0 0 0 5px;
}
.unseen_update_btn i {
  display: inline-block;
}
.app_update_date {
  text-align: center;
  color: gray;
  margin-bottom: 8px;
}
.app_update_title {
  font-size: 24px;
  line-height: 140%;
  text-align: center;
  max-width: 90%;
  display: block;
  margin: 0 auto;
}
.app_update_body {
  color: #3a3a3a;
}
.app_update_body p {
  margin-bottom: 18px;
}
.app_update_body ul {
  padding-left: 34px;
}
.app_update_body li {
  margin-bottom: 10px;
}
.roles-dropdown {
  display: none;
}
.change-order-table-header {
  font-size: .8rem;
  line-height: 1rem;
  height: 24px;
  margin-top: -12px;
}
.new-job-people-container {
  display: none;
  padding: 0;
}
.show-inputs .roles-dropdown {
  display: block;
}
.job-people-form .table-header {
  margin-top: 20px;
}
.job-role-dropdown, .job-role-dropdown a, .job-role-dropdown .dropdown-menu.show, .job-role-text-link {
  width: 100%;
}
.job-role-dropdown {
  display: none;
  margin-bottom: 15px;
}
.show-inputs .job-role-dropdown {
  display: block;
}
.show-inputs .job-role-text-link {
  display: none;
}
.job-role-label {
  font-size: 1.2rem;
  text-align: center;
  color: #1c3b4f;
  margin-top: 0;
  display: block;
  margin-bottom: 3px;
}
.job-people-form input {
  display: none;
}
.dropdown-menu .hide_dropdown_item {
  display: none;
}
#crm_type_dropdown_btn {
  display: block;
  margin: 0 0 10px auto;
}
.mobile-header {
  display: none;
}
.hamburger-menu {
  margin: 23px 0 0 10px;
  display: block;
}
.mobile-search-icon {
  display: block;
  width: 20px;
  position: relative;
  height: 34px;
  margin: 18px 10px 0 auto;
}
.mobile-search-icon:before {
  position: absolute;
  top: 4px;
  right: 6px;
  content: "";
  height: 22px;
  border: solid 4px white;
  border-radius: 50%;
  width: 22px;
}
.mobile-search-icon:after {
  position: absolute;
  bottom: 6px;
  right: 0px;
  height: 4px;
  width: 14px;
  background: white;
  content: "";
  transform: rotate(45deg);
}
.mobile-page-title {
  font-size: 1.3rem;
}
.gray-text, .sub-text {
  color: #768692;
}
.sub-text {
  margin: 2px auto 6px;
  font-size: .9rem;
}
.required-submit-text {
  text-align: center;
  display: flex;
  flex-direction: column;
  color: #de3838;
  text-decoration: underline;
  margin: 20px auto 10px;
}
.note-bg {
  background: #fff4ca !important;
}
.note-text {
  font-size: 14px;
  padding: 10px;
  margin: 10px 0;
}
.scrollable-content-section {
  margin: 0 -20px !important; /* whatever the padding of the content-section is */
  padding: 10px 20px !important;
  max-height: 380px;
  overflow-x: hidden;
  overflow-y: scroll;
}
.fas, .far {
  margin-right: 3px;
}
.dropdown-item:hover {
  background: #eaeaea;
  cursor: pointer;
}
.plain-text-link {
  color: #111315;
}
.plain-text-link:hover {
  color: black;
  text-decoration: underline;
}
input[type="checkbox"], input[type="radio"] {
  display: inline-block;
  margin-top: 0;
  width: 19px;
  height: 19px;
  vertical-align: sub;
}
.page_success .main-content, .page_error .main-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: white;
  padding: 40px;
  text-align: center;
  border-radius: 10px;
}
.page_success h1, .page_error h1 {
  font-size: 2.2rem;
  margin: 10px auto;
}
.page_success p, .page_error p {
  margin: 10px auto;
}
.page_success .success_icon, .page_error .error_icon {
  font-size: 3rem;
  margin: 0 auto 10px;
}
.page_success .success_icon.fa-check-circle {
    color: #28a745;
}
.page_success .success_icon.fa-times {
    color: #ff3b3b;
}
.page_success .success_icon.fa-skull-crossbones {
  color: #616161;
}
.page_error .error_icon.fa-exclamation-circle {
    color: #d9534f;
}
.page_success button, .page_error button {
  border-radius: 50px;
  color: white;
  border: none;
  padding: 6px 20px;
  margin-top: 20px;
  display: inline-block;
  background: #0172ff;
}
.page_lined .table-body {
  padding: 0 15px;
}
#lined_frm #sortable li.ui-state-default {
  background: rgba(243, 247, 249, .7);
}
.line_item_input[id*="price_each"] {
  position: relative;
}
.line_item_input[id*="price_each"]:before {
  content: "$";
  position: absolute;
  top: 50%;
  left: -12px;
  color: #768692;
}
#add_line {
  border: solid 1px #d6d6d6;
  background: #e2e2e2;
  padding: 5px;
  border-radius: 5px;
  color: #8a8a8a;
}
#add_line:hover {
  background: #d0d0d0;
  cursor: pointer;
}
#add_line img {
  vertical-align: top;
}
.add_line_row {
  color: #969696;
}
.add_line_row img {
  margin-right: 10px;
}
.contacted-date-container {
  background: white;
  border: solid 1px lightgray;
  margin-top: 3px;
  /* padding: 5px 10px; */
}
.contacted-date-container input {
  margin-top: 0;
  border: none;
  padding: 5px 10px;
}
.center_form_container input#contacted_checkbox {
  display: inline-block;
  margin-top: 0;
  width: 19px;
  height: 19px;
  vertical-align: sub;
  margin-left: 10px;
}
.inline-edit-form .input-checkbox {
  display: inline-block;
  margin-top: 0;
  width: 19px;
  height: 19px;
  vertical-align: sub;
}
.default_check {
  transform: rotate(-5deg);
  color: gray;
}
.roles-row .role-checkbox {
  display: inline-block;
}
.non_employee_people_form .approve_input_row,
.crew_people_form .approve_input_row,
.crew_people_form .role_input_row,
.non_employee_people_form .role_input_row {
  display: none;
}
#can-approve-checkbox, #main-contact-checkbox {
  margin-left: 5px;
  width: 19px;
  height: 19px;
  display: inline-block;
}
.blank-assignment-row {
  display: none;
}
.current-blank-role {
  min-width: 100px;
  text-align: right;
}
.blank-role-item {
  min-height: 1rem;
}
.text-center {
  text-align: center;
}
.full-width {
  width: 100%;
}
.full_width {
  width: 100% !important;
  display: block !important;
}
.account_suggestion.full_width {
  text-align: left;
}
.payment_warning_bottom {
  opacity: .8;
  text-align: right;
  position: fixed;
  bottom: 30px;
  right: 30px;
}
.payment_warning_bottom .popover_hint_btn {
  font-size: 32px;
  line-height: 40px;
  height: 42px;
  width: 42px;
  background: red;
}
.bill_status_paid:before {
  content: "Paid";
  color: green;
}
.bill_status_pending:before {
  content: "Pending";
  color: #ff8100;
}
.bill_status_unpaid:before {
  content: "Unpaid";
  color: red;
}
.billing_warning_icon {
  color: #ff4700;
  margin: 0 0 0 8px;
}
.bill_warning_message {
  padding: 20px;
  background: #ff4700;
  color: white;
}
.left-nav .fas, .left-nav .far {
  font-size: 20px;
  width: 30px;
  text-align: center;
  margin-right: 8px;
}
.left-nav .fa-dollar-sign {
  color: #c4cfd6;
  margin-left: 0;
}
.nav-sprite {
  background-image: url('../img/left-nav-sprite.png');
  width: 30px;
  height: 30px;
  background-size: 30px;
  display: inline-block;
  vertical-align: top;
  margin-right: 10px;
}
.calendar-icon {
  background-position-y: -30px;
}
.job-icon {
  background-position-y: 0px;
}
.contacts-icon {
  background-position-y: -60px;
}
.accounts-icon {
  background-position-y: -90px;
}
.absolute-center {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.hamburger-menu {
  width: 30px;
  height: 24px;
  position: relative;
  margin: 20px;
  margin-left: 10px;
}
.close-left-nav {
  width: 100%;
  height: 40px;
  position: relative;
  margin: 12px 10px 0 auto;
  display: none;
}
.hamburger-menu span {
  width: 100%;
  height: 4px;
  background: white;
  position: absolute;
  left: 0;
  right: 0;
}
.close-left-nav span {
  width: 30px;
  height: 6px;
  background: white;
  position: absolute;
  left: 20px;
}
.hamburger-menu:hover, .close-left-nav:hover {
  cursor: pointer;
}
.close-left-nav #line-1 {
  transform: rotate(45deg);
  top: 50%;
}
.close-left-nav #line-3 {
  transform: rotate(-45deg);
  top: 50%;
}
#line-1 {
  top: 0;
}
#line-2 {
  top: 50%
}
#line-3 {
  top: 100%;
}
.mobile-page-title {
  text-align: center;
  font-size: 1.5rem;
  line-height: 30px;
  margin: 0 auto;
}
.top-nav, .main-header {
  padding: 15px;
}
.top-bar {
  display: none;
  padding:  0 10px;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 70px;
  /* background-color: #3064b2; */
  background-color: #1c3b4f;
  color: #f3f7f9;
  line-height: 30px;
  z-index: 110;
}
.top-logo {
  margin: 20px 0 16px;
  text-align: center;
}
.top-logo img {
  max-height: 46px;
  max-width: 85%;
  display: block;
  margin: 0 auto;
}
.top-bar a {
  position: relative;
  display: inline-block;
  padding: 20px 10px;
  margin: 0 10px;
  color: white;
}
.top-bar a:hover {
  background: #274c84;
}
#top_logo,
#top_logo:hover
    {
    background:none;
    display:inline-block;
    margin:0;
    padding:0;
    text-align: center;
    }
.global-add-container .btn-group {
  display: block;
  text-align: center;
}
.global-add-container {
  text-align: center;
  margin-bottom: 20px;
}
.global-add-container .global-add-btn {
  width: 105px;
  /* max-width: calc(100% - 40px); */
  text-align: center;
  color: white;
  border-radius: 50px;
  font-size: 16px;
  padding: 2px 3px 3px;
  position: relative;
  margin: 0 2%;
  display: inline-block;
}
.global-btn-container {
  display: inline-block;
}
.global-add-btn:after {
  display: none;
}
.left-nav .global-add-btn i {
  font-size: 1rem;
  width: 10px;
  margin-right: 15px;
}
.global-add-btn:hover, .global-add-btn:active {
  color: white;
  background: #005d3b;
}
.mobile-footer-bar {
  padding: 0 15px;
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 60px;
  z-index: 100;
  background: #1c3b50;
  color: white;
  border-top: solid 1px white;
}
.mobile-footer-bar .row {
  height: 100%;
}
.mobile-bar-link {
  color: white;
  display: block;
  height: 100%;
  text-align: center;
  font-size: 13px;
}
.mobile-bar-link i {
  font-size: 15px;
  margin-right: 0;
}
.search-flyout {
  display: none;
  z-index: 3;
  position: absolute;
  padding: 0 10px;
  top: 50px;
  left: 0;
  width: 100%;
  height: 100%;
  border-bottom: solid 2px white;
  overflow: hidden;
  background: #12232f;
}
#close-fly-out {
  display: none;
}
.search-flyout input {
  width: 100%;
  border-radius: 5px;
  background: white;
  margin: 0;
  height: 34px;
}
.search-flyout .btn {
  padding: 4px 10px;
  font-size: 1rem;
  border-radius: 50px;
}
.search-flyout .col-auto {
  padding-left: 0;
}
.active-flyout .search-flyout {
  display: block;
}
.active-flyout #close-fly-out {
  display: inline-block;
}
.active-flyout .mobile-search-btn .fa-search {
  display: none;
}
.left-nav {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 250px;
  background-color: #1c3b4f;
  overflow-y: auto;
  z-index: 3;
}
.nav-category {
  color: #f3f7f9;
  position: relative;
  border-bottom: solid 2px #142733;
}
#first-nav-category {
  border-top: solid 2px #142733;
}
.nav-category:hover {
  background: #122d3e;
}
.nav-category:hover .nav-dropdown-arrow:before {
  border-left-color: #122d3e;
}
.nav-category-title, .left-nav .nav-backoffice a, .left-nav a.nav-category-title {
  padding: 12px 40px 12px 12px;
  font-size: 1.1rem;
  line-height: 1rem;
}
.nav-category-title, .nav-category-title:hover {
  color: #c4cfd6;
}
.nav-category:hover {
  cursor: pointer;
}
.nav-dropdown-arrow {
  position: absolute;
  top: 22px;
  right: 15px;
  width: 15px;
  height: 15px;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 7px solid #697f8e;
}
.nav-dropdown-arrow:before {
  /* content: ""; */
  position: absolute;
  top: -8px;
  right: 3px;
  width: 15px;
  height: 15px;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 7px solid #1c3b4f;
}
.nav-backoffice {
  border-bottom: 0;
  background: #3064b2;
  text-align: center;
}
.left-nav .nav-backoffice a {
  color: white;
}
.left-nav .nav-backoffice a:hover {
  background: #274c84;
}
.left-nav #backtoapp a {
  background: #112735;
}
.left-nav #backtoapp a:hover {
  background: #0f202b;
}
.submit-btn {
  border-radius: 50px;
  color: white;
  border: none;
  padding: 6px 20px;
  display: inline-block;
  background: #0172ff;
}
.submit-btn:hover {
  color: white;
  cursor: pointer;
  background: #0a4da0;
}
form .submit_waiting_btn {
  background: #9c9c9c!important;
}
.cancel-form-link {
  margin-right: 20px;
  /* color: #d63535; */
  color: #858b90;
  border: none;
}
.cancel-form-link:hover {
  color: #b32a2a;
}
.category-links {
  margin-top: 5px;
  display: none;
}
.open-nav-category:hover {
  background: #1c3b4f;
}
.open-nav-category:hover .nav-dropdown-arrow:before {
  border-left-color: transparent;
}
.open-nav-category .category-links {
  display: block;
  padding-bottom: 10px;
  margin-top: -10px;
}
.open-nav-category .nav-dropdown-arrow {
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 7px solid #697f8e;
  top: 26px;
  right: 19px;
}
.open-nav-category .nav-dropdown-arrow:before {
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 8px solid #1c3b4f;
  right: -8px;
  top: -11px;
}
.left-nav a {
  display: block;
  padding: 5px 20px 5px 30px;
}
.left-nav .category-links a {
  color: #acbbc5;
}
.left-nav a:hover {
  background-color: #122d3e;
  text-decoration: none;
}
.left-nav hr {
  border-bottom: solid 1px #142733;
}
.table-row .nested-inner-link {
  padding: 10px;
  margin: -10px;
}
.table-row .nested-inner-link:hover {
  cursor: pointer;
  text-decoration: underline;
}
.table-row .nested-inner-link.overflow_dots {
  margin: 0;
  padding: 0;
  display: block;
  max-width: 100%;
  text-align: left;
}
.div-link:hover {
  cursor: pointer;
}
.table {
  background-color: #f3f7f9;
}
.table tbody tr:nth-child(odd) {
    background: #edf0f1;
}
.main {
  position: absolute;
  width: calc(100% - 250px);
  height: 100%;
  overflow-y: auto;
  top: 0;
  left: 250px;
}
.main-header {
  width: 100%;
  background-color: #f3f7f9;
}
.main-header .FontSmall {
  margin-top: 8px;
  font-size: .9rem;
  color: #687884;
}
.main-header .FontSmall a {
  color: #386dbd;
}
.main-header .FontSmall a:hover {
  text-decoration: underline;
}
.main-content {
  margin: 15px 15px;
  /* background: #f3f7f9; */
}
.main-tabs {
  background-color: #f3f7f9;
  padding: 6px 25px 0;
}
.main-tabs a {
  padding: 6px 0 8px;
  width: 110px;
  text-align: center;
  font-size: 14px;
  line-height: 16px;
  color: #303335;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: inline-block;
  border-bottom: solid 2px #f3f7f9;
  border-top: solid 4px transparent;
  margin-right: 16px;
  background: rgba(0,0,0,.15);
}
.page_appointments .main-tabs a,
.page_scheduler_people .main-tabs a,
.page_scheduler_job .main-tabs a {
  width: 138px;
}
.main-tabs a:hover {
  text-decoration: none;
  border-top-color: #3064b2;
}
.main-tabs a.active-tab {
  border-top: solid 4px #374146;
}
.action-icon {
  display: inline-block;
  max-height: 30px;
  margin-top: 0;
  vertical-align: text-bottom;
}
.top-bar .mobile-search-btn {
  display: none;
  text-align: right;
  margin: 0;
  font-size: 28px;
  padding: 10px 5px 10px 0;
  background: transparent;
}
.top-bar .mobile-search-btn:hover {
  background: transparent;
}
.action-links {
  text-align: right;
}
.action-links .dropdown-menu {
  min-width: 120px;
}
.action-link {
  padding: 6px 12px;
  min-width: 140px;
  display: inline-block;
  border: none;
  text-align: center;
  color: white;
  font-size: 1rem;
  margin-left: 10px;
  border-radius: 50px;
}
.action-link:hover {
  color: white;
  cursor: pointer;
  text-decoration: none;
}
.action-link, .orange-btn {
  background: #da5827;
  color: white;
}
.action-link:hover, .orange-btn:hover, .global-add-container .orange-btn:hover {
  background: #b5461c;
  color: white;
}
.red-btn {
  background: #d63535; /*red*/
}
.red-btn:hover {
  background: #b32a2a;
}
.green-btn {
  /* background: #189c42; */
  background: #288e69;
  color: white;
}
.green-btn:hover, .global-add-container .green-btn:hover {
  /* background: #137d35; */
  background: #207355;
  color: white;
}
.blue-btn {
  background: #0066d4;
  color: white;
}
.blue-btn:hover, .global-add-container .blue-btn:hover {
  background: #0254ad;
  color: white;
}
.global-add-container .global-add-btn {
  background: #13242f;
  color: #24a978;
}
.global-add-container .global-search-btn {
  background: #13242f;
  color: #da5827;
}
.global-add-container .global-add-btn:hover,
.global-add-container .global-add-btn:active {
  color: #47daa4;
  background: #0b141b;
}
.switch-contact-type {
  margin-top: 4px;
  display: block;
  width: 100%;
  text-align: right;
}
.content-title {
  width: calc(100% + 40px);
  margin: -20px -20px 0;
  font-size: 1.2rem;
  color: white;
  padding: 20px;
  background: #374146;
}
.page_global_form .content-section {
  position: relative;
  margin-top: 50px;
}
.page_global_form .new-account-tabs {
  display: flex;
}
.global_search_form {
  position: relative;
  width: calc(100% - 30px);
  margin: 20px auto 10px auto;
}
.global_search_form input {
  margin-top: 0;
  padding: 4px 36px 4px 8px;
  border-radius: 4px;
  background: #e4e9ec;
}
.global_search_form input:hover {
  background: #f3f7f9;
}
.page_global_search .title-content i {
  margin-right: 10px;
}
.left-nav .global_search_form i {
  color: #13242f;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 4px;
  padding: 5px;
  margin: 0;
  width: 30px;
}
.global_search_form i:hover {
  cursor: pointer;
  color: #768692;
}
.account-person-type-row label {
  margin-top: 0;
}
.center_form_container .radio-label input {
  display: inline-block;
  width: auto;
  margin-top: 0;
  vertical-align: middle;
}
.center_form_container .radio-label {
  margin-right: 15px;
  margin-top: 10px;
}
.global-form-job-section {
  display: none;
}
.global-form-remove-job {
  border: none;
  font-size: 20px;
  color: gray;
  margin: 0 auto 10px;
  display: block;
  background: transparent;
  box-shadow: none;
}
.global-form-remove-job:hover {
  color: red;
}
.page_contact .content-title {
  margin-bottom: 0;
}
.page_contact .content-section {
  height: calc(100% - 20px);
}
.content-section, .summary-bubble {
  background-color: #f3f7f9;
  padding: 20px;
  margin-bottom: 20px;
}
.title-image {
  vertical-align: top;
  display: inline-block;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  margin-right: 20px;
}
.title-content {
  display: inline-block;
}
.title-content i {
  font-size: 16px;
  vertical-align: middle;
  line-height: 27px;
  padding: 0;
  border-radius: 50%;
  width: 28px;
  text-align: center;
  height: 28px;
  margin-top: -6px;
  margin-left: 3px;
  margin-right: 3px;
  border: solid 1px;
}
.title-content .fa-user, .title-content .fa-building {
  background: #0f5b9c;
  border-color: #0c4575;
  color: white;
}
.title-content .fa-address-card {
  background: #7732c1;
  border-color: #521e8a;
  color: white;
}
.title-content .fa-briefcase {
  background: #0a790e;
  border-color: #055f08;
  color: white;
}
.title-content h2 {
  margin-bottom: 0;
}
.title-content p {
  color: #838a8d;
}
.title-content .contact-status {
  font-size: .9rem;
  vertical-align: 5px;
  background: #33a217;
  padding: 3px 5px;
  color: white;
}
.dashboard-day {
  line-height: 100%;
  background: white;
  border: solid 1px gray;
}
.day-title {
  width: 100%;
  font-weight: bold;
  font-size: 1rem;
  margin: 20px auto 10px;
}
.row .day-column:first-child .day-title {
  margin-top: 0;
}
.dashboard-day p {
  font-size: 1rem;
}
.dashboard-day label {
  font-size: .9rem;
  color: gray;
  margin-top: 3px;;
}
.day-event {
  /* border-top: solid 1px gray; */
  padding: 7px;
  /* box-shadow: 0px 0px 3px 0px #d0d0d0; */
  /* box-shadow: 0px 0px 3px 0px #989898; */
  /* background: white; */
  /* border-left: solid 4px; */
  border-bottom: solid 1px #cccccc;
  border-color: #cccccc !important;
}
.dashboard-day .day-event:last-child {
  border-bottom: none;
}
.above-title {
  font-size: 1.3rem;
  padding: 15px;
  margin-bottom: 0;
  background: #1c3b4f;
  color: #f3f7f9;
}
.meeting-event {
  border-color: #b0f1b0;
}
.job-event {
  border-color: #a3bfe2;
}
.task-event {
  border-color: #f9cf82;
}
.alert-event {
  border-color: #e49595;
}
.notification-circle {
  height: 16px;
  width: 16px;
  margin-right: -10px;
  background: blue;
  border-radius: 50%;
}
.dashboard-notification {
  padding: 20px 10px;
  border-top: solid 1px #cccccc;
  /* box-shadow: 0px 0px 3px 0px #989898; */
  /* border: solid 1px gray; */
}
.dashboard-notification i {
  font-size: 24px;
  width: 24px;
}
.notifications-container .dashboard-notification:first-child {
  border-top: none;
  padding-top: 10px;
}
.dashboard-day .day-event:first-child {
  margin-top: 0px;
}
.dashboard-notification p {
  position: relative;
  padding-right: 80px;
  font-size: .8rem;
  color: #353535;
}
.dashboard-notification b {
  display: block;
  font-size: 1rem;
  margin-bottom: 3px;
}
.dashboard-notification span {
  color: gray;
  position: absolute;
  top: 2px;
  right: 0;
  font-size: .9rem;
  width: 80px;
  text-align: right;
}
.dashboard-table {
  padding: 0;
}
.dashboard-table .content-title {
  width: 100%;
  margin: 0;
}
.milestone_checkbox_column {
}
.milestone_checkbox_column .countdown_stacked {
  color: #393939;
  font-size: 20px;
  line-height: 26px;
}
.milestone_job_title {
  font-weight: bold;
  font-size: 1.1rem;
  color: #323232;
}
.page_home .milestone_job_title {
  margin-bottom: 4px;
}
.list_task_container a {
  vertical-align: top;
  line-height: 115%;
  color: #101010;
}
.list_task_container a:hover {
  text-decoration: underline;
}
.job_milestone_tasks .list_task_container:last-child {
  border-bottom: none;
  margin-bottom: 0;
}
.home_jobs_address {
  color: #3f4c56;
}
.list_task_container {
  border-radius: 3px;
  margin-bottom: 8px;
  padding-bottom: 8px;
  padding: 5px 15px;
  background: #e2e2e2;
}
.list_task_container:hover, .list_task_container:focus {
  background: #d6d6d6;
  cursor: pointer;
}
.milestone_list_link {
  color: #101010;
  display: block;
  margin-top: 15px;
  padding: 0;
}
.milestone_list_link:first-of-type {
  margin-top: 0;
}
.task_comment {
  font-size: .8rem;
  color: gray;
  display: block;
  margin-top: 0px;
}
.task_title {
  color: #363636;
}
.fake_checkbox {
  display: inline-block;
  height: 15px;
  width: 15px;
  padding: 3px 6px;
  font-size: .9rem;
  border-radius: 13px;
  border: solid 1px #909090;
  background: #cacaca;
  color: #4c4c4c;
  position: relative;
}
.page_home .content-section {
  margin-bottom: 25px;
  margin-top: 0px;
  /* height: calc(100% - 80px); */
}
.page_home .content-title {
  background: #13242f;
}
.page_home .dashboard-table {
  background: transparent;
}
.company_owner span {
  font-size: 14px;
  color: gray;
}
.contact-company {
  font-weight: bold;
}
.choice-box {
  background: #f5f5f5;
  padding: 20px;
  border: solid 2px lightgray;
  border-radius: 10px;
  display: block;
  margin: 0 auto;
  text-align: center;
}
.choice-box:hover {
  background: #e6e6e6;
  cursor: pointer;
}
.choice-box h3 {
  margin: 15px 0 0;
  font-size: 22px;
  text-align: center;
}
.choice-box i {
  margin: 0;
  font-size: 4rem;
  line-height: 4rem;
}
.page_admin .delete-circle-icon {
  margin: 0 auto;
}
.form-edit-btn.active-edit-btn {
  display: inline-block!important;
}
.section_link_btn {
  display: inline-block;
  padding: 4px 12px;
  background: #cfd2d4;
  font-size: 14px;
  text-align: center;
  color: #565a5d;
  border-radius: 4px;
  cursor: pointer;
}
.account-type-row, .job-type-row {
  margin-top: 10px;
}
.disabled-delete-message {
  display: none;
}
.show-inputs .disable-delete-row .disabled-delete-message, .under_input_note {
  display: block;
  font-size: 13px;
  color: gray;
}
.show-inputs .disable-delete-row .delete-circle-icon {
  display: none;
}
.show-inputs .disable-delete-row {
  background: #dfdfdf;
  padding: 4px 0;
}
.roles-form.show-inputs .disable-delete-row {
  margin-top: 10px;
}
.roles-form.show-inputs .disable-delete-row .row {
  margin-top: 5px;
}
.roles-form.show-inputs .disabled-delete-message {
  padding: 5px 0;
}
.show-inputs .disable-delete-row input {
  margin-top: 0;
}
#new-choice, #new-account-choice {
  color: #008051;
}
#existing-choice, #existing-account-choice {
  color: #1471bb;
}
#existing-choice i.fa-arrow-right, #existing-account-choice i.fa-arrow-right {
  font-size: 2rem;
  margin-top: -1.7rem;
  margin: 0 10px;
  line-height: 4rem;
  vertical-align: top;
}
.add-appointment-people {
  width: 100%;
  margin-top: 10px;
  padding: 5px;
  border: solid 1px gray;
  color: gray;
  border-radius: 3px;
}
.appointment-people-row select {
  margin-top: 5px;
  width: calc(100% - 50px);
  margin-left: 10px;
  height: 36px;
}
.appointment-people-row button {
  font-size: 20px;
  width: 30px;
  color: #de3838;
  padding: 5px;
  border: none;
}
.appointment-users-template {
  display: none;
}
#note-form-container {
  position: absolute;
  display: none;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.7);
}
#note-form {
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 500px;
  max-width: 100%;
  z-index: 99;
  background: white;
  padding: 20px;
}
.note .user-circle-icon {
  margin-right: 10px;
  display: inline-block;
}
.note-message {
  padding: 5px 0px 20px;
}
.note-author {
  font-size: 1rem;
}
.note-date {
  line-height: 40px;
  text-align: right;
  color: gray;
}
.summary-row {
  margin-bottom: 20px;
}
.summary-bubble {
  font-size: 1rem;
  text-align: center;
}
.summary-bubble .col-4 {
  padding: 0 10px;
}
.summary-statistic {
  font-size: 1rem;
  text-transform: uppercase;
}
.summary-bubble h2 {
  font-size: 2rem;
  margin-bottom: 0;
}
.summary-title {
  font-weight: bold;
  color: #616567;
  margin-bottom: 5px;
}
.summary-team-member {
  width: 60px;
  height: 50px;
  padding: 10px 10px 0;
  display: inline-block;
}
.user-circle-icon {
  height: 40px;
  width: 40px;
  background-color: #306bb2;
  margin: 0 auto;
  border-radius: 50%;
  line-height: 38px;
  font-size: 1.2rem;
  color: white;
  text-align: center;
}
.mobile-dropdown-label {
  display: none;
  font-size: .8rem;
  color: #4e4e4e;
  font-weight: bold;
  padding-left: 15px;
  padding-bottom: 5px;
}
.header_banner_msg {
  padding: 6px 16px;
  text-align: center;
}
.alert_bg {
  background: #e66868;
  color: white;
  font-size: 14px;
}
.main-tabs .nav-dropdown-arrow {
  display: none;
}
.add-account-type, .add-job-type {
  margin-top: 10px;
}
.roles-form hr {
  margin: 10px 0 0;
}
.roles-row .row {
  margin-top: 10px;
}
.roles-row .row label {
  margin-top: 0;
}
.roles-row input[type="text"] {
  width: 100%;
}
.gray_text {
  color: #757b7d;
}
.add-account-type:hover, .add-role:hover, .add-job-type:hover {
  cursor: pointer;
}
.blank-role, .add-role, .roles-form .form-bottom-btns, .roles-form .col-2, .job-number-form .form-bottom-btns, .name-template-form .form-bottom-btns, .invoice-number-form .form-bottom-btns {
  display: none;
}
.show-inputs .add-role, .show-inputs .roles-form .col-2 {
  display: flex;
}
.blank-expense-type, .add-expense-type, .expense-type-form .form-bottom-btns, .expense-type-form .col-2,
.blank-account-type, .add-account-type, .account-type-form .form-bottom-btns, .account-type-form .col-2,
.blank-job-type, .add-job-type, .job-type-form .form-bottom-btns, .job-type-form .col-2 {
  display: none;
}
.show-inputs .add-expense-type, .show-inputs .expense-type-form .col-2,
.show-inputs .add-account-type, .show-inputs .account-type-form .col-2,
.show-inputs .add-job-type, .show-inputs .job-type-form .col-2 {
  display: flex;
}
.show-inputs .form-bottom-btns {
  display: block;
}
.blank-status-row {
  display: none;
}
.status-add-btn {
  display: none;
  font-size: 1rem;
  font-weight: normal;
  vertical-align: baseline;
  border-radius: 5px;
  padding: 4px 7px;
  background: #008000;
  line-height: 16px;
  font-size: 14px;
  color: white;
  margin-left: 10px;
}
.show-inputs .status-add-btn, .page_admin .show-inputs .status-header-row input {
  display: inline-block;
}
.status-form {
  padding: 10px 0 0;
}
.status-header-row {
  padding: 15px;
  border: solid 1px #d4dce2;
}
.status-setting-row {
  margin: 5px auto 15px;
}
.status-setting-row .status-color {
  width: 100px;
  max-width: 80%;
  height: 20px;
}
.status-type-title {
  font-size: 20px;
}
.status-type-note {
  display: none;
  color: #768692;
  font-size: 14px;
}
.show-inputs .status-type-note {
  display: block;
  margin: 8px 0 -2px;
}
.top-page-note {
  text-align: center;
  font-size: 14px;
}
#name_template_options {
  padding: 15px;
  position: relative;
  border: solid 2px #374146;
  margin-bottom: 20px;
  border-radius: 5px;
  display: none;
}
.template_options_line {
  width: 100%;
  display: block;
  height: 1px;
  background: #c1c1c1;
  margin: 3px 0;
}
#name_template_options:before {
  content: "Options";
  background: #f3f7f9;
  padding: 0 6px;
  position: absolute;
  top: -15px;
  line-height: 30px;
  font-size: 20px;
  left: 50%;
  transform: translateX(-50%);
}
#name_template_options .shortcode_item {
  margin: 3px 6px 3px 0;
  cursor: pointer;
}
.shortcode_item {
  display: inline-block;
  padding: 3px 6px;
  font-size: 12px;
  border-radius: 6px;
  color: white;
}
.shortcode_option {
  border: solid 2px gray;
  display: inline-block;
  padding: 3px 6px;
  font-size: 12px;
  border-radius: 6px;
  cursor: pointer;
}
.shortcode_item .remove_shortcode_button {
  display: none;
  margin: 0 0 0 6px;
  color: #ff0101;
  background: white;
  border-radius: 50%;
  cursor: pointer;
}
#example_sentence_container {
  display: none;
  color: gray;
}
#example_template_sentence {
  display: inline-block;
  margin-left: 6px;
}
.show-inputs #name_template_options, .show-inputs #example_sentence_container  {
  display: block;
}
.show-inputs .shortcode_item .remove_shortcode_button {
  display: inline-block;
}
.shortcode_blue {
  background: #007bff;
}
.shortcode_gray {
  background: #6c757d;
}
.shortcode_green {
  background: #28a745;
}
.shortcode_red {
  background: #dc3545;
}
.shortcode_yellow {
  background: #ffc107;
  color: black;
}
.shortcode_white {
  background: #f8f9fa;
  color: black;
}
.shortcode_black {
  background: #343a40;
}
#contact-table-form .col-md-9 label {
  display: none;
}
#contact-table-form.show-inputs .col-md-9 label {
  display: block;
}
.table-inline-label {
  display: block;
  color: gray;
  font-size: 14px;
}
.show-inputs .table-inline-label {
  display: none;
}
.hide-edit-flex {
  display: flex;
}
.show-inputs .hide-edit-flex {
  display: none;
}
.hide-edit-block {
  display: block;
}
.show-inputs .hide-edit-block {
  display: none;
}
.show-edit-block {
  display: none;
}
.show-inputs .show-edit-block {
  display: block;
}
.show-edit-flex {
  display: none;
}
.show-inputs .show-edit-flex {
  display: flex;
}
.new-contact-phone, .new-contact-email, .new-contact-address {
  margin-top: 10px;
  display: none;
}
.address-link-inputs {
  display: none;
}
.show-inputs .address-link-inputs {
  display: flex;
}
.show-inputs .address-link {
  display: none;
}
.show-inputs .new-contact-phone, .show-inputs .new-contact-email, .show-inputs .new-contact-address {
  display: block;
}
.blank-contact-phone, .blank-contact-email, .blank-contact-address {
  display: none;
}
.col-md-9 .contact-phone, .col-md-9 .contact-email, .col-md-9 .contact-address {
  margin-top: 8px;
  padding-top: 8px;
  border-top: solid 1px #c6cbd0;
}
.col-md-9 .contact-phone:first-child, .col-md-9 .contact-email:first-child, .col-md-9 .contact-address:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}
.new-contact-phone h5 {
  background-color: #babec1;
  position: relative;
  padding: 20px;
  text-align: center;
  margin-bottom: 0;
}
.new-contact-phone-icon,
.new-contact-email-icon,
.new-contact-address-icon,
.add-circle-icon {
  width: 24px;
  height: 24px;
  margin: 10px auto;
  border-radius: 50%;
  background: #33a217;
  position: relative;
}
.new-contact-phone-icon:before,
.new-contact-email-icon:before,
.new-contact-address-icon:before,
.add-circle-icon:before {
  content: "";
  height: 3px;
  width: 50%;
  background: white;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.new-contact-phone-icon:after,
.new-contact-email-icon:after,
.new-contact-address-icon:after,
.add-circle-icon:after {
  content: "";
  height: 3px;
  width: 50%;
  background: white;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) rotate(90deg);
}
.new-contact-email:hover, .contact-email-delete, .new-contact-email-delete,
.new-contact-address:hover, .contact-address-delete, .new-contact-address-delete,
.new-contact-phone:hover, .contact-phone-delete, .new-contact-phone-delete,
.add-circle-icon:hover {
  cursor: pointer;
  text-decoration: underline;
}
.contact-phone-delete, .new-contact-phone-delete,
.contact-email-delete, .new-contact-email-delete,
.contact-address-delete, .new-contact-address-delete {
  width: 24px;
  height: 24px;
  margin: 20px auto 0;
  border-radius: 50%;
  background: #e22121;
  position: relative;
}
.contact-phone-delete:before, .new-contact-phone-delete:before,
.contact-email-delete:before, .new-contact-email-delete:before,
.contact-address-delete:before, .new-contact-address-delete:before {
  content: "";
  height: 3px;
  width: 50%;
  background: white;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.delete-circle-icon:hover {
  cursor: pointer;
  text-decoration: underline;
}
.delete-circle-icon {
  display: none;
  width: 24px;
  height: 24px;
  margin: 20px auto 0;
  border:none;
  border-radius: 50%;
  background: #e22121;
  position: relative;
}
.delete_quickbooks_queued.delete-circle-icon {
  display: block;
  margin: 0 auto;
}
.non_link_table .table-row {
  background: #f5f5f5;
  border: 1px solid #dee2e6;
}
.show-inputs .delete-circle-icon {
  display: block;
}
.delete-circle-icon:before {
  content: "";
  height: 3px;
  width: 50%;
  background: white;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.add-contact-btn {
  margin: 0 auto;
  width: 38px;
  height: 38px;
  border: solid 6px #d4dce2;
}
.contacts-form {
  padding: 10px 0 0;
}
.contacts-form p {
  min-height: 24px;
}
.contacts-form input, .contacts-form label {
  width: 100%;
  max-width: 100%;
  display: block;
}
.contacts-form .col-2 {
  display: none;
}
.page_backoffice_job .contact-phone .col-2, .page_backoffice_job .contact-email .col-2 {
  display: none;
}
.page_backoffice_job .show-inputs .contact-phone .col-2, .page_backoffice_job .show-inputs .contact-email .col-2 {
  display: flex;
}
.address-input-boxes {
  display: none;
}
.show-inputs .address-input-boxes {
  display: flex;
}
.show-inputs .address-link-row {
  display: none;
}
.show-inputs .col-2 {
  display: block;
}
.show-inputs .address-label-column {
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%;
}
.form-edit-btn, .form-add-btn {
  font-size: 1rem;
  line-height: 20px;
  font-weight: normal;
  /*vertical-align: text-bottom;*/                                              /* edited by GC (for documents) */
  vertical-align: middle;                                                       /* edited by GC (for documents) */
  border-radius: 50px;
  display: inline-block;
  padding: 2px 10px;
  border: none;
  background: #e26821;
  color: white;
  margin-left: 15px;
}
.form-edit-btn:hover, .form-add-btn {
  color: white;
  cursor: pointer;
  background: #c1591c;
}
.form-add-btn {
  background: #288e69;
}
.form-add-btn:hover {
  background: #207355;
}
.form-bottom-btns {
  text-align: right;
  margin-top: 20px;
}
.inline-edit-form input, .inline-edit-form button, .inline-edit-form textarea, .inline-edit-form .cancel-form-link{
  display: none;
}
.inline-edit-form .status-dropdown button, form .status-dropdown button,
.inline-edit-form .form-tab-btn, form .form-tab-btn
{
  display: inline-block;
}
.show-inputs input, .show-inputs textarea {
  display: block;
}
.show-inputs .cancel-form-link, .show-inputs button {
  display: inline-block;
}
.hidden-input-inline-block, .hidden-input-block {
  display: none;
}
.show-inputs .hidden-input-block {
  display: block;
}
.show-inputs .hidden-input-inline-block {
  display: inline-block;
}
.show-inputs .value_display {
  display: none;
}
.show-inputs .contact-phone-delete {
  display: block;
}
.center_form_container {
  width: 100%;
  margin: 0 auto;
  max-width: 600px;
}
.center_form_container .content-title {
  margin-bottom: 20px;
}
.center_form_container input {
  display: block;
  width: 100%;
}
.new-account-tabs, .form-tabs-container {
  display: none;
  position: absolute;
  top: -34px;
  width: 100%;
  left: 0;
}
.form-tabs-container {
  display: flex;
}
.form-tab {
  width: 150px;
}
.form-tabs-section {
  position: relative;
  margin-top: 50px;
}
.first-form-tab:hover, .second-form-tab:hover, .form-tab:hover {
  cursor: pointer;
}
.first-form-tab, .second-form-tab, .form-tab {
  padding: 4px 16px;
  font-size: 1rem;
  background: white;
  text-align: center;
  color: #555555;
  border: solid 2px #374146;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.active-form-tab, .active-form-tab, .employee_people_form #form_employee_tab, .non_employee_people_form #form_non_employee_tab, .crew_people_form #form_crew_tab {
  /* background: #3064b2;
  color: white; */
  background: #ecb98e;
  color: #1b1b1b;
}
.non_employee_search_container, .employee_search_container, .crew_search_container {
  display: none;
}
.modal-body .employee_search_container, .modal-body .crew_search_container {
  display: block;
}
.employee_people_form .employee_search_container {
  display: block;
}
.non_employee_people_form .non_employee_search_container {
  display: block;
}
.crew_people_form .crew_search_container {
  display: block;
}
.not-required-label sup {
  display: none;
}
.account-person-form .business-name-column {
  display: none;
}
.account-company-form .first-name-column,
.account-company-form .last-name-column,
.account-company-form .work-title-column {
  display: none;
}
.choice-header-text {
  display: block;
  text-align: center;
  margin: 10px auto 30px;
}
#new-form-container, #existing-form-container {
  display: none;
}
.new-account-container .new-account-tabs {
  display: flex;
}
.new-account-container .content-section {
  margin-top: 40px;
  position: relative;
}
.job_suggest_address {
  color: gray;
  font-size: 12px;
  font-weight: normal;
}
.suggested_accounts {
  display: none;
  border: solid 1px gray;
  padding: 0 5px;
  border-top: 0;
  text-align: left;
  max-height: 240px;
  overflow-y: auto;
}
.account_suggestion {
  margin: 0 -5px;
  display: block;
  padding: 5px;
  color: #374146;
  font-weight: bold;
  border-top: solid 1px #cccccc;
  position: relative;
  color: black;
  font-size: 1rem;
}
.account_suggestion:hover {
  background: #dfe7ec;
  cursor: pointer;
  text-decoration: none;
  color: black;
}
.suggestion-label {
  font-weight: normal;
  font-size: .9rem;
  font-style: italic;
  margin-left: 10px;
  color: gray;
}
#new_account_part {
  display: none;
}
.new_account_form .suggested_accounts, .new_account_form #show_account_part {
  display: none!important;
}
.new_account_form #new_account_part {
  display: block!important;
}
.account-type-option, .job-type-option {
  border: solid 1px darkgray;
  margin: 10px auto 0;
  width: 100%;
}
.account-type-dropdown-column, .show-inputs .current-account-type-column,
.job-type-dropdown-column, .show-inputs .current-job-type-column {
  display: none;
}
.current-account-type-column, .show-inputs .account-type-dropdown-column,
.current-job-type-column, .show-inputs .job-type-dropdown-column {
  display: flex;
}
.account-options-row {
  text-align: center;
  /* display: none; */
}
.contact-link-form #selected-account-row, .contact-link-form #selected-contact-row .change-link {
  display: none;
}
.account-link-form #selected-contact-row, .account-link-form #selected-account-row .change-link {
  display: none;
}
.link-hr {
  display: none;
}
.account-link-form #account-hr, .contact-link-form #contact-hr {
  display: block;
}
.selected-account-type {
  background: #1c3b4f;
  color: white;
}
.selected-account-type:hover {
  color: white;
}
#job-account-row {
  display: none;
}
#new-job-people-form {
  display: none;
}
.btn_link {
  text-decoration: underline;
  color: #0089ff;
  text-align: left;
  display: inline-block;
  padding: 0;
  border: none;
  background: transparent;
  box-shadow: none;
}
.form_delete_btn {
	border-radius: 50px;
  color: white;
  border: none;
  padding: 6px 20px;
  display: inline-block;
  background: #d02e2e;
}
.job-people-form .form-bottom-btns {
  display: none;
}
.job-people-form .table-row select {
  margin-top: -5px;
}
.job-people-form .table-row input {
  margin-top: 0;
}
.job-people-form .col-2 {
  display: none;
}
.job-people-form .bol-main-column {
  display: flex;
}
.role-column {
  display: none;
}
.employee-people-table .role-column {
  display: flex;
}
.employee-people-table .label-column {
  display: none;
}
.employee-people-table .table-header {
  background: #2d4973;
}
.job-people-form .change-order-column {
  display: none;
}
.job-people-form .employee-people-table .change-order-column {
  display: flex;
}
.job-people-columns {
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%;
}
.show-inputs.job-people-form .col-2 {
  display: flex;
}
.show-inputs.job-people-form .change-order-column {
  display: none;
}
.show-inputs.job-people-form .employee-people-table .change-order-column {
  display: flex;
}
.show-inputs .job-people-columns {
  -ms-flex: 0 0 83.333333%;
  flex: 0 0 83.333333%;
  max-width: 83.333333%;
}
.delete-job-role, .delete-new-job-role {
  margin: 5px auto 0;
}
.show-inputs .form-bottom-btns {
  display: block;
}
form .row:first-child .col-12:first-child .table-title {
  margin-top: 0px;
}
.form-section-header h3 {
  color: #242424;
  text-align: center;
  font-size: 1.25rem;
  margin-bottom: 5px;
}
.blank_appointment_person {
  display: none;
}
.remove_appointment_person {
  display: block;
  margin: 5px auto;
}
.appointment_person_row {
  margin: 10px auto;
}
.appointment_job_name_container, .appointment_current_address_container,
.scan_job_name_container, .scan_current_address_container
{
  padding: 10px 70px 10px 10px;
  background: rgba(0,0,0,.1);
  min-height: 42px;
}
#expense_job_suggestions,
#appointment_job_suggestions, #appointment_people_suggestions,
#scan_job_suggestions, #scan_people_suggestions {
  display: none;
  max-height: 180px;
  overflow-y: scroll;
  border-bottom: solid 2px #d2d2d2;
}
.expense_job_suggestion,
.appointment_job_suggestion, .appointment_people_suggestion,
.scan_job_suggestion, .scan_people_suggestion {
  background: #ececec;
  display: block;
  font-weight: bold;
  color: black;
  position: relative;
  width: calc(100% - 6px);
  margin: 3px;
  text-align: left;
  padding: 5px;
}
.appointment_people_suggestion span, .appointment_person_name span {
  display: block;
  font-size: 12px;
  color: gray;
}
#change_expense_job
#change_appointment_job, #change_appointment_address,
#change_scan_job, #change_scan_address
{
  position: absolute;
  right: 20px;
  bottom: 7px;
  padding: 3px 8px;
  font-size: .9rem;
}
#event_list {
  margin-top: 20px;
  padding: 20px 6%;
}
.scroll_select_title {
  margin-bottom: 10px;
}
.scroll_select_list {
  /* max-height: 250px;
  overflow-y: auto; */
}
.scroll_select_list label {
  display: inline-block;
  width: calc(100% - 45px);
  cursor: pointer;
  margin: 4px 0 8px 7px;
  vertical-align: middle;
}
#scrolling_time {
  margin-bottom: 24px;
}
.scroll_select_list::-webkit-scrollbar {
  height: 6px;
  cursor: pointer;
}
.table-title {
  font-size: 22px;
  margin: 15px;
}
.table-section {
  padding-bottom: 0;
}
.table-section .table-row {
  margin: 0 -20px;
  padding: 15px 0;
}
.table-section label {
  margin-top: 0;
}
.table-section .show-inputs{
  padding-bottom: 20px;
}
.single-table-section {
  max-width: 540px;
}
.table-header {
  background-color: #13242f;
  color: #f3f7f9;
  font-weight: bold;
  font-size: 14px;
}
.table-header, .table-row {
  padding: 15px;
}
.table-header a {
  color: #f3f7f9;
  text-decoration: underline;
}
.table-legend {
  text-align: right;
}
.table-legend i {
  vertical-align: middle;
}
#publish_contract_btn {
  width: 150px;
  text-align: center;
}
#publish_contract_btn:before {
  content: "Publish";
}
#publish_contract_btn.published_contract:before {
  content: "Unpublish";
}
#publish_contract_btn.published_contract {
  background: transparent;
  color: #007bff;
}
.contract_checkmark {
  font-size: 20px;
  color: green;
}
.include_contract_container {
  margin: 10px 0;
}
.include_contract_btn {
  border: solid 1px gray;
  padding: 4px 10px;
  background: white;
}
.include_contract_btn.selected_btn {
  background: black;
  color: white;
}
.jobs_name .job_number_label {
  display: none;
}
.jobs_name .job_address_label {
  color: gray;
  font-size: 12px;
}
.mobile_table_label {
  display: none;
}
.table-body {
  margin-bottom: 20px;
}
.table-search-form {
  max-width: 100%;
  background: white;
  border-radius: 5px;
  border: solid 1px #959798;
}
.table-search-input, .table-search-submit {
  border: none;
  padding: 5px;
  background: transparent;
}
.table-search-input {
  margin-top: 0;
  width: calc(100% - 40px);
}
.table-search-submit {
  border-left: solid 1px #959798;
  /* color: #297bf3; */
  display: inline-block;
  width: 34px;
  text-align: center;
}
.table-search-submit:hover, .table-sort-current span:hover, .table-filter-button:hover, .table-pagination i:hover {
  background: #e4e4e4;
}
.table-pagination {
  margin-bottom: 15px;
}
.change-page-btn {
  display: inline-block;
  margin: 0;
  padding: 3px 6px;
  background: white;
  color: #017eff;
}
.change-page-btn.disabled-pagination-btn {
  color: gray;
}
.change-page-btn.current-pagination-btn {
  background: #017eff;
  color: white;
}
.change-page-btn.disabled-pagination-btn:hover {
  color: gray;
  background: white;
  cursor: pointer;
}
.table-sort-current {
  display: inline-block;
  color: black;
}
.table-sort-current:hover, .table-filter-button {
  cursor: pointer;
}
.table-sort-current span {
  margin-left: 5px;
}
.table-filter-form {
  text-align: right;
}
.table-sort-current span, .table-filter-button, .table-pagination i {
  display: inline-block;
  padding: 5px 10px;
  background: white;
  border-radius: 5px;
  border: solid 1px #959798;
}
.table-pagination i {
  background: #d4dce2;
  color: black;
  margin: 0 5px;
}
.table-pagination a i {
  background: white;
}
.table-pagination .fa-caret-right {
  margin-right: 0;
}
.table-pagination select {
  margin-top: 0;
  line-height: 10px;
  font-size: 15px;
  padding: 1px 3px;
  font-weight: bold;
  margin-right: 10px;
}
.content-section .table-body .table-row, .table-body .table-row-link .table-row, .table-container .table-body .table-row {
  border: 1px solid #dee2e6;
  background: #f3f7f9;;
}
.content-section .table-body .table-row:nth-child(odd), .table-body .table-row-link:nth-child(odd) .table-row, .table-container .table-body.tbale-row:nth-child(odd) {
  background: #edf0f1;
}
.table-row-link, .table-row-link:hover {
  color: #3f4c56;
  text-decoration: none;
}
.table-row-link:hover .table-row {
  background: #b6c5ca !important;
  /* background: #dbe2e4 !important; */
}
.table-actions {
  margin-bottom: 20px;
}
.account-contacts-form .col-2 {
  display: none;
}
.account-contacts-form .delete-circle-icon {
  margin: 0 auto;
}
.account-contacts-form.show-inputs .col-2 {
  display: flex;
}
.primary-account-contact {
  margin-top: 10px;
  padding-top: 10px;
  border-top: solid 1px lightgray;
}
.primary-account-contact i {
  margin-left: 5px;
}
.table-row .primary-account-contact:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}
.single-note h5 {
  text-align: right;
  color: gray;
  font-weight: normal;
  margin-top: 3px;
  font-size: 1.2rem;
}
.single-note h4 {
  font-size: 1.4rem;
}
.single-note button {
  margin-top: 10px;
}
.single-note .value_display {
  margin-top: 5px;
  padding-top: 10px;
  border-top: solid 1px #cccccc;
}
.current-lead-status {
  padding: 3px 10px;
  color: white;
  text-align: center;
}
.lead-info-form input {
  width: 100%;
}
.dropdown-menu {
  max-height: 50vh;
  overflow-x: hidden;
  overflow-y: auto;
}
.status-dropdown .dropdown-menu {
  padding: 0 10px 8px 20px;
  width: 280px;
  max-width: 100%;
  background: #ebebef;
}
.status-dropdown .dropdown-status-header {
  padding-top: 5px;
  margin-left: -10px;
}
.dropdown-status-header p {
  padding-top: 5px;
  border-top: solid 1px lightgray;
}
.status-dropdown .dropdown-status-header:first-child p {
  border-top: none;
}
.status-dropdown .dropdown-item {
  color: white;
  padding: 5px 20px;
  margin: 5px 0;
}
.status-dropdown .dropdown-item:hover {
  cursor: pointer;
}
.status-label {
  padding:6px;
  line-height: 20px;
  font-size: 15px;
  border-radius: 2px;
  display: inline-block;
  width: 100%;
  max-width: 200px;
  text-align: center;
  color: white;
  margin: -5px auto;
}
.change-link, .cancel-change-link {
  margin: 0 10px;
  line-height: 20px;
  display: inline-block;
  text-decoration: underline;
}
.change-link:hover, .cancel-change-link:hover {
  cursor: pointer;
}
.change-link {
  color: #007bff;
}
.cancel-change-link {
  color: #de3838;
}
.label-enabled {
  background: #28a745;
}
.label-disabled {
  background: #de3838;
}
.standard_user_label {
  background: #335ac7;
}
.field_user_label {
  background: #d27526;
}
.slider {
  text-align: center;
  height: 36px;
  width: 250px;
  max-width: 100%;
  background: #adadad;
  transition: all 1s;
  position: relative;
  border-radius: 50px;
  padding: 3px;
}
.slider:after {
  content: "";
  width: 36px;
  height: 36px;
  background: #e6e6e6;
  position: absolute;
  border: solid 3px #adadad;
  left: 0;
  top: 0;
  border-radius: 50%;
  transition: all 1s;
}
.slider:before {
  content: "";
  width: 100%;
  display: block;
  border-radius: 50px;
  background: #335ac7;
  line-height: 30px;
  color: white;
  transition: all 1s;
}
#user_type_slider:before {
  content: "Standard";
}
.type_price {
  width: 40px;
  text-align: left;
  position: relative;
  color: black;
}
.type_price:before {
  content: "40";
}
.field_type_user .type_price:before {
  content: "10";
}
.type_price_container {
  margin-top: 12px;
  color: gray;
  font-size: 14px;
}
.show_page_slider {
  max-width: 180px;
}
.show_page_slider:before {
  content: "Show";
  background: green;
}
.hide_page_slider:before {
  content: "Hide";
  background: red;
}
.hide_page_slider:after {
  left: calc(100% - 33px);
}
.change_order_label {
  display: inline-block;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  font-size: 12px;
  line-height: 20px;
  text-align: center;
  background: #1390bc;
  color: white;
}
.change_order_label i {
  margin: 0;
}
.superuser_overlay {
  position: relative;
}
.superuser_overlay:before {
  content: "";
  width: 100%;
  height: 100%;
  font-size: 26px;
  color: white;
  background: rgba(0,0,0, .8);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
}
.superuser_overlay:after {
  content: "Super User";
  font-size: 26px;
  color: white;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 4;
}
.parent_permission .parent_title {
  display: inline-block;
}
.new_count {
  display: none;
  font-size: 12px;
  background: #0083d8;
  padding: 0 5px;
  color: white;
  vertical-align: middle;
}
.new_permission {
  position: relative;
}
.new_permission:after {
  content: "New";
  position: absolute;
  right: 5px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 12px;
  line-height: 12px;
  background: #0083d8;
  color: white;
  padding: 5px;
  vertical-align: middle;
}
.field_type_user .superuser_row {
  display: none;
}
.field_type_user #user_type_slider:before {
  content: "Worker";
  background: #d27526;
}
.field_type_user #user_type_slider:after {
  left: calc(100% - 33px);
}
.field_type_user #user_type_standard_access {
  color: gray;
  text-decoration: line-through;
}
.field_type_user .standard_access {
  display: none;
}
.type_access {
  margin-top: 12px;
}
.type_access ul {
  margin-top: 8px;
  margin-bottom: 0;
}
.permissions_container input {
  width: 20px;
  height: 20px;
  margin-right: 10px;
  display: inline-block;
}
.permissions_container label {
  display: inline-block;
  margin-top: 0;
  color: black;
}
.permission-category {
  background: #d6d6d6;
  border: solid 1px gray;
}
.category-title {
  padding: 10px;
}
.sub-permission {
  padding: 10px;
  border-top: solid 1px gray;
  background: white;
}
.sub-permission input {
  float: right;
}
.permissions_container select {
  padding: 0;
  margin-top:-3px;
  font-size: .9rem;
}
.permissions_container .table-row {
  background: #f3f7f9 !important;
}
.permissions_container .table-title-row {
  background: #d6d6d6 !important;
}
.permissions_container .table-header, .permissions_container .table-row {
  padding: 10px;
}
.permission-form select, .show-inputs .current-user-permission {
  display: none;
}
.permission-form.show-inputs select {
  display: block;
}
.permission-form.show-inputs .notification_type_select, .permission-form .permissions_container .current_notification_type {
  display: inline-block;
}
.permission-form.show-inputs .current_notification_type {
  display: none;
}
.hide_select_input {
  display: none;
}
.show-inputs .hide_select_input {
  display: block;
}
.subpages-container {
  display: none;
}
.show-subpages {
  display: inline-block;
  float: right;
  padding: 2px 6px;
  border-radius: 3px;
  line-height: 1.2rem;
  background: #adadad;
  font-size: 1rem;
}
.show-subpages i {
  margin-right: 0;
}
.show-subpages:hover {
  cursor: pointer;
}
#user_type_message {
  display: none;
  padding: 4px 10px;
  color: white;
  background: #ce3333;
  margin: 5px auto;
  width: 100%;
}
.sub-group-line {
  display: inline-block;
  line-height: 50%;
  vertical-align: middle;
  height: 2px;
  width: 10px;
  margin-right: 10px;
  background: #a7a7a7;
}
.graph-container {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  height: 300px;
}
.disable-link, .enable-link {
  margin-left: 20px;
  text-decoration: underline;
  display: none;
}
.show-inputs .disable-link, .show-inputs .enable-link {
  display: inline-block;
}
.disable-link:hover, .enable-link:hover {
  cursor: pointer;
}
.disable-link {
  color: #de3838;
}
.enable-link {
  color: #28a745;
}
#todays-date-btn {
  color: white;
  font-size: .9rem;
  background: gray;
  padding: 2px 10px;
  margin: 7px 10px 7px 0;
}
.search-query-container {
  position: relative;
  margin-bottom: 30px;
}
.search-query-container button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 10px;
  width: 100px;
  text-align: center;
  padding: 3px;
}
.search-query-container input {
  padding: 10px 120px 10px 10px;
}
.search_result_container {
  border-radius: 3px;
  display: block;
  width: 300px;
  padding: 10px;
  background: white;
  color: #444444;
  margin: 10px 0;
}
.search_result_container:hover {
  background: #efefef;
  cursor: pointer;
}
.search_result_container a, .search_result_container .search_contact_subtext {
  color: gray;
  font-size: 14px;
}
.mobile_contacts_title {
  display: none;
}
.countdown_stacked {
  text-align: center;
  font-size: 1.3rem;
  line-height: 1.8rem;
  color: black;
}
.countdown_stacked .days_away {
  font-size: .8rem;
  line-height: 1rem;
  display: block;
  color: #676767;
}
.milestone_row .countdown_stacked {
  border-right: solid 1px gray;
}

/*
 *  milestones
 */
.modal-content .milestone_type_radio {
  display: inline-block;
  width: auto;
}
.milestone_type_container {
  text-align: center;
  border: solid 1px #b1b1b1;
  padding: 10px;
  border-radius: 4px;
  margin-top: 10px;
}
.milestone_type_container:hover {
  cursor: pointer;
}
.selected_milestone_type {
  background: #e6e6e6;
}
.milestone_type_container label {
  margin-top: 0;
  font-size: 16px;
}
.milestone_type_container p {
  /* text-align: left; */
  font-size: .9rem;
  padding: 6px 0 0;
  color: #828282;
}
.date_milestone_type {
  margin-left: -10px;
}
.title_milestone_type {
  margin-right: -10px;
}
.milestone_table_row .countdown_stacked, .milestone_title, .milestone_stamp {
 color: #3c3c3c;
}
.completed_milestones_title {
  margin: 30px auto 10px 20px;
  font-size: 1.6rem;
}
.completed_milestone_row .countdown_stacked .days_away {
 color: black;
}
.completed_milestone_label {
 text-align: center;
 display: none;
}
.milestone_table_title {
  font-size: 1.1rem;
  margin: 20px auto 0;
  padding-left: 10px;
}
.milestones_table_container {
  padding: 10px 0;
}
.milestone_row {
  padding: 8px;
  border-radius: 5px;
  border: solid 1px #c1c1c1;
  margin: 10px auto;
}
.milestone_title {
  font-size: 16px;
  font-weight: bold;
}
.milestone_comment {
  color: #737373;
  font-size: .9rem;
  margin-top: 3px;
}
.milestone_checkbox_container {
  text-align: center;
}
.milestone_checkbox {
  height: 24px;
  width: 24px;
  padding: 3px 6px;
  font-size: .9rem;
  border-radius: 4px;
  border: solid 1px #808080;
  background: white;
  color: #4c4c4c;
  position: relative;
}
.completed_parent_checkbox {
  display: none;
  color: #28a745;
}
.completed_milestone_row .completed_parent_checkbox {
  display: inline-block;
}
.completed_milestone_checkbox {
  background: #28a745;
}
.completed_milestone_checkbox:before, .checked_milestone_checkbox:before {
  content: "";
  width: 8px;
  height: 4px;
  background: white;
  position: absolute;
  top: 12px;
  transform: rotate(40deg);
  left: 3px;
}
.completed_milestone_checkbox:after, .checked_milestone_checkbox:after {
  content: "";
  width: 16px;
  height: 4px;
  background: white;
  position: absolute;
  top: 9px;
  transform: rotate(-50deg);
  left: 5px;
}
#sortable_milestones, .sortable_milestone_tasks {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.sortable_milestone_tasks {
}
.sortable_milestone_tasks li {
  padding: 6px 0;
  width: calc(100% - 20px);
  margin: 0 0 0 20px;
  border: solid 1px #d3d3d3;
  background: white;
}
.sortable_milestone_tasks li:last-of-type {
  margin-bottom: 15px;
}
.page_milestones .content-section {
  background: transparent;
}
.milestone_tasks_container .milestone_title {
  font-size: 14px;
}
.milestone_tasks_container .fa-check-circle, .milestone_tasks_container .milestone_checkbox {
  margin-left: -15px !important;
}
.milestone_header_label {
  padding: 20px;
}
.milestone_task_offset {
  /* margin-left: 40px; */
}
.milestone_saved_text {
  opacity: 0;
  position: absolute;
  right: 30px;
  font-size: 1rem;
  color: #2fac7f;
  transition: all .5s;
}
.milestone_table_row {
  margin-bottom: 15px;
  padding: 0;
  border-color:#acb4bd !important;
  background-color: #ebeced!important;
}
.completed_milestone_row, .completed_milestone_row li{
  background-color: #d9ffdf!important;
}
.collect_invoice_task {
  border-left: solid 3px green!important;
}
.ignore_btn {
  background: #e6463f;
  color: white;
}
.ignore_btn:hover, .ignore_btn:focus {
  background: #c73b35;
  color: white;
}
.milestone_table_row:hover {
  cursor: pointer;
}
.milestone_icon_container {
  text-align: left;
  padding-left: 20px;
}
.milestone_type_icon {
  font-size: 18px;
  display: inline-block;
  margin: 0 auto;
  text-align: center;
}
.milestone_legend_section {
  margin: 20px;
  font-size: 15px;
}
.milestone_legend_section i {
  padding-right: 6px;
  margin: 0;
}
.fa-dollar-sign {
  color: #059038;
  margin-left: 8px;
}
.fa-font-awesome-flag {
  color: #ff8b47;
}
.fa-clipboard-check {
  color: #1183af;
  display: none;
}
.milestone_tasks_container .milestone_column {
  margin-left: -7px;
  margin-right: 5px;
}
.milestone_tasks_container .milestone_contacts_column {
  margin: 0;
}
.milestone_task_row {
  padding: 10px 0;
  border: solid 2px #b1b1b1;
  border-radius: 3px;
  background: #dbe0e4;
  margin-bottom: 10px;
}
.milestone_table_details, .milestone_table_header {
  padding: 14px 0;
}
.completed_milestone_row .fa-check-circle, .sortable_milestone_tasks .fa-check-circle {
  font-size: 28px;
  margin: -5px auto;
  color: #28a745;
  display: block;
  text-align: center;
  vertical-align: sub;
}
.sortable_milestone_tasks .fa-check-circle {
  font-size: 24px;
}
.milestone_task_hover_row {
  margin-left: -25px;
}
.milestone_task_hover_row:hover .milestone_handle, .milestone_hover_row:hover .milestone_handle {
  visibility: visible;
  color: #3e3e3e;
}
button.milestone_handle {
  border: none;
  background: transparent;
  box-shadow: none;
}
.milestone_handle_menu {
  z-index: 7;
  display: none;
  position: absolute;
  left: -160px;
  width: 160px;
  top: 0;
  background: #b9b9b9;
  border: solid 1px #374146;
  padding: 3px 0;
}
.milestone_handle_menu button {
  border: solid 1px gray;
  background: white;
  padding: 3px;
  font-size: .9rem;
  width: calc(100% - 12px);
  margin: 3px 6px;
}
.active_handle_menu:before {
  content: "";
  position: absolute;
  top: 10px;
  right: -10px;
  height: 0;
  width: 0;
  border-left: solid 10px #374146;
  border-top: solid 10px transparent;
  border-bottom: solid 10px transparent;
}
.active_handle_menu {
  display: block;
}
.milestone_handle {
  position: relative;
  color: #848484;
  font-size: 26px;
  margin: 0;
  padding: 8px;
  border-radius: 4px;
}
.sortable_placeholder {
  border: 1px solid #de3838;
  font-weight: bold;
  font-size: 45px;
  background-color: lightblue;
}
.milestone_tasks_container .milestone_handle {
  /* margin-left: 10px; */
}
.milestone_handle:hover {
  cursor: pointer;
  color: black;
  background: rgba(0,0,0,.2);
}
.milestone_assignment_container i,
.appointment_employees i {
  position: absolute;
  top: 10px;
  right: 3px;
}
.assignment_available i,
.appointment_employees i {
  color: #28a745;
}
.assignment_assigned i {
  color: #de3838;
}
.milestone_assignment_container h4 {
  font-size: 18px;
  margin: 12px auto 8px;
  color: #2f2f2f;
  text-decoration: underline;
  text-align: center;
}
.milestone_assignment_container button,
.appointment_employees button {
  display: none;
  position: relative;
  width: 100%;
  text-align: left;
  border: solid 1px #a7a7a7;
  padding: 6px 28px 6px 6px;
  background: #e8e8e8;
  /* border-radius: 4px;
  margin-bottom: 6px; */
}
.assignment_initals {
  display: inline-block;
  height: 30px;
  width: 30px;
  font-size: 14px;
  line-height: 28px;
  margin: 5px;
  text-align: center;
  border-radius: 50%;
  border: solid 1px #b9b9b9;
  background: #e6e6e6;
  color: #595959;
}
.show_assignment_contact {
  display: block !important;
}
.company-form select {
  display: none;
}
.company-form.show-inputs select {
  display: block;
}
.assignment_available, .assignment_assigned, .appointment_employees {
  max-height: 200px;
  width: 100%;
  overflow-y: scroll;
  overflow-x: hidden;
}
.appointment_employees {
    max-height: 145px;
    font-size: 15px;
}
.salesman_users_label, .all_users_label {
  position: relative;
  margin-top: 32px;
}
.all_users_label {
  margin-top: 32px;
}
.all_users_label:before {
  content: "All Employees";
  font-size: 16px;
  line-height: 18px;
  position: absolute;
  top: -28px;
  font-weight: bold;
  text-decoration: underline;
  left: 20px;
}
#global_users_dropdown_btn {
  min-width: 150px;
  margin-top: 4px;
}
.global_users_dropdown {
  padding: 0 20px 8px 20px;
  width: 250px;
  background: #ebebef;
  max-height: 250px;
  overflow-y: auto;
  overflow-x: visible;
}
.global_users_dropdown button {
  background: white;
  border: solid 1px lightgray;
  padding: 5px 20px;
  color: black;
}
.global_users_dropdown button:hover {
  background:#d0d0d0;
  border-color: #5f5f5f;
}
.employee_select_item, .crew_select_item {
  position: relative;
  font-size: 1rem;
  padding: 5px 35px 5px 10px;
  border-bottom: solid 1px #cbd0d4;
}
.employee_select_item:hover, .crew_select_item:hover {
  cursor: pointer;
  background: #cfd3d6;
}
.employee_select_item:hover:before, .crew_select_item:hover:before {
  content: "Add";
  position: absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
  color: #58778a;
}
.employee_select_list, .crew_select_list {
  text-align: left;
  margin: 10px auto 20px;
  max-height: 200px;
  overflow-x: visible;
  overflow-y: scroll;
  border: solid 1px #bcbcbc;
  background: #e5e9ec;
  padding: 0;
  display: inline-block;
  min-width: 50%;
  border-radius: 6px;
}
.job_contact_crew {
  font-size: 14px;
  color: gray;
  display: block;
}

/*
 *  timeline
 */

.timeline_version {
  padding: 10px;
  background: rgba(0,0,0,.2);
  margin: 10px 0;
}
.timeline_version .change_stamp, .timeline_version .change_author {
  color: gray;
  text-align: right;
  font-size: 12px;
  margin-top: 6px;
}
.mobile_timeline_icon {
  display: none;
}
.event
   {
   padding: 18px 15px;
   }

.content-section .event {
  padding: 15px 5px;
  margin-bottom: 0;
  border: none;
  border-radius: 0;
  background: transparent;
}

.content-section .pinned_notes .event {
  padding: 0;
}

.pinned_notes .event {
  margin: 10px 0 0;
  border: none;
}

.content-section .event:first-of-type {
  border: none;
  margin-top: 20px;
}

.timeline_feed
    {
    width: 100%;
    max-width: 750px;
    position: relative;
    background: white;
    }

.timeline_feed:before {
  content: "";
  position: absolute;
  left: 47px;
  top: 0;
  height: 100%;
  width: 1px;
  background: #b9b9b9;
}

.event .title
   {
   font-weight: bold;
   }

.event .more
   {
   display: inline-block;
   cursor: pointer;
   font-weight: bold;
   width: 40px;
   border: none;
   padding: 0;
   text-align: center;
   font-size: 40px;
   line-height: 26px;
   background: transparent;
   color: #6e717b;
   }

.event .more:hover
    {
    color: #101010;
    }

.event .stamp
   {
   color: #5f5f5f;
   text-align: center;
   background: white;
   padding: 4px 0;
   font-size: 12px;
   font-weight: bold;
   width: 70px;
   }

.event .notification
   {
     color: #616161;
     margin-bottom: 0;
     font-size: 14px;
   }

.event .more_info
   {
   clear:both;
   }

#overlay
   {
   background-color: rgba(0,0,0,0.7);
   display: none;
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   z-index: 99999;
   }

.overlay_link
   {
   border-top: 1px solid #ccc;
   cursor: pointer;
   padding: 1em;
   }

.overlay_link:first-of-type
   {
   border:none;
   }

#overlay_message
   {
   position: absolute;
   top:50%;
   left:50%;
   width:50%;
   transform: translate(-50%,-50%);
   text-align:center;
   background-color: #fff;
   padding: 0 1em;
   border-radius:5px;
   }

.pagination
   {
   font-size: larger;
   }

.timeline_icon
    {
    font-size: 20px;
    width: 36px;
    height: 36px;
    color: white;
    background: #656565;
    line-height: 30px;
    text-align: center;
    padding: 4px;
    border-radius: 50%;
    display: block;
    margin: -4px 0;
    }

.timeline_icon.fa-address-card
    {
    background: #7732c1;
    }
.timeline_icon.fa-briefcase
    {
    background: #0a790e;
    }

.timeline_icon.fa-trash
    {
    background: #dc5c5c;
    }

.timeline_icon.fa-clipboard-check
    {
    background: #20ad52;
    }

.timeline_icon.fa-clipboard-list
    {
    background: #2750c1;
    }

.timeline_icon.fa-sticky-note
    {
    background: #dcc62c;
    }

.timeline_icon.fa-arrows-alt-h
    {
    background: #ffa500;
    }

.timeline_icon.fa-envelope
    {
    background: #5bc0de;
    }

.timeline_icon.fa-question
    {
    background: #8510d8;
    }

.timeline_icon.fa-thumbs-up
    {
    background: #28a745;
    }

.timeline_icon.fa-thumbs-down
    {
    background: #dc3545;
    }

.timeline_icon.fa-calendar-check
    {
    background:#486dc1;
    }

.pinned_notes .event .more {
  float: right;
  margin: 10px 10px 0 0;
}
.pinned_notes .event .stamp {
  width: auto;
  background: transparent;
  text-align: right;
  font-weight: normal;
  color: gray;
}
.pinned_notes .event .notification {
  font-size: 16px;
  color: #101010;
  background: #f1d299;
  padding: 10px;
}

/*
 *  invoice
 */
.unassigned_tasks_section {
 margin-bottom: 20px;
}
.unassigned_task {
 background: #f6c087;
 padding: 15px;
 margin-bottom: 6px;
}
.unassigned_task .btn {
	font-size: 14px;
}
.task_title {
 font-size: 16px;
}
.task_completed_date {
 font-size: 12px;
 color: #836749;
}
.task_title_comment {
 font-size: 12px;
 color: #363636;
}
.invoices_table {
 font-size: 14px;
}
.invoice_comment {
  font-size: 12px;
  color: gray;
}
.invoice_task_job {
  color: #363636;
}
.invoice_status_item {
	text-align: center;
	width: 140px;
	max-width: 100%;
	padding: 4px 12px;
	color: white !important;
}
.invoice_status_dropdown {
	padding: 3px;
}
.invoice_contract_list .description {
  margin-top: 6px;
  font-size: 12px;
  color: gray;
}
.invoice_contract_list .title {
  font-size: 16px;
  line-height: 16px;
}
.invoice_contract_list .contract {
  padding: 8px;
  background: white;
  margin-top: 12px;
  box-shadow: 0 0 4px 0 #cecece;
}
.pay_contract_due {
  background: transparent;
  border: none;
  box-shadow: none;
  color: #386dbd;
}
.regular_button {
  background: transparent;
  border: none;
  box-shadow: none;
}
.pay_contract_due:focus {
  text-decoration: underline;
}
.invoice_contract_list i {
  font-size: 20px;
  line-height: 20px;
}
.invoice_contract_list .add_button {
  color: green;
}
.invoice_contract_list .remove_button {
  color: red;
  display: none;
}
.pick_contract_icon {
  text-align: center;
  border-radius: 4px;
}
.pick_contract_icon i {
  padding: 4px;
  text-align: center;
  margin-right: 0;
}
.pick_contract_icon:hover {
  cursor: pointer;
  background: #dadada;
}
.summary_info label {
  margin-top: 0;
}
.summary_info {
  text-align: right;
}
.contract_amount_container {
  display: none;
  margin-top: 6px;
  padding: 6px;
  background: #efefef;
}
.contract_amount_container input {
  text-align: right;
}
.show-inputs .contract_amount_container .current_contract_amount {
  padding-right: 28px;
}
.invoice_contract_list .contract {
  display: none;
}
.invoice_contract_list .selected_contract {
  display: block;
}
.show-inputs .invoice_contract_list .contract {
  display: block;
}
.invoice_contract_list .pick_contract_icon {
  display: none;
}
.show-inputs .invoice_contract_list .pick_contract_icon {
  display: inline-block;
}
.selected_contract .contract_amount_container {
  display: block;
}
.selected_contract .remove_button {
  display: inline-block;
}
.selected_contract .add_button {
  display: none;
}
#current_invoice_status {
	padding-right: 30px!important;
}
.dropdown-menu .invoice_status_item {
	width: 100%;
	padding-left: 20px;
	border-radius: 0;
	text-align: left;
	margin-bottom: 3px;
}
.deposited_icon {
  font-size: 18px;
  color: #28a745;
}
.amount_column {
  text-align: right;
  position: relative;
}
.amount_paid_column, .paid_text {
  color: green;
}
.amount_unpaid_column, .unpaid_text {
  color: red;
}
.amount_paid_column:before, .amount_unpaid_column:before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 20%;
  color: black;
}
.amount_paid_column:before {
  content: "-";
}
.amount_unpaid_column:before {
  content: "=";
}
#invoice_total_display span {
  margin-bottom: 5px;
  text-decoration: underline;
  display: block;
  font-size: 1rem;
  color: #444444;
}
#invoice_total_display {
  display: none;
  text-align: center;
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
  font-size: 2rem;
  background: white;
  z-index: 5;
  color: black;
  padding: 5px 15px;
}
.tile_container {
  padding: 15px;
  background: white;
  margin-bottom: 20px;
  text-align: center;
}
.tile_container .title {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 5px;
  color: #333333;
}
.tile_container .value {
  font-size: 26px;
}
#error_comment_row {
  animation: newly_added 3s linear;
  animation-fill-mode: forwards;
  border: solid 2px transparent;
}
.live_text {
  line-height: 20px;
  font-size: 14px;
  font-weight: bold;
  text-transform: uppercase;
}
.live_text .status_circle {
  display: inline-block;
  margin: 0 0 4px 8px;
  -webkit-animation-name: red_pulse;
  -webkit-animation-duration: 2s;
  -webkit-animation-iteration-count: infinite;
}
.status_circle {
  height: 12px;
  width: 12px;
  border-radius: 50%;
  vertical-align: middle;
  background: red;
}
.mobile_live_text {
  display: none;
  position: absolute;
  top: 2px;
  right: 15px;
  width: 55px;
  text-align: right;
  overflow: hidden;
}

@-webkit-keyframes red_pulse {
  from { background-color: #ad1e2b; -webkit-box-shadow: 0 0 5px #d2bfc1; }
  50% { background-color: #f93648; -webkit-box-shadow: 0 0 10px #f93648; }
  to { background-color: #ad1e2b; -webkit-box-shadow: 0 0 5px #d2bfc1; }
}

@keyframes newly_added {
  0% {
    border-color: #3064b2;
  }
  20% {
    border-color: transparent;
  }
  40% {
    border-color: #3064b2;
  }
  60% {
    border-color: transparent;
  }
  80% {
    border-color: #3064b2;
  }
  100% {
    border-color: transparent;
  }
}
.current_bill label {
  margin: 0;
}
.bill_date {
  font-size: 14px;
  vertical-align: middle;
  color: gray;
  margin: 0 0 0 5px;
}
.bill_payment {
  background: #285394;
  color: white;
  border-radius: 10px;
  border: solid 2px #183e77;
}
.credit_card {
  font-size: 13px;
}
.seperator {
  width: 100%;
  position: relative;
  margin-top: 20px;
  margin-bottom: 20px;
  height: 1px;
  background: #83a2d0;
}
.change_card_btn {
  background: #e26821;
  color: white;
  border-radius: 50px;
  font-size: 14px;
  line-height: 14px;
}
.card_digits {
  font-size: 1.2rem;
  vertical-align: middle;
}
#payment_method_form input[type="radio"], #payment_method_form .inline_label {
  display: inline-block;
  width: auto;
  margin-right: 10px;
  font-size: 16px;
  color: black;
  margin-top: 0;
  margin-bottom: 4px;
}
.inline_label {
  margin-right: 3px;
}
.show-inputs .inline_input {
  display: inline-block;
}
#payment_method_form label {
  display: block
}
#payment_method_form input[type="text"], #payment_method_form select {
  width: 100%;
  border: none;
  background: rgba(0,0,0,.1);
}
#payment_method_form .card_brand_radio {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
#payment_method_form .card_brand_radio + img {
  cursor: pointer;
}
#payment_method_form .card_brand_radio:checked + img {
  border: solid 1px gray;
  border-radius: 5px;
  background: rgba(0,0,0,.2);
}
.credit_card_logo {
  padding: 5px 15px;
  border: solid 2px transparent;
  margin-bottom: 7px;
}
#visa_logo {
  padding: 0;
}
.card_action_btn {
  margin: 2px auto;
  min-width: 100px;
  padding: 4px 0;
  font-size: 14px;
}
.card_delete_btn {
  background: #ea4e4e;
  color: white;
}
.card_default_btn {
  background: #0172ff;
  color: white;
}
.card_action_btn:hover {
  cursor: pointer;
  color: white;
}
.page_billing_methods .new-account-tabs {
  display: flex;
  padding-left: 15px;
}
.page_billing_methods .main-content {
  margin-top: 50px;
}
.credit_card_form .ach_method_container, .ach_form .card_method_container {
  display: none;
}
.ach_method_container {
  display: none;
}
.ach_form .ach_method_container {
  display: block;
}
/*
 *  SCROLLBAR
 */
::-webkit-scrollbar {
 width: 8px;
}
::-webkit-scrollbar-track {
 background: #f1f1f1;
}
::-webkit-scrollbar-thumb {
 background: #58778a;
}
::-webkit-scrollbar-thumb:hover {
 background: #607f93;
}
/*
 *  appointment table
 */
.appointment_row {
  margin-bottom: 6px;
  padding: 6px;
  background: #e2e2e2;
  border-radius: 3px;
}
.appointment_row:hover, .appointment_row:focus {
  background: #d6d6d6;
  cursor: pointer;
}
.page_home .status-label {
  padding: 4px 2px;
  text-align: center;
}
.page_home .action-links {
  margin-top: 0;
}
.page_home .appointment_row {
  padding: 6px 12px;
  margin-bottom: 10px;
}
.page_home .calendar_list .appointment_time {
  width: 70px;
  border: none;
  padding: 0;
}
.calendar_list .appointment_time {
  border-right: solid 1px gray;
  text-align: right;
  padding-right: 8px;
  font-size: 14px;
}
.calendar_list .appointment_time,
.calendar_list .appointment_title,
.calendar_list .appointment_location {
  line-height: 24px;
}
.appointment_location {
  color: gray;
  font-size: 14px;
}
.calendar_list .end_time {
  color: gray;
}
.overflow_dots {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
.calendar_list .date_label {
  margin-bottom: 4px;
  font-size: 1.1rem;
  font-weight: bold;
}
.mobile_dark_text, .mobile-card-header {
  color: #101010;
}
.calendar_side_container .action-link {
  margin-bottom: 20px;
}
.calendar_days_container {
  width: calc(100% - 250px);
  display: inline-block;
  vertical-align: top;
}
.calendar_side_container {
  width: 220px;
  display: inline-block;
}
#date_select_title {
  text-align: center;
}
#selected_events_day {
  display: block;
  font-size: 1rem;
  line-height: 1rem;
}
#selected_events_date {
  font-size: 1.5rem;
}
#user_event_list {
  margin: 10px auto 20px;
}
#user_event_list .appointment_row,
#user_event_list .day_event_job {
  padding: 10px;
  background: white;
  margin-bottom: 4px;
  cursor: pointer;
  border-radius: 4px;
}
#user_event_list .job_description,
#user_event_list .appointment_time {
  color: #3f4c56
}
#user_event_list .appointment_row:hover,
#user_event_list .day_event_job:hover {
  background: #e2e2e2;
}
.page_home #empty_appointment, .page_home #empty_job {
  display: none;
}
.nothing_assigned_text {
  background: #c5c5c5;
  color: #353535;
  padding: 6px;
  text-align: center;
}
.page_home .timeline_icon {
    font-size: 16px;
    width: 30px;
    height: 30px;
    color: white;
    line-height: 23px;
}
.event_weekday {
  font-size: 1rem;
  font-weight: normal;
}
.date_select_btn {
  height: 30px;
  font-size: 18px;
  text-align: center;
  width: 30px;
  line-height: 30px;
  cursor: pointer;
  border-radius: 5px;
}
.date_select_btn i {
  margin: 0;
}
.date_select_btn:hover {
  background: rgba(0,0,0,.1);
}
#open_checkbox_collapse {
  display: none;
  padding: 4px 12px;
}
/*
 * Files
 */
.file, .folder
   {
   cursor: pointer;
   overflow: hidden;
   white-space: nowrap;
   }

.file_label
   {
   overflow:hidden;
   text-overflow: ellipsis;
   white-space: nowrap;
   }

.file > .file_label
   {
   background-color: rgba(255, 255, 255, 0.8);
   border-radius: 5px;
   overflow:hidden;
   padding:0.2em;
   text-overflow: ellipsis;
   white-space: nowrap;
   }

.file_label input[type="checkbox"] {
 vertical-align: middle;
 margin: 0 4px 3px 4px;
}

.finder_folder
   {
   cursor: pointer;
   }

.finder_row
   {
   cursor: pointer;
   margin: 0.5em 0;
   }

.finder_selected
   {
   cursor: default;
   opacity: 0.5;
   }

#move_dialog, #zip_modal
   {
   background-color: rgba(0,0,0,0.5);
   bottom:0;
   display: none;
   left:0;
   position: fixed;
   right:0;
   top:0;
   z-index: 10;
   }

.move_dialog_breadcrumb
   {
   cursor:pointer;
   text-decoration: underline;
   }

#move_dialog_finder, #zip_dialog_finder
   {
   flex: 1 1 auto;
   overflow-y: auto;
   }

.square_container
   {
   /* border: 1px solid #999; */
   /* padding-top:100%; */
   border: solid 1px #b0b5b9;
   width:100%;
   margin: 0.5em;
   padding:0.5em;
   padding-top: 230px;
   position:relative;
   border-radius: 8px;
   -webkit-box-shadow: 0 4px 6px rgba(50,50,93,.11), 0 1px 3px rgba(0,0,0,.08);
    box-shadow: 0 4px 6px rgba(50,50,93,.11), 0 1px 3px rgba(0,0,0,.08);
   }

#loader
   {
   border: 16px solid #fff;
   border-radius: 50%;
   border-top: 16px solid #1c3b4f;
   width: 64px;
   height: 64px;
   margin: 0 auto;
   margin-bottom: 3em;
   animation: spin 0.5s linear infinite;
   }

@-webkit-keyframes spin
   {
   0% { -webkit-transform: rotate(0deg); }
   100% { -webkit-transform: rotate(360deg); }
   }

@keyframes spin
   {
   0% { transform: rotate(0deg); }
   100% { transform: rotate(360deg); }
   }

#submit_overlay
   {
   background-color: rgba(0,0,0,0.7);
   display: none;
   height:100vh;
   left:0;
   position:absolute;
   top:0;
   width: 100%;
   z-index: 100;
   }

.page_files #overlay_message
   {
   color: #fff;
   color: #333;
   max-width:70%;
   padding: 1em;
   position: absolute;
   top:50%;
   left:50%;
   transform: translate(-50%,-50%);
   text-align:center;
   }
/*
 * MEDIA QUERIES
 */

/* only xl */
@media (min-width: 1200px) {
  .main {
    border-top: solid 6px #1c3b4f;
  }
  .top-nav, .main-header {
    padding: 15px 25px;
  }
  .main-content {
    margin: 25px 25px;
  }
  .left-nav {
    /*
     so that if the menu is closed on tablet, then the
     user resizes their browser, the nav will be visible
    */
    display: block !important;
  }
}
/* lg and lower */
@media (max-width: 1199px) {
  .main-tabs {
    padding: 6px 15px 0;
  }
  .open-left-nav {
    border-right: solid 2px #142733;
  }
  .close-left-nav {
    display: block;
  }
  .left-nav {
    display: none;
  }
  .open-left-nav {
    display: block;
  }
  .top-bar {
    display: block;
  }
  .mobile-header {
    display: flex;
  }
  .desktop-header {
    display: none;
  }
  .main {
    top: 70px;
    height: calc(100vh - 70px);
    position: relative;
    width: 100%;
    left: 0;
  }
  .page_success .main, .page_success .main {
    position: absolute;
  }
  .top-logo {
    vertical-align: top;
    font-size: 1.4rem;
    padding: 0;
    font-weight: bold;
  }
  .page_success .main-content, .page_error .main-content {
    position: relative;
    top: 0;
    left: 0;
    transform: none;
    margin: 20px;
    padding: 20px;
  }
}
/* md and lower */
@media (max-width: 991px) {
  .payment_warning_bottom {
    bottom: 60px;
    right: 10px;
  }
  .payment_warning_bottom .popover_hint_btn {
    font-size: 27px;
    line-height: 34px;
    height: 36px;
    width: 36px;
  }
  .choice-header-text {
    margin: 10px auto 20px;
  }
  .choice-box {
    padding: 12px;
    margin: 4px auto;
  }
  .choice-box i {
    font-size: 3rem;
    line-height: 3rem;
  }
  .choice-box h3 {
    margin: 8px 0 0;
  }
  .status-label {
    white-space: nowrap;
    overflow: hidden;
  }
  .dropdown-menu {
    max-height: 250px;
    overflow-y: auto;
    overflow-x: hidden;
  }
  .top-logo {
    text-align: center;
    margin: 20px auto;
  }
  .global-add-container {
    margin-bottom: 20px;
  }
  #top_logo {
    display: inline-block;
  }
}
/* sl and lower */
@media (max-width: 767px) {
  .jobs_name .job_address_label {
    display: none;
  }
  .modal-body .milestone_type_container {
    text-align: left;
  }
  .milestone_type_container label {
    font-size: 15px;
  }
  .milestone_tasks_container .milestone_handle {
    margin-left: -10px;
  }
  .sortable_milestone_tasks li {
    width: 100%;
    margin: 0 0 0 12px;
  }
  .milestone_hover_row .milestone_contacts_column, .milestone_tasks_container .milestone_contacts_column {
    margin-bottom: 5px;
  }
  .countdown_stacked .days_away span {
    display: none;
  }
  .countdown_stacked span {
    display: none;
  }
  .page_appointments .main-tabs a, .page_scheduler_people .main-tabs a, .page_scheduler_job .main-tabs a {
    width: calc(50% - 6px);
  }
  .milestone_comment {
    font-size: 14px;
  }
  .milestone_title {
    font-size: 16px;
  }
  .assignment_initals {
    margin: 5px 5px 0 0;
  }
  .page_milestones .milestone_table_row {
    padding: 6px 12px;
  }
  .page_files .square_container {
    padding-top: 160px;
    margin: .5em 0;
  }
  .milestone_table_row .fa-dollar-sign {
    font-size: 16px;
    margin-top: 4px;
  }
  #open_checkbox_collapse {
    display: block;
    margin: 6px 12px 6px auto;
  }
  #open_checkbox_collapse.close_checkbox_collapse {
    background: #7b7b7b;
    color: white;
  }
  .collapse_checkboxes {
    display: none;
  }
  .page_home .timeline_icon {
    margin: 0 auto;
  }
  #user_event_list .job_description, #user_event_list .appointment_time {
    font-size: 14px;
  }
  #user_event_list .job_description {
    display: none;
  }
  .mobile_live_text {
    display: block;
  }
  .page_home .home_jobs_name {
    width: calc(100% - 75px);
    margin: 0 0 3px;
  }
  .day i.fa.fa-circle {
    font-size: 12px !important;
    margin: -1px;
  }
  .calendar_days_container .day {
    white-space: nowrap;
  }
  .calendar_side_container, .calendar_days_container {
    width: 100%;
    display: block;
  }
  .title-content i {
    margin-right: 8px;
  }
  .timeline_feed:before {
    display: none;
  }
  .timeline_feed {
    background: transparent;
  }
  .timeline_feed .event {
    position: relative;
    background: white;
    padding: 10px;
    margin: 0 0 10px;
  }
  .timeline_feed .timeline_icon {
    font-size: 16px;
    width: 26px;
    height: 26px;
    line-height: 18px;
    margin: 0;
  }
  .timeline_feed .event .stamp {
    padding: 0;
    margin-top: 26px;
  }
  .timeline_feed .event .row {
    align-items: flex-start!important;
  }
  .mobile_timeline_icon {
    display: block;
    position: absolute;
    top: 6px;
    left: 32px;
    z-index: 2;
  }
  .page_global_search .title-content {
    text-align: left;
    margin: 12px 4px 2px;
    font-size: 22px;
  }
  .search_result_container {
    width: 100%;
  }
  .milestone_icon_container {
    position: absolute;
    top: 0;
    right: 0;
  }
  .milestone_table_details, .milestone_table_header {
    padding: 6px 0;
  }
  hr {
    margin: 15px 0;
  }
  .milestone_type_container p {
    text-align: left;
    font-size: 12px;
    line-height: 16px;
    padding: 4px 0 0;
  }
  .completed_milestones_title {
    margin: 10px auto 10px 10px;
    font-size: 22px;
  }
  .milestone_handle {
    padding: 6px 2px;
  }
  .page_invoice .main {
    padding-bottom: 100px;
  }
  #invoice_total_display {
    border-top: solid 1px gray;
    top: auto;
    bottom: 50px;
    width: 100%;
    right: 0;
    left: 0;
    transform: none;
    padding: 0;
    vertical-align: top;
    height: 32px;
    padding-top: 5px;
  }
  #invoice_total_display span, #invoice_total_display #invoice_total {
    vertical-align: top;
    display: inline-block;
    font-size: 15px;
  }
  .invoice_contract_list .contract {
    border-left: solid 2px #bbbbbb;
  }
  .invoice_status_item {
    padding: 0;
    margin: 0 0 0 auto;
  }
  .no_mobile_table_border .col-6 {
    border: none!important;
  }
  .amount_unpaid_column:before, .amount_paid_column:before {
    display: none;
  }
  .calendar_list .appointment_time {
    font-size: 12px;
  }
  .calendar_list .appointment_title, .calendar_list .appointment_location {
    font-size: 14px;
  }
  .calendar_list .appointment_time,
  .calendar_list .appointment_title,
  .calendar_list .appointment_location {
    line-height: 20px;
  }
  .calendar_list .appointment_row .col-4 {
    padding-right: 0;
  }
  .page_success .main-content, .page_error .main_content {
    position: relative;
    top: 0;
    left: 0;
    transform: none;
    padding: 25px 25px 20px;
    text-align: center;
    border-radius: 10px;
  }
  .page_success .main-content h1, .page_error .main-content h1 {
    font-size: 2rem;
  }
  .table-body .table-row .col-6 {
    padding-top: 3px;
    border-top: solid 1px #d4dce2;
    margin-top: 3px;
  }
  .status-label {
    vertical-align: middle;
    margin: 0 auto;
    line-height: 18px;
    font-size: 14px;
    padding: 4px 6px;
  }
  .mobile_table_label {
    display: inline-block;
  }
  .mobile_table_label, .label {
    color: #768692;
  }
  .jobs_name span {
    vertical-align: top;
    display: inline-block;
  }
  .mobile_dark_text {
    font-size: 16px;
    margin-bottom: 3px;
  }
  .main-content .action-links {
    margin-top: 0px;
  }
  .action-link {
    font-size: 14px;
    min-width: auto;
    width: calc(50% - 10px);
  }
  .action-links .action-link:first-child {
    margin-left: 0;
  }
  .top-page-note {
    font-size: 12px;
  }
  .invoice_task_job {
    padding: 10px 0;
    border-top: solid 1px gray;
    margin-top: 10px;
  }
  .mobile_contacts_title {
    display: inline-block;
  }
  .top-logo img {
    margin: 10px auto 4px;
  }
  .table-body .table-row {
    color: #3f4c56;
    font-size: .9rem;
    margin-bottom: 10px;
  }
  .table-row .mobile-card-header {
    font-size: 1.1rem;
    color: black;
  }
  .table-row .nested-inner-link {
    color: #007bff;
    padding: 5px;
    margin: -5px;
  }
  .content-section .table-body .table-row {
    color: #101010;
  }
  .table-row {
    padding: 12px;
  }
  .table-header {
    display: none;
  }
  .page_contacts .main-content {
    margin-top: 6px;
  }
  .mobile-letter-label {
    padding: 6px 10px 2px;
  }
  .mobile-footer-bar {
    display: none;
  }
  .top-bar .mobile-search-btn {
    display: block;
    padding: 7px 0 10px 0;
  }
  .open-left-nav {
    border-right: none;
    z-index: 999;
  }
  .top-bar, .mobile-footer-bar {
    height: 50px;
  }
  .hamburger-menu {
    margin: 6px 10px 10px 3px;
  }
  .main {
    top: 50px;
    height: calc(100vh - 50px);
    /* padding-bottom: 70px; */
  }
  .global_search_form input {
    width: 100%;
    padding: 6px 36px 6px 8px;
    margin: 10px auto;
  }
  .close-left-nav {
    height: 50px;
    width: 50px;
    text-align: center;
    background: rgba(0,0,0,.2);
    position: relative;
    display: block;
    margin: 6px 10px 10px 15px;
  }
  .close-left-nav span {
    left: 10px;
    top: 23px !important;
  }
  .left-nav .global_search_form {
    display: none;
  }
  .top-logo {
    margin: 15px auto;
  }
  .nav-category-title, .left-nav .nav-backoffice a, .left-nav a.nav-category-title {
    padding: 18px 40px 18px 18px;
  }
  .global-add-container .global-add-btn {
    width: 150px;
    font-size: 1.3rem;
  }
  .main-header .FontSmall {
    text-align: center;
  }
  .open-nav-category:hover {
    background: initial;
  }
  .nav-category-title, .left-nav .nav-backoffice a, .left-nav a.nav-category-title {
    font-size: 1.3rem;
  }
  .contacts-form {
    padding-top: 0;
  }
  .show-inputs .address-label-column {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .single-note h5 {
    text-align: left;
  }
  .content-title {
    width: calc(100% + 30px);
    margin: -15px -15px 0;
  }
  .content-section, .content-title {
    padding: 15px;
  }
  .dashboard-table {
    padding: 0;
  }
  .dashboard-notification {
    padding: 10px 5px;
  }
  .dashboard-notification .row {
    align-items: flex-start !important;
  }
  .dashboard-notification i {
    margin-top: 6px;
  }
  .category-links a {
    padding: 5px 15px 5px 30px;
    font-size: 1rem;
  }
  .mobile-dropdown-label {
    display: none;
  }
  .main-tabs .nav-dropdown-arrow {
    display: block;
  }
  .action-links {
    text-align: center;
    margin-top: 10px;
  }
  .top-nav, .main-header {
    padding: 10px 15px;
  }
  .main-content {
    margin: 10px 15px 10px;
  }
  .main-tabs {
    background-color: #d4dce2;
    padding: 10px 15px 0;
  }
  .main-tabs a {
    text-align: center;
    background-color: #f3f7f9;
    border-bottom: none !important;
    margin-right: 0;
    margin: 5px 0;
    display: inline-block;
    width: calc(50% - 6px);
    padding: 4px 4px 8px;
    font-weight: normal;
    position: relative;
    border-radius: 5px;
  }
  .main-tabs a.active-tab {
    background-color: #b9bfc5;
  }
  .main-tabs a:nth-child(odd) {
    margin-left: 5px;
  }
  .main-header .FontSmall {
    display: none;
  }
  .title-content h2 {
    font-size: 1.3rem;
  }
  /* .open-nav-category a {
    display: block;
  } */
  .table {
    word-break: break-all;
  }
  .table-section .table-row {
    margin: 0 -15px;
    padding: 10px 0;
  }
  ::-webkit-scrollbar {
    width: 5px;
    height: 5px;
  }
  .title-image, .title-content {
    display: block;
    margin: 0 auto;
    text-align: center;
  }
  .title-content {
    margin-bottom: 0px;
  }
  .action-link {
    margin-left: 5px;
  }
  .left-nav {
    width: 100%;
  }
}

@media (max-height: 650px) {
  .nav-category-title, .left-nav .nav-backoffice a, .left-nav a.nav-category-title {
    padding: 14px 40px 14px 18px;
  }
}

@media (max-width: 1199px) and (min-width: 768px)
    {
    .top-logo {
      margin-top: 40px;
    }
    .top-bar {
      border-bottom: solid 1px white;
    }
    }

@keyframes blink-unsaved {
  50% {
    border-color: #f34747;
  }
}
