/* Use flexbox to fix and align the height of the page nav and page content. */
#wrapper {
	min-height: 100vh;
	display: flex;
	flex-direction: row;
	align-items: stretch;
	overflow-x: inherit;
}

.navbar-static-side {
	position: relative !important;
}

#page-wrapper{
	flex: 1;
	margin-left: 0 !important;
	min-height: 0 !important;
	min-width: 0;
	max-width: 100%;
}

/* Fixed the padding to match the footer height (in Inspinia's skin #3) */
.wrapper-content {
	padding-bottom: 40px !important;
}

/* Bugfix for the upper right menu (in Inspinia's skin #3) */
.navbar-top-links .dropdown-menu li:last-child {
	margin-right: 0 !important;
}

/* Bugfix for Inspinia's overriding of dropdown menu right */
.dropdown-menu.dropdown-menu-right {
	left: auto;
}

/* Adjust the font colors to have better contrast */
body {
	color: #303030;
}

/* The labels and table headers */
.field-label, .control-label, .form-group label,
.table > thead > tr > th, .table > tbody > tr > th {
	color: #505050;
	font-weight: 600; /* Consistently use semi-bold */
	text-transform: none; /* Do not fully capitalize table headers */
}

.ibox-title h5 {
	margin-top: 2px; /* Align with the button is present on the right */
	color: #505050;
}

.text-muted {
	color: #707070;
}

/* Field groups (and the related classes) are our "read-only"
counterpart to bootstrap's form group and related classes */
.field-group {
	margin-left: -15px;
	margin-right: -15px;
	margin-bottom: 10px;
}

@media(min-width: 768px) {
	.field-label {
		margin-bottom: 0;
		padding-top: 5px;
	}

	.field-group > .field-label {
		text-align: right;
	}
}

.field-value {
	margin-bottom: 0;
	padding-top: 5px;
}

/* Make sure select 2's dropdown is visible when inside a modal */
.select2-dropdown {
	z-index: 999999;
}

/* restyle select to better match inspina's input form controls */
.select2-selection.select2-selection--single {
	border-radius: 0;
	height: 34px;
	padding-top: 6px;
	padding-bottom: 6px;
}

.select2-selection.select2-selection--multiple {
	border-radius: 0;
}

.select2-selection__choice {
	border: none !important;
	border-radius: 0 !important;
	margin-top: 6px !important;
	margin-left: 6px !important;
}

.select2-selection__rendered {
	margin-top: -4px;
}

.select2-selection__arrow {
	margin-top: 3px;
}

.select2-selection__clear {
	margin-top: 1px;
}

/* Remove bootstrap's default margins. */
.pagination {
	margin-top: 0;
	margin-bottom: 0;
}

/* Inspinia didn't properly set this. */
.text-primary {
	color: #1ab394;
}

/* Used in the listing pages to indicate that new data is being loaded. */
.faded {
	opacity: 0.5;
}

/* Used to preserve the newlines in text (e.g. when displaying the document's remarks) */
.multiline {
	white-space: pre-line;
}

/* Used to properly align the checkboxes with the other form controls in table. */
.checkbox-cell > input[type=checkbox]{
	margin-top: 0;
	min-height: 36px;
}

.checkbox-cell {
	text-align: center;
}

h2 .label {
	vertical-align: middle;
}

/* Used for tabs that act like iboxes (independent floating containers). */
.tabs-ibox {
	margin-bottom: 25px;
}

/* Orange from the Zayls' logo. */
.zayls-orange {
	color: #F7634E;
}

/* Prevent unusably small input fields */
input[type=text] {
	min-width: 100px;
}

.dropzone.active {
	border: 2px solid #1ab394;
}

/* Shorten the nav header to match the top nav */
.nav-header {
	padding: 12px 0 !important;
}

.nav-header .profile-element,
.nav-header .logo-element {
	margin: 5px 0 !important;
	padding: 0 !important;
	font-size: 18px !important;
	line-height: 1.4 !important;
}

@media (min-width: 1200px) {
	.border-left-lg {
		border-left: 1px solid #e7eaec;
	}

	.btn-block-lg {
		display: block;
		width: 100%;
		white-space: normal;
	}
}

/* Shorten the menu item side padding (esp. since there are icons) */
.dropdown-menu > li > a {
	padding: 3px 15px !important;
}

/* Adjust spacing for fixed-width icons, which are used in menus */
.fa-fw {
	margin-left: -2px;
	margin-right: 2px;
}

.item-info {
	color: #707070;
	margin: 5px 0;
}

/* Make sure elements with the hidden attribute stay hidden */
/* even when their display is explicitly set to something else. */
[hidden] {
	display: none !important;
}

/* Legend box and the red & green highlights are for the activity log diff */
.legend-box {
	display: inline-block;
	width: 10px;
	height: 10px;
	margin-left: 10px;
}

.red-highlight {
	background: rgba(240, 120, 120, 0.85) !important;
	text-decoration: line-through;
}

.green-highlight {
	background: rgba(120, 240, 120, 0.85) !important;
}

.profile-picture-small {
	width: 50px;
}

.profile-picture-big {
	display: block;
	width: 150px;
}

.profile-picture-empty-dropzone {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 15px;
	width: 150px;
	height: 150px;
	border: 2px dashed gray;
	border-radius: 15px;
}

/* Surround negative amounts in parenthesis */
/* but stay aligned with positive amounts. */
.negative-amount {
	margin-left: -0.65ch;
	margin-right: -0.65ch;
}

.negative-amount::before {
	content: "(";
	margin-right: 0.1ch;
}

.negative-amount::after {
	content: ")";
	margin-left: 0.1ch;
}

th {
	vertical-align: bottom !important;
}

.has-error .select2-container--default .select2-selection--single,
.has-error .select2-container--default .select2-selection--multiple {
	border-color: #d38e99;
}

.max-w-200{
	max-width: 200px;
}

.max-w-150{
	max-width: 150px;
}

/* Custom Scrollbar */

.scrollbar
{
	max-height: 600px;
	overflow-y: scroll;
}

.scrollbar::-webkit-scrollbar
{
	width: 7px;
	border-radius: 10px;
	background-color: transparent;
}

.scrollbar::-webkit-scrollbar-thumb
{
	border-radius: 10px;
	background-color: transparent;
}

ui-ibox.scrollable .ibox-content:hover .scrollbar::-webkit-scrollbar-thumb
{
	background-color: #707070;
}

/* SO Tracker START */

sales-order-customer-tracker {
	font-size: 15px;
}

sales-order-customer-tracker .field-label {
	font-size: 13px;
	font-weight: bold;
}

/* SO Tracker END */

/* SO Timeline START */

#vertical-timeline.so-timeline {
	margin: 10px 0 0;
	width: 100%;
}

.so-timeline .vertical-timeline-block {
	margin-bottom: 40px;
}

.so-timeline .vertical-timeline-icon {
	top: 3px;
	left: 13px;
	height: 14px;
	width: 14px;
	border: none;
	background: #ddd;
	box-shadow: 0px 0px 10px #B8C1C7;
}

.so-timeline .vertical-timeline-block:first-child .vertical-timeline-icon {
	background: #1AB394;
	box-shadow: 0px 0px 10px #1AB394;
}

.so-timeline .vertical-timeline-block:last-child {
	margin-bottom: 0;
}

.so-timeline .vertical-timeline-block:last-child::before {
	content: '';
	height: 100%;
	display: block;
	position: absolute;
	width: 100%;
	background: #fff;
	top: 3px;
}

#vertical-timeline.so-timeline::before {
	background: transparent;
		border-left: 4px dotted rgba(40, 183, 155, .5);
	top: 3px;
}

.so-timeline .vertical-timeline-content::before {
	content: none;
}

.so-timeline .vertical-timeline-content {
	padding: 0;
	margin-left: 40px;
	background: transparent;
}

.so-timeline .vertical-timeline-content p {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 15px;
}

.so-timeline .vertical-timeline-content small {
	font-size: 13px;
	font-weight: bold;
	color: #505050;
}

/* SO Timeline END */

/* SO Tracker START */

sales-order-customer-tracker {
	font-size: 15px;
}

sales-order-customer-tracker .field-label {
	font-size: 13px;
	font-weight: bold;
}

/* SO Tracker END */

/* SO Timeline START */

#vertical-timeline.so-timeline {
	margin: 10px 0 0;
	width: 100%;
}

.so-timeline .vertical-timeline-block {
	margin-bottom: 40px;
}

.so-timeline .vertical-timeline-icon {
	top: 3px;
	left: 13px;
	height: 14px;
	width: 14px;
	border: none;
	background: #ddd;
	box-shadow: 0px 0px 10px #B8C1C7;
}

.so-timeline .vertical-timeline-block:first-child .vertical-timeline-icon {
	background: #1AB394;
	box-shadow: 0px 0px 10px #1AB394;
}

.so-timeline .vertical-timeline-block:last-child {
	margin-bottom: 0;
	}

.so-timeline .vertical-timeline-block:last-child::before {
	content: '';
	height: 100%;
	display: block;
	position: absolute;
	width: 100%;
	background: #fff;
	top: 3px;
}

#vertical-timeline.so-timeline::before {
	background: transparent;
		border-left: 4px dotted #ddd;
	top: 3px;
}

.so-timeline .vertical-timeline-content::before {
	content: none;
}

.so-timeline .vertical-timeline-content {
	padding: 0;
	margin-left: 40px;
	background: transparent;
}

.so-timeline .vertical-timeline-content p {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 15px;
}

.so-timeline .vertical-timeline-content small {
	font-size: 13px;
	font-weight: bold;
	color: #505050;
}

/* SO Timeline END */
   
/* SO Items List Start */

.so-items-list tbody tr .so-item-name .item-attribute {
    margin-top: 5px;
    font-size: 13px;
    font-weight: 400;
    color: #707070;
}

@media screen and (max-width: 767px) {
 .so-items-list thead {
  display: none;
 }

 .so-items-list tbody tr {
  display: flex;
  flex-direction: column;
  border-left: 1px solid #e7eaec;
  border-right: 1px solid #e7eaec;
  border-bottom: 1px solid #e7eaec;
 }

 .so-items-list tbody tr:first-child {
  border-top: 1px solid #e7eaec;
 }

 .so-items-list tbody tr td {
  text-align: left;
  border-top: none;
 }

 .so-item-name .row.flex {
  display: flex;
  flex-direction: column;
 }

 .so-items-list tbody tr .so-item-quantity {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
 }

 .so-items-list tbody tr .so-item-quantity::before {
  content: 'Quantity';
  width: 100%;
  font-size: 13px;
  font-weight: bold;
  color: #505050;
 }
}

/* SO Items List END */

/* Hide number arrows for Chrome, Safari, Edge, and Opera */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Hide number arrows for Firefox */
input[type="number"] {
  -moz-appearance: textfield;
}

.empty-state-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 40px;
    width: 100%;
    min-height: 400px;
}

.empty-image {
    max-width: 100%;
    height: auto;
    width: 300px;
}

.empty-text {
    font-size: 2rem;
    margin-top: 15px;
}

@media (max-width: 768px) {
    .empty-image {
        width: 220px;
    }
    .empty-text {
        font-size: 1.2rem;
    }
}

@media (max-width: 480px) {
    .empty-image {
        width: 180px;
    }
    .empty-text {
        font-size: 1rem;
    }
}