/* ----- Global CSS ----- */

html {
    margin: 0px;
    padding: 0px;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    height: 100%;
}
* {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}
body {
    background: #f4f4f4;
    margin: 0px;
    padding: 0px;
    overflow-x: hidden;
    overflow-y: auto;
    font-family: "Open Sans", sans-serif;
    line-height: unset;
    height: 100%;
}
a {
    text-decoration: none;
}
a.delete {
    font-size: 1em;
    color: red;
    text-align: center;
    padding: 10px 0 10px 0;
    margin: 0 0 0 15px;
}
a.delete:hover {
    cursor: pointer;
}
a.green-link {
    color: #85a300 !important;
}
a.green-link:hover {
    color: #536600;
}
a.orange-link {
     color: #ff8c1a;
 }
a.orange-link:hover {
    color: #cc6600;
}
a.red-link {
    color: #ff3333;
}
a.red-link:hover {
    color: #cc0000;
}
span.green,
div.green,
td.green {
    color: #009933;
}
span.orange,
div.orange,
td.orange {
    color: #ff8c1a;
}
span.red,
div.red,
td.red {
    color: #ff0000;
}
span.blue,
div.blue,
td.blue {
    color: #0099ff;
}
.bold {
    font-weight: bold;
}
span.roundBlock {
    padding: 3px 6px 4px 6px;
    color: #ffffff;
    border-radius: 3px;
}
span.roundBlockblue {
    background: #0099ff;
}
span.roundBlockorange {
    background: #ff8c1a;
}
span.roundBlockred {
    background: red;
}
span.roundBlockgreen {
    background: #009933;
}
span.roundBlockblack {
    color: #222222;
}
input[type="text"],
input[type="email"],
input[type="password"],
input[type="date"],
input[type="datetime-local"],
input[type="tel"],
input[type="number"],
textarea {
    border: 1px solid #d0d0d0;
    padding: 8px 8px;
    display: inline-block;
    overflow: hidden;
    position: relative;
    z-index: 1;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}
input[type="date"] {
    padding: 3px 3px;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 0.9em;
}
button[type="submit"],
button[type="button"], a.greenButton {
    background-color: #85a300;
    color: #ffffff;
    border: none;
    text-align: center;
    font-size: 1em;
    text-decoration: none;
    opacity: 0.9;
    padding: 6px;
    border-radius: 2px;
}
button[type="button"].cancelButton,
button[type="button"].deleteButton,
a.redButton {
    background-color: #ff6666;
    color: #ffffff;
    border: none;
    text-align: center;
    font-size: 1em;
    text-decoration: none;
    opacity: 0.9;
    padding: 6px;
    border-radius: 2px;
}
button[type="button"].orangeButton, a.orangeButton {
    background-color: #ff8c1a;
    color: #ffffff;
    border: none;
    text-align: center;
    font-size: 1em;
    text-decoration: none;
    opacity: 0.9;
    padding: 6px;
    border-radius: 2px;
}
button[type="submit"]:hover,
button[type="button"]:hover,
a.orangeButton:hover,
a.redButton:hover {
    opacity: 1;
    cursor: pointer;
}
button[type="submit"]:focus,
button[type="button"]:hover,
a.orangeButton:hover,
a.redButton:hover {
    border: 0;
    outline: 0;
}
.selectize-control {
    display: inline-block;
    margin-left: 6px;
}
.selectize-input {
    padding: 4px 50px 4px 5px !important;
}
.selectize-dropdown, .selectize-input {
    width: auto !important;
}
.selectize-dropdown [data-selectable], .selectize-dropdown .optgroup-header {
    width: auto;
    white-space: nowrap;
}
.selectize-dropdown .active {
    background-color: #336699 !important;
    color: #f4f4f4 !important;
}
a:hover {
    text-decoration: none;
}
div.flex-screen {
    height: 100%;
    display: flex;
    display: -webkit-flex;
    overflow: hidden;
    flex-direction: column;
    -webkit-flex-direction: column;
}
div.flex-screen > * {
    flex: 0 0 auto;
    -webkit-flex: 0 0 auto;
    overflow: scroll;
}
div.header {
    width: 100%;
    height: 60px;
    margin: 0px;
    padding: 0;
    background: #0f0f0f;
    font-weight: bold;
    color: #ffffff;
    overflow: hidden;
    position: absolute;
}
div.flex-screen > div.main {
    flex: 1 1 auto;
    -webkit-flex: 1 1 auto;
    display: flex;
    display: -webkit-flex;
    overflow: hidden;
    height: 100%;
    padding-top: 60px;
}
.flex-screen > .main > * {
    flex: 0 0 auto;
    -webkit-flex: 0 0 auto;
    overflow: hidden;
}
img.header-logo {
    margin: 8px auto 0 auto;
    height: 42px;
}
div.header img.header-logo {
    height: 32px;
    margin: 15px 0 0 18px;
}
div.header-right {
    float: right;
}
div.notifications {
    padding: 0 10px;
    font-size: 12pt;
    display: inline-block;
    height: 40px;
    margin: 0 30px;
    position: relative;
}
div.notifications:hover {
    cursor: pointer;
}
div.notification-box {
    position: absolute;
    width: 300px;
    height: 250px;
    background: #222222;
    border: 1px solid #111111;
    overflow: hidden;
    right: 20px;
    top: 59px;
    z-index: 1000;
    display: none;
}
span.notification-badge {
    display: block;
    position: absolute;
    top: -4px;
    right: -2px;
    font-size: 10pt;
    background: red;
    padding: 2px 4px;
    border-radius: 6px;
    font-family: "Open Sans", sans-serif;
    font-weight: normal;
}
div.notification-row {
    display: block;
    padding: 10px 10px 10px 15px;
    border-bottom: 1px solid rgba(0,0,0,0.3);
    min-height: 30px;
}
div.notification-box .unread {
    background: #555555;
    color: #cccccc;
}
div.notification-box .read {
    background: #333333;
    color: #bbbbbb;
}
div.notification-row i {
    display: block;
    float: left;
    font-size: 18pt;
    margin: 0 15px 0 0;
    padding: 4px 0 0 0;
    height: 100%;
    min-height: 100%;
    color: #dddddd;
}
div.notification-row:hover {
    background: #666666;
    color: #dddddd;
    cursor: pointer;
}
span.header-username {
    display: inline-block;
    margin-right: 20px;
    padding-top: 20px;
}
a.header-logout {
    float: right;
    display: block;
    height: 40px;
    width: 120px;
    text-align: center;
    padding-top: 20px;
    font-size: 12pt;
    color: #dddddd;
}
a.header-logout:hover {
    color: #eeeeee;
    background-color: rgba(255,0,0,0.8);
}
div.mainwindow {
    width: 100%;
    background: #666666;
    flex: 1 1 auto !important;
    -webkit-flex: 1 1 auto !important;
    height: 100%;
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
}
div.content-wrap {
    width: 100%;
    margin: 0;
    height: 100%;
    overflow-y: auto;
    flex: 1 1 auto;
    -webkit-flex: 1 1 auto;
    padding-bottom: 70px;
}

div.page-content {
    width: calc(95% - 40px);
    margin: 40px 2.5% 20px 2.5%;
    background: #eeeeee;
    padding: 20px;
    border: 1px solid #555555;
    border-radius: 4px;
}

div.page-content-left {
    width: calc(55% - 40px);
    margin: 40px 1.25% 20px 2.5%;
    background: #eeeeee;
    padding: 20px;
    border: 1px solid #555555;
    border-radius: 4px;
    float: left;
}

div.page-content-right {
    width: calc(35% - 40px);
    margin: 40px 2.5% 20px 1.25%;
    background: #eeeeee;
    padding: 20px;
    border: 1px solid #555555;
    border-radius: 4px;
    float: right;
}

div.content-left-small {
    width: calc(35% - 40px);
}

div.content-right-big {
    width: calc(55% - 40px);
}

div.limitWrap {
    width: 100%;
    margin: 0;
    padding: 0;
    min-height: 100%;
    height: 100%;
    overflow-y: hidden;
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
}

div.limitHead {
    width: 100%;
    margin: 0;
    padding: 0;
    height: 105px;
    background: #e9e9e9;
    flex: 0 0 auto;
    -webkit-flex: 0 0 auto;
}

div.limitContent {
    width: 100%;
    margin: 0;
    padding: 0;
    height: calc(100% - 105px);
    flex: 1 1 auto;
    -webkit-flex: 1 1 auto;
}

div.alert {
    width: 380px;
    margin-top: 20px;
    margin-left: calc(50% - 190px);
    padding: 0;
    color: #222;
    text-align: center;
    font-size: 14px;
}

div.neg {
    background: #ff6666;
    border: #ff0000 1px solid;
    border-radius: 3px;
    height: 30px;
    line-height: 30px;
}
div.pos {
    background: #66c266;
    border: #009900 1px solid;
    border-radius: 3px;
    height: 30px;
    line-height: 30px;
}

input.submit-green {
    background-color: #85a300;
    color: #ffffff;
    border: none;
    text-align: center;
    font-size: 1em;
    text-decoration: none;
    opacity: 0.9;
    padding: 6px;
    border-radius: 2px;
    margin-top: 30px;
    margin-right: -25px;
    float: right;
    clear: both;
}

input.submit-green:hover {
    opacity: 1;
    cursor: pointer;
}

input.submit-green:focus {
    border: 0;
    outline: 0;
}

.clear {
    clear: both;
    margin: 0;
    padding: 0;
}

.no-scroll {
    overflow-y: hidden !important;
    overflow-x: hidden !important;
}

table.table {
    width: 100%;
}

table thead .sort:hover {
    cursor: pointer;
}

table.table thead tr th.mini,
 table.table tbody tr td.mini {
     width: 8%;
     text-align: center;
 }

table.table thead tr th.xmini,
table.table tbody tr td.xmini {
    width: 6%;
    text-align: center;
}

table.table tbody tr td.delete,
table.table thead tr:last-child th.delete {
    width: 2em;
    padding: 0;
}

table.table tbody tr td:last-child a {
    width: 100%;
    font-size: 1em;
    color: red;
    opacity: 0.6;
    text-align: center;
    display: block;
    padding: 10px 0 10px 0;
    margin: 0;
}

table.table tbody tr td:last-child a:hover {
    opacity: 1;
}

table.table tbody tr:nth-child(odd) {
    background: #dddddd;
}

table.table tbody tr:not(.nohover):hover {
    background: #bbbbbb;
}

table.table tbody td.popup:hover,
table.table tbody td .delete:hover {
    cursor: pointer;
}

table.addForm {
    width: unset;
    margin-left: 0;
}

table.addForm td {
    padding: 0 5px 0 5px;
}

table.addForm td:last-child {
    padding-left: 15px;
}

.ui-widget-overlay {
    background: #333333;
    opacity: 0.5;
}

.ui-dialog-titlebar-close {
    display: none;
}

div[aria-describedby='payment-dialog'] .ui-dialog-titlebar-close {
    display: inline-block;
    background: #cccccc;
    color: #f3f3f3;
}

div[aria-describedby='payment-dialog'] .ui-dialog-titlebar-close::after {
    content: '\00d7';
    font-size: 1.2em;
}

.dialog-bottom {
    clear: both;
    padding-top: 15px;
    position: absolute;
    bottom: 40px;
    width: 90%;
}

.dialog-bottom .cancelButton,
.dialog-bottom .deleteButton {
    background-color: #ff6666;
    position: absolute;
    left: 0;
}

.dialog-bottom .deleteButton {
    background-color: #ff6666;
    position: absolute;
    left: 70px;
}

.dialog-bottom .saveButton {
    position: absolute;
    right: 0;
}

.fixedRight {
    position: fixed;
    right: 0;
    max-height: calc(100vh - 170px);
    overflow-y: auto;
}

.dialog-content {
    padding-bottom: 50px !important;
    position: relative;
}

.dialog-content span.input {
    white-space: nowrap;
    display: block;
}

div.loading-dialog {
    position: absolute;
    width: calc(100% - 2em);
    min-height: 90%;
    height: 90%;
}

span.loading-icon {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 20pt;
    height: 100%;
}

span.loading-icon i {
    position: absolute;
    top: 45%;
    left: calc(50% - 14px);
}

div.side-loading {
    top: 0;
    background: #eeeeee;
    width: calc(100% - 40px);
    min-height: 100%;
    height: 100%;
}

span.no-results {
    text-align: center;
    display: inline-block;
    width: 100%;
    font-size: 14pt;
    font-weight: bold;
}

/* ----- Breadcrumb CSS ----- */

div.header-breadcrumb {
    margin-top: 12px;
}

/** The Magic **/
.btn-breadcrumb .btn:not(:last-child):after {
    content: " ";
    display: block;
    width: 0;
    height: 0;
    border-top: 17px solid transparent;
    border-bottom: 17px solid transparent;
    border-left: 10px solid white;
    position: absolute;
    top: 50%;
    margin-top: -17px;
    left: 100%;
    z-index: 3;
}
.btn-breadcrumb .btn:not(:last-child):before {
    content: " ";
    display: block;
    width: 0;
    height: 0;
    border-top: 17px solid transparent;
    border-bottom: 17px solid transparent;
    border-left: 10px solid rgb(173, 173, 173);
    position: absolute;
    top: 50%;
    margin-top: -17px;
    margin-left: 1px;
    left: 100%;
    z-index: 3;
}

/** The Spacing **/
.btn-breadcrumb .btn {
    padding:6px 12px 6px 24px;
}
.btn-breadcrumb .btn:first-child {
    padding:6px 6px 6px 10px;
}
.btn-breadcrumb .btn:last-child {
    padding:6px 18px 6px 18px;
}

.btn-default, .btn-default:focus, .btn-default:active {
    background-color: #222222;
    border-color: #555555;
    color: #cccccc;
}

.btn-default:hover {
    background-color: #555555;
    border-color: #444444;
    color: #dddddd;
}

.btn-breadcrumb .btn.btn-default:not(:last-child):after {
    border-left: 10px solid #222222;
}
.btn-breadcrumb .btn.btn-default:not(:last-child):before {
    border-left: 10px solid #555555;
}
.btn-breadcrumb .btn.btn-default:hover:not(:last-child):after {
    border-left: 10px solid #555555;
}
.btn-breadcrumb .btn.btn-default:hover:not(:last-child):before {
    border-left: 10px solid #444444;
}

.btn-green, .btn-green:focus, .btn-green:active {
    background-color: #85a300;
    border-color: #92b300;
    color: #eeeeee;
}

.btn-green:hover {
    background-color: #7d9900;
    border-color: #688000;
    color: #eeeeee;
}

.btn-breadcrumb .btn.btn-green:not(:last-child):after {
    border-left: 10px solid #85a300;
}
.btn-breadcrumb .btn.btn-green:not(:last-child):before {
    border-left: 10px solid #92b300;
}
.btn-breadcrumb .btn.btn-green:hover:not(:last-child):after {
    border-left: 10px solid #7d9900;
}
.btn-breadcrumb .btn.btn-green:hover:not(:last-child):before {
    border-left: 10px solid #688000;
}

.btn-orange, .btn-orange:focus, .btn-orange:active {
    background-color: #e68a00;
    border-color: #ff9900;
    color: #eeeeee;
}

.btn-orange:hover {
    background-color: #cc7a00;
    border-color: #e68a00;
    color: #eeeeee;
}

.btn-breadcrumb .btn.btn-orange:not(:last-child):after {
    border-left: 10px solid #e68a00;
}
.btn-breadcrumb .btn.btn-orange:not(:last-child):before {
    border-left: 10px solid #ff9900;
}
.btn-breadcrumb .btn.btn-orange:hover:not(:last-child):after {
    border-left: 10px solid #cc7a00;
}
.btn-breadcrumb .btn.btn-orange:hover:not(:last-child):before {
    border-left: 10px solid #e68a00;
}



/* ----- Login CSS ----- */
div.background-image {
    position: absolute;
    margin: 0;
    padding: 0;
    background: #666666;
    display: flex;
    display: -webkit-flex;
    -webkit-filter: blur(8px);
    filter: blur(8px);
    z-index: -100000;
    top: -10px;
    right: -10px;
    bottom: -10px;
    left: -10px;
}

div.login-container {
    position: relative;
    margin: 0;
    padding: 0;
    height: 100%;
    display: flex;
    display: -webkit-flex;
    align-items: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-justify-content: center;
    z-index: 1000;
}

div.notice-login {
    width: 380px;
    position: absolute;
    z-index: 1000;
    top: 0;
    margin: 0 auto;
    color: #222;
    text-align: center;
    font-size: 14px;
    display: none;
    border-radius: 0 0 3px 3px !important;
}

#content-login {
    width: 400px;
    height: 320px;
    background: transparent;
    font-weight: 300;
    margin: auto;
    padding: 0;
    color: #eeeeee;
    /* Undo IE fix */
    text-align: left;
    z-index: 100;
}

div.login-form {
    width: 90%;
    height: 300px;
    margin: 0px auto 0 auto;
    padding: 10px 5% 10px 5%;
    background: rgba(0,0,0,0.8);
    border: rgba(0,0,0,0.3) 1px solid;
    border-radius: 4px;
    color: #eeeeee;
    text-align: center;
}

h1.login-welcome {
    margin-left: 100px;
}

div.login-form h2 {
    font-weight: normal;
}

div.login-form table {
    width: 100%;
}

div.login-form table, div.login-form table td {
    color: #eeeeee;
    text-align: center;
}

div.login-form input[type=text],
div.login-form input[type=password] {
    font-size: 1em;
    height: 2.2em;
    padding: 0.5em;
    border: 1px solid #f4f4f4;
    border-radius: 2px;
}

div.login-form input.submit-green {
    margin-top: 10px;
    height: 2.2em;
    padding: 0;
    width: 100px;
    margin-left: -25px;
}

.login-form input.submit-green {
    float: unset;
}

/* ----- Dashboard CSS ----- */

div#dashboard {
    padding: 40px 2.5% 20px 2.5%;
}

div.column {
    width: 30%;
    margin-right: 2.5%;
    float: left;
}

div.module {
    width: calc(100% - 30px);
    padding: 15px;
    background: #eeeeee;
    border: 1px solid #555555;
    border-radius: 4px;
    float: left;
    margin-bottom: 40px;
}

div.money {
    width: calc(30% - 30px);
    margin-right: 2.5%;
}

h2.module-title {
    margin: 0 0 25px 0;
}

span.module-button {
    width: 90%;
    display: block;
    margin: 0 auto 15px auto;
}

div#dashboard .enquiry .module-button a {
    background: #009933;
    color: #eeeeee;
}

div#dashboard .admin .module-button a {
    background: #ff9933;
    color: #eeeeee;
}

div#dashboard .inventory .module-button a {
    background: #0066cc;
    color: #eeeeee;
}

div#dashboard .messageModule .module-button a {
    background: purple;
    color: #eeeeee;
}

div#dashboard .money .module-button a {
    background: #663300;
    color: #eeeeee;
}

span.module-button a {
    width: 100%;
    display: block;
    text-align: center;
    font-size: 18pt;
    opacity: 0.85;
    padding: 15px 0;
    border: 1px solid;
    border-radius: 5px;
}

span.module-button a:hover {
    opacity: 1;
}

h4.money-amount {
    text-align: center;
    font-size: 12pt;
    margin-bottom: 15px;
}
h4.money-amount span {
    font-size: 18pt;
}

h4.percentage span {
    font-size: 14pt;
}

div.moneyGraphs {
    margin-bottom: 20px;
}

div.percentage-graph {
    position: relative;
}

div.marker-wrap {
    width: calc(100% - 24px);
    display: block;
    position: relative;
    left: 10px;
}

div.percentage-graph span {
    display: inline-block;
    position: absolute;
    width: 6px;
    height: 30px;
    background: transparent;
    border: 1px solid #cccccc;
}

/* ----- Manage Inventory CSS ----- */

h2.item-title {
    margin-top: 0;
    display: inline-block;
}

span.item-top {
    margin-left: 30px;
    font-size: 16pt;
}

span.item-top .full,
div.item-info .full {
    color: #009933;
}

span.item-top .low,
div.item-info .low {
    color: #ff9900;
}

span.item-top .empty,
div.item-info .empty {
    color: #ff0000;
}

span.item-top .stock-number {
    font-size: 18pt;
    margin-right: 20px;
}

span.item-price {
    font-weight: bold;
}

span.item-price,
span.customer-details {
    display: block;
    font-size: 14pt;
    color: #444444;
    margin-top: 10px;
}

div.item-description {
    padding-top: 20px;
    font-size: 12pt;
}

div.item-extra-info {
    margin: 25px 0 0 0;
    font-size: 13pt;
    font-weight: bold;
}

div.item-extra-info i {
    font-weight: normal;
}

div.item-extra-info i.fas {
    font-weight: 900;
}

div.item-image {
    text-align: center;
}

div.item-image img {
    max-width: 250px;
    max-height: 250px;
    margin: 20px auto;
}

div.item-categories,
div.item-pieces {
    margin: 30px 0 0 0;
}

div.item-categories a.category-tag,
div.item-pieces a.category-tag {
    padding: 5px 7px;
    display: inline-block;
    background: #888888;
    color: #eeeeee;
    border-radius: 4px;
    margin-right: 8px;
}

#itemEditDialog span.save-price-type {
    margin: 5px 0 10px 0;
}

#itemEditDialog .selectize-control {
    margin: 5px 0 5px 5px;
}

#itemEditDialog button.upload-image,
#itemEditDialog input.save-image {
    margin: 10px 0 10px 5px;
}

#itemEditDialog img {
    margin: 20px;
}

/* ----- Customers CSS ----- */

div.customer-note {
    font-size: 12pt;
}

span.customer-top {
    float: right;
    margin-right: 20px;
}

div.customer-type {
    font-size: 16pt;
    margin: -8px 0 20px 0;
}

div.Wholesale {
    color: #009933;
}

div.Retail {
    color: #ff0000;
}

div.contact-list {
    font-size: 12pt;
}

div.customer-history {
    margin-top: 40px;
}

div.customer-links,
div.item-links {
    margin-top: 25px;
}

a.add-contact {
    display: inline-block;
}

form.addContact,
form.editContact {
    margin-top: 15px;
    display: inline-block;
}

button.add-contact {
    margin-left: 10px;
}

div.contact-list button {
    margin: 10px 10px 0 0;
}

div.xeroResults {
    width: 100%;
    height: 400px;
    overflow-y: scroll;
}

table.xero-contact-sync {
    width: 100%;
    border-collapse: collapse;
}

table.xero-contact-sync tr.xero-exact {
    background: rgba(146,179,0,0.8);
}

table.xero-contact-sync tr.xero-close {
    background: rgba(255,165,0,0.8);
}

table.xero-contact-sync tr.xero-none {
    background: rgba(255,0,0,0.6);
}

table.xero-contact-sync tr.xero-sync td {
    padding: 10px 0 10px 10px;
    border: 2px solid #ffffff;
}

table.xero-contact-sync td.xero-check {
    width: 40px;
}

table.xero-contact-sync td.xero-check input {
    width: 18px;
    height: 18px;
    margin: 2px 0 0 6px;
}

table.xero-contact-sync div.xero-name {
    font-weight: bold;
}

#customerEditDialog .selectize-input .item {
    float: left;
}

#businessList {
    position: relative;
    z-index: 10000;
    background: white;
    border: 1px solid #bbb;
    padding: 0;
    top: 0;
    left: 5px;
    overflow: hidden;
}

#businessList div {
    padding: 3px 2px 3px 5px;
}

#businessList div:hover {
    cursor: pointer;
    background: #336699;
    color: #ffffff;
}

/* ----- Enquiries CSS ----- */

div.order-time,
div.order-ref,
div.order-status,
div.order-contact,
div.order-posted {
    font-size: 14pt;
}

div.order-status {
    margin: 0 0 15px 0;
}

div.order-posted {
    margin: 5px 0 15px 0;
    color: #009933;
}

tr.totals td:first-child {
    border: none;
}

.orderTable > tbody > tr.totals > td {
    font-weight: bold;
    background: #eeeeee;
    padding: 5px;
    border-color: #cccccc;
}

tr.totals td:nth-child(2) {
    text-align: left;
}

tr.totals td.subtotal,
tr.totals td.tax {
    font-size: 10pt;
    border-width: 1px;
}

tr.totals td.order-total {
    font-size: 13pt;
    border-width: 3px;
}

span.order-buttons {
    margin-left: 30px;
}

button.change-status {
    margin-right: 5px;
}

div.order-paid {
    margin-bottom: 10px;
}

div.order-paid span {
    font-size: 11pt;
    font-weight: bold;
    margin-left: 15px;
}

div.order-paid i {
    font-weight: normal;
}

span.edit-customer-select {
    font-size: 16pt;
    margin: 10px 0 10px 0;
}

span.edit-customer-status {
    margin: 10px 0 15px 5px;
    display: block;
    font-size: 14pt;
}

div.customer-info {
    margin: 10px 0 10px 5px;
}

div.customer-info span.customer-type {
    margin: 0 15px 0 0;
}

div.customer-info span.custom-branding {
    margin: 0 0 0 15px;
}

div.customer-info span.customer-note {
    margin: 0 0 0 15px;
}

div.customer-enquiry-address {
    margin-top: 10px;
    padding-left: 15px;
}

div.order-fields {
    padding: 15px 0 15px 1em;
    margin: 10px 0 10px -1em;
    width: calc(100% + 1em);
    background: #e5e5e5;
}

div.save-tracking {
    margin-bottom: 15px;
}

div.save-tracking div.optgroup-header {
    font-size: 10pt;
}

div.save-tracking div.option {
    font-size: 9pt;
}

input.save-qty {
    width: 50px;
}

input.save-quote,
input.save-stock,
input.save-trigger,
input.save-weight {
    width: 80px;
}

div.item-info {
    display: inline-block;
    margin-left: 20px;
    font-size: 11pt;
}

div.item-info .stock-number {
    font-size: 12pt;
    margin-right: 5px;
}

div.item-info .price {
    margin-left: 10px;
}

div.order-fields .selectize-control {
    top: 9px;
}

div.order-fields .add-item-button {
    margin: 10px 0 0 5px;
}

div.order-fields input.save-gst {
    margin-top: 20px !important;
}

div.order-fields .order-total {
    text-align: right;
    font-size: 11pt;
    padding-right: 60px;
}

div.order-fields .order-total div {
    padding: 3px;
}

div.order-fields .order-total div .number {
    margin-left: 10px;
}

div.order-fields .order-total div.total {
    font-weight: bold;
    border-top: 2px solid #cccccc;
    padding-top: 5px;
    font-size: 12pt;
}

span.order-weight {
    margin: 0 30px 0 0;
    font-weight: normal;
    font-size: 11pt;
}

button.pay-order {
    margin: 15px 0 0 5px;
}

.dialog-bottom button.enquiry-process {
    right: 75px;
}

h5.order-created-by {
    margin: 25px 0 5px 0;
}

span.followupCheck {
    margin-bottom: 5px;
}

div.order-notes p {
    white-space: pre-wrap;
}

span.youareanail {
    font-size: 20pt;
    text-align: center;
    display: block;
    margin-top: 25px;
}

/* ----- Action Log page CSS ----- */

div.logUserSelect {
    margin: 10px 0 0 1%;
}

div.logUserSelect form {
    display: inline;
}

div.logUserSelect button {
    margin-left: 10px;
}

table.logTable > thead > tr > th {
    width: auto !important;
    text-align: left !important;
}

table.logTable > thead > tr > th:first-child {
    width: 15%;
}

table.logTable > thead > tr > th:nth-child(5) {
    width: 10%;
}

table.logTable > tbody > tr:nth-child(odd) > td:first-child {
    background: rgba(51, 102, 153, 0.3);
}

table.logTable > tbody > tr:nth-child(even) > td:first-child {
    background: rgba(51, 102, 153, 0.2);
}

/* ----- Parts Needed page CSS ----- */

div.specialNotes {
    font-size: 14pt;
    font-weight: bold;
    margin-top: 20px;
}

button.processButton {
    font-size: 16pt;
    padding: 10px;
}

div.layer-qty {
    margin-top: 20px;
    font-size: 14pt;
}

div.layer-qty input {
    width: 60px;
    text-align: center;
}

div.splitFields {
    margin: 10px 0 0 15px;
    font-size: 12pt;
}

div.splitFields input {
    width: auto;
    text-align: left;
}

div.splitFields input.newSplit {
    width: 50px;
    text-align: center;
    margin-right: 15px;
}

button.splitButton {
    margin: 15px 0 0 15px;
    font-size: 12pt;
}

/* ----- To Cut page CSS ----- */

div.layer-cut-qty {
    margin-top: 25px;
    font-size: 24pt;
    font-weight: bold;
}

div.splitNotes {
    font-size: 14pt;
    margin: 10px 0 0 15px;
}

div.splitNotes div {
    margin: 8px 0;
}

div.splitNotes input,
div.layer-cut-qty input {
    font-size: 10pt;
    font-weight: normal;
    padding: 5px 8px;
}

div.splitNotes input.actualQTY,
div.layer-cut-qty input.actualQTY {
    margin-left: 20px;
}

/* ----- To Print page CSS ----- */

div.print-info {
    font-weight: bold;
    font-size: 12pt;
    margin-top: 20px;
}

div.print-info i {
    font-weight: normal;
}

button.print-batch-label,
button.print-bag-label {
    margin-right: 20px;
}

div.print-select-fields {
    margin: 10px 0 20px 0;
}

div.print-select-fields span {
    margin: 0 15px 0 0;
}

div.print-select-fields .selectize-control {
    top: 9px;
}

/* ----- In Progress page CSS ----- */

span.locationSelectWrap .selectize-control {
    top: 9px;
}

table.progressTable tbody tr td.progcheck:nth-child(even) {
    background: #bbbbbb;
}

table.progressTable tbody tr.overdue td.progcheck:nth-child(even) {
    background: rgba(255,0,0,0.3);
}

table.progressTable tbody tr:nth-child(even) td.progcheck:nth-child(even) {
    background: #cccccc;
}

table.progressTable tbody tr.overdue:nth-child(even) td.progcheck:nth-child(even) {
    background: rgba(250,0,0,0.3);
}

table.progressTable tbody tr td.checked {
    background: rgba(0,153,0,0.3);
}

table.progressTable tbody tr td.checked:nth-child(even) {
    background: rgba(0,153,0,0.4);
}

table.progressTable tbody tr:nth-child(even) td.checked:nth-child(even) {
    background: rgba(0,153,0,0.4);
}

input.partReturnInvoice {
    padding: 3px 3px;
}

/* ----- Messaging page CSS ----- */

#items-side h2.message-title {
    position: fixed;
    background: #eeeeee;
    display: block;
    margin-top: -20px;
    padding: 20px 0;
    width: 100%;
}

#items-side h2.message-title span.userlist {
    font-size: 10pt;
    color: #777777;
    margin-left: 20px;
    font-weight: normal;
}

td.message span.userlist {
    font-size: 8pt;
    color: #777777;
    margin-left: 20px;
}

.selectize-dropdown,
.selectize-dropdown-single {
    z-index: 1000 !important;
}

div.message-box {
    margin-top: 50px;
}

div.message {
    margin: 5px 0;
    width: 60%;
    float: left;
}

div.message > .message-details {
    color: #777777;
    font-size: 12px;
}

div.message > .message-details > .author {
    margin: 0 10px 1px 5px;
}

div.message-author > .message-details > .author {
    display: none;
}

div.message-author > .message-details > .time {
    margin: 0 10px 1px 5px;
}

div.message > .inner-message {
    background: #cccccc;
    padding: 10px 5px 2px 12px;
    border-radius: 8px;
}

div.message > .inner-message > p {
    white-space : pre-wrap;
}

div.message-author {
    float: right;
}

div.message-author > .inner-message {
    background: dodgerblue;
    color: #ededed;
}

div.new-message {
    clear: both;
    margin-top: 30px;
    padding-top: 30px;
}

div.new-message textarea {
    height: 40px;
    min-height: 40px;
    width: 30%;
}

div.new-message button.send-message {
    color: dodgerblue;
    background: transparent;
    font-size: 26pt;
    padding: 0 0 0 8px;
    position: relative;
    top: -6px;
}


/* ----- Users page CSS ----- */


#userEditDialog span.input input,
.dialog-content span.input input,
.dialog-content span.input textarea,
.dialog-content span.input select {
    margin: 5px;
}

#userEditDialog span.adminInput {
    padding-left: 5px;
    float: left;
}

#userEditDialog button.save-user {
    margin: 0;
}

table.userModuleTable {
    border-collapse: collapse;
    text-align: left;
    margin: 0;
    box-shadow: 0 1px 1px rgba(0,0,0,0.03);
    background-color: transparent;
}

table.userModuleTable thead th {
    border-bottom: 1px solid #e1e1e1;
    font-size: 1.1em;
    font-weight: normal;
    padding: 5px 5px 5px 15px;
    width: 32px;
}

table.userModuleTable thead th.rotate {
    height: 150px;
    white-space: nowrap;
}

table.userModuleTable thead th.category {
    font-weight: bold;
    font-size: 13pt;
}

table.userModuleTable thead th.rotate > div {
    transform: translate(21px, 57px) rotate(315deg);
    width: 30px;
}

table.userModuleTable thead th.rotate > div > span {
    border-bottom: 1px solid #e1e1e1;
    padding: 8px 0;
}

table.userModuleTable thead th:first-child {
    width: auto;
    vertical-align: bottom;
}

table.userModuleTable > tbody > tr:nth-child(odd) {
    background-color: #f7f7f7;
}

table.userModuleTable > tbody > tr:nth-child(even) {
    background-color: #ffffff;
}

table.userModuleTable > tbody > tr > td {
    padding: 10px 15px 10px 15px;
    font-size: 0.95em;
    text-align: center;
    border: 1px solid #e1e1e1;
}

table.userModuleTable > tbody > tr > td.Money {
    background-color: rgba(102,51,0,0.4);
}

table.userModuleTable > tbody > tr > td.Locations {
    background-color: rgba(255,51,0,0.4);
}

table.userModuleTable > tbody > tr > td.Messaging {
    background-color: rgba(128,0,128,0.4);
}

table.userModuleTable > tbody > tr > td.Enquiry {
    background-color: rgba(0,153,51,0.4);
}

table.userModuleTable > tbody > tr > td.Inventory {
    background-color: rgba(0,102,204,0.4);
}

table.userModuleTable > tbody > tr > td.Admin {
    background-color: rgba(255,153,51,0.4);
}

table.userModuleTable > tbody > tr > td:first-child {
    text-align: left;
    padding-right: 20px;
}

table.userModuleTable td.columnHover:hover {
    color: red;
}

/* ----- Supplies CSS ----- */

table.itemTable > tbody > tr:nth-child(odd).suppliesStockOut,
table.vehicleTable > tbody > tr:nth-child(odd).suppliesStockOut {
    background: rgba(255,0,0,0.5);
}

table.itemTable > tbody > tr:nth-child(even).suppliesStockOut,
table.vehicleTable > tbody > tr:nth-child(even).suppliesStockOut {
    background: rgba(255,0,0,0.4);
}

table.itemTable > tbody > tr:nth-child(odd).suppliesStockOut:hover,
table.vehicleTable > tbody > tr:nth-child(odd).suppliesStockOut:hover {
    background: rgba(255,0,0,0.6);
}

table.itemTable > tbody > tr:nth-child(even).suppliesStockOut:hover,
table.vehicleTable > tbody > tr:nth-child(even).suppliesStockOut:hover {
    background: rgba(255,0,0,0.6);
}

table.itemTable > tbody > tr:nth-child(odd).suppliesStockLow,
table.vehicleTable > tbody > tr:nth-child(odd).suppliesStockLow {
    background: rgba(255,153,0,0.5);
}

table.itemTable > tbody > tr:nth-child(even).suppliesStockLow,
table.vehicleTable > tbody > tr:nth-child(even).suppliesStockLow {
    background: rgba(255,153,0,0.4);
}

table.itemTable > tbody > tr:nth-child(odd).suppliesStockLow:hover,
table.vehicleTable > tbody > tr:nth-child(odd).suppliesStockLow:hover {
    background: rgba(255,153,0,0.6);
}

table.itemTable > tbody > tr:nth-child(even).suppliesStockLow:hover,
table.vehicleTable > tbody > tr:nth-child(even).suppliesStockLow:hover {
    background: rgba(255,153,0,0.6);
}

table.suppliesHistoryTable > tbody > tr:nth-child(odd).supplyNotReceive {
    background: rgba(255,153,0,0.5);
}

table.suppliesHistoryTable > tbody > tr:nth-child(even).supplyNotReceive {
    background: rgba(255,153,0,0.4);
}

table.suppliesHistoryTable > tbody > tr:nth-child(odd).supplyNotReceive:hover {
    background: rgba(255,153,0,0.6);
}

table.suppliesHistoryTable > tbody > tr:nth-child(even).supplyNotReceive:hover {
    background: rgba(255,153,0,0.6);
}

table.suppliesHistoryTable > tbody > tr > td.status {
    color: rgba(0,153,51,0.7);
}

table.suppliesHistoryTable > tbody > tr.supplyNotReceive > td.status {
    color: rgba(255,0,0,0.8);
}

table#orderHistorySort input.receivedQTY {
    width: 115px;
    padding: 2px 6px;
    color: initial;
}

div.riddle {
    font-size: 13pt;
    font-style: italic;
    color: #555555;
}

/* ----- Vehicle page CSS ----- */

#vehicleEditDialog .saveButton {
    right: unset;
    left: 150px;
}

/* ----- Reports page CSS ----- */

span.report-header-print {
    font-size: 1.5em;
    margin: 0;
}

span.report-header-print a:hover {
    cursor: pointer;
}

/* ----- Settings page CSS ----- */

div.integration-label {
    padding: 5px 10px;
}

input.api-input {
    margin-left: 10px;
    width: 300px;
}

h5.tracking-category {
    margin-bottom: 5px;
}

div.tracking-catID {
    font-size: 8pt;
    margin-bottom: 0px;
}

div.tracking-category-option {
    font-size: 10pt;
    margin-left: 15px;
}

button.reload-tracking {
    margin-top: 20px;
}

button.save-settings {
    margin-top: 30px;
}

/* ----- Follow Ups CSS ----- */

tr:nth-child(odd) td.followup {
    background: rgba(255,153,0,0.5);
}

tr:nth-child(even) td.followup {
    background: rgba(255,153,0,0.4);
}

td.followup-green,
span.followup-green {
    font-weight: bold;
    color: rgba(0,153,51,1);
}

td.followup-red,
span.followup-red {
    font-weight: bold;
    color: rgba(255,0,0,0.8);
}

td.followup-black,
span.followup-black {
    font-weight: bold;
    color: rgba(0,0,0,0.8);
}

table.table tbody tr:nth-child(odd).followup-green {
    background: rgba(0,153,51,0.4);
}

table.table tbody tr:nth-child(even).followup-green {
    background: rgba(0,153,51,0.3);
}

tr:nth-child(odd).followup-green td.followup {
    background: rgba(0,153,51,0.3);
}

tr:nth-child(even).followup-green td.followup {
    background: rgba(0,153,51,0.2);
}

span.followup-green,
span.followup-red {
    font-size: 14pt;
}

span.followup-due {
    margin-left: 15px;
    font-size: 15px;
    font-weight: bold;
}

/* ----- Quote CSS ----- */

input.quote-input {
    padding: 4px;
    width: 70%;
}
input.quote-cost,
input.quote-markup,
input.quote-qty {
    width: 50px;
}

table.table tbody tr.approvedItem:nth-child(even) {
    background: rgba(0,153,51,0.3);
}

table.table tbody tr.approvedItem:nth-child(odd) {
    background: rgba(0,153,51,0.5);
}

input.flag1,
input.flag2 {
    width: 125px;
}

table.progressTable tr.overdue:nth-child(even) {
    background: rgba(255,0,0,0.3);
}

table.progressTable tr.overdue:nth-child(odd) {
    background: rgba(255,0,0,0.5);
}

/* ----- Media Query CSS ----- */

@media screen and (min-width: 1025px){
    .slideout-panel {
        margin-left: 250px;
    }
    .slideout-menu {
        display: block;
    }
}

@media screen and (max-width: 1024px){
    div#content-login {
        width: 100%;
        left: 0;
    }
    div.login-form {
        width: calc(90% - 2px);
    }
    div.column {
        width: 47%;
        margin-right: 2.5%;
        float: left;
    }
    div.module {
        width: calc(100% - 30px);
    }
    div.money {
        width: calc(100% - 30px);
        clear: both;
    }
    div.page-content-left {
        width: calc(95% - 40px);
        margin: 40px 2.5% 30px 2.5%;
    }
    div.page-content-right {
        position: initial;
        clear: both;
        width: calc(95% - 42px);
        max-height: initial;
        height: auto;
        margin: 0 2.5%;
        right: auto;
    }
    #items-side h2.message-title {
        position: static;
        margin-bottom: 0;
        padding-bottom: 0;
    }
    div.new-message textarea {
        width: 70%;
    }
}

@media screen and (max-width: 768px){
    div.column {
        width: 47%;
        margin-right: 2.5%;
        float: left;
    }
    div.module {
        width: calc(100% - 30px);
    }
    div.money {
        width: calc(100% - 30px);
        clear: both;
    }
    div.breadcrumb-buttons {
        display: none;
    }
    .btn-breadcrumb .btn:first-child {
        padding: 6px 6px 6px 6px;
    }
    .btn-breadcrumb .btn:last-child {
        padding: 6px 6px 6px 12px;
    }
}

@media screen and (max-width: 600px){
    div.notice-login {
        width: calc(100% - 2px);
        left: 0;
        border-radius: 0 !important;
    }
    div.column {
        width: 100%;
        margin-right: 2.5%;
        float: left;
    }
    div.module {
        width: calc(100% - 30px);
    }
}