﻿html, body {
  font-family: Source Sans Pro; }

a, .btn-link {
  color: #0366d6; }

.btn-primary {
  color: #fff;
  background-color: #1b6ec2;
  border-color: #1861ac; }

.content {
  padding-top: 1.1rem; }

.valid.modified:not([type=checkbox]) {
  outline: 1px solid #26b050; }

.invalid {
  outline: 1px solid red; }

.validation-message {
  color: red; }

#blazor-error-ui {
  background: lightyellow;
  bottom: 0;
  box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
  display: none;
  left: 0;
  padding: 0.6rem 1.25rem 0.7rem 1.25rem;
  position: fixed;
  width: 100%;
  z-index: 1000; }

#blazor-error-ui .dismiss {
  cursor: pointer;
  position: absolute;
  right: 0.75rem;
  top: 0.5rem; }

.authentication-container {
  display: flex;
  justify-content: center;
  align-items: center; }
  .authentication-container .loading {
    display: flex;
    /* Use flexbox to center the image vertically and horizontally */
    justify-content: center;
    /* Center horizontally */
    align-items: center;
    /* Center vertically */
    align-self: center;
    height: fit-content;
    width: fit-content; }
    .authentication-container .loading .scale_image {
      object-fit: contain;
      /* Fill the container while maintaining aspect ratio */
      width: 30%; }
  .authentication-container .logout-message {
    margin-top: 50px; }

.index .displayBlock {
  display: block; }

.index .displayNone {
  display: none; }

.impersonation {
  /* Add flex display to arrange components in a row */
  display: flex;
  flex-direction: column;
  gap: 0px;
  /* Add gap between components */
  align-items: center; }
  .impersonation .displayBlock {
    display: block; }
  .impersonation .displayNone {
    display: none; }

.retailerPricingWrapper {
  min-height: 65vh; }
  .retailerPricingWrapper .title {
    margin-bottom: 2rem; }
    .retailerPricingWrapper .title .rz-stack {
      gap: 0.3rem; }
  .retailerPricingWrapper retailerPricingWrapper {
    width: 400px; }
  .retailerPricingWrapper .rz-dropdown {
    width: 400px; }
  .retailerPricingWrapper .retailerDropdown {
    padding-bottom: 20px; }
  @media (max-width: 768px) {
    .retailerPricingWrapper {
      padding-left: 10px;
      padding-top: 15px;
      padding-bottom: 5px; }
      .retailerPricingWrapper .rz-button {
        width: 100%; } }
  @media (min-width: 769px) {
    .retailerPricingWrapper {
      padding-left: 50px;
      padding-right: 50px;
      padding-top: 50px;
      padding-bottom: 35px; } }

.inventorySearchGrid {
  position: relative;
  overflow: hidden;
  margin-top: 5px;
  padding: 5px 15px 36px 15px; }
  .inventorySearchGrid .detail {
    flex-wrap: Wrap; }
    .inventorySearchGrid .detail .inventorySearchGrid-searchStack i.rzi {
      vertical-align: middle; }
    .inventorySearchGrid .detail .inventorySearchGrid-searchStack .ministack {
      gap: 0.1rem; }
    .inventorySearchGrid .detail .inventorySearchGrid-searchStack .rz-dropdown {
      max-width: 200px; }
    .inventorySearchGrid .detail .inventorySearchGrid-searchStack div.settings {
      display: grid;
      grid-template-columns: max-content 1fr;
      grid-gap: 4px;
      -webkit-align-items: inherit;
      align-items: center; }
    .inventorySearchGrid .detail .inventorySearchGrid-searchStack div.settings label1 {
      text-align: right; }
    .inventorySearchGrid .detail .inventorySearchGrid-searchStack .rz-button.rz-primary.rz-shade-darker {
      width: 8em !important; }
    .inventorySearchGrid .detail .inventorySearchGrid-searchStack .rz-button.rz-variant-outlined.rz-primary.rz-shade-default {
      width: 8em !important; }
    @media screen and (max-width: 768px) {
      .inventorySearchGrid .detail .inventorySearchGrid-searchStack div.settings {
        grid-gap: 3px; }
        .inventorySearchGrid .detail .inventorySearchGrid-searchStack div.settings .rz-form-field {
          width: 100% !important; }
        .inventorySearchGrid .detail .inventorySearchGrid-searchStack div.settings .rz-dropdown {
          width: 100% !important; }
      .inventorySearchGrid .detail .inventorySearchGrid-searchStack .searchField {
        width: 60%; }
      .inventorySearchGrid .detail .inventorySearchGrid-searchStack .rz-form-field-content {
        width: 100% !important; }
      .inventorySearchGrid .detail .inventorySearchGrid-searchStack .rz-button.rz-primary.rz-shade-darker {
        width: 47% !important; }
      .inventorySearchGrid .detail .inventorySearchGrid-searchStack .rz-button.rz-variant-outlined.rz-primary.rz-shade-default {
        width: 47% !important; } }
  .inventorySearchGrid .rz-data-grid {
    display: flex;
    height: 100%;
    min-height: 20em; }
  .inventorySearchGrid .rz-multiselect-panel {
    width: 100%; }
  @media screen and (max-width: 768px) {
    .inventorySearchGrid {
      padding: 0px; } }

.inventoryDetail {
  margin-bottom: 500px; }
  .inventoryDetail .productInfo {
    margin-bottom: 2rem; }
    .inventoryDetail .productInfo h3 {
      margin-bottom: 2rem; }
    .inventoryDetail .productInfo h4 {
      margin-bottom: 0.2rem; }
  .inventoryDetail .dcGrid {
    margin-bottom: 2rem; }
  .inventoryDetail .uomGrid {
    margin-bottom: 1rem; }
  .inventoryDetail .reports h3 {
    margin-bottom: 0.1rem; }
  .inventoryDetail .reports .report-tile {
    display: inline-block;
    vertical-align: top;
    padding: 1rem; }
  .inventoryDetail .reports .report-content, .inventoryDetail .reports .report-name {
    width: 17rem; }
  @media screen and (max-width: 768px) {
    .inventoryDetail .report-content, .inventoryDetail .report-name {
      width: 22rem !important; } }

.depositOrderSearchGrid {
  position: relative;
  overflow: hidden;
  margin-top: 5px;
  padding: 5px 15px 36px 15px; }
  .depositOrderSearchGrid .status-column-label {
    padding-top: 4px; }
  .depositOrderSearchGrid .detail {
    margin-bottom: 25px;
    flex-wrap: Wrap; }
    .depositOrderSearchGrid .detail .depositOrderSearchGrid-searchStack i.rzi {
      vertical-align: middle; }
    .depositOrderSearchGrid .detail .depositOrderSearchGrid-searchStack .ministack {
      gap: 0.1rem; }
    .depositOrderSearchGrid .detail .depositOrderSearchGrid-searchStack .rz-dropdown {
      max-width: 200px; }
    .depositOrderSearchGrid .detail .depositOrderSearchGrid-searchStack div.settings {
      display: grid;
      grid-template-columns: max-content 1fr;
      grid-gap: 4px;
      -webkit-align-items: inherit;
      align-items: center; }
    .depositOrderSearchGrid .detail .depositOrderSearchGrid-searchStack div.settings label {
      text-align: right; }
    .depositOrderSearchGrid .detail .depositOrderSearchGrid-searchStack .rz-button.rz-primary.rz-shade-darker {
      width: 8em !important; }
    .depositOrderSearchGrid .detail .depositOrderSearchGrid-searchStack .rz-button.rz-variant-outlined.rz-primary.rz-shade-default {
      width: 8em !important; }
    @media screen and (max-width: 768px) {
      .depositOrderSearchGrid .detail .depositOrderSearchGrid-searchStack div.settings {
        grid-gap: 3px; }
        .depositOrderSearchGrid .detail .depositOrderSearchGrid-searchStack div.settings .rz-form-field {
          width: 100% !important; }
      .depositOrderSearchGrid .detail .depositOrderSearchGrid-searchStack .rz-dropdown {
        max-width: 130px; }
      .depositOrderSearchGrid .detail .depositOrderSearchGrid-searchStack .searchField {
        width: 100%; }
      .depositOrderSearchGrid .detail .depositOrderSearchGrid-searchStack .rz-form-field-content {
        width: 100% !important; }
      .depositOrderSearchGrid .detail .depositOrderSearchGrid-searchStack .rz-button.rz-primary.rz-shade-darker {
        width: 47% !important; }
      .depositOrderSearchGrid .detail .depositOrderSearchGrid-searchStack .rz-button.rz-variant-outlined.rz-primary.rz-shade-default {
        width: 47% !important; } }
  .depositOrderSearchGrid .rz-data-grid {
    display: flex;
    height: 100%;
    min-height: 20em; }
  .depositOrderSearchGrid .rz-multiselect-panel {
    width: 100%; }
  .depositOrderSearchGrid .makeDepositButton {
    width: 9em !important; }
  @media screen and (max-width: 768px) {
    .depositOrderSearchGrid {
      padding: 0px; }
      .depositOrderSearchGrid .makeDepositButton {
        width: 100% !important; } }

.inventoryAlertSearchGrid {
  position: relative;
  overflow: hidden;
  margin-top: 5px;
  padding: 5px 15px 36px 15px; }
  .inventoryAlertSearchGrid .detail {
    flex-wrap: Wrap; }
    .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack {
      margin-bottom: 25px; }
      .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack i.rzi {
        vertical-align: middle; }
      .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack .ministack {
        gap: 0.1rem;
        margin-top: 4px; }
      .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack .alertLabel {
        margin-left: 2rem; }
      .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack .rz-dropdown {
        max-width: 200px; }
      .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack div.settings {
        display: grid;
        grid-template-columns: max-content 1fr;
        grid-gap: 4px;
        -webkit-align-items: inherit;
        align-items: start; }
        .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack div.settings .searchLabel {
          min-width: 5rem;
          margin-top: 4px; }
        .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack div.settings .bulkSettings {
          align-items: start;
          display: flex; }
          .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack div.settings .bulkSettings .thedmSearchFieldControl .rz-textarea {
            min-height: 7rem; }
          .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack div.settings .bulkSettings .bulkSearchLabel {
            margin-top: 4px; }
      .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack div.settings label {
        text-align: left; }
      .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack .rz-button.rz-primary.rz-shade-darker {
        width: 8em !important; }
      .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack .rz-button.rz-variant-outlined.rz-primary.rz-shade-default {
        width: 8em !important; }
      .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack .rz-form-field {
        min-width: 20rem; }
      @media screen and (max-width: 768px) {
        .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack div.settings {
          grid-gap: 3px; }
          .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack div.settings .rz-form-field {
            width: 100% !important; }
          .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack div.settings .rz-dropdown {
            width: 100% !important; }
        .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack .searchField {
          width: 60%; }
        .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack .rz-form-field-content {
          width: 100% !important; }
        .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack .rz-button.rz-primary.rz-shade-darker {
          width: 47% !important; }
        .inventoryAlertSearchGrid .detail .inventoryAlertSearchGrid-searchStack .rz-button.rz-variant-outlined.rz-primary.rz-shade-default {
          width: 47% !important; } }
  .inventoryAlertSearchGrid .rz-data-grid {
    display: flex;
    height: 100%;
    min-height: 20em; }
  .inventoryAlertSearchGrid .rz-multiselect-panel {
    width: 100%; }
  .inventoryAlertSearchGrid .rightbutton {
    float: right;
    padding-top: 25px; }
  @media screen and (max-width: 768px) {
    .inventoryAlertSearchGrid {
      padding: 0px; }
      .inventoryAlertSearchGrid .rightbutton {
        width: 100% !important; }
        .inventoryAlertSearchGrid .rightbutton .rz-button.rz-primary.rz-shade-darker {
          width: 100% !important; } }

.makeDeposit {
  margin-bottom: 10rem; }
  .makeDeposit .loadingContainer {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%; }
  .makeDeposit .title {
    margin-bottom: 3rem; }
  .makeDeposit h3 {
    padding-left: 0; }
  .makeDeposit .details .noteTextbox {
    width: 100%;
    max-width: 500px;
    height: 100%;
    min-height: 150px;
    max-height: 400px;
    margin-bottom: 1rem;
    resize: none; }
  .makeDeposit .details .rz-textbox, .makeDeposit .details .rz-dropdown {
    width: 100%; }
  .makeDeposit .details .downloadButton {
    background-color: var(--dmInfo) !important;
    margin-top: 0.5rem; }
  .makeDeposit .details .deleteButton {
    background-color: var(--rz-base-200) !important;
    border: none;
    color: var(--rz-text-color) !important; }
  .makeDeposit .details .files p {
    margin-top: 0.5rem;
    margin-bottom: 0; }
  .makeDeposit .label {
    font-weight: 300;
    margin-bottom: 1rem; }
  .makeDeposit .trackingNumberTextbox {
    width: 100%;
    max-width: 1000px;
    height: 100%;
    min-height: 150px;
    max-height: 400px;
    margin-bottom: 1rem;
    resize: none;
    margin-left: -1.5rem; }
  .makeDeposit .buttons {
    display: flex;
    justify-content: end;
    margin-right: 2.5rem; }
    .makeDeposit .buttons .cancelButton {
      margin-left: 10px; }
  .makeDeposit .errors {
    scroll-margin-top: 10rem;
    margin-top: -2rem; }
  .makeDeposit .doneButton {
    padding-left: 2rem;
    padding-right: 2rem;
    margin-right: -2rem; }
  .makeDeposit a {
    color: var(--dmBlue) !important; }
  .makeDeposit a:hover {
    text-decoration: underline !important;
    cursor: pointer !important; }
  .makeDeposit .depositOrderLinesGrid {
    padding-left: 0; }
  @media screen and (max-width: 768px) {
    .makeDeposit .trackingNumberTextbox {
      margin: 0 1.5rem 1rem 0; }
    .makeDeposit .buttons {
      margin-right: 1rem; }
    .makeDeposit .doneButton {
      width: 100% !important;
      margin-right: 0; }
    .makeDeposit .uploadButtons {
      display: flex;
      justify-content: space-between; }
      .makeDeposit .uploadButtons .rz-button {
        width: 48% !important;
        margin-top: 0.5rem;
        height: 100%; } }

.depositApptSearchGrid {
  position: relative;
  overflow: hidden;
  margin-top: 5px;
  padding: 5px 15px 36px 15px; }
  .depositApptSearchGrid .detail {
    margin-bottom: 25px;
    flex-wrap: Wrap; }
    .depositApptSearchGrid .detail div.settings label {
      text-align: left; }
    .depositApptSearchGrid .detail .rz-form-field {
      width: 75% !important; }
    .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack i.rzi {
      vertical-align: middle; }
    .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .ministack {
      gap: 0.5rem; }
    .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .togglestack {
      gap: 0.3rem; }
      .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .togglestack .dateLabel {
        margin-right: 6px;
        vertical-align: middle; }
    .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .rz-form-field {
      min-width: 20rem; }
    .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .rz-datepicker {
      max-width: 7rem; }
    .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .rz-dropdown {
      max-width: 200px; }
    .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack div.settings {
      display: grid;
      grid-template-columns: max-content 1fr;
      grid-gap: 4px;
      -webkit-align-items: inherit;
      align-items: center; }
    .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack div.settings label {
      text-align: left; }
    .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .rz-button.rz-primary.rz-shade-darker {
      width: 8em !important; }
    .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .rz-button.rz-variant-outlined.rz-primary.rz-shade-default {
      width: 8em !important; }
    @media screen and (max-width: 768px) {
      .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack div.settings {
        max-width: 200px;
        grid-gap: 3px; }
        .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack div.settings .rz-form-field {
          width: 100% !important; }
      .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .rz-dropdown {
        max-width: 130px; }
      .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .searchField {
        width: 100%; }
      .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .rz-form-field-content {
        max-width: 150px; }
      .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .rz-button.rz-primary.rz-shade-darker {
        width: 47% !important; }
      .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .rz-button.rz-variant-outlined.rz-primary.rz-shade-default {
        width: 47% !important; }
      .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .toggleLabel {
        max-width: 5rem;
        vertical-align: middle; }
      .depositApptSearchGrid .detail .depositApptSearchGrid-searchStack .dateLabel {
        max-width: 2rem; } }
  .depositApptSearchGrid .rz-data-grid {
    display: flex;
    height: 100%;
    min-height: 20em; }
  .depositApptSearchGrid .rz-multiselect-panel {
    width: 100%; }

.depositOrderDetail {
  margin-bottom: 500px; }
  .depositOrderDetail .loadingContainer {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%; }
  .depositOrderDetail .label {
    font-weight: 300;
    margin-bottom: 1rem; }
  .depositOrderDetail .partNum .rz-cell-data {
    white-space: pre-wrap;
    display: flex; }
  .depositOrderDetail .lineItemsTitle {
    padding-left: 0; }
  .depositOrderDetail .note {
    overflow-wrap: break-word; }
  .depositOrderDetail .link {
    color: var(--dmBlue) !important; }
  @media screen and (max-width: 768px) {
    .depositOrderDetail .editButton {
      width: 100% !important; } }

.editDO {
  margin-bottom: 10rem; }
  .editDO .loadingContainer {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%; }
  .editDO .label {
    font-weight: 300;
    margin-bottom: 1rem; }
  .editDO .clientPOTextbox {
    margin-bottom: 1rem;
    width: 100%;
    max-width: 500px; }
  .editDO .noteTextbox {
    width: 100%;
    max-width: 500px;
    height: 100%;
    min-height: 150px;
    max-height: 400px;
    margin-bottom: 1rem;
    resize: none; }
  .editDO .rz-textbox {
    width: 100%; }
  .editDO .trackingNumberTextbox {
    width: 100%;
    max-width: 1000px;
    height: 100%;
    min-height: 150px;
    max-height: 400px;
    margin-bottom: 1rem;
    resize: none; }
  .editDO .link {
    color: var(--dmBlue) !important; }
  .editDO .link:hover {
    text-decoration: underline !important;
    cursor: pointer !important; }
  .editDO .deleteButton {
    background-color: var(--rz-base-200) !important;
    border: none;
    color: var(--rz-text-color) !important;
    margin-left: 1rem; }
  .editDO .buttons {
    display: flex;
    justify-content: end; }
    .editDO .buttons .cancelButton {
      margin-left: 10px; }
  .editDO .closeLinesButton {
    margin-left: 0.5rem;
    margin-top: 0.5rem; }
  .editDO .deleteShipmentButton {
    background-color: transparent !important;
    border: none;
    color: var(--rz-text-color) !important; }
  @media screen and (max-width: 768px) {
    .editDO .buttons {
      margin-top: 1rem;
      justify-content: space-between;
      margin-left: -0.5rem;
      margin-right: 0.5rem; }
      .editDO .buttons .rz-button {
        width: 48% !important; }
    .editDO .closeLinesButton {
      width: 96%;
      margin-top: 0; }
    .editDO .addItemButton {
      margin-bottom: 1rem;
      width: 96%; } }

.salesOrderSearchGrid {
  position: relative;
  overflow: hidden;
  margin-top: 5px;
  padding: 5px 15px 36px 15px; }
  .salesOrderSearchGrid .detail {
    margin-bottom: 25px; }
    .salesOrderSearchGrid .detail .salesOrderSearchGrid-searchStack i.rzi {
      vertical-align: middle; }
  .salesOrderSearchGrid .searchField {
    background-color: var(--rz-primary-darker); }
    .salesOrderSearchGrid .searchField .rz-form-field-content {
      border-width: 2px;
      border-color: black; }
  .salesOrderSearchGrid .rz-data-grid {
    display: flex;
    height: 100%;
    min-height: 20em; }
  .salesOrderSearchGrid .rz-multiselect-panel {
    width: 100%; }
  .salesOrderSearchGrid .placeOrderButton {
    width: 9em !important;
    float: right; }
  .salesOrderSearchGrid .rz-cell-filter {
    max-height: 53px; }
  .salesOrderSearchGrid .searchButton {
    width: 8em !important; }
  .salesOrderSearchGrid .clearButton {
    width: 8em !important; }
  .salesOrderSearchGrid .paperclip_icon {
    width: 18px;
    height: 18px; }
  @media (max-width: 768px) {
    .salesOrderSearchGrid {
      padding: 0px; }
      .salesOrderSearchGrid .placeOrderButton {
        width: 100% !important; }
      .salesOrderSearchGrid .searchButton {
        width: 47% !important; }
      .salesOrderSearchGrid .clearButton {
        width: 47% !important; } }

.lotMgmtSearchGrid {
  position: relative;
  overflow: hidden;
  margin-top: 5px;
  padding: 5px 15px 36px 15px; }
  .lotMgmtSearchGrid .detail {
    margin-bottom: 25px;
    flex-wrap: Wrap; }
    .lotMgmtSearchGrid .detail div.settings label {
      text-align: left; }
    .lotMgmtSearchGrid .detail .rz-form-field {
      width: 75% !important; }
    .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack i.rzi {
      vertical-align: middle; }
    .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack .ministack {
      gap: 0.5rem; }
    .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack .togglestack {
      gap: 0.3rem; }
      .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack .togglestack .dateLabel {
        margin-right: 6px;
        vertical-align: middle; }
    .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack .rz-form-field {
      min-width: 20rem; }
    .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack .rz-dropdown {
      max-width: 200px; }
    .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack div.settings {
      display: grid;
      grid-template-columns: max-content 1fr;
      grid-gap: 4px;
      -webkit-align-items: inherit;
      align-items: center; }
    .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack div.settings label {
      text-align: left; }
    .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack .rz-button.rz-primary.rz-shade-darker {
      width: 8em !important; }
    .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack .rz-button.rz-variant-outlined.rz-primary.rz-shade-default {
      width: 8em !important; }
    @media screen and (max-width: 768px) {
      .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack div.settings {
        max-width: 200px;
        grid-gap: 3px; }
        .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack div.settings .rz-form-field {
          width: 100% !important; }
      .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack .rz-dropdown {
        max-width: 130px; }
      .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack .searchField {
        width: 100%; }
      .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack .rz-form-field-content {
        max-width: 150px; }
      .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack .rz-button.rz-primary.rz-shade-darker {
        width: 47% !important; }
      .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack .rz-button.rz-variant-outlined.rz-primary.rz-shade-default {
        width: 47% !important; }
      .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack .toggleLabel {
        max-width: 5rem;
        vertical-align: middle; }
      .lotMgmtSearchGrid .detail .lotMgmtSearchGrid-searchStack .dateLabel {
        max-width: 2rem; } }
  .lotMgmtSearchGrid .rz-data-grid {
    display: flex;
    height: 100%;
    min-height: 20em; }
  .lotMgmtSearchGrid .rz-multiselect-panel {
    width: 100%; }

.lotDetail {
  margin-bottom: 500px; }
  .lotDetail .loadingContainer {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%; }
  .lotDetail h3 {
    margin-bottom: 2rem; }
  .lotDetail .label {
    font-weight: 300;
    margin-bottom: 1rem; }
  .lotDetail .errors {
    margin-top: -1rem;
    margin-bottom: 1rem; }
  .lotDetail .saveButton {
    width: 8em; }
  .lotDetail .cancelButton {
    width: 8em;
    margin-left: 0.5rem; }
  .lotDetail .changeStatusButton {
    float: right;
    margin-right: 1rem;
    width: 10em; }
  .lotDetail .recallButton {
    float: right;
    margin-right: 1rem; }
  .lotDetail .rz-panel {
    padding-right: 2rem; }
  .lotDetail .products {
    margin-bottom: 2rem; }
  .lotDetail .rz-datepicker {
    max-width: 130px; }
  .lotDetail .label {
    padding-left: 5px;
    padding-right: 5px; }
  .lotDetail .reports h4 {
    margin-bottom: 0.1rem; }
  .lotDetail .reports .report-tile {
    display: inline-block;
    vertical-align: top;
    padding: 1rem; }
  .lotDetail .reports .report-content, .lotDetail .reports .report-name {
    width: 17rem; }
  @media screen and (max-width: 768px) {
    .lotDetail .buttons {
      display: flex;
      justify-content: space-between; }
      .lotDetail .buttons .cancelButton {
        width: 48% !important; }
      .lotDetail .buttons .saveButton {
        width: 48% !important; }
    .lotDetail .changeStatusButton {
      width: 100% !important;
      margin-right: 0;
      margin-bottom: 2rem; }
    .lotDetail .recallButton {
      width: 100%;
      margin-right: 0;
      margin-bottom: 2rem; }
    .lotDetail .report-content, .lotDetail .report-name {
      width: 22rem !important; } }

.lotRecallPopUp {
  text-align: center;
  margin-top: -1.5rem; }
  .lotRecallPopUp p {
    margin-bottom: 0; }
  .lotRecallPopUp .code {
    margin-top: 1rem;
    font-weight: 700;
    margin-bottom: 1rem;
    font-size: medium; }
  .lotRecallPopUp .textboxLabel {
    line-height: 3.6rem;
    vertical-align: middle;
    margin-right: 0.5rem; }
  .lotRecallPopUp .errors {
    text-align: left; }
  .lotRecallPopUp .buttons {
    margin-top: 1rem; }
  @media screen and (max-width: 768px) {
    .lotRecallPopUp {
      margin-top: 0; } }

.manageInventoryAlert {
  margin-bottom: 500px; }
  .manageInventoryAlert h3 {
    margin-bottom: 2rem; }
  .manageInventoryAlert .label {
    font-weight: 300;
    margin-bottom: 1rem; }
  .manageInventoryAlert .rightAlignButton {
    float: right; }
  .manageInventoryAlert .deleteButton {
    background-color: transparent !important;
    border: none;
    color: var(--rz-text-color) !important; }
  .manageInventoryAlert .removeButton {
    margin-right: 1rem; }
  .manageInventoryAlert .alerts .rz-textbox {
    width: 100%; }
  .manageInventoryAlert .bulk .rz-dropdown {
    margin-bottom: 1rem;
    width: 100%; }
  @media (max-width: 768px) {
    .manageInventoryAlert {
      padding: 0px; }
      .manageInventoryAlert .rightAlignButton {
        width: 48%; }
      .manageInventoryAlert .updateButton {
        width: 97% !important;
        margin-right: 1rem; }
      .manageInventoryAlert .rz-panel {
        padding-left: 0;
        padding-right: 1rem; } }

.placeSalesOrderContainer {
  /*overriding --rz-border-radius for just these toggle buttons, per the UI design*/ }
  .placeSalesOrderContainer .toggleButton {
    border-radius: 0rem; }
  .placeSalesOrderContainer .rz-button.rz-dark, .placeSalesOrderContainer .rz-dark.rz-paginator-element {
    color: var(--rz-on-primary-darker) !important;
    /*reverse text color on toggle buttons, because the designer said so*/ }
  .placeSalesOrderContainer .rz-button.rz-light, .placeSalesOrderContainer .rz-light.rz-paginator-element {
    color: var(--rz-text-contrast-color) !important;
    /*reverse text color on toggle buttons, because the designer said so*/ }

.placeSingleOrderDetail {
  margin-top: 1rem;
  margin-bottom: 10rem;
  scroll-margin-top: 4rem; }
  .placeSingleOrderDetail .accordion-flush .accordion-item .accordion-button {
    padding: 0.25rem;
    font-weight: 600;
    color: var(--rz-accordion-item-color);
    line-height: var(--rz-accordion-item-line-height);
    font-size: var(--rz-accordion-item-font-size); }
  .placeSingleOrderDetail .accordion-button:not(.collapsed) {
    background-color: #fff; }
  .placeSingleOrderDetail .accordion-button:focus {
    box-shadow: none; }
  .placeSingleOrderDetail .label {
    font-weight: 300;
    margin-bottom: 1rem; }
  .placeSingleOrderDetail .rz-dropdown {
    margin-bottom: 0.5rem; }
  .placeSingleOrderDetail .orderinfo .rz-textbox, .placeSingleOrderDetail .orderinfo .rz-dropdown, .placeSingleOrderDetail .documents .rz-textbox, .placeSingleOrderDetail .documents .rz-dropdown, .placeSingleOrderDetail .shipto .rz-textbox, .placeSingleOrderDetail .shipto .rz-dropdown, .placeSingleOrderDetail .freight .rz-textbox, .placeSingleOrderDetail .freight .rz-dropdown, .placeSingleOrderDetail .shipfrom .rz-textbox, .placeSingleOrderDetail .shipfrom .rz-dropdown {
    width: 100%;
    margin-bottom: 0.5rem; }
  .placeSingleOrderDetail .datePicker, .placeSingleOrderDetail .rz-textarea, .placeSingleOrderDetail .form-control {
    width: 100%;
    margin-bottom: 0.5rem; }
  .placeSingleOrderDetail .giftMessage .rz-dropdown {
    min-width: 250px;
    margin-right: 0.5rem; }
  .placeSingleOrderDetail .link {
    color: var(--dmBlue) !important; }
  .placeSingleOrderDetail .link:hover {
    text-decoration: underline !important;
    cursor: pointer !important; }
  .placeSingleOrderDetail .deleteButton {
    background-color: var(--rz-base-200) !important;
    border: none;
    color: var(--rz-text-color) !important;
    margin-left: 1rem; }
  .placeSingleOrderDetail .buttons {
    display: flex;
    justify-content: end; }
    .placeSingleOrderDetail .buttons .cancelButton {
      margin-left: 10px; }
  .placeSingleOrderDetail .asterisk {
    color: var(--red); }
  .placeSingleOrderDetail .rightAlign {
    float: right; }
  .placeSingleOrderDetail .addressSuggestionDisplay {
    margin-bottom: 1rem; }
  .placeSingleOrderDetail .smallLoadingContainer {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 25%; }
  .placeSingleOrderDetail .deleteLineButton {
    background-color: transparent !important;
    border: none;
    color: var(--rz-text-color) !important; }
  .placeSingleOrderDetail .lightButton {
    background-color: var(--dmBlue-light) !important;
    opacity: 1 !important;
    box-shadow: none !important;
    margin-left: 0.5rem;
    margin-right: 10px; }
  .placeSingleOrderDetail .linesGrid .rz-textbox {
    width: 100%; }
  .placeSingleOrderDetail .linesGrid .rz-cell-data .rz-dropdown {
    width: 100%; }
  .placeSingleOrderDetail .linesGrid .rz-autocomplete {
    width: 100%; }
  .placeSingleOrderDetail .linesGrid .rz-cell-filter {
    min-height: 54px; }
    .placeSingleOrderDetail .linesGrid .rz-cell-filter .rz-dropdown {
      margin-bottom: 0rem;
      width: 100%; }
  .placeSingleOrderDetail .shipVias {
    display: flex;
    align-items: center;
    flex-wrap: wrap; }
    .placeSingleOrderDetail .shipVias .rz-dropdown {
      width: 90% !important; }
    .placeSingleOrderDetail .shipVias i.rzi {
      margin-left: 0.5rem;
      margin-bottom: 0.5rem; }
    .placeSingleOrderDetail .shipVias .shipViaMessage {
      color: var(--red); }
  .placeSingleOrderDetail i.rzi {
    vertical-align: middle; }
  .placeSingleOrderDetail .editHeader {
    margin-bottom: 0.5rem; }
    .placeSingleOrderDetail .editHeader h3, .placeSingleOrderDetail .editHeader .countdown, .placeSingleOrderDetail .editHeader .countdownTimer {
      display: inline; }
    .placeSingleOrderDetail .editHeader .countdown {
      float: right; }
    .placeSingleOrderDetail .editHeader .countdownTimer {
      font-weight: 700; }
  @media screen and (max-width: 768px) {
    .placeSingleOrderDetail .leftButtons {
      display: flex; }
    .placeSingleOrderDetail .buttons, .placeSingleOrderDetail .leftButtons {
      margin-top: 1rem;
      justify-content: space-between;
      margin-left: -0.5rem;
      margin-right: 0.5rem; }
      .placeSingleOrderDetail .buttons .rz-button, .placeSingleOrderDetail .leftButtons .rz-button {
        width: 48% !important; }
    .placeSingleOrderDetail .giftMessage .rz-dropdown {
      min-width: 20px; }
    .placeSingleOrderDetail .shipto .rz-button, .placeSingleOrderDetail .freight .rz-button {
      width: 100% !important;
      margin-bottom: 1rem; }
    .placeSingleOrderDetail .smallLoadingContainer {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%; } }

.placeSalesOrder {
  margin-top: 2rem;
  margin-bottom: 5rem; }
  .placeSalesOrder .loadingContainer {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%; }
  .placeSalesOrder .title {
    margin-bottom: 3rem; }
  .placeSalesOrder .importDetail .importControls {
    margin-top: 2rem; }
    .placeSalesOrder .importDetail .importControls .section .downloadButton {
      background-color: var(--dmInfo) !important;
      margin-bottom: 2rem; }
    .placeSalesOrder .importDetail .importControls .section .row {
      margin-left: 0rem;
      margin-right: 0rem; }
  .placeSalesOrder .importDetail .deleteButton {
    background-color: var(--rz-base-200) !important;
    border: none;
    color: var(--rz-text-color) !important; }
  .placeSalesOrder .importDetail .files p {
    margin-top: 0.5rem;
    margin-bottom: 0; }
  .placeSalesOrder .buttons {
    display: flex;
    justify-content: end;
    padding-top: 2rem;
    float: right; }
    .placeSalesOrder .buttons .cancelButton {
      margin-left: 10px;
      padding-left: 2rem;
      padding-right: 2rem; }
    .placeSalesOrder .buttons .doneButton {
      padding-left: 2rem;
      padding-right: 2rem; }
  .placeSalesOrder .errors {
    scroll-margin-top: 10rem;
    margin-top: -2rem; }
  .placeSalesOrder a {
    color: var(--dmBlue) !important; }
  .placeSalesOrder a:hover {
    text-decoration: underline !important;
    cursor: pointer !important; }
  @media screen and (max-width: 768px) {
    .placeSalesOrder .buttons {
      margin-right: 1rem;
      float: right;
      width: 100%; }
      .placeSalesOrder .buttons .doneButton {
        width: 47% !important; }
      .placeSalesOrder .buttons .cancelButton {
        width: 47% !important;
        margin-left: 10px;
        padding-left: 2rem;
        padding-right: 2rem; } }

.orderImportHistorySearchGrid {
  position: relative;
  overflow: hidden;
  margin-top: 5px;
  padding: 5px 15px 36px 15px; }
  .orderImportHistorySearchGrid .detail {
    flex-wrap: Wrap; }
    .orderImportHistorySearchGrid .detail .inventorySearchGrid-searchStack {
      margin-bottom: 25px; }
      .orderImportHistorySearchGrid .detail .inventorySearchGrid-searchStack i.rzi {
        vertical-align: middle; }
      .orderImportHistorySearchGrid .detail .inventorySearchGrid-searchStack div.settings {
        display: grid;
        grid-template-columns: max-content 1fr;
        grid-gap: 4px;
        -webkit-align-items: inherit;
        align-items: center; }
      .orderImportHistorySearchGrid .detail .inventorySearchGrid-searchStack .rz-button.rz-primary.rz-shade-darker {
        width: 8em !important; }
      .orderImportHistorySearchGrid .detail .inventorySearchGrid-searchStack .rz-button.rz-variant-outlined.rz-primary.rz-shade-default {
        width: 8em !important; }
      @media screen and (max-width: 768px) {
        .orderImportHistorySearchGrid .detail .inventorySearchGrid-searchStack div.settings {
          grid-gap: 3px; }
          .orderImportHistorySearchGrid .detail .inventorySearchGrid-searchStack div.settings .rz-form-field {
            width: 100% !important; }
          .orderImportHistorySearchGrid .detail .inventorySearchGrid-searchStack div.settings .rz-dropdown {
            width: 100% !important; }
        .orderImportHistorySearchGrid .detail .inventorySearchGrid-searchStack .searchField {
          width: 60%; }
        .orderImportHistorySearchGrid .detail .inventorySearchGrid-searchStack .rz-form-field-content {
          width: 100% !important; }
        .orderImportHistorySearchGrid .detail .inventorySearchGrid-searchStack .rz-button.rz-primary.rz-shade-darker {
          width: 47% !important; }
        .orderImportHistorySearchGrid .detail .inventorySearchGrid-searchStack .rz-button.rz-variant-outlined.rz-primary.rz-shade-default {
          width: 47% !important; } }
  .orderImportHistorySearchGrid .rz-data-grid {
    display: flex;
    height: 100%;
    min-height: 20em; }
  .orderImportHistorySearchGrid .disclaimer {
    color: var(--red); }
  .orderImportHistorySearchGrid .rz-multiselect-panel {
    width: 100%; }
  @media screen and (max-width: 768px) {
    .orderImportHistorySearchGrid {
      padding: 0px; } }

.importDetail {
  margin-bottom: 100px; }
  .importDetail .horizStack {
    padding-bottom: 10px; }
  .importDetail .importControls .section .row {
    margin-left: 0; }
  .importDetail .importControls .section .buttons {
    margin-top: 20px;
    float: right; }
    @media (max-width: 768px) {
      .importDetail .importControls .section .buttons {
        padding-left: 10px;
        padding-top: 15px;
        padding-bottom: 5px;
        width: 100%; }
        .importDetail .importControls .section .buttons .rz-button {
          width: 100%;
          margin-bottom: 1rem; } }
  .importDetail .importControls .section .deleteButton {
    background-color: var(--rz-base-200) !important;
    border: none;
    color: var(--rz-text-color) !important; }

.pendingSalesOrderReview {
  margin-bottom: 10rem; }
  .pendingSalesOrderReview h3 {
    margin-bottom: 1.5rem; }
  .pendingSalesOrderReview .label {
    font-weight: 300; }
  .pendingSalesOrderReview .address, .pendingSalesOrderReview .shipmentInfo, .pendingSalesOrderReview .label {
    margin-bottom: 0; }
  .pendingSalesOrderReview .section {
    margin-bottom: 2rem; }
  .pendingSalesOrderReview .document {
    margin-bottom: 0.5rem; }
  .pendingSalesOrderReview .link {
    color: var(--dmBlue) !important; }
  .pendingSalesOrderReview .link:hover {
    text-decoration: underline !important;
    cursor: pointer !important; }
  .pendingSalesOrderReview .freight .rz-dropdown {
    margin-bottom: 0.5rem; }
  .pendingSalesOrderReview .shipVias {
    display: flex;
    align-items: center;
    flex-wrap: wrap; }
    .pendingSalesOrderReview .shipVias .rz-dropdown {
      width: 90% !important;
      margin-bottom: 0.5rem; }
    .pendingSalesOrderReview .shipVias i.rzi {
      margin-left: 0.5rem;
      margin-bottom: 0.5rem; }
    .pendingSalesOrderReview .shipVias .shipViaMessage {
      color: var(--red); }
  .pendingSalesOrderReview .fulldropdown .rz-dropdown {
    width: 100%; }
  .pendingSalesOrderReview .lightButton {
    background-color: var(--dmBlue-light) !important;
    opacity: 1 !important;
    box-shadow: none !important;
    margin-left: 0.5rem;
    margin-right: 10px; }
  .pendingSalesOrderReview .buttons {
    display: flex;
    justify-content: end; }
    .pendingSalesOrderReview .buttons .cancelButton {
      margin-left: 10px; }
  .pendingSalesOrderReview .rz-panel {
    margin-bottom: 2rem; }
  .pendingSalesOrderReview .warningText {
    color: var(--red); }
  .pendingSalesOrderReview .editHeader {
    margin-bottom: 0.5rem; }
    .pendingSalesOrderReview .editHeader h3, .pendingSalesOrderReview .editHeader .countdown, .pendingSalesOrderReview .editHeader .countdownTimer {
      display: inline; }
    .pendingSalesOrderReview .editHeader .countdown {
      float: right; }
    .pendingSalesOrderReview .editHeader .countdownTimer {
      font-weight: 700; }
  @media screen and (max-width: 768px) {
    .pendingSalesOrderReview .buttons {
      margin-top: 1rem;
      justify-content: space-between;
      margin-left: -0.5rem;
      margin-right: 0.5rem; }
      .pendingSalesOrderReview .buttons .rz-button {
        width: 48% !important; }
    .pendingSalesOrderReview .freight .rz-button {
      width: 100% !important;
      margin-bottom: 1rem;
      margin-left: 0.5rem; } }

.pckgMgmtSearchGrid .rz-data-grid {
  display: flex;
  height: 100%;
  min-height: 20em; }

.pckgMgmtSearchGrid .rz-multiselect-panel {
  width: 100%; }

@media screen and (max-width: 768px) {
  .pckgMgmtSearchGrid {
    padding: 0px; } }

.crossDockSearchGrid {
  position: relative;
  overflow: hidden;
  margin-top: 5px;
  padding: 5px 15px 36px 15px;
  max-width: 92vw; }
  .crossDockSearchGrid .params .rz-textbox, .crossDockSearchGrid .params .rz-dropdown {
    width: 100%; }
  .crossDockSearchGrid .params .row {
    margin-bottom: 0.25rem; }
  .crossDockSearchGrid .buttons .rz-button {
    width: 8em;
    margin-bottom: 0.75rem; }
  .crossDockSearchGrid .buttons .rightAlignButton {
    float: right;
    margin-left: 1rem; }
  .crossDockSearchGrid .rz-data-grid {
    display: flex;
    height: 100%;
    min-height: 20em;
    width: 100%; }
  .crossDockSearchGrid .rz-panel {
    width: 100%; }
  .crossDockSearchGrid .link {
    color: var(--dmBlue) !important; }
  .crossDockSearchGrid .link:hover {
    text-decoration: underline !important;
    cursor: pointer !important; }
  .crossDockSearchGrid .loadingContainer {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%; }
  @media screen and (max-width: 768px) {
    .crossDockSearchGrid .buttons {
      display: flex;
      margin-top: 1rem;
      justify-content: space-between; }
      .crossDockSearchGrid .buttons .rz-button {
        width: 48% !important; } }

.crossDockDetail {
  margin-bottom: 10rem; }
  .crossDockDetail .rz-textbox, .crossDockDetail .form-control {
    width: 100%;
    margin-bottom: 0.5rem; }
  .crossDockDetail .buttons {
    display: flex;
    justify-content: end;
    margin-right: 1rem; }
    .crossDockDetail .buttons .cancelButton {
      margin-left: 10px; }
  .crossDockDetail .lines {
    margin-top: 2rem; }
  @media screen and (max-width: 768px) {
    .crossDockDetail .buttons {
      margin-top: 1rem; }
      .crossDockDetail .buttons .rz-button {
        width: 100% !important; } }

.depositOrderLinesGrid .deleteLineButton {
  background-color: transparent !important;
  border: none;
  color: var(--rz-text-color) !important; }

.depositOrderLinesGrid .addItemButton {
  background-color: var(--dmBlue-light) !important;
  opacity: 1 !important;
  box-shadow: none !important;
  margin-left: 0.5rem;
  margin-right: 10px; }

.depositOrderLinesGrid .partNum .rz-cell-data {
  white-space: pre-wrap;
  display: flex; }

.depositOrderLinesGrid .rz-cell-data .rz-dropdown {
  width: 100%; }

.depositOrderLinesGrid .rz-cell-data .rz-textbox {
  width: 100%; }

.depositOrderLinesGrid .rz-autocomplete {
  width: 100%;
  white-space: normal; }

@media screen and (max-width: 768px) {
  .depositOrderLinesGrid .addItemButton {
    margin-bottom: 1rem;
    width: 96%; } }

.serviceBillSearchGrid {
  position: relative;
  overflow: hidden;
  margin-top: 5px;
  padding: 5px 15px 36px 15px; }
  .serviceBillSearchGrid .thedmSearchFieldControl {
    width: 100%; }
  .serviceBillSearchGrid .rz-cell-data .rz-button {
    width: 100%; }
  .serviceBillSearchGrid .rightButton {
    float: right;
    margin-right: 0.5rem; }
  @media (max-width: 768px) {
    .serviceBillSearchGrid .rightButton {
      width: 97%; } }

.salesorderArrivalInfo .datePicker {
  width: 90% !important;
  margin-bottom: 0.5rem !important; }

.salesorderArrivalInfo .label {
  min-height: 28px !important; }

/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAiQXBwLnJhem9yLmNzcyIsCgkic291cmNlcyI6IFsKCQkiQXBwLnJhem9yLnNjc3MiLAoJCSJTaGFyZWQvU2hhcmVkLnJhem9yLnNjc3MiLAoJCSJTaGFyZWQvQXV0aGVudGljYXRpb24ucmF6b3Iuc2NzcyIsCgkJIlBhZ2VzL1BhZ2VzLnJhem9yLnNjc3MiLAoJCSJQYWdlcy9JbmRleC5yYXpvci5zY3NzIiwKCQkiUGFnZXMvSW1wZXJzb25hdGlvbi5yYXpvci5zY3NzIiwKCQkiUGFnZXMvUmV0YWlsZXJQcmljaW5nUGFnZS5yYXpvci5zY3NzIiwKCQkiQ29tcG9uZW50cy9Db21wb25lbnRzLnJhem9yLnNjc3MiLAoJCSJDb21wb25lbnRzL0ludmVudG9yeVNlYXJjaEdyaWQucmF6b3Iuc2NzcyIsCgkJIkNvbXBvbmVudHMvSW52ZW50b3J5RGV0YWlsLnJhem9yLnNjc3MiLAoJCSJDb21wb25lbnRzL0RlcG9zaXRPcmRlclNlYXJjaEdyaWQucmF6b3Iuc2NzcyIsCgkJIkNvbXBvbmVudHMvSW52ZW50b3J5QWxlcnRTZWFyY2hHcmlkLnJhem9yLnNjc3MiLAoJCSJDb21wb25lbnRzL01ha2VEZXBvc2l0LnJhem9yLnNjc3MiLAoJCSJDb21wb25lbnRzL0RlcG9zaXRBcHBvaW50bWVudFNlYXJjaEdyaWQucmF6b3Iuc2NzcyIsCgkJIkNvbXBvbmVudHMvRGVwb3NpdE9yZGVyRGV0YWlsLnJhem9yLnNjc3MiLAoJCSJDb21wb25lbnRzL0VkaXREZXBvc2l0T3JkZXJEZXRhaWwucmF6b3Iuc2NzcyIsCgkJIkNvbXBvbmVudHMvU2FsZXNPcmRlclNlYXJjaEdyaWQucmF6b3Iuc2NzcyIsCgkJIkNvbXBvbmVudHMvTG90TWFuYWdlbWVudFNlYXJjaEdyaWQucmF6b3Iuc2NzcyIsCgkJIkNvbXBvbmVudHMvTG90TWFuYWdlbWVudERldGFpbC5yYXpvci5zY3NzIiwKCQkiQ29tcG9uZW50cy9Mb3RSZWNhbGxQb3BVcC5yYXpvci5zY3NzIiwKCQkiQ29tcG9uZW50cy9NYW5hZ2VJbnZlbnRvcnlBbGVydC5yYXpvci5zY3NzIiwKCQkiQ29tcG9uZW50cy9QbGFjZU9yZGVyc0NvbnRhaW5lckRldGFpbC5yYXpvci5zY3NzIiwKCQkiQ29tcG9uZW50cy9QbGFjZVNpbmdsZU9yZGVyRGV0YWlsLnJhem9yLnNjc3MiLAoJCSJDb21wb25lbnRzL1BsYWNlTXVsdGlwbGVPcmRlcnNEZXRhaWwucmF6b3Iuc2NzcyIsCgkJIkNvbXBvbmVudHMvT3JkZXJJbXBvcnRIaXN0b3J5U2VhcmNoR3JpZC5yYXpvci5zY3NzIiwKCQkiQ29tcG9uZW50cy9SZXRhaWxlclByaWNpbmdJbXBvcnREZXRhaWwucmF6b3Iuc2NzcyIsCgkJIkNvbXBvbmVudHMvUGVuZGluZ1NhbGVzT3JkZXJSZXZpZXcucmF6b3Iuc2NzcyIsCgkJIkNvbXBvbmVudHMvUGFja2FnaW5nTWFuYWdlbWVudFNlYXJjaEdyaWQucmF6b3Iuc2NzcyIsCgkJIkNvbXBvbmVudHMvQ3Jvc3NEb2NrU2VhcmNoR3JpZC5yYXpvci5zY3NzIiwKCQkiQ29tcG9uZW50cy9Dcm9zc0RvY2tEZXRhaWwucmF6b3Iuc2NzcyIsCgkJIkNvbXBvbmVudHMvRGVwb3NpdE9yZGVyTGluZXNHcmlkLnJhem9yLnNjc3MiLAoJCSJDb21wb25lbnRzL1NlcnZpY2VCaWxsU2VhcmNoR3JpZC5yYXpvci5zY3NzIiwKCQkiQ29tcG9uZW50cy9TYWxlc09yZGVyQXJyaXZhbEluZm8ucmF6b3Iuc2NzcyIKCV0sCgkibmFtZXMiOiBbXSwKCSJtYXBwaW5ncyI6ICJBQUFBLEFBQUEsSUFBSSxFQUFFLEFBQUEsSUFBSSxDQUFDO0VBQ1AsV0FBVyxFQUFFLGVBQWUsR0FDL0I7O0FBRUQsQUFBQSxDQUFDLEVBQUUsQUFBQSxTQUFTLENBQUM7RUFDVCxLQUFLLEVBQUUsT0FBTyxHQUNqQjs7QUFFRCxBQUFBLFlBQVksQ0FBQztFQUNULEtBQUssRUFBRSxJQUFJO0VBQ1gsZ0JBQWdCLEVBQUUsT0FBTztFQUN6QixZQUFZLEVBQUUsT0FBTyxHQUN4Qjs7QUFFRCxB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 */