/*
 *
 * Project Neptune Custom Styles
 *
 *
 * root, body, header, footer and other basic styles
 */

.loader {
  width: 10rem;
  height: 10rem;
  background: transparent;
  overflow: hidden;
  position: absolute;
  right: 50%;
  bottom: 75%;
  transform: translate(50%, 50%) scale(0.3);
  z-index: 11;
}

.gear {
  border-radius: 50%;
  background-color: var(--page-title-wrapper-bg, #f1e3e3);
  width: 6em;
  height: 6em;
  position: absolute;
  top: 0.75em;
  left: 0.75em;
  
  animation: gear-rotate-clockwise 5s infinite linear;
}

.gear .tooth {
  width: 7em;
  height: 1.5em;
  background-color: var(--page-title-wrapper-bg, #f1e3e3);
  position: absolute;
  top: 50%;
  left: 50%;
}

.gear__six .tooth:nth-child(2) {
  transform: translate(-50%, -50%) rotate(15deg);
}

.gear__six .tooth:nth-child(3) {
  transform: translate(-50%, -50%) rotate(75deg);
}

.gear__six .tooth:nth-child(4) {
  transform: translate(-50%, -50%) rotate(135deg);
}

.gear__six {
  font-size: 0.6666666666rem;
  top: 5.5rem;
  left: 5.5rem;
  
  animation-direction: reverse;
  animation-duration: 3.75s
}

.gear__six .tooth {
  height: 2em;
}

.gear .center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 3em;
  height: 3em;
  background-color: var(--page-title-colour, #003);
  z-index: 1;
  border-radius: 50%;
}

.gear__eight .tooth:nth-child(2) {
  transform: translate(-50%, -50%);
}

.gear__eight .tooth:nth-child(3) {
  transform: translate(-50%, -50%) rotate(45deg);
}

.gear__eight .tooth:nth-child(4) {
  transform: translate(-50%, -50%) rotate(90deg);
}

.gear__eight .tooth:nth-child(5) {
  transform: translate(-50%, -50%) rotate(135deg);
}

@keyframes gear-rotate-clockwise {
  from {
    transform: rotate(0);
  }
  
  to {
    transform: rotate(360deg);
  }
}

.all-together {
  display: flex;
  justify-content: center;
}

.all-together .loader {
  margin: 0;
}

.all-together .loader:first-child {
  transform: rotateY(180deg);
}

 /* TODO get rid of instances of '!important' (as many as possible) */
 /* TODO extract colors into css3 variables to make it easier to switch to dark mode */



/* -------------- basic stuff ------------------------- */

input, button, select, textarea {
  max-width: calc(100vw - (var(--screen-edge-padding, 1.5rem) * 2));
}

input.pass, button.pass, select.pass, textarea.pass {
  border-color: var(--pass-border-colour, green);
}

input.pass, textarea.pass {
  background-color: var(--pass-input-bg-colour, rgba(10, 235, 125, 0.1));
  color: var(--pass-input-text-colour, rgb(0, 100, 0));
}

input.fail, button.fail, select.fail, textarea.fail, select.fail + span .select2-selection {
  border-color: var(--fail-border-colour, red);
}

input.fail, textarea.fail, select.fail + span .select2-selection {
  background-color: var(--fail-input-bg-colour, rgba(150, 70, 10, 0.1));
  color: var(--fail-input-text-colour, rgb(50, 0, 0));
}

table {
  empty-cells: show;
}

img {
  border: 0;
  float: none;
  clear: left;
  max-width: 100%;
}

img:not([src="/fileserver/images/black.gif"]) {
  object-fit: contain;
  object-position: center;
}

.block-x-scroll {
  max-width: 100%;
  overflow-x: hidden;
}

.defaultCursor:visited:hover,
.defaultCursor:hover {
  cursor: default!important;
}

/* ------------------- Icons ------------------- */
/* default values for icons */

.default-icons {
  font-size: 1.1428571428571428rem !important;
  color: var(--text-colour, #000);
}

.mail-icon {
  font-size: 1.1428571428571428rem !important;
  color: var(--text-colour, #000);
}

.mail_outline-icon {
  font-size: 1.1428571428571428rem !important;
  color: var(--text-colour, #000);
  color: inherit;
}

.toggle-icon {
  color: var(--text-colour, #000);
}

.components-title-wrapper span {
  vertical-align: middle;
}

.components-title-wrapper svg {
  vertical-align:sub;
  margin-left: .5rem;
}

.print-svg {
  width: 1.7142857142857142rem;
  height: 1.7142857142857142rem;
}


/* ------------------- Custom SVG icons ------------------- */

svg.svg-icon:not(a.panel-action-button svg),
.btn svg.svg-icon:not(a.panel-action-button svg) {
  max-width: var(--icon-size, 1.5em);
  max-height: var(--icon-size, 1.5em);
  overflow: visible;
}

.btn svg.svg-icon {
  width: var(--icon-size, 1.5em);
}

.file-svg {
  height:1rem;
  padding-right:.25rem;
}

.verify-svg {
  height:1rem;
  fill:#008000;
}

.components-title-wrapper svg {
  width:2rem;
}

.svg-small svg {
  --icon-size: 0.9em;
}

.set-btn-label {
  vertical-align: middle;
}

.set-svg {
  transform: translate(0, -0.1rem);
  margin-right: 0.125rem;
  width: 1rem;
  height: 1rem;
  vertical-align: middle;
}


label {
  margin-bottom: 0;
  font-size: inherit;
  line-height: inherit;
}

.jumbotron {
  padding: 1.1875rem;
  margin: 0 auto 1.25rem;
  background-color: #FFFFFF;
}

.form-select { 
  background-image: var(--path-to-bs5-chevron-down);
}

.button-wrapper {
  margin-top: 1rem;
  margin-bottom: 0.5rem;
}

.btn {
  border-radius: var(--btn-border-radius);
  font-size: var(--btn-font-size);
  font-weight: var(--btn-font-weight);
  margin: 0.7142857142857143em 1px;
  transition-duration: var(--transition-duration, 0.2s);
  border-color: transparent;
  white-space: nowrap;
  text-transform: uppercase;
}
.btn-group>.btn {
  flex: unset;
  text-transform: uppercase;
  letter-spacing: 0;
  text-decoration: none;
  position: relative;
  outline: 0;
}

.btn[disabled],
.btn.btn-raised[disabled] {
  background-color: var(--btn-disabled-bg-colour);
}

.btn.btn-secondary[disabled],
.btn.btn-raised.btn-secondary[disabled] {
  background-color: var(--btn-secondary-bg-colour);
}

.alert-dismissible .btn-close {
  background: var(--path-to-x-svg) center/contain no-repeat;
  margin-top:1rem;
  margin-right:1rem;
  padding:0;
  height: 1.75rem;
  width: 1.25rem;
}

.btn svg {
  max-height: 1.3em;
  max-width: 1.3em;
}

.btn svg *:not([fill='none']) {
  fill: var(--text-colour, #FFF);
}

.table .btn {
  margin-top: 0;
  margin-bottom: 0;
}

.icon button.add-new-btn {
  height:2em;
  width:2em;
  background-color: #BDBCBC;
}

.d-flex.justify-content-center.align-items-center button.add-new-image-btn {
  background-color: var(--default-hover-bg-colour);
  color: #131313;
  width: 8.5rem;
  height: 2.5rem;
  border-radius: 0.75rem;
  font-weight: 600;
}

.dashedTable {
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3333em;
}

.btn.disabled,.btn[disabled], fieldset[disabled] .btn {
  cursor: not-allowed;
}

.table-filter {
  color: #121212;
  width: auto;
  margin: 10px auto;
  background-color: #eee;
}

form[name="filterTimeTracking"] table.table {
  border-radius: 1.28571rem;
  border-collapse: separate;
}

form[name="filterTimeTracking"] table.table tbody tr:first-child th:first-child {
  border-top-left-radius: 18px;
}

form[name="filterTimeTracking"] table.table tbody tr:first-child th:last-child {
  border-top-right-radius: 18px;
}

b, strong {
  font-weight: bold;
}

.btn.btn-primary,
.button-wrapper.top-right .btn.btn-primary {
  background-color: var(--btn-primary-bg-colour, #FFFFFF);
  color: var(--btn-primary-text-colour, #135899);
  border: 0;
}

.btn.btn-primary:focus,
.btn.btn-primary:focus-within,
.btn.btn-primary:hover,
.button-wrapper.top-right .btn.btn-primary:focus,
.button-wrapper.top-right .btn.btn-primary:focus-within,
.button-wrapper.top-right .btn.btn-primary:hover {
  color: var(--btn-primary-hover-colour, #2693ff);
  background-color: var(--btn-primary-hover-bg-colour, #F7F7FA);
}

.btn.btn-raised {
  background-color: var(--btn-raised-bg-colour);
  color: var(--btn-raised-text-colour);
}
.btn.btn-raised[disabled] {
  color: var(--btn-raised-text-colour);
}

.btn.btn-secondary {
  background-color: var(--btn-secondary-bg-colour);
  color: var(--btn-secondary-text-colour);
}
.btn.btn-secondary[disabled] {
  color: var(--btn-secondary-text-colour);
}
.btn.btn-secondary:hover,
.btn.btn-secondary:focus {
  background-color: var(--btn-secondary-hover-bg-colour);
}
.btn-secondary .set-svg path {
  fill: white;
}

.btn.btn-raised.btn-secondary.timeclock-btn {
  margin: 0;
  line-height: 1.2;
  font-size: 0.855em;
}

.btn.btn-raised.reconcile-button,
.btn.btn-raised.btn-alternate {
  background-color: var(--btn-alt-bg-colour, #1767B2);
}
.btn.btn-raised.btn-alternate:hover,
.btn.btn-raised.btn-alternate:focus,
.btn.btn-raised.reconcile-button:hover,
.btn.btn-raised.reconcile-button:focus {
  color: white;
  background-color: var(--btn-alt-hover-bg-colour, #00418C);
}

.btn .material-icons {
  color: inherit;
}

a .material-icons {
  color: var(--adion-link-colour);
}

/* big icons */
a *.cyan-icon, .cyan-icon {
  color: #00b2e5;
}
a *.white-icon, .white-icon {
  color: #e6e6e6;
}
a *.red-icon, .red-icon {
  color: #ed0000;
}
a *.yellow-icon, .yellow-icon {
  color: #e6e600;
}
a *.green-icon, .green-icon {
  color: #2b8902;
}

a:focus-within .material-icons,
a:focus .material-icons,
a:hover .material-icons {
  color: var(--adion-link-hover-colour);
}

button.btn.btn-raised.btn-success,
button.btn.btn-raised.btn-success {
  background-color: var(--pass-bg-colour, #367850);
  color: var(--pass-text-colour, #fff);
}
button.btn.btn-raised.btn-success:hover,
button.btn.btn-raised.btn-success:focus {
  background-color: var(--pass-bg-colour, #367850);
}

button.btn.btn-raised.btn-danger,
button.btn.btn-raised.btn-danger {
  background-color: var(--fail-bg-colour, #B40606);
  color: var(--fail-text-colour, #fff);
}
button.btn.btn-raised.btn-danger:hover,
button.btn.btn-raised.btn-danger:focus {
  background-color: var(--fail-hover-bg-colour);
}

.btn.btn-raised:not(.btn-link),
.btn-group-raised .btn:not(.btn-link) {
  box-shadow: none;
}

.btn.btn-raised:not(.btn-link):hover:not(.add-new-btn),
.btn.btn-raised:not(.btn-link):focus {
  background-color: var(--btn-raised-hover-bg-colour);
  outline-offset: 0;
}

.btn.btn-secondary:not(.btn-link):hover,
.btn.btn-secondary:not(.btn-link):focus {
  background-color: var(--btn-secondary-hover-bg-colour);
  color: var(--btn-secondary-hover-colour, #FFF);
  outline-offset: 0;
}

.btn.btn-raised.btn-secondary:not(.btn-link):hover,
.btn.btn-raised.btn-secondary:not(.btn-link):focus {
  background-color: var(--btn-secondary-hover-bg-colour)
}

.btn.btn-raised.btn-newfixture {
  background-color: var(--btn-alt-bg-colour, #1767B2);
  color: var(--btn-secondary-text-colour, #FFFFFF);
  margin: 0;
  outline-offset: 0;
}
.btn.btn-raised.btn-newfixture:hover,
.btn.btn-raised.btn-newfixture:focus {
  background-color: var(--btn-alt-bg-colour, #1767B2);
  opacity: 0.7;
  outline-offset: 0;
}

.btn.btn-raised.btn-alternate {
  background-color: var(--btn-alt-bg-colour, #1767b2);
  color: white;
}

.btn.btn-raised.btn-alternate:hover,
.btn.btn-raised.btn-alternate:focus,
button.btn.btn-raised.btn-alternate:hover,
button.btn.btn-raised.btn-alternate:focus,
span.btn.btn-raised.btn-alternate:hover,
span.btn.btn-raised.btn-alternate:focus {
  color: white;
  background-color: var(--btn-alt-hover-bg-colour, #00418c);
}

.submit-btn {
  margin-right: 1rem;
}

/* radio buttons */
.table label input[type="radio"] {
  font-size: 1rem;
}

input[type="radio"] {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: none;
  width: 1em;
  height: 1em;
  background: white;
  border: 2px var(--radio-button-colour, #0D3B66) solid;
  border-radius: 50%;
  margin: -0.2em 0 0;
  vertical-align: sub;
}

input[type="radio"]:focus {
  outline: 1px auto var(--radio-button-focus-colour, #275580);
  outline-offset: unset;
}

input[type="radio"]:checked {
  border: 0.38em var(--radio-button-colour, #0D3B66) solid;
}

input[type="radio"]:disabled {
  filter: grayscale(1);
  border: 0.01em var(--radio-button-focus-colour, #275580) solid;
}

/* checkboxes */
.checkbox, .native-checkbox-wrapper {
  display: var(--checkbox-display, inline-block);
  margin: var(--checkbox-margin, 0.35714285714285715rem);
}

tbody > tr > td.ipc-checkmark {
  text-align: center;
}

.ipc-checkmark div.checkmark-container, .ipc-checkmark div.drawing-spec-custom {
  margin: auto;
}

/* ------------------- Specific Stuff -------------------*/


.radio .label-text, 
label .label-text {
  margin-left: 0.3125rem;
  font-size: 0.9285714285714286rem;
  font-weight: var(--font-weight-base);
}


.radio .label-text, 
label .label-text {
  margin-left: 0.3125rem;
  font-weight: var(--font-weight-base);
}

.form-group {
  font-size: 1rem;
  color: rgba(0, 0, 0, 0.54);
}

table[data-inspecEquipUsedEnabled="true"] input:disabled {
  cursor: not-allowed;
}

.ipc-popup-input-not-allowed {
  cursor: not-allowed;
}

@-moz-document url-prefix() {
  .single-query-body-container .adion-card .dataTables_wrapper table thead tr th.topHeader.sorting_disabled {
    padding-left: 1rem;
  }
}

.cart-not-found-error {
  font-weight: 500;
  padding: 2rem;
  text-align: center;
}

/* ----------------------- Radio Buttons ----------------------- */

.radio {
  min-height: 1.5714285714285714rem;
  justify-content: center;
  align-items: center;
}

.radio label span {
  position: initial;
  display: inline-block;
  transition: none;
}


/* Label */

.radio label, .form-group .radio label {
  font-size: 1rem;
  color: rgba(0, 0, 0, 0.54);
  display: flex;
  align-items: center;
}
.radio label, label {
  color: #121212;
  font-weight: var(--font-weight-base, 400);
}
.radio label {
  min-height: 1.0714285714285714rem;
}

.radio label, .checkbox label {
  min-height: 1.5714285714285714rem;
}

.radio label {
  cursor: pointer;
  padding: 0;
  position: relative;
  color: rgba(0,0,0, 0.26);
}

.radio label, .form-group .radio label {
  font-size: 1rem;
  color: rgba(0, 0, 0, 0.54);
  display: flex;
  align-items: center;
}
  
 /*  Input  */

 .radio input[type=radio] {
   opacity: 0;
   height: 0;
   width: 0;
   overflow: hidden;
   position: absolute;
 }
 
 /*  Circle  */
 
 .radio input[type=radio]:checked ~ .circle {
   border-color: rgb(90,90,90);
   flex-shrink: 0;
   flex-grow: 0;
 }

 .radio label .circle {
   left: 0;
   border: 0.14285714285714285rem solid rgba(0,0,0, .54);
   height: 1.1428571428571428rem;
   width: 1.1428571428571428rem;
   border-radius: 100%;
   margin-left: auto;
   margin-right: auto;
 }
 
 /* Check */
 
 .radio label input[type="radio"]:checked ~ .check, .form-group .radio label input[type="radio"]:checked ~ .check {
   transform: translateY(.1rem);
 }
 .radio input[type=radio]:checked ~ .check {
   background-color: rgb(90,90,90);
   border: 0.21428571428571427rem solid rgb(255,255,255);
   opacity: 100%;
   mix-blend-mode: multiply;
   transform: scale3D(1, 1, 1);
 }
 
 .radio label .check {
   position: absolute;
   left: 0;
   height: 1.1428571428571428rem;
   width: 1.1428571428571428rem;
   border-radius: 100%;
 }

/* specific stuff */
@media (min-width: 992px) {
  body.utils table.table:not(#dataTable) {
    font-size: var(--default-font-size, 1rem);
  }
}

.reconcile-table > form > span {
  letter-spacing: 0.05rem;
  font-size: 1rem;
  text-decoration: none;
}

.reconcile-table .overwrite_class * {
	border: none !important;
}

.reconcile-table .overwrite_class .checkbox .check {
  border: 2px solid rgb(55,55,54) !important;
  border-radius: 2px!important;
}

.reconcile-table .overwrite_class tr {
	border-top: 1px solid var(--adion-border-separator-color, #e9e9e9) !important;
	border-bottom: 1px solid var(--adion-border-separator-color, #e9e9e9) !important;
}

.reconcile-table .overwrite_class th, .reconcile-table .overwrite_class td {
	padding: 0.57143rem 1.07143rem;
}

.reconcile-table .overwrite_class tr:not(:first-child) td:nth-child(3){
	text-align: center;
}

@media all and (min-width: 768px) {
	.reconcile-table .overwrite_class th, .reconcile-table .overwrite_class td {
		padding: 0.625rem 0.9375rem
	}
}

.fetch-sensitive-tooltip {
  cursor: pointer;
}

.tooltip-custom {
  opacity: 1!important;
  top: 100%!important;
}

.tooltip-custom.manual-tt-position {
  top: 30%!important;
}

.tooltip-custom.manual-positioning {
  top: 3.5rem!important;
}

.tooltip-custom .tooltip-inner {
  background: white;
  color: black;
  padding: 0.30rem 0.6rem;
  border: 1px solid black;
  font-size: 0.8rem;
	font-weight: 300;
  border-radius: 0;
}

/* Status Pills */

.status-bubble {
  text-align: center;
  height: fit-content;
  padding: .5rem 1rem;
  border-radius: var(--btn-border-radius, 50px);
  display: inline-block;
  line-height: normal;
  background-color: var(--default-status-colour, #9ABEFA);
  color: #000000;
  margin: -0.125em 0;
  font-size: 12px;
}

.print .status-bubble {
  padding: .25rem 0.5rem;
  font-size: 0.8em;
}

.table.table-plain > tbody > tr > td > .status-bubble {
  width: fit-content;
}

.status-bubble.status-active,
.status-bubble.status-incalibration,
.status-bubble.status-outstanding {
  background-color: var(--active-status-colour, #FAD56A);
}

.status-bubble.status-canceled,
.status-bubble.status-retired,
.status-bubble.status-archived,
.status-bubble.status-inactive,
.status-bubble.status-unknown,
.status-bubble.status-archive {
  background-color: var(--canceled-status-colour, #DADEE3);
}

.status-bubble.status-complete,
.status-bubble.status-invoiced,
.status-bubble.status-won {
  background-color: var(--complete-status-colour, #D4F1E7);
}

.status-bubble.status-mnft-complete,
.status-bubble.status-shipped,
.status-bubble.status-pending-final-ship,
.status-bubble.status-partially-invoiced {
  background-color: var(--alt-complete-status-colour, #4ADE8E);
}
.status-bubble.status-mnft-complete {
  font-size: 1rem;
}

.status-bubble.status-onhold {
  background-color: var(--on-hold-status-colour, #C72828);
  color: var(--status-pill-light-text, #FFFFFF);
}

.status-bubble.status-expected,
.status-bubble.status-rfq {
  background-color: var(--expected-status-colour, #F7F8F9);
  border: var(--status-pill-border, 1px solid #E6E6E6);
}

.status-bubble.status-in-stock,
.status-bubble.status-draft-rev {
  background-color: var(--in-stock-status-colour, #F3AC6E);
}

.status-bubble.status-rejected {
  background-color: var(--rejected-status-colour, #FFD3D3);
}

.status-bubble.status-pending {
  background-color: var(--pending-status-colour, #FFDFD4);
}

.status-bubble.status-received {
  background-color: var(--received-status-colour, #FEFD98);
}

.status-bubble.status-partially-received {
  background-color: var(--partially-received-status-colour, #E3E102);
}

.status-bubble.status-inspected {
  background-color: var(--inspected-status-colour, #C7C7FC);
}

.status-bubble.status-partially-inspected {
  background-color: var(--partially-inspected-status-colour, #5B5BDE);
  color: var(--status-pill-light-text, #FFFFFF);
}

.status-bubble.status-released {
  background-color: var(--released-status-colour, #AFFAED);
}

.status-bubble.status-partially-released {
  background-color: var(--partially-released-status-colour, #18EDC9);
}

.status-bubble.status-lost {
  background-color: var(--lost-status-colour, #000000);
  color: var(--status-pill-light-text, #FFFFFF);
}

.row [class^=col] .card-att-value .status-bubble {
  margin-top: calc(var(--aps-gutter-y, 0.2em) / 2);
}

/* Contextual Background Containers */

.contextual-bg-container {
  padding: .3rem;
  border-radius: var(--contextual-bg-border-radius, 6px);
  display: inline-block;
  min-width: 2.26rem;
  text-align: center;
}

.warning .contextual-bg-container.context-late {
  border-style: dashed;
}

.contextual-bg-container.context-late {
  background-color: var(--contextual-bg-late, #FFD3D3);
  border: 1px solid var(--contextual-bg-border-late, #AB4848);
}

.warning .contextual-bg-container.context-late {
  border-style: dashed;
}

.contextual-bg-container.context-early {
  background-color: var(--contextual-bg-early, #D6FFD3);
  border: 1px solid var(--contextual-bg-border-early, #0DA800);
}

.warning .contextual-bg-container.context-early {
  border-style: dashed;
}

.contextual-bg-container.context-on-time {
  background-color: var(--contextual-bg-on-time, #FFFEBD);
  border: 1px solid var(--contextual-bg-border-on-time, #BC8C00);
}

.warning .contextual-bg-container.context-on-time {
  border-style: dashed;
}

/* Dashboard Header Cards */

.module-record .adion-main-content {
  min-height: auto;
  padding-top: 0;
}

@media (min-width: 1400px) {
  .module-record {
    --screen-edge-padding: 1.5rem;
  }
}

@media (min-width: 1920px) {
  .module-record {
    --screen-edge-padding: 2rem;
  }
}

@media (min-width: 2200px) {
  .module-record {
    --screen-edge-padding: 3rem;
  }
}

.module-record .adion-card:has(table) {
  background-color: var(--primary-component-background, #FFFFFF);
}

.module-record #mainEditingForm .container-fluid .adion-card.table-view,
.module-record #mainEditingForm .container-fluid .adion-card.table-view .card-content table {
  width: 100%;
}

.module-record .container-fluid .nav-tab-card-wrapper,
.module-record .container-fluid .ajax-nav-tab-card-wrapper {
  max-width: 100%;
}

.adion-card {
	border-radius: var(--adion-card-border-radius, 18px);
}

/* Main Atts */

.module-record > table > tbody > tr > td > form > table table > tbody > tr > td > div.adion-card {
  padding: 3px;
  border-radius: var(--adion-card-border-radius, 18px);
  border: 1px solid var(--table-border-colour, #9DA5C7);
}

.module-record > table > tbody > tr > td > form > table table > tbody > tr > td > div.adion-card > table {
  border-collapse: separate;
}
.horizontalMainAtts {
  border-collapse: separate;
}

/*Inventory Table Styling*/

body:not(.module-record) {
  #inventoryTableNotes {
    border-collapse: separate;
  }
  
  #inventoryTableNotes tbody tr td {
    padding: 5px;
    font-weight: 400;
    border: 1px dotted gray;
    min-width: 30px;
    text-align: center;
  }
  
  #inventoryTableNotes tbody tr td.inv-tbl-icon-container {
    display: flex;
    justify-content: center;
  }
  
  #inventoryTableNotes tbody tr td.inv-tbl-icon-container a {
    vertical-align: middle;
  }
}

.module-record {
  #inventoryTableNotes tr {
    display: grid;
    grid-template-columns: auto 1fr; 
    gap: 0.5rem; 
  }
  #inventoryTableNotes tbody tr td:nth-of-type(odd) {
    grid-column: 1 / 2;
    text-align: left; 
  }
  #inventoryTableNotes tbody tr td:nth-of-type(even) {
    grid-column: 2 / 3;
    text-align: left; 
  }
  #inventoryTable th.topHeader {
    border-right-color: transparent;
    border-left-color: transparent;
    padding: 0.75rem;
  }
}


/* ------------------- Main Styles ------------------- */

.adion-main-content,
.adion-main-content > form {
  max-width: calc(100vw - var(--scrollbar-width, 0px));
  display: flex;
}
.adion-main-content {
  position: relative;
  min-height: calc(100vh - var(--main-header-height, 30px) - var(--page-title-height, 0px) - var(--quicklinks-height, 0px) - 2px );
  padding: var(--default-padding, 1rem) 0 var(--screen-edge-padding, 2rem);
}

.adion-main-content > form {
  min-height: calc(100vh - var(--main-header-height, 30px) - var(--page-title-height, 0px) - var(--quicklinks-height, 0px) - (var(--default-padding, 0) * 2.5) - 2px);
  width: 100%;
}

.adion-main-content .container-fluid #mainEditingForm table:not(.adion-card.p-0 .card-content table) tr .topHeader {
  white-space: nowrap;
}

.utils .fullNavBox + .container-fluid > :not(.nav-tab-card-wrapper) .dataTables_wrapper {
  max-width: calc(100vw - 34.2rem);
}

.adion-main-content > .container-fluid > .adion-not-write-authorized {
  text-align: center;
}

.adion-main-content > .container-fluid > .adion-not-write-authorized > .bottom-notice {
  margin-top: 0;
  text-align: center;
}

.adion-main-content > .container-fluid > .bottom-notice {
  margin-top: auto;
  text-align: center;
}

.adion-main-content > .container-fluid > .bottom-notice span {
  display: block;
}

.adion-main-content > .container-fluid > .bottom-notice br {
  display: none;
}

@media all and (min-width: 992px) {
  .adion-main-content > .container-fluid > .bottom-notice {
    text-align: unset;
  }
  
  .adion-main-content > .container-fluid > .bottom-notice span {
    display: inline;
  }

  .adion-main-content > .container-fluid > .bottom-notice br {
    display: block;
  }
}

.overflow {
  overflow: hidden;
}

.overlay {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0);
  backdrop-filter: blur(0);
  z-index: 10;
  opacity: 0;
  transition-property: opacity, background-colour, backdrop-filter;
  transition-duration: var(--transition-duration, 0.2s);
}

.overflow > .overlay {
  opacity: 1;
  background-color: var(--adion-overlay-colour, rgba(0,0,0,0.125));
  backdrop-filter: blur(0.045rem);
}

.elecsig-iframe-overlay {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background-color: var(--adion-overlay-colour, rgba(0,0,0,0.125));
  backdrop-filter: blur(0.045rem);
  z-index: 10;
  opacity: 1;
  transition-property: opacity, background-colour, backdrop-filter;
  transition-duration: var(--transition-duration, 0.2s);
}

.checkout-button-wrapper {
  position: sticky;
  bottom: 0;
  left:0;
  max-width: 100vw;
  min-width: 100%;
  z-index: 1;
  background-color: var(--background-colour, #fff);
}
.adion-panel .checkout-button-wrapper {
  bottom: -1.1rem;
}

.module-record .checkout-button-wrapper {
  margin-top: 1.5rem;
}

.module-record .checkout-button-wrapper:not(.centered) {
  padding-left: calc(var(--aps-gutter-x) * 0.5);
}

.adion-card .checkout-button-wrapper {
  padding:5px 0;
}

.adion-card .checkout-button-wrapper .btn {
  margin: 0;
  max-width: fit-content;
}

.adion-card .checkout-button-wrapper .btn:nth-child(2) {
  margin-left:0.5rem;
}

.checkout-button-wrapper.centered {
  display: flex;
  align-items: center;
  justify-content: center;
  width:100%;
  min-width: fit-content;
}
.checkout-button-wrapper.centered-inline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.checkout-button-wrapper > div {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
}

.checkout-button-wrapper.centered > div {
  justify-content: center;
  align-items: center;
}

.checkin-button-wrapper .label-text {
  margin-left: 0.333333em;
}

.adion-trigger-modal.dim img {
  max-width: calc(160px);
  max-height: calc(90px);
}
@media (min-width: 992px) {
  .adion-trigger-modal.dim img {
    max-width: calc(160px*2);
    max-height: calc(90px*2);
  }
}

.adion-modal {
  position: fixed;
  top: calc(50% + 1rem + var(--default-header-height, var(--main-header-height, 0))/2);
  left: 50%;
  transform: translate(-50%, calc(-50% - 1rem));
  z-index: -1;
  opacity: 0;
  transition-duration: var(--transition-duration, .2s);
  transition-property: z-index, opacity, top, left;
  background-color: #FFF;
  border: 1px solid grey;
  border-radius: 0.3rem;
  padding: 1rem;
  max-height: calc(100vh - 8rem - var(--default-header-height, var(--main-header-height, 0)));
  overflow: auto;
  visibility: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: nowrap;
}

.adion-modal.adion-open {
  left: 50%;
  z-index: 11;
  opacity: 1;
  width: max-content;
  max-width: 60vw;
  visibility: visible;
}

.dimtag-photo h3 {
  margin: 0;
}
.dimtag-photo .dimtag-title-wrapper {
  display: flex;
  justify-content: space-between;
}
#view-dimtag-photo .divider {
  background-color: var(--adion-border-separator-color, #e9e9e9);
  width: 100%;
  min-height: 1px;
  margin: 1rem 0;
}

.adion-modal .modal-title {
  --text-colour: #8C8C8C;
  text-transform: uppercase;
  font-weight: var(--font-weight-medium, 500);
  line-height: 1.4em;
  letter-spacing: 0.031em;
  margin-bottom: 0.7em;
  font-size: 0.9285714285714286rem;
}

.adion-modal-content {
  flex: 0 1 100%;
  max-width: 100%;
  max-height: 100%;
  overflow: auto;
}

.adion-modal .formgroup,
.adion-modal fieldset {
  margin-bottom: 1.5rem;
}

.adion-modal  .btn {
  margin-top: auto;
  margin-bottom: 0;
  height: auto;
}

#acctgModal .proshop-modal-body,
#sageModal .proshop-modal-body,
#paperlessPartsModal .proshop-modal-body,
#xeroModal .proshop-modal-body {
  padding: 0 7% 2rem;
}

.proshop-modal-body input {
  max-width: 100%;
}

.tablerow_submit_button_wrapper {
  position: sticky;
  bottom: 0;
  background: white;
  z-index: 2;
}

div.integrations-settings-modal-body div.tablerow_submit_button_wrapper {
	padding-top: .75rem;
  display: flex;
  justify-content: center;
}

div.integrations-settings-modal-body div.tablerow_submit_button_wrapper button {
  margin: 0rem 1.5rem;
}

.cke {
  max-width: 100%;
  min-width: 50vw;
}

.cke ~ * {
  width: 42.285714285714285em;
  max-width: 100%;
  min-width: 50vw;
}

.cke ~ .attachments-wrapper > *:only-child {
  margin-left: auto;
}

form[name='printCertsBox'] {
  padding: 0.4rem;
}

form[name='printCertsBox'] h5.modal-title {
  display: flex;
  font-size: 1rem;
}
form[name='printCertsBox'] h5.modal-title span {
  margin: 0 5px;
}
form[name='printCertsBox'] h5.modal-title .help-icon-link {
  padding-top: 2px;
}

form[name='printCertsBox'] .options-wrapper .option .checkbox-wrapper {
  margin: 0.42857142857142855rem 0;
}
form[name='printCertsBox'] .options-wrapper .option .checkbox-wrapper label {
  margin-left: 0.8rem;
}
form[name='printCertsBox'] .options-wrapper .option strong {
  font-weight: 600;
}

form[name='printCertsBox'] .option .checkbox {
  padding: 0.3333333rem 0;
}

.bottom-notice {
  font-size: 0.8571428571428571rem;
}

.bottom-notice > div {
  padding-top: calc(var(--screen-edge-padding, 2rem) / 2)
}

.num-circle {
  --circle-diameter: 2.642857142857143em;
  display: inline-block;
  width: var(--circle-diameter, 2.5em);
  line-height: var(--circle-diameter, 2.5em);
  border: 1px solid var(--medium-shadow-shade, #B1B1B1);
  border-radius: calc(var(--circle-diameter, 2.5em) / 2);
  text-align: center;
  vertical-align: middle;
  margin: auto;
  color: #6E6E6E;
}
tr td span.num-circle {
  width: var(--circle-diameter, 2.5em);
}

@media all and (min-width: 992px) {
  .bottom-notice > div:last-child {
    text-align: right;
  }

  .bottom-notice .copyright_side:not(.flLastModIsOff) {
    width: 50%;
  }

  .bottom-notice>div:only-child {
    text-align: center;
  }
}

.relative-date-holiday-wrapper #newBeforeAfter,
.relative-date-holiday-wrapper #relativeDate,
.floating-date-holiday-wrapper #newDateMonth {
  padding: 0 1em;
}

/* Hand pointing SVG */

.view-record-svg-td *:hover,
.view-record-svg-td *:active {
  cursor: pointer;
}

.table tbody tr td.view-record-svg-td {
  margin-top:.5rem;
  vertical-align: top;
  text-align: center;
}

.table tbody tr td.view-record-svg-td svg {
  margin-top:.125rem;
}

.view-record-svg-td *:hover,
.view-record-svg-td *:active {
  cursor: pointer;
}

.approved-print-wrapper .attachment-item {
  display:inline;
}

.attachments-dropdown {
  white-space: nowrap;
}

.module-page-clients {
  margin: 0;
  width: fit-content;
}

.module-page-clients a .history-icon:hover,
.module-page-clients a .history-icon:focus {
  color: var(--adion-link-hover-colour)
}

/* ------------------- Reset Password ------------------- */

.reset-password-glyphicon {
  font-size: 1.25rem; 
}

.reset-password-glyphicon.reset-password-glyphicon-warning{
  color: orange;
}

.reset-password-glyphicon.reset-password-glyphicon-disabled{
  color: red;
}

.reset-password-glyphicon.reset-password-glyphicon-inactive{
  color: hotpink;
}

/* ------------------- Electronic Signatures ------------------- */

.elecsig-modal {
  position: fixed;
  top: calc(50% + 1rem + var(--default-header-height, var(--main-header-height, 0))/2);
  transform: translate(-50%, calc(-50% - 1rem));
  z-index: -1;
  opacity: 0;
  transition-duration: var(--transition-duration, .2s);
  transition-property: z-index, opacity, top, left;
  left: 50%;
  width: 40vw;
  border-radius: var(--adion-card-border-radius, 18px);
  border: 1px solid grey;
  background-color: #FFFFFF;
  visibility: hidden;
}

.elecsig-modal-in-iframe {
  position: absolute;
  top: 50%;
  transform: translate(-50%, calc(-50% - 1rem));
  z-index: -1;
  opacity: 0;
  transition-duration: var(--transition-duration, .2s);
  transition-property: z-index, opacity, top, left;
  left: 50%;
  width: 40vw;
  border-radius: var(--adion-card-border-radius, 18px);
  border: 1px solid grey;
  background-color: #FFFFFF;
  visibility: hidden;
}

.elecsig-modal.elecsig-modal-open, .elecsig-modal-in-iframe.elecsig-modal-open {
  left: 50%;
  z-index: 20;
  opacity: 1;
  visibility: visible;
}

/* ------------------- Utils ------------------- */

body.utils main.adion-main-content.left-panel div.bottom-notice {
  width:100%;
}

body.utils .container-fluid form:not(#opInformationConfig):not([name=systemConfig]):not([name=elasticConfig]) {
  text-align: center;
}

body.utils .container-fluid > form:first-child {
  margin-top:1em;
}

body.utils .container-fluid form div,
body.utils .container-fluid form table {
  margin-left:auto;
  margin-right:auto
}

body.utils .container-fluid form table * {
  text-align: initial;
}

body.utils .container-fluid form table textarea,
body.utils .container-fluid form table select {
  overflow-x: hidden;
  border-radius: var(--input-box-border-radius, 4px);
}


body.utils div.container-fluid form table.table:not(.table-bordered) td {
  border-top: none;
  border-bottom: none;
}

body.utils .container-fluid div.checkout-button-wrapper {
  text-align: center;
}

body.utils ul.breadcrumb {
  border-radius:.25em;
}

.newLinkFromPage ul li + li:before {
  content:unset;
}



/* ------------------- System Config ------------------- */

form[name="systemConfig"] .checkout-button-wrapper {
  height: 2.6em;
  padding-top: 0.3em;
  bottom: -1px;
}

table.table.sysconfig-page-datatable .separator-bar-secondary td {
  filter: opacity(70%); 
  padding:.375em 0.5rem; 
  font-size:.9em; 
  text-align:center;
  font-weight: var(--font-weight-medium, 500)!important /*Overriding sys config inline styles*/;
}

/* Written description for Est, Est Arch, Parts, Parts Arch */
@media all and (min-width: 768px) { 
  #parts-writtenDesc-table,
  #estimates-writtenDesc-table {
    max-width: 50%;
  }
}

td.written-desc-text {
  padding-right:4.5rem;
}


/* ------------------- Print ------------------- */

@media print{
  body.print main.adion-main-content {
    display: block;
  }

  .adion-main-content > .container-fluid {
    display: block;
  }

  body {
    overflow:visible;
    min-height:0;
  }
  main.adion-main-content {
    height:fit-content;
    min-height:0;
    overflow:visible;
  }
  div.adion-panel.left {
    min-height:0;
  }
  body div#menu-div,
  div.bottomMargin,
  div.adion-panel-header,
  body button.btn,
  div.quicklinks-toolbar {
    display:none;
  }
  table.WO-form {
    margin-bottom:0;
    margin-top:0;
  }
  div#footer-wrapper {
    margin-bottom:0;
  }
}

.radio-buttons {
  display: flex;
  align-items: center;
}

.radio-buttons input {
  margin-left: .25rem;
}

.components-title-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.components-title-wrapper .quicklinks-dropdown .adion-dropdown {
  margin-top: 1.7em;
}

.sticky-th.sorting,
.sticky-th.sorting_asc,
.sticky-th.sorting_desc,
.sticky-th.sorting_asc_disabled,
.sticky-th.sorting_desc_disabled, 
.table.dataTable thead > tr > th.sorting,
.table.dataTable thead > tr > th.sorting_asc,
.table.dataTable thead > tr > th.sorting_desc,
.table.dataTable thead .sorting_asc_disabled,
.table.dataTable thead .sorting_desc_disabled  {
  position:relative;
  background:none;
}

.sticky-th.sorting::before,
.sticky-th.sorting_asc::before,
.sticky-th.sorting_desc::before,
.table.dataTable thead > tr > th.sorting::before,
.table.dataTable thead > tr > th.sorting_desc::before,
.table.dataTable thead > tr > th.sorting_asc::before {
  bottom: 50%;
  content: "\25b4"; /* ▴ */
  color: #275988;
}

.sticky-th.sorting::after,
.sticky-th.sorting_asc::after,
.sticky-th.sorting_desc::after,
.table.dataTable thead > tr > th.sorting::after,
.table.dataTable thead > tr > th.sorting_asc::after, 
.table.dataTable thead > tr > th.sorting_desc::after {
  top: 50%;
  content: "\25be"; /* ▾ */
  color: #5e91c0;
}

.sticky-th.sorting_asc::after,
.table.dataTable thead > tr > th.sorting_asc::after {
  content: none;
}

.sticky-th.sorting_desc::before,
.table.dataTable thead > tr > th.sorting_desc::before {
  content: none;
}

.sticky-th.sorting::before,
.sticky-th.sorting::after,
.sticky-th.sorting_asc::before,
.sticky-th.sorting_asc::after,
.sticky-th.sorting_desc::before,
.sticky-th.sorting_desc::after,
.table.dataTable thead > tr > th.sorting::before,
.table.dataTable thead > tr > th.sorting::after,
.table.dataTable thead > tr > th.sorting_asc::before,
.table.dataTable thead > tr > th.sorting_asc::after,
.table.dataTable thead > tr > th.sorting_desc::before,
.table.dataTable thead > tr > th.sorting_desc::after {
  position: absolute;
  display: block;
  right: calc(var(--th-x-padding, 1.0714285714285714rem) / 4 * -1);
  line-height: 9px;
  font-size: .9em;
}

.adion-card:has(.add-new-row) {
  margin-bottom: 1.5rem;
}

.bottom-buttons-container {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.bottom-buttons-container.container-no-wrap {
  flex-wrap: nowrap;
}

.bottom-buttons-container > a,
.bottom-buttons-container > span,
.bottom-buttons-container > div:not(#footer_wrapper) {
  margin-right: 2rem;
}

.bottom-buttons-container button,
.bottom-buttons-container .add-files-wrapper .attachment-item {
  margin: 0;
}

.bottom-buttons-container + .bottom-notice,
.module-record:has(.bottom-buttons-container) .bottom-notice,
#footer_wrapper {
  width: 100%;
  margin-top: 3rem !important; /* !important to override standard bottomNotice inline style */
}

.help-block {
  margin-top: 0;
  font-size: 12px;
}

input {
  border: 1px solid rgb(175, 175, 175);
}

#duplicate-id-error-message{
  width: 15.25rem;
}

.oop-table-td {
  white-space: nowrap;
}
.oop-table-td a .material-icons {
  color: red;
}

.banner-with-button h4 {
  margin-bottom: 0;
}
.banner-with-button .btn.btn-primary {
  text-decoration: none;
  font-style: normal;
  border: 1px solid var(--btn-primary-text-colour, #135899);
  font-size: 1rem;
}

.users-and-more-text:hover {
  cursor: pointer;
}

input[readonly] {
	background-color: #EEEEEE;
}

.classification-select-title {
  color: #4362C1;
}

.classification-markings-options,
div.classification-marking-pills {
  padding-top: 0.57143rem;
  padding-bottom: 1.7142857142857142rem;
}