body::after {
	position: absolute;
	width: 0;
	height: 0;
	overflow: hidden;
	z-index: -1;
	content: url(/images/icons/tick-green.png);
}

a {
	text-decoration: none;
	color: #3e3e3e;
}

html,
body {
	overflow: hidden;
}

body {
	overflow-x: hidden;
	max-width: 2048px;
	margin: 0 auto;
	height: 100%;
	color: #3e3e3e;
}

.hidden {
	display: none;
}

#scan-section {
	margin-bottom: 50px;
}

header {
	background: #3a3a3a;
	color: #fff;
	top: 0;
	height: 45px;
	max-width: 2048px;
	min-width: 320px;
}

.fixed,
.form-buttons-container {
	position: fixed;
	width: 100%;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: 99;
}

header.fixed {
	z-index: 999;
}

header,
footer,
.text-center {
	text-align: center;
}

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

.display-inline-block {
	display: inline-block;
}

footer,
.container { 
	padding: 15px 15px;
}

header {
	padding: 10px 15px;
}

.container-inner {
	padding: 0 15px;
}

.flex-center,
.flex-left,
.flex-right,
.flex-between,
.flex-column,
.flex-even {
	display: flex;
}

.flex-center,
.flex-left,
.flex-right {
	align-items: center;
}

.flex-wrap {
	flex-wrap: wrap;
}

.flex-center {
	justify-content: center;
}

.flex-left {
	justify-content: left;
}

.flex-right {
	justify-content: right;
}

.flex-between {
	justify-content: space-between;
}

.flex-even {
	justify-content: space-evenly;
}

.flex-column {
	flex-direction: column;
}

.flex-start {
	align-items: flex-start;
}


.flex-grow {
	flex-grow: 1;
}

.flex-basis-100 {
	flex-basis: 100%;
}

.flex-ai-s {
	align-items: start;
}

.flex-ai-e {
	align-items: end;
}

.flex-jc-e {
	justify-content: end;
}

.flex-ai-fe {
	align-items: flex-end;
}

.flex-jc-fe {
	justify-content: flex-end;
}

input[type='submit'] {
	display: block;
}

input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

input[type="number"],
input[type='tel'] {
	-moz-appearance: textfield !important;
}

input[type="text"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="submit"] {
	-webkit-appearance: none;
	appearance: none;
}

input[type='text']:not(.swal2-input),
input[type='search'],
input[type='password'],
input[type='number'],
input[type='tel'], 
select,
textarea {
	border: 1px solid #e8e8e8;
	display: block;
	width: 100%;
	font-size: 13px;
	padding: 8px 8px;
	-webkit-appearance: none;
	appearance: none;
	background-color: #fff;
	border-radius: 0;
}

textarea {
	max-width: 100%;
	max-height: 300px;
	min-height: 30px;
}

input[type='text']:disabled,
input[type='password']:disabled,
input[type='number']:disabled,
select:disabled,
button:disabled,
.button[disabled],
textarea:disabled {
	background-color: #f5f5f5;
	border-color: #f5f5f5;
	color: #666;
	-webkit-text-fill-color:#666;
	cursor: default;
	 -webkit-opacity: 1;
	opacity: 1;
}

.button[disabled] {
	pointer-events: none;
}

textarea:disabled {
	resize: none;
}

.input-container label ~ textarea:disabled {
	width: calc(100% - 110px);
}
.input-container label ~ textarea {
	width: calc(100% - 110px);
}

.input-container input[type='date'] {
	padding: 8px;
	height: 33px;
}

button {
	border: 0;
}

select:not(:disabled) {
	background-image: url(/images/icons/dropdown-arrow-dark.png);
	background-position: right -1px center;
	background-repeat: no-repeat;
	background-size: auto 100%;
	cursor: pointer;
}

.header-logo img {
	max-height: 20px;
}

.header-username {
	font-weight: 600;
}

.header-block:last-child {
	text-align: right;
}

.header-company,
.header-username {
	font-size: 10px;
	color: #eee;
}

.header-company-large {
	font-size: 12px;
}

header .header-block #device_user,
header .header-block #device_company {
	background: #3a3a3a;
	color: #eee;
	font-size: 14px;
	border: none;
	background-image: url(/images/icons/down-arrow.png);
	background-position: right center;
	background-size: 8px 8px;
	background-repeat: no-repeat;
	padding-right: 15px;
	text-align: right;
}

/* header .header-block #device_user option {
	font-size: 12px;
	height: 0.5rem;
	min-height: 0.5rem;
} */

.header-details {
	padding-right: 10px;
	cursor: pointer;
}

.page-slide-container {
	margin-top: 45px;
	height: calc(100% - 100px);
	height: calc(100%);
/*	overflow-x: hidden;*/
	overflow-y: auto;
}
.page-slide-container-45 {
	height: calc(100% - 45px);
}
.page-slide {
	position: relative;
	left: 0;
}

.page-slide.open {
/*	left: -250px;*/
	transition: left .5s ease;
}

.page-slide::after {
	content: "";
}

.page-slide.open::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 250px;
	left: 0;
	background-color: rgba(0, 0, 0, 0.5);
/*	transition: .5s ease;*/
	z-index: 99;
}

.page-slide.open .fixed:not(header),
.page-slide.open .form-buttons-container,
.page-slide.open ~ .fixed_container {
/*	margin-left: -250px;*/
	transition: margin .5s ease;
}

.mobile-menu {
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
/*	right: -250px;*/
	width: 100%;
	max-width: 2048px;
	display: none;
	position: fixed;
	top: 0;
	bottom: 0;
	z-index: 999;
/*	background: #3a3a3a;*/
}

.page-slide.open .mobile-menu {
	display: block;
	right: 0;
	transition: .5s ease;
}

.mobile-menu-inner {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
/*	bottom: 40px;*/
	overflow-y: auto;
	padding-top: 45px;
	width: 250px;
	background: #3a3a3a;
}

.mobile-menu-nav {
	border-top: 2px solid #555;
	position: absolute;
	right: 0;
	left: 0;
	bottom: 50px;
	top: 45px;
	overflow-y: auto;
}

.mobile-menu-lower {
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	/* border-top: 2px solid #555; */
}

.mobile-menu ul {
	list-style: none;
}

.mobile-menu-nav a {
	display: block;
	text-align: center;
	font-size: 14px;
	color: #eee;
	padding: 10px;
	width: 100%;
	border-bottom: 2px solid #555;
	height: 38px;
}

.mobile-menu-lower {
	/* height: 35px; */
}
/* 
.mobile-menu-lower select,
.mobile-menu-lower .cog,
.mobile-menu-lower .logout {
	height: 33px;
} */

.mobile-menu-lower select {
	height: 35px;
}

.mobile-menu .cog,
.mobile-menu .logout {
	width: 40px;
	border-left: 2px solid #555;
	border-top: none;
}

.mobile-menu .cog svg,
.mobile-menu .logout svg {
	height: 12px;
	width: 12px;
}

.mobile-menu .cog svg path,
.mobile-menu .logout svg path {
	fill: #eee;
}

.loading-spinner {
	position: relative;
}

.loading-spinner::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	margin: -6px 0 0 -6px;
	height: 12px;
	width: 12px;
	background-image: url(/images/loading-white.png);
	background-position: center center;
	background-size: 100% 100%;
	animation: rotate 1s linear infinite;
}
.loading-spinner > svg {
	display: none;;
}

.current-warehouse {
	color: #aaa;
	position: relative;
	width: 100%;
}

.current-warehouse.loading {
	opacity: 0.7;
}

.current-warehouse.loading::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	margin: -4px 0 0 -4px;
	height: 8px;
	width: 8px;
	background-image: url(/images/loading-white.png);
	background-position: center center;
	background-size: 100% 100%;
	animation: rotate 1s linear infinite;
}

.current-warehouse.loading select {
	background-image: none;
}

.current-warehouse-title {
	padding-bottom: 5px;
	padding-left: 10px;
	font-size: 14px;
}

.current-warehouse-name {
	color: #eee;
}

.current-warehouse-change {
	font-size: 11px;
}

.current-warehouse select {
	background-image: url(/images/icons/down-arrow.png);
	background-position: right 10px center;
	background-size: 8px 8px;
	background-repeat: no-repeat;
	padding: 5px 10px 5px 30px;
	background-color: #3a3a3a;
	-webkit-text-fill-color: #eee;
	border: none;
	color: #eee;
	border-top: 2px solid #555;
}

.current-warehouse::before {
	content: "";
	position: absolute;
	left: 10px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	background-image: url(/images/icons/warehouse.png);
	background-position: center center;
	background-size: 12px 12px;
	background-repeat: no-repeat;
	height: 12px; 
	width: 12px;
	z-index: 1;
}

.validate_border {
	border-color: #ce4b4b !important;
}

.bottom-pad {
	padding-bottom: 15px;
}

.top-pad {
	padding-top: 15px;
	margin-bottom: 30px;
}

.title,
.text,
.title span {
	font-size: 13px;
	font-weight: 600;
}

.title {
	border-bottom: 1px solid #3a3a3a;
	margin-bottom: 15px;
	padding: 0 15px 4px;
}

span.title-sub-light {
	font-weight: normal;
	color: #888;
}

.form-fields .title {
	margin-top: 10px;
}

.button {
	background-color: #3a3a3a;
	color: #fff;
	/* padding: 8px 40px; */

	/* Make buttons bigger 04/03/2022 */
	padding: 10px 40px 9px;
	font-weight: 600;
	font-size: 16px;
	/* End changes */

	/* font-size: 12px; */
	margin: 0 auto;
	max-width: 100%;
	border-radius: 20px;
	user-select: none;
}

.button-proceed {
	font-size: 16px;
	padding: 10px 40px 9px;
	background-color: #008ccb;
	color: #fff;
}

.button-bordered {
	border: 1px solid#3a3a3a;
	background: #fff;
	color: #3a3a33;
}

.button-bordered-light {
	border: 1px solid #aaa;
	background: #fff;
	color: #888;
	font-weight: normal;
}

.button-warn {
	background-color: #d44444;
}
.button-red {
	background-color: #d44444;
}

.button-green {
	background: #41a541;
}
.button-orange {
	background-color: #ff942e;
}

.button-blue {
	background-color: #008ccb !important;
	border-color: #008ccb;
	color: #fff;
}

.button-purple {
	background: #af49af;
    border-color: #af49af;
    color: #fff;
}

.button-light-blue {
	background-color:#89cae7;
	color: #fff;
}

.button-small {
	padding: 5px 20px;
}

.button-greyed {
	opacity: 0.4;
	pointer-events: none;
}

.button-greyed .button-round-inner {
	background: #ccc;
}

.button,
.button:hover,
.button-round,
.button-round:hover {
	text-decoration: none;
}

.button, 
.button-round {
	text-align: center;
	cursor: pointer;
	font-weight: 600;
}

.button, 
.button-round-inner {
	transition: background-color .3s ease;
}

.button-round {
	padding: 0 8px;
}

.button-round-inner {
	height: 75px;
	width: 75px;
	border: 1px solid #e8e8e8;
	border-radius: 50%;
}

.button-round-inner img {
	max-width: 40%;
	max-height: 40%;
}

.button-round:hover .button-round-inner {
	background: #e8e8e8;
}

.button-round-text {
	padding-top: 14px;
	font-size: 14px;
	/* line-height: 20px; */
	line-height: 16px;
}

.button-round-highlighted .button-round-inner {
	background-color: #89cae7;
}

.button-round-highlighted:hover .button-round-inner {
	background-color: #a6dbf3;
}

.button-counter {
	display: flex;
    flex-direction: column;
    align-items: center;
    padding: 5px 10px;
    margin: 0 10px 10px 0;
    /* border-radius: 5px; */
    border: 1px solid #c3c3c3;
}

.button-counter span:not(:first-child) {
	margin-top: 5px;
}

.button-pick,
.button-pick-large {
	background: #41a541;
	font-size: 18px;
}

.button-pick-large {
	font-size: 21px;
}

.page-title {
	background: #e8e8e8;
	text-align: center;
	padding: 8px 12px;
	z-index: 15;
	position: relative;
}

.page-title-icon {
	height: 25px;
	width: 25px;
	min-width: 25px; /* Make sure it doesn't shrink if text overflows the parent container */
	border: 1px solid #fff;
	border-radius: 50%;
	margin: 0 10px 0 0;
}

.page-title-icon img {
	max-height: 50%;
	max-width: 50%;
}

.page-title-text {
	font-size: 14px;
	font-weight: 600;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.page-title-link {
	max-width: calc(100% - 55px);
}

.barcode-search.loading,
.form-container.saving input[type='submit'] {
	pointer-events: none;
}

.form-container.refreshing * {
	pointer-events: none;
}

.form-container.refreshing {
	opacity: 0.7;
}

.loading .barcode-search-button,
.saving button {
	position: relative;
	color: transparent;
}

.loading .barcode-search-button svg {
	display: none;
}

.loading .barcode-search-button:after,
.saving button:after {
	content: "";
	background-image: url(/images/loading-white.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	height: 16px;
	width: 16px;
	animation: rotate 1s linear infinite;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -8px 0 0 -8px;
}

.barcode-search {
	overflow: hidden;
	padding-top: 15px;
}

.barcode-search ~ .form-upper {
	padding-top: 15px;
}

.barcode-search-form .form-errors {
	padding: 0 15px;
}

.barcode-input {
	position: relative;
}

.barcode-input-buttons {
	position: absolute;
	top: 2px;
	right: 0px;
	bottom: 2px;
}

.barcode-input-buttons div {
	cursor: pointer;
	height: 100%;
}

.barcode-input-buttons .barcode-search-button {
	background: #3a3a3a;
	width: 40px;
	height: 40px;
}

.barcode-input-small .barcode-search-button {
	height: 33px;
	width: 33px;
}

.barcode-input.barcode-input-small input {
	padding: 8px;
}

.barcode-input-buttons .barcode-search-button svg {
	height: 10px;
	width: 10px;
}

.barcode-input-buttons .barcode-search-button path {
	fill: #eee;
}

.barcode-button {
	background-image: url(/images/buttons/barcode.jpg);
    background-position: center left;
    background-repeat: no-repeat;
    background-size: 25px 20px;
    background-color: #fff;
    width: 38px;
}

.barcode-button-v2 {
	border: 1px solid #e8e8e8; 
	border-right: none;
	width: 45px;
	background-position: center center;
	cursor: pointer;
}

.barcode-button.disabled {
	/* opacity: 0.4; */
	pointer-events: none;
}

.barcode-clear {
	background-image: url(/images/close.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 12px 12px;
	background-color: #fff;
	width: 40px;
	height: 40px;
	opacity: 0.8;
}

.barcode-input:not(.active) .barcode-clear {
	display: none;
}

.barcode-input input {
	padding: 12px 8px;
}

.modal {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.7);
	z-index: 999;
}

.modal-inner {
	background: #fff;
	padding: 15px 15px;
	position: fixed;
	top: 5%;
	width: 95%;
	max-width: 600px;
	height: 90%;
	overflow: hidden;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.modal-close {
	background: #fff;
	background-image: url(/images/close.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 15px 15px;
	height: 24px;
	width: 24px;
}


.modal-body {
	text-align: center;
	position: absolute;
	right: 20px;
	bottom: 20px;
	left: 20px;
	top: 60px;
	padding: 10px;
	background-color: #fff;
}

.modal.scanner video, 
.modal.scanner canvas {
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	max-height: 100%;
	max-width: 100%;
	height: 400px;
}

.modal:not(.novideo) input[type='file'] {
	display: none;
}

.modal.novideo video,
.modal.novideo canvas {
	display: none;
}

.modal.novideo .error {
	display: none;
}

.modal input[type='file'] {
	margin: 10px 0 0;
	padding: 0;
}

.message {
	padding: 10px 15px;
	margin: 0 0 15px 0;
	text-align: center;
	font-size: 13px;
	/* color: #51c751; */
	/* border: 1px solid #51c751; */
	background-color: #51c751;
	color: #fff;
}

.message-error {
	/* border: 1px solid #ce4b4b;
	color: #ce4b4b; */
	background-color: #ce4b4b;
	color: #fff;
}

.message-error span {
	font-weight: 600;
	font-size: 14px;
	padding-top: 4px;
	display: inline-block;
}

.message-warn {
	/* border: 1px solid #ff942e; */
	/* color: #ff942e; */
	background-color: #ff942e;
	color: #fff;
}

.message-prompt {
	/* border: 1px solid #ff942e; */
	/* color: #ff942e; */
	background-color: #008ccb;
	color: #fff;
}


.message-info {
	/* border: 1px solid #888; */
	/* color: #666; */
	background-color: #888;
	color: #fff;
}

.form-list {
	padding: 15px 0 0;
}

.form-list-bordered {
	border-bottom: 1px solid #e8e8e8;
	border-top: 1px solid #e8e8e8;
}

.form-list-row {
	padding: 8px 8px;
	color: #3a3a3a;
	cursor: pointer;
	min-height: 50px;
	border-bottom: 1px solid #e8e8e8;
}

.form-list-row-small {
	min-height: 0;
}

.form-list-row:last-child {
	border-bottom: 0;
}

.form-list-row-item:first-child {
	padding-bottom: 4px;
}

.form-list-row-item:last-child {
	padding-bottom: 0;
}

.form-list-row-item.light {
	color: #aaa;
}

.form-list-row-item.light,
.form-list-row-item.small {
	font-size: 11px;
}

.form-list-row:nth-child(2n + 2) {
	background-color: #fff;
}

.stock-list .form-list-row {
	padding: 5px 16px;
	min-height: 32px;
	font-size: 11px;
}

.form-list-block-title {
	padding: 12px 8px;
	font-weight: 600;
}

.form-list-block-title .default-location {
	font-size: 12px;
	font-weight: normal;
	padding-right: 8px;
	white-space: nowrap;
	max-width: 145px;
	overflow: hidden;
	text-overflow: ellipsis;
}

.form-list-block-title .warehouse-stock-level {
	display: inline-block;
	min-width: 45px;
	text-align: right;
}

/* Display the list more like buttons, so spacing in between */
.form-list-row.form-list-row-buttons {
	margin: 10px 10px 0 10px;
	/* border: 1px solid #e8e8e8; */
	border: 1px solid #e8e8e8;
	padding: 10px 16px;
    position: relative;
	/* background-color: #e8e8e8; */
	background-color: #f5f5f5;
}

.form-list-row.text-greyed,
.form-list-row.text-greyed span,
.form-list-row.text-greyed p,
.form-list-row.text-greyed div {
	/* color: #bbb; */
	font-weight: normal;
}

.form-list-row.text-greyed {
	opacity: 0.5;
}

.form-list-row-dropdown {
	display: none;
	border-left: 1px solid #e8e8e8;
	border-right: 1px solid #e8e8e8;
	border-bottom: 1px solid #e8e8e8;
}

/* .form-list-row.text-greyed .colour-indicator {
	opacity: 0.7;
} */

.colour-indicator {
    position: absolute;
    left: -1px;
    top: -1px;
    bottom: -1px;
    width: 10px;
}

/* .form-list-row.form-list-row-buttons .form-list-row-item {
	font-size: 14px;
} */

.star{
	height: 11px;
	display: inline-block;
	padding-left: 7px;
	margin-top: -2px;
}

.star svg {
	height: 11px;
	width: 11px;
}

.form-list-row-item .star svg path,
.form-list-block:not(.expanded) .form-list-block-title .star svg path {
	fill: #3a3a3a !important;
}

.form-list-block .form-list-block-inner {
	display: none;
}

.form-list-block.expanded .form-list-block-inner {
	display: block;
}

.form-list-block.expanded .form-list-block-inner:last-child,
.form-list-block-title {
	border-bottom: 4px solid #008ccb;
}

.form-list-block:last-child .form-list-block-inner:last-child,
.form-list-block:last-child .form-list-block-title {
	border-bottom: 0;
}

.form-list-block.expanded .form-list-block-title,
.fixed_container .form-list-block-title {
	background: #2aa5dc;
	border: 0;
	color: #fff;
}

.expandable .flex-between .form-list-row-item {
	padding: 0;
}

.form-fields.small_pad {
	padding: 5px 0;
}

.input-container {
	margin-bottom: 5px;
	position: relative;
}

.input-container.clickable:hover input {
	border: 1px solid #008ccb;
}

.input-container label {
	width: 110px;
	text-align: right;
	padding: 0 10px 0 0;
	font-size: 13px;
	-webkit-user-select: none;
	-user-select: none;
}

.input-container.flex-start label {
	padding-top: 8px;
}

.input-container input,
.input-container select {
	width: calc(100% - 110px);
	margin-bottom: 0;
}

textarea {
	width: 100%;
	padding: 10px;
}

.input-container-inner {
	position: relative;
}

.photo-container {
	/* display: flex; */
	/* justify-content: center; */
}

.modal-hidden {
	display: none;
}
.modal-title {
	margin-bottom: 3px;
	user-select:none;
}
.photo-modal-body {
	bottom: unset;
	min-height: 480px;
}
.modal-buttons {
	display:flex;
	margin-left: auto;
	margin-right: auto;
	margin-top: 6px;
	gap: 10px;
}
.input-prefix {
	position: absolute;
	left: 8px;
	font-size: 13px;
	color: #aaa;
}

.input-prefix ~ input {
	padding-left: 28px;
}

.input-container .input-edit,
.input-container .star{
	position: absolute;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	height: 25px;
	width: 30px;
}

.input-container .star{
	right: 0;
	padding: 0;
	margin: 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.input-container .input-edit ~ .star {
	right: 25px;
}

.input-container .input-edit svg,
.input-container .star svg {
	height: 15px;
	width: 15px;
}

.input-container .input-edit svg path,
.input-container .star svg path {
	fill: #888;
}

.input-container .input-container-default-value {
	position: absolute;
	right: 0;
	color: #aaa;
	font-size: 11px;
	padding: 10px;
	cursor: pointer;
}

.add-minus-container {
	position: absolute;
	right: 1px;
	top: 1px;
	bottom: 1px;
	-webkit-user-select: none;
	-user-select: none;
}

.add-minus-container span {
	height: 100%;
	width: 32px;
	background-color: #e8e8e8;
	display: inline-block;
	cursor: pointer;
	-webkit-user-select: none;
	user-select: none;
}

.add-qty,
.minus-qty,
.extract-down {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 30% auto;
}

.add-qty {
	background-image: url(/images/icons/plus.png);
}

.minus-qty {
	background-image: url(/images/icons/minus.png);
}

.extract-down {
	background-image: url(/images/icons/dropdown-arrow-dark.png);
}


.plus-minus-container {
	position: relative;
}

.plus-minus-container .plus-minus-down,
.plus-minus-container .plus-minus-up {
	height: 45px;
    width: 45px;
    display: inline-block;
    background-color: #e8e8e8;
    cursor: pointer;    
	background-position: center center;
    background-repeat: no-repeat;
    background-size: 30% auto;
}

.plus-minus-container .plus-minus-down {
	background-image: url(/images/icons/minus.png);
}

.plus-minus-container .plus-minus-up {
	background-image: url(/images/icons/plus.png);
}

.plus-minus-container .plus-minus-input {
	max-width: 70px;
    font-size: 20px;
    text-align: center;
    height: 45px;
    line-height: 45px;
}

.po-info-container {
    padding: 15px;
    border: 1px solid #d4d4d4;
    background: #f8f8f8;
}

.record-info .text,
.form-fields input[type='number']:not(:disabled),
.form-fields input[type='text']:not(:disabled),
.form-fields select:not(:disabled){
	color: #3a3a3a;
}

.product-info-block {
	-webkit-user-select: none;
	user-select: none;
}

.product-info-block .form-list-inner {
	display: none;
}

.product-info-block.expanded {
 	border-left: 5px solid #008ccb;
	border-right: 5px solid #008ccb;
	border-bottom: 5px solid #008ccb;
}
.product-green-block.expanded {
	border: 2.5px solid #51c751;
}
.product-red-block.expanded {
	border: 2.5px solid #ce4b4b;
}

.product-info-block.product-info-block-greyed {
	opacity: 0.5;
}

.fixed_container {
	position: fixed;
	top: 45px;
	width: 100%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: 9;
	max-width: 2048px;
	left: 50%;
}

.product-info-block.expanded .form-list-inner {
	display: block;
}

.product-info-block.expanded .product-info,
.fixed_container .product-info {
	background: #008ccb;
	border: 0 !important;
	color: #fff;
}

.fixed_container .product-info,
.fixed_container .form-list-block-title {
	position: relative;
	border-left: 5px solid #008ccb !important;
	border-right: 5px solid #008ccb !important;
}

.fixed_container .product-info {
	z-index: 1;
}

.fixed_container .product-info-item {
	pointer-events: none;
}

.product-info-block.expanded .form-list-block:last-child .form-list-block-title {
	border-color: #008ccb;
}

.product-info-block.expanded svg path,
.fixed_container svg path{
	fill: #fff;
}

.product-info {
	padding: 6px 13px;
	cursor: pointer;
	border-bottom: 1px solid #e8e8e8;
}

.product-info-block.expanded .product-info,
.fixed_container .product-info {
	padding: 6px 8px;
}

.product-info-block:first-child .product-info {
	border-top: 1px solid #e8e8e8;
}

.product-info,
.product-info-item {
	font-size: 12px;
}

.product-info-item {
	padding: 2px 0;
}

.product-info-item:first-child,
.form-list-row > div:first-child .form-list-row-item,
.no-overflow > :first-child,
.no-overflow-row {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.flex-between .product-info-item:nth-child(2),
.no-overflow > :nth-child(2) {
	padding-left: 10px;
}

.product-info-item-small,
.product-info-item-med {
	text-align: right;
}

.product-info-link-container {
	font-weight: 600;
	padding-top: 10px;
}

.product-info-link {
	padding: 5px 0 5px 5px;
}

.product-info-svg {
	padding: 0 5px 0 0;
	height: 12px;
	display: inline-block;
	vertical-align: middle;
	margin-top: -3px;
}

.product-info-svg svg {
	height: 12px;
	width: 12px;
}

.product-info-sku {
	font-weight: 600;
}

#forms > form:not(:last-child),
#forms .form-fields-container:not(:last-child) {
	display: none;
}

#forms > form:not(:first-child) .form-errors {
	padding: 15px 15px 0;
}

.form-close,
.form-refresh-svg {
	cursor: pointer;
	padding: 5px 0;
}

.form-refresh-svg {
	display: none;
	padding-right: 5px;
}

.form-close svg,
.form-refresh-svg svg {
	height: 15px;
}

.form-close svg path,
.form-refresh-svg svg path {
	fill: #3e3e3e;
}

.form-refresh-container.refresh .form-refresh,
.form-refresh-container.error .form-refresh-error,
.form-refresh-container.success .form-refresh-success {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.form-refresh-container {
	display: none;
}

.form-refresh-container.loading svg {
	animation: rotate 1s linear infinite;
}

.form-refresh-svg svg path {
	fill: #666;
}

.form-content {
	margin-top: 15px;
	padding: 20px;
}

.form-content-border {
	border: 1px solid #3e3e3e;
}

.form-fields-details {
	padding: 15px;
	background: #e8e8e8;
}

.address {
	font-size: 11px;	
}

.address-line {
	display: block;
}

#signature {
	width: 100%;
	min-height: 400px;
	background: #fff;
	touch-action: none;
}

.signature-container {
	position: relative;
	margin: 10px 0 0;
	max-height: 500px;
}

.signature-label {
	position: absolute;
	top: 0;
	left: 0;
	padding: 8px;
	background: #fff;
	font-size: 12px;
}

.toggle-torch {
	background-image: url(/images/icons/torch.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	height: 20px;
	width: 20px;
	transition: background-image .3s ease;
}

.toggle-torch[data-enabled="true"] {
	background-image: url(/images/icons/torch-on.png);
}

.modal-icon {
	display: inline-block;
}

.modal-icon:not(:last-child) {
	margin-right: 10px;
}

.expandable {
	position: relative;
	overflow: hidden;
}

.expandable .expand-container {
	display: none;
	padding: 10px 8px;
}

.delivery-signature {
	width: 50%;
	height: 100px;
	background-position: top right;
	background-repeat: no-repeat;
	background-size: 100px;
}

.filters input,
.filters select {
	margin: 0 10px 10px 0;
}

.filters select {
	min-width: 150px;
	width: auto;
}

.filters input:last-child,
.filters select:last-child {
	margin-right: 0;
}

.input-container-100 {
	padding-top: 10px;
}

.input-container-100 input[type='text'],
.input-container-100 input[type='number'],
.input-container-100 select,
.input-container-100 textarea {
	width: 100%;
	color: #2d2d2d;
	font-weight: normal;
	font-size: 12px;
}

.delivery-right {
	width: 50%;
	text-align: right;
}

.delivery-right div {
	width: 100%;
}

.menu-icon {
	display: inline-block;
	background-image: url(/images/icons/menu.png);
	background-position: center center;
	background-size: 100% 100%;
	background-repeat: no-repeat;
	height: 25px;
	width: 25px;
	transition: background-image .3s ease;
	cursor: pointer;
}

.page-slide.open .menu-icon {
	background-image: url(/images/icons/menu-open.png);
}

.login-container {
	margin-top: 50px;
}

.login-container .messages {
	margin-bottom: 15px;
}

.login-container .login-username {
	color: #444;
	padding: 6px 15px;
	border: 1px solid #555;
	font-size: 14px;
	font-weight: 600;
	margin-bottom: 35px;
}

.login-container input[type="tel"] {
	border: none;
	display: inline-block;
	text-align: center;
	border-bottom: 1px solid #bbb;
	margin: 0;
	width: 10px;
	animation: input .2s linear forwards;
}

.login-user-container {
	max-width: 300px;
	width: 100%;
	margin-bottom: 90px;
}

.login-user-container .login-user {
	padding: 0 3px 6px 3px;
}

.login-user-container .login-user .button {
	/* margin: 0;
	width: 100%;
	padding: 8px 10px;
	border-radius: 0; */
	margin: 0;
    width: 100%;
    padding: 4px 10px;
    border-radius: 0;
    height: 30px;
    font-size: 14px;
}

.login-pin-container {
	margin-bottom: 30px;
}

.login-pin-container.focus::after, 
.login-pin-container.focus::before {
	content: "";
	position: absolute;
	bottom: 0;
	width: 10px;
	animation: input-small .2s linear forwards;
	height: 1px;
	background: #000;
}

.login-pin-container.focus::after {
	left: 50%;
}

.login-pin-container.focus::before {
	right: 50%;
}

.pin-mask {
	position: absolute;
	height: 12px;
	top: 7px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-image: url(/images/icons/dot-dark.png?v=1);
	background-position: left center;
	background-repeat: repeat-x;
	background-size: 10px 10px;
	pointer-events: none;
}

.pin-masked-input {
	color: transparent;
	caret-color: #3a3a3a;
	letter-spacing: 0.35em;
	border-radius: 0;
}

.pin-masked-selector { 
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 28px;
}

.login-container label {
	font-size: 14px;
	padding-bottom: 5px;
}

.login-pin-container {
	position: relative;
}

.form-buttons-container {
	bottom: 0;
	padding: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-top: 1px solid #aaa;
	background: #fff;
}

.form-buttons-container ~ .form-fields {
	padding-bottom: 60px;
	margin-bottom: 60px;
}

.page-link-block {
	padding-bottom: 20px;
}

.qr-code {
	padding-top: 20px;
}

.qr-code svg {
	height: 100px;
	width: 100px;
	max-height: 50%;
	max-width: 50%;
}

.notice {
	font-size: 18px;
}
			
.next-pick-label {
	padding-right: 5px;
}

.next-pick-large span {
	font-size: 14px;
}

.next-pick-large div {
	font-size: 62px;
	line-height: 62px;
	margin-top: 15px;
}

/* span.next-pick-items-qty { */
	/* font-size: 62px;
	line-height: 62px;
} */

.next-pick-large .next-pick-items {
	padding: 5px 0;
	border-radius: 10px;
	border: 1px solid #aaa;
	background: #efefef;
}

.next-pick-large .next-pick-items.success,
.next-pick-large .next-pick-items.complete,
.next-pick-location.success {
	border: 1px solid green;
	background: #cdf1cd;
	transition: 100ms;
}

.form-list-row.success {
	background: #cdf1cd;
	transition: 100ms;
}

.next-pick-location.success {
	color: #2d2d2d;
}

.next-pick-large .next-pick-items.fail {
	border: 1px solid red;
	background: #ffbfbf;
	transition: 100ms;
}

.tote_barcode.fail {
	border: 1px solid red;
	background: #ffbfbf;
	transition: 100ms;
}

.next-pick-large .next-pick-items.complete {
	background-image: url(/images/icons/tick-green.png);
	background-size: 25%;
	background-repeat: no-repeat;
	background-position: center center;
	color: transparent;
}

.next-pick-medium {
	font-size: 38px;
}

.next-pick-scanned,
.next-pick-items {
	padding: 0 4px;
}

.next-pick-items {
	padding-left: 3px;
}

.overlaid-container.next-pick-items {
	padding: 14px 0 5px;
}

span.next-pick-overlaid {
	position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #fff;
    /* height: 20px; */
    margin: 0;
    font-size: 12px;
    line-height: 12px;
    padding: 3px 8px;
    border-radius: 3px;
    border: 1px solid #aaa;
}

.next-pick-items.overlaid-container::before {
	content: "Pick";
	position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #fff;
    /* height: 20px; */
    margin: 0;
    font-size: 12px;
    line-height: 12px;
    padding: 3px 8px;
    border-radius: 3px;
    border: 1px solid #aaa;
	color: #3e3e3e;
}

.next-pick-location {
	/* background: #2d2d2d; */
	/* border: 1px solid #2d2d2d; */
	/* color: #fff; */
	border: 1px solid transparent;
	padding: 10px 20px;
	font-weight: bold;
	border-radius: 15px;
	min-width: 280px;
	transition: .3s ease;
	width: 100%;
	max-width: 500px;
}

.next-pick-location-code {
	font-size: 24px;
	padding-bottom: 4px;
}

.next-pick-location.resize {
	min-width: 120px;
	font-size: 16px;
	padding: 6px 20px;
	border-radius: 5px;
}

.pick-batchid-large {
	font-size: 48px;
	font-weight: bold;
	padding-top: 20px;
}

.tote-text,
input.tote-label-input {
	color: #fff !important;
	font-size: 14px;
	text-align: center;
	padding: 8px 30px;
	transition: .3s ease;
	max-width: 100%;
}

.tote-text {
/*	min-width: 150px;*/
	border-radius: 8px;
}

input.tote-label-input {
	padding: 7px 30px;
	border-color: transparent;
}

.next-pick-tote.resize .tote-text,
.next-pick-tote.resize input.tote-label-input {
	font-size: 12px;
	padding: 6px 10px;
	min-width: 120px;
}

.next-pick-tote.resize input.tote-label-input {
	padding: 5px 10px;
}

.next-pick-info-container {
/*	margin: 30px 0 0;*/
	/* margin: 15px 0 0; */
	margin: 10px 0 0;
	padding-top: 5px;
	padding-bottom: 5px;
	/* background: #f1f1f1; */
	/* border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc; */
}

.next-pick-info {
	white-space: nowrap;
	font-size: 16px;
}

.next-pick-info:first-child {
	overflow: hidden;
	text-overflow: ellipsis;
	padding-right: 10px;
}

.next-pick-info:last-child {
	min-width: 60px;
	font-weight: 600;
	text-align: right;
}

.next-pick-product-title {
	/* font-size: 16px; */
	font-size: 15px;
	font-weight: 600;
	padding: 2px 0 4px;
	/* white-space: nowrap; */
	overflow: hidden;
	text-overflow: ellipsis;

	/* clip to n number of lines */
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-height: 18px;
	max-height: 56px;
	min-height: 50px;
}

.next-pick-top > span {
	font-size: 12px;
	color: #aaa;
}

.next-pick-top .number {
	font-size: 20px;
}

.next-pick-container {
	/* margin-bottom: 72px; */
}

.next-pick-container .minus-qty,
.next-pick-container .add-qty {
	height: 45px;
	width: 45px;
	display: inline-block;
	background-color: #e8e8e8;
	cursor: pointer;
}

input.next-pick-picked {
	max-width: 70px;
	font-size: 20px;
	text-align: center;
	height: 45px;
	line-height: 45px;
}

.number-stat div:first-child {
	font-size: 16px;
}

.number-stat div:last-child {
	font-size: 18px;
	font-weight: bold;
	padding: 5px 0;
}

.last-pick-container {
	padding: 0;
	/* margin: 15px 0 0; */
	margin: 10px 0 0;
	border-top: 1px solid #ccc;
/*	border-bottom: 1px solid #ccc;*/
	/* position: absolute;
	right: 0;
	left: 0;
	bottom: 0; */
}

.last-pick-label {
	font-size: 11px;
	color: #888;
	padding: 8px 0 0 8px;
	margin-bottom: -5px;
}

.last-pick-container .form-list-row-item:first-child {
	padding-bottom: 0;
}

.pick-buttons {
/*	padding: 30px 0 15px;*/
/*	padding: 20px 0 5px;*/
}

.pick-buttons .pick-button {
	position: relative;
}

.pick-button .button-small {
	min-width: 70px;
}

/*
.pick-options {
    background-image: url(/images/icons/down-arrow.png);
    background-position: right 16px center;
    background-size: 8px 8px;
    background-repeat: no-repeat;
    padding-right: 30px;
}
*/

.pick-options {
	position: relative;
	z-index: 10;
}

.pick-options-container {
	opacity: 0;
	z-index: -1;
    position: absolute;
	right: 0;
    white-space: nowrap;
    bottom: 24px;
}

.pick-options-container.pick-options-left {
	left: 0;
	right: auto;
}

.pick-options-container.pick-options-center {
	left: auto;
	right: auto;
}

.pick-options-container.pick-options-left .button {
	float: left;
}

.pick-options-container.show ~ .pick-options {
	color: transparent;
	background-image: url(/images/close-white.png);
	background-size: 8px 8px;
	background-position: center center;
	background-repeat: no-repeat;
}

.pick-options-container.show {
	z-index: 10;
	opacity: 1;
	transition: opacity .3s ease;
}

.pick-options-container-cover {
	/* position: absolute; */
	position: fixed;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.5);
	z-index: -1;
	opacity: 0;
}

.pick-options-container-cover.show {
	opacity: 1;
	z-index: 9;
}

.form-fields-overlay {
	position: absolute;
	top: 0;
	/* bottom: 0; */
	right: 0;
	left: 0;
	display: none;
	min-height: 100%;
}

.form-fields-overlay {
	z-index: 1000;
	background: rgba(255,255,255,1);
}

.form-fields-overlay.show {
	/* display: block; */
	display: flex;
}

.form-fields-overlay-inner {
	background: #2d2d2d;
	border-radius: 15px;
	color: #fff;
	/* padding: 15px; */
	padding: 15px 30px;
	border: 1px solid transparent;
	width: 100%;
}

.form-fields-overlay-inner.success,
.form-fields-overlay-inner.complete {
	background-color: #cdf1cd;
	border: 1px solid green;
	transition: 100ms;
}

.form-fields-overlay-inner.success,
.form-fields-overlay-inner.complete,
.form-fields-overlay-inner.fail {
	color: #2d2d2d;
}

.form-fields-overlay-inner.fail {
	border: 1px solid red;
	background: #ffbfbf;
	transition: 100ms;
}

.form-fields-overlay-inner.complete .tote-barcode-overlay-message {
	background-image: url(/images/icons/tick-green.png);
	/* background-size: 25%; */
	background-size: 15px;
	background-repeat: no-repeat;
	background-position: center center;
	color: transparent;
}

.form-fields-overlay:not(.flex-center) .form-fields-overlay-container {
	/* position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%); */
	padding: 30px 0;
	margin: 0 auto;
}

.form-fields-overlay-container:not(.w-100) {
	max-width: 320px;
}

.form-fields-overlay-container {
	/* max-width: 90%; */
}

.pick-options-container .button {
	margin: 0 0 20px;
    color: #2d2d2d;
    background: #fff;
    border: 1px solid #2d2d2d;
	float: right;
	clear: both;
	font-size: 18px;
}

.form-list-row.fully_picked {
	background-color: lightgreen;
	border-color: #fff;
}

.next-pick-error,
.next-pick-success {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(255, 0, 0, 0.8);
    z-index: 12;
	display: none;
}

.next-pick-success {
	background: rgba(65, 170, 65, 0.9)
}

.next-pick-error-inner,
.next-pick-success-inner {
    position: absolute;
    top: 25%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
	width: 450px;
	max-width: 90%;
}

.next-pick-error .title,
.next-pick-success .title {
	border: none;
	font-size: 21px;
}

.next-pick-error .button,
.next-pick-success .button {
	font-size: 14px;
}

.next-pick-error.shake .next-pick-error-inner-cont {
    background: #fff;
    padding: 20px 40px 25px;
	-webkit-animation-name: shake;
	animation-name: shake;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	text-align: center;
}

.next-pick-success .next-pick-success-inner-cont {
	background: #fff;
    padding: 20px 40px 25px;
}

.shake {
	-webkit-animation-name: shake;
	animation-name: shake;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

.tab-links a {
	background: #e8e8e8;
	padding: 8px 20px;
	margin-right: -1px;
	display: inline-block;
	border: 1px solid #e8e8e8;
	border-bottom: none;
	position: relative;
}

.tab-links a.active {
	background: #fff;
}

.tab-links a.active::before {
	content: "";
	height: 1px;
	width: 100%;
	position: absolute;
	left: 0;
	bottom: -1px;
	background: #fff;
	z-index: 1;
}

.tab-links a.tab-active {
	background: #fff;
}

.tab-links a.tab-active::before {
	content: "";
	height: 1px;
	width: 100%;
	position: absolute;
	left: 0;
	bottom: -1px;
	background: #fff;
	z-index: 1;
}


.tab-links {
	border-bottom: 1px solid black;
	margin-top: 5px;
}
.tab {
	display: none;
	/* padding: 15px 0; */
	border-top: 1px solid #e8e8e8;
	margin-top: 15px;
}

.tab.active {
	display: block;
}

.rel {
	position: relative;
}

.w-100 { width: 100%; }
.w-90 { width: 90%; }
.w-80 { width: 80%; }
.w-70 { width: 70%; }
.w-60 { width: 60%; }
.w-50 { width: 50%; }
.w-40 { width: 40%; }
.w-33 { width: 33%; }
.w-30 { width: 30%; }
.w-25 { width: 25%; }
.w-20 { width: 20%; }
.w-10 { width: 10%; }

.p-5 { padding: 5px; }

.mh-50 { max-height: 50px; }

.minh-0 { min-height: 0; }

.minw-45 { min-width: 45px; }
.minw-100 { min-width: 100px; }
.minw-150 { min-width: 150px; }
.minw-200 { min-width: 200px; }

.maxw-45 { max-width: 45px; }
.maxw-100 { max-width: 100px; }
.maxw-150 { max-width: 150px; }
.maxw-200 { max-width: 200px; }

.maxw--100 { max-width: calc(100% - 100px); }
.maxw--150 { max-width: calc(100% - 150px); }
.maxw--200 { max-width: calc(100% - 200px); }


.add-minus-container.contain {
	right: 3px;
	bottom: 3px;
	top: 3px;
}

.add-minus-container.contain span {
	width: 26px;
}

.custom-form .form-errors {
	padding: 15px 15px 0;
}

.query-row {
	padding-bottom: 5px;
	margin-bottom: 5px;
	border-bottom: 1px solid #ccc;	
}

.query-row-item {
	padding: 1px 15px;
}

.query-row-overflow {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.images-container {
	width: calc(100% - 110px);
}

.images-container .image-container img {
	max-height: 200px;
}

.checkbox-container {
	display: flex;
	position: relative;
}

.checkbox-container input[type='checkbox'] {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	-webkit-appearance: none;
	appearance: none;
}

.checkbox-container input[type='checkbox']:checked ~ .checkbox::before {
	background-image: url(/images/icons/tick_2.png);
}

.checkbox-container .checkbox::before {
	content: "";
	height: 16px;
	width: 16px;
	margin-right: 5px;
	border: 1px solid #ccc;
	background-position: center center;
	background-size: 60%;
	background-repeat: no-repeat;
	transition: .3s ease;
}

@-webkit-keyframes shake {
	0%, 100% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
	
	10%, 30%, 50%, 70%, 90% {
		-webkit-transform: translate3d(-3px, 0, 0);
		transform: translate3d(-3px, 0, 0);
	}
	
	20%, 40%, 60%, 80% {
		-webkit-transform: translate3d(3px, 0, 0);
		transform: translate3d(3px, 0, 0);
	}  
}

@keyframes shake {	
	0%, 100% {
		transform: translate3d(0, 0, 0);
	}
	
	10%, 30%, 50%, 70%, 90% {
		transform: translate3d(-3px, 0, 0);
	}
	
	20%, 40%, 60%, 80% {
		transform: translate3d(3px, 0, 0);
	}
}

@keyframes rotate {
	0% { 
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	50% { 
		-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
	}
	100% { 
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes input {
	100% {
		width: 220px;
	}
}

@keyframes input-small {
	100% {
		width: 110px;
	}
}



.fail-style {
	border: 1px solid red !important;
	background: #ffbfbf !important;
}

.success-style {
	background-color: #cdf1cd !important;
	border: 1px solid green !important;
}

.warn-style {
    background: #ff0000;
    color: #fff;
}

.m-0 { margin: 0px; }
.mt-0 { margin-top: 0px; }
.mr-0 { margin-right: 0px; }
.mb-0 { margin-bottom: 0px; }
.ml-0 { margin-left: 0px; }

.m-5 { margin: 5px; }
.mt-5 { margin-top: 5px; }
.mr-5 { margin-right: 5px; }
.mb-5 { margin-bottom: 5px; }
.ml-5 { margin-left: 5px; }

.m-10 { margin: 10px; }
.mt-10 { margin-top: 10px; }
.mr-10 { margin-right: 10px; }
.mb-10 { margin-bottom: 10px; }
.ml-10 { margin-left: 10px; }

.m-15 { margin: 15px; }
.mt-15 { margin-top: 15px; }
.mr-15 { margin-right: 15px; }
.mb-15 { margin-bottom: 15px; }
.ml-15 { margin-left: 15px; }

.p-0 { padding: 0px; }
.pt-0 { padding-top: 0px; }
.pr-0 { padding-right: 0px; }
.pb-0 { padding-bottom: 0px; }
.pl-0 { padding-left: 0px; }

.p-1 { padding: 1px; }
.pt-1 { padding-top: 1px; }
.pr-1 { padding-right: 1px; }
.pb-1 { padding-bottom: 1px; }
.pl-1 { padding-left: 1px; }

.p-5 { padding: 5px; }
.pt-5 { padding-top: 5px; }
.pr-5 { padding-right: 5px; }
.pb-5 { padding-bottom: 5px; }
.pl-5 { padding-left: 5px; }

.p-10 { padding: 10px; }
.pt-10 { padding-top: 10px; }
.pr-10 { padding-right: 10px; }
.pb-10 { padding-bottom: 10px; }
.pl-10 { padding-left: 10px; }

.p-15 { padding: 15px; }
.pt-15 { padding-top: 15px; }
.pr-15 { padding-right: 15px; }
.pb-15 { padding-bottom: 15px; }
.pl-15 { padding-left: 15px; }

.p-20 { padding: 20px; }
.pt-20 { padding-top: 20px; }
.pr-20 { padding-right: 20px; }
.pb-20 { padding-bottom: 20px; }
.pl-20 { padding-left: 20px; }

.p-25 { padding: 25px; }
.pt-25 { padding-top: 25px; }
.pr-25 { padding-right: 25px; }
.pb-25 { padding-bottom: 25px; }
.pl-25 { padding-left: 25px; }

.cursor-pointer {
	cursor: pointer;
}

.cursor-default {
	cursor: default;
}



.text {
	padding: 4px 0 12px 0;
}

.text-small {
	padding-bottom: 8px;
}

.text-large {
	font-size: 16px;
}

.text-regular {
	font-size: 14px;
}

.text-sm {
	font-size: 12px;
}

.text-xs {
	font-size: 10px;
}

.text-xlarge {
	font-size: 24px;
}

.text-xxlarge {
	font-size: 38px;
}

.text-bold {
	font-weight: bold;
}

.text-normal {
	font-weight: normal;
}

.text-light {
	color: #3a3a3a;
}

.text-xlight {
	color: #999;
}

.text-green {
	color: #67b467;
}

.text-red {
	color: #d44444;
}

.text-white {
	color: #fff;
}

.text-offwhite {
	color: #eee;
}

.text-blue {
	color: #008ccb;
}

.text-orange {
	color: #e58300;
}

.text-underline {
	text-decoration: underline;
}

.text-underline-bordered {
	border: 1px solid;
}

.background-purple {
	background: #af49af;
    border-color: #af49af;
    color: #fff;
}

.no-location-float {
	position: absolute;
	bottom: 15px;
	left: 20px;
}

.page-slide,
main,
.form-fields,
.next-pick-container,
.flex-column-grow {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.red-circle {
	border-radius: 50%;
    text-align: center;
    /* border-color: red; */
    /* border: 1px solid #bc5656; */
    height: 20px;
    width: 20px;
    font-size: 11px;
    padding-top: 4px;
    color: #fff;
    background: #e04b4b;
}
.yellow-circle {
	border-radius: 50%;
    text-align: center;
    /* border-color: red; */
    /* border: 1px solid #bc5656; */
    height: 20px;
    width: 20px;
    font-size: 11px;
    padding-top: 4px;
    color: black;
    background: #ffe600;
}
.line-separator {
	padding-top: 2px;
	margin-top: 2px;
	border-top: 1px solid black;
}
.tracked-green .line-separator {
	border-color: #51c751;
}
.tracked-red .line-separator {
	border-color: #ce4b4b;
}

@media screen and (max-width: 480px) {
	header, 
	footer,
	.container,
	.container-inner,
	.title, 
	.page-title,
	.barcode-search-form .form-errors,
	#forms form:not(:first-child) .form-errors {
		padding-left: 10px;
		padding-right: 10px;
	}
	
	.bottom-pad {
		padding-bottom: 10px;
	}
	
	.button-round {
		padding: 0 3px;
		width: 65px;
	}
	
	.button-round-inner {
		height: 55px;
		width: 55px;
	}
	
	.button-round-text {
		padding-top: 8px;
		font-size: 11px;
		line-height: 14px;
	}
	
	.notice {
		font-size: 14px;
	}

	.images-container .image-container img {
		max-height: 140px;
	}
}

.scanned-tracked-stock-record {
	padding-top: 5px;
}
@-webkit-keyframes load8 {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes load8 {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

.button-loading {
	position: relative;
    cursor: wait;
	pointer-events: none;
}

.button-loading,
.button-loading span {
    color: transparent !important;
	-webkit-transition: 0;
	-moz-transition: 0;
	transition: 0;
}

.button-loading::before {
	content: "";
	position: absolute;
	top: calc(50% - 8px);
	left: calc(50% - 8px);
	border: 2px solid #fff;
	border-left-color: #dcdcdc;
	border-radius: 50%;
	-webkit-animation: load8 1.1s infinite linear;
	animation: load8 1.1s infinite linear;
	height: 16px;
	width: 16px;
}


@keyframes flickerAnimation {
	0%   { opacity:1; }
	50%  { opacity:0; }
	100% { opacity:1; }
}
@-o-keyframes flickerAnimation{
0%   { opacity:1; }
50%  { opacity:0; }
100% { opacity:1; }
}
@-moz-keyframes flickerAnimation{
0%   { opacity:1; }
50%  { opacity:0; }
100% { opacity:1; }
}
@-webkit-keyframes flickerAnimation{
0%   { opacity:1; }
50%  { opacity:0; }
100% { opacity:1; }
}
.animate-flicker {
	-webkit-animation: flickerAnimation 0.2s infinite;
	-moz-animation: flickerAnimation 0.2s infinite;
	-o-animation: flickerAnimation 0.2s infinite;
	animation: flickerAnimation 0.2s infinite;
}

@keyframes flickerBlueAnimation {
	0% {
		background-color: inherit;
	}
	50% {
		background-color: #2aa5dc;
	}
	100% {
		background-color: inherit;
	}
}
@keyframes flickerGreenAnimation {
	0% {
		background-color: inherit;
	}
	50% {
		background-color: #51c751;
	}
	100% {
		background-color: inherit;
	}
}
@keyframes flickerRedAnimation {
	0% {
		background-color: inherit;
	}
	50% {
		background-color: #ce4b4b !important;
	}
	100% {
		background-color: inherit;
	}
}
@keyframes flickerGreyAnimation {
	0% {
		background-color: inherit;
	}
	50% {
		background-color: #9b9b9b !important;
	}
	100% {
		background-color: inherit;
	}
}

.bg-white {
	background-color: #fff;
}



.animate-flicker-blue {
	animation: flickerBlueAnimation 3s infinite;
}
.animate-flicker-green {
	animation: flickerGreenAnimation 3s infinite;
}
.animate-flicker-red {
	animation: flickerRedAnimation 3s infinite;
}
.animate-flicker-grey {
	animation: flickerGreyAnimation 3s infinite;
}

.scanned:not(.last-scanned):not(.user-at-location) {
	  color: grey;
	  background-color: #fff !important;
}
.last-scanned {
	opacity: 1 !important;
}
#tracked-count {
	font-weight: bold;
	font-size: large;
}
.tracked-green {
	color: #51c751;
}
.tracked-red {
	color: #ce4b4b;
}
.permission-disabled {
	opacity: 0.4;
	pointer-events: none;
}

/* Toast */
.toast {
    visibility: hidden;
    max-width: 64px;
    height: 64px;
    /*margin-left: -125px;*/
    margin: auto;
    background-color: #3a3a3a;
    color: #999;
    text-align: center;
    border-radius: 2px;
    position: fixed;
    z-index: 1;
    left: 0;right:0;
    bottom: 30px;
    font-size: 16px;
    white-space: nowrap;
}
.toast .toast-image {
	width: 64px;
	height: 64px;
    float: left;
    padding: 3px;
    box-sizing: border-box;
	filter: invert(1);
}
.toast .toast-description {
    padding: 16px;
    overflow: hidden;
	white-space: nowrap;
}

.toast.show {
    visibility: visible;
    -webkit-animation: fadein 0.5s, expand 0.5s 0.5s,stay 3s 1s, shrink 0.5s 2s, fadeout 0.5s 2.5s;
    animation: fadein 0.5s, expand 0.5s 0.5s,stay 3s 1s, shrink 0.5s 4s, fadeout 0.5s 4.5s;
}

@-webkit-keyframes fadein {
    from {bottom: 0; opacity: 0;} 
    to {bottom: 30px; opacity: 1;}
}

@keyframes fadein {
    from {bottom: 0; opacity: 0;}
    to {bottom: 30px; opacity: 1;}
}

@-webkit-keyframes expand {
    from {min-width: 50px} 
    to {min-width: 350px}
}

@keyframes expand {
    from {min-width: 50px}
    to {min-width: 350px}
}
@-webkit-keyframes stay {
    from {min-width: 350px} 
    to {min-width: 350px}
}

@keyframes stay {
    from {min-width: 350px}
    to {min-width: 350px}
}
@-webkit-keyframes shrink {
    from {min-width: 350px;} 
    to {min-width: 50px;}
}

@keyframes shrink {
    from {min-width: 350px;} 
    to {min-width: 50px;}
}

@-webkit-keyframes fadeout {
    from {bottom: 30px; opacity: 1;} 
    to {bottom: 60px; opacity: 0;}
}

@keyframes fadeout {
    from {bottom: 30px; opacity: 1;}
    to {bottom: 60px; opacity: 0;}
}
/* End Toast */

/*
.image-scroller {
	height: 400px;
	overflow-x: auto;
	overflow-y:hidden;
	display: flex;
}
.image-scroller img {
	object-fit: cover;
	width: 100%;
	height: 375px;
}

.image-scroller::-webkit-scrollbar{
	height: 15px;
	background-color: #3a3a3a;
}
*/

.image-scroller {
	display: flex;
	overflow-x: auto;
	gap: 10px;
}

.image-scroller img {
	object-fit: cover;
	width: 100%;
}

.image-scroller--image {
	max-width: 375px;
	margin: 0 auto;
	padding-bottom: 5px;
}

.slick-list {
	padding:0 25% 0 0 !important;
}
.slick-slide {
	margin: 0 10px;
}

.button-side-by-side {
	display: inline-block;
}

.mobile-menu-page-settings {
	margin-left: 10px;
	margin-top: 5px;
}
.settings-label {
	display: flex;
	align-items: center;
	margin-top: 5px;
}
.settings-label input {
	flex: none;
	margin-right: 3px;
}
@media screen and (min-width:1000px) {
	body {
		zoom: 1.5;
	}
	#login-user-columns {
		display: flex;
		height: 100%;
		flex-direction: row-reverse;
	}
	#login-user-input, #login-user-selector {
		width: 100%;
	}
	.page-slide {
		height: 100%;
	}
	#login-user-selector {
		background-color: #eeeeee;
	}
}

#handheld-debug-info {
	user-select: none;
}

#scan-section {
	margin-bottom: 50px;
}


.styled-table {
    border-collapse: collapse;
    margin: 25px 0;
    font-size: 0.9em;
    font-family: sans-serif;
    min-width: 350px;
    /* box-shadow: 0 0 20px rgba(0, 0, 0, 0.15); */
}
.styled-table thead tr, .styled-table-header {
    background-color: rgb(58, 58, 58);
    color: #ffffff;
    text-align: left;
}
.styled-table th,
.styled-table td {
    padding: 12px 15px;
}


[data-after-text],
[data-before-text] {
	--badge-offset-x: calc(0px - var(--badge-size) / 3);
	--badge-offset-y: calc(0px - var(--badge-size) / 3);
	--badge-size: 1.5rem;
	--circle-size: 2rem;
	--dot-offset: 0.5rem;
	--dot-size: 0.5rem;
		
	--b: initial;
	--bgc: hsl(195, 100%, 30%);
	--bdrs: 0;
	--c: hsl(195, 100%, 99%);
	--d: inline-flex;
	--fz: 0.625rem;
	--fw: 700;
	--h: auto;
	--l: initial;
	--m: 0.4rem;
	--p: 0;
	--pos: static;
	--r: initial;
	--t: initial;
	--tt: uppercase;
	--w: initial;
	
	position: relative;
}

[data-after-text]:not([data-after-text=""])::after {
	content: attr(data-after-text);
}
[data-before-text]:not([data-before-text=""])::before {
	content: attr(data-before-text);
}

[data-after-text]:not([data-after-text=""])::after,
[data-before-text]:not([data-before-text=""])::before {
	align-items: center;
	background: var(--bgc);
	border-radius: var(--bdrs);
	bottom: var(--b);
	box-shadow: var(--bxsh);
	box-sizing: border-box;
	color: var(--c);
	display: var(--d);
	font-size: var(--fz);
	font-weight: var(--fw);
	height: var(--h);
	justify-content: center;
	left: var(--l);
	padding: var(--p);
	position: var(--pos);
	right: var(--r);
	text-decoration: none;
	text-transform: var(--tt);
	top: var(--t);
	width: var(--w);
	z-index: 100;
}

/* MODIFIERS */
[data-after-type*="badge"]::after,
[data-before-type*="badge"]::before {
	--bdrs: var(--badge-size);
	--bxsh: 0 0 0 2px rgba(255, 255, 255, 0.5);
	--h: var(--badge-size);
	--p: 0;
	--pos: absolute;
	--w: var(--badge-size);
}
[data-after-type*="circle"],
[data-before-type*="circle"]{
	align-items: center;
	display: flex;
}
[data-after-type*="circle"]::after,
[data-before-type*="circle"]::before {
	--bdrs: 50%;
	--fw: 400;
	--h: var(--circle-size);
	--tt: initial;
	--w: var(--circle-size);
}
[data-after-type*="circle"]::after,
[data-after-type*="pill"]::after {
	margin-inline-start: 1ch;
}
[data-before-type*="circle"]::before,
[data-before-type*="dot"]::before,
[data-before-type*="pill"]::before {
	margin-inline-end: 1ch;
}
[data-after-type*="dot"]::after,
[data-before-type*="dot"]::before {
	--bdrs: 50%;
	--d: inline-block;
	--fz: 50%;
	--h: var(--dot-size);
	--p: 0;
	--pos: relative;
	--t: -1px;
	--w: var(--dot-size);
}
[data-after-type*="dot"]::after,
[data-before-type*="dot"]::before {
	content: "" !important;
}
[data-after-type*="pill"]::after,
[data-before-type*="pil"]::before {
	--bdrs: 1rem;
	--p: 0.25rem 0.75rem;
	--pos: relative;
	--t: -1px;
}

/* COLORS */
[data-after-type*="blue"]::after,
[data-before-type*="blue"]::before {
	--bgc: #007acc;
}
[data-after-type*="darkgray"]::after,
[data-before-type*="darkgray"]::before {
	--bgc: #706e6b;
	--c: #fff;
}
[data-after-type*="green"]::after,
[data-before-type*="green"]::before {
	--bgc: #04844b;
}
[data-after-type*="lightgray"]::after,
[data-before-type*="lightgray"]::before {
	--bgc: #ecebea;
	--c: #080707;
}
[data-after-type*="orange"]::after,
[data-before-type*="orange"]::before {
	--bgc: #ffb75d;
	--c: #080707;
}

[data-after-type*="red"]::after,
[data-before-type*="red"]::before {
	--bgc: #c23934;
}

/* POSITION */
[data-after-type*="top"]::after,
[data-before-type*="top"]::before {
	--b: auto;
	--pos: absolute;
	--t: var(--dot-offset);
}
[data-after-type*="right"]::after,
[data-before-type*="right"]::before {
	--l: auto;
	--pos: absolute;
	--r: var(--dot-offset);
}
[data-after-type*="bottom"]::after,
[data-before-type*="bottom"]::before {
	--b: var(--dot-offset);
	--pos: absolute;
	--t: auto;
}
[data-after-type*="left"]::after,
[data-before-type*="left"]::before {
	--pos: absolute;
	--r: auto;
	--l: var(--dot-offset);
}
[data-after-type*="badge"][data-after-type*="top"]::after,
[data-before-type*="badge"][data-before-type*="top"]::before {
	--m: 0;
	--t: var(--badge-offset-y);
}
[data-after-type*="badge"][data-after-type*="right"]::after,
[data-before-type*="badge"][data-before-type*="right"]::before {
	--m: 0;
	--r: var(--badge-offset-x);
}
[data-after-type*="badge"][data-after-type*="bottom"]::after,
[data-before-type*="badge"][data-before-type*="bottom"]::before {
	--b: var(--badge-offset-y);
	--m: 0;
}
[data-after-type*="badge"][data-after-type*="left"]::after,
[data-before-type*="badge"][data-before-type*="left"]::before {
	--l: var(--badge-offset-x);
	--m: 0;
}

.container-inner > .title {
	margin-left: -10px;
	margin-right: -10px;
}

textarea {
	resize: none;
}

.new-message-overlay {
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
	max-width: 500px;
	min-height: unset;
}