html {
  height: 100%;
}
body {
  padding: 0;
  margin: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: #ffffff;
 }

.left {
  float: left;
}

.right {
  float: right;
}

.clear {
  clear: both;
}

.pt-header-line {
  height: 3px;
  background-color: var(--color-pt-blue);
}

a.pt-logo {
  display: flex;
  align-items: center;
  height: 100%;
  margin-left: 20px;
}

a.pt-logo > img {
  width: 247px;
  height: 56px;
  cursor:pointer;
}

.header-container {
  height: 80px;
}

.header-profile-container {
  margin-top: 10px;
  height: 60px;
}

.header-profile-container > .header-welcome {
  color: #9e9ea9;
  margin-right: 20px;
  margin-top: 6%;
  font-size: 13px;
  text-transform: uppercase;
}

.header-profile-container > .header-welcome > span.header-welcome-name {
  color: #40404f; }

.header-profile-container > .profile-image {
  height: 60px;
  width: 60px;
  margin-right: 20px;
}

.header-profile-container > .profile-image:hover {
  border-radius: 50%;
  box-shadow: 0px 0px 10px #888888;
}

.header-profile-container > .profile-image > img {
  height: 60px;
  width: 60px;
  border-radius: 30px;
  box-shadow: 0px 6px 12px 0 rgba(200, 200, 200, 0.55);
  cursor: pointer;
}

/* can conflict with bootstrap nav */
nav {
  border-top: 1px solid #eaeaf6;
  border-bottom: 1px solid #eaeaf6;
  box-shadow: 0 15px 15px 0px rgba(200, 200, 200, 0.1);
  height: 76px;
}

.navbar {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0.5rem 1rem;
}

nav > .nav-item {
  height: 74px;
  padding: 13px 0;
  width: 125px;
  float: left;
  border-right: 1px solid #eaeaf6;
  border-bottom: 3px solid transparent; }

nav > .additional-nav-padding {
  width: 155px; }

nav > .nav-item:hover {
  border-bottom: 3px solid var(--color-pt-blue);
  cursor: pointer;
  background-color: var(--color-pt-light-1); }

nav > .active-nav-item {
  background-color: rgba(32, 159, 210, 0.1) !important;
  border-bottom: 3px solid var(--color-pt-blue); }

nav > .nav-item > .nav-item-icon {
  height: 20px;
  margin-bottom: 7px;
  text-align: center; }

nav > .nav-item > .nav-item-icon > .icon-img {
  width: 20px;
  height: 20px;
  background-size: cover;
  background-position: top;
  margin: 0 auto; }

nav > .nav-item > .nav-item-icon > .inventory-icon-img {
  background-image: url("/img/eld-icon-4f55b64ead022eeb99d07f0f2606a74a.png"); }

/* change images later */
nav > .nav-item > .nav-item-icon > .devices-icon-img {
  background-image: url("/img/eld-icon-4f55b64ead022eeb99d07f0f2606a74a.png"); }

nav > .nav-item > .nav-item-icon > .accounts-icon-img {
  background-image: url("/img/eld-icon-4f55b64ead022eeb99d07f0f2606a74a.png"); }

nav > .nav-item > .nav-item-icon > .users-icon-img {
  background-image: url("/img/eld-icon-4f55b64ead022eeb99d07f0f2606a74a.png"); }

nav > .active-nav-item > .nav-item-icon > .icon-img, nav > .nav-item:hover > .nav-item-icon > .icon-img {
  background-position: bottom; }

nav > .nav-item > .nav-item-title {
  text-align: center;
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 700;
}

.main-container {
  overflow: hidden;
  display: flex;
  flex: 1;
}

.root-container {
  display: flex;
  flex-direction: column;
  height: inherit;
  position: relative;
  overflow: hidden;
}

.content {
  height: 100%;
  position: relative;
}

.main-container > .sidebar {
  height: 100%;
}

.main-container > .content {
  width: 100%;
  height: 100%;
  background: var(--color-pt-light-2); }

.main-container > .show-overflow {
  overflow: auto;
}

.main-container > .hide-overflow {
  overflow: hidden;
}

.main-container > .sidebar > .sidebar-menu {
  padding: 30px 10px 20px 10px;
  font-size: 16px;
  height: 100%;
  white-space: nowrap;
  overflow-y: auto;
  width: 250px;
}

.main-container > .sidebar > .sidebar-menu .sidebar-menu-item {
  line-height: 40px;
  margin-bottom: 5px;
  padding: 0 15px;
  cursor: pointer;
  text-transform: capitalize; }

.main-container > .sidebar > .sidebar-menu .sidebar-menu-item:hover {
  line-height: 40px; }

.main-container > .sidebar > .sidebar-menu .active-sidebar-menu-item {
  background: var(--color-pt-blue) !important;
  color: #ffffff !important;
  line-height: 40px;
}

.main-container > .sidebar > .sidebar-menu > .sidebar-menu-subitem {
  font-size: 7px;
  height: 100%;
  padding-bottom: 154px; }

.main-container > .sidebar > .sidebar-menu > .sidebar-menu-subitem .sidebar-menu-subitem-wrapper {
  height: 100%;
  overflow-y: auto; }

.main-container > .sidebar > .sidebar-menu > .sidebar-menu-subitem .sidebar-menu-item {
  line-height: 25px;
  margin-bottom: 0px;
  font-size: 12px;
  padding-left: 6px;
  padding-right: 6px; }

.main-container > .sidebar > .sidebar-menu > .sidebar-menu-subitem .active-sidebar-menu-item {
  background: var(--color-pt-blue) !important;
  color: #ffffff !important; }

.label-for-slide-btn {
  cursor: pointer;
  padding-top: 2px;
  padding-right: 5px; }

#slide-sidebar {
  display: none; }

input[name='slide-sidebar']:checked ~ .sidebar-menu .sidebar-menu-item {
  padding-left: 8px; }

.action-template {
  width: 100%;
  height: 100%;
  display: flex !important;
  justify-content: center;

  &.action-template__align-center {
    align-tems: center;
  }
}

.action-template:hover {
  cursor: pointer; }

.action-template a {
  color: var(--color-pt-icon);
  text-decoration: none; }

.action-template a span {
  margin-top: -9px; }

.action-template a span:hover {
  color: var(--color-pt-blue);
  text-decoration: none !important; }

.action-template a:focus {
  text-decoration: none !important; }

.action-template a.delete-action {
  color: #000000; }

i.delete-action:hover,
a.delete-action:hover {
  color: #D93656;
  text-decoration: none; }

.action-template a.delete-action-disabled {
  color: #aaaaaa;
  cursor: not-allowed; }

a.delete-action-disabled:hover {
  color: #aaaaaa;
  text-decoration: none;
  cursor: not-allowed; }

i.edit-action:hover,
a.edit-action:hover {
  color: #D17D1F;
  text-decoration: none; }

.btn-no-radius {
  border-bottom-right-radius: 0px !important;
  border-top-right-radius: 0px !important; }

.angular-ui-tree-handle {
  background: #f8faff;
  border: 1px solid #dae2ea;
  color: #7c9eb2;
  padding: 10px 10px; }

.angular-ui-tree-handle:hover {
  color: var(--color-pt-blue);
  background: #f4f6f7;
  border-color: #dce2e8; }

tr.angular-ui-tree-empty {
  height: 100px; }

.group-title {
  background-color: #687074 !important;
  color: #FFF !important; }

/* For Firefox */
input[type='number'] {
  -moz-appearance: textfield; }

/* Webkit browsers like Safari and Chrome */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0; }

.btn:disabled:hover {
    cursor: not-allowed
}
.btn {
  border-radius: 0px !important;
  font-size: inherit; }

.device-details-header-container {
  padding-top: 15px;
  padding-bottom: 15px;
  border-bottom: 1px solid var(--color-pt-border-default); }
.ctc-status_buttons {
  display: flex;
  gap: 1rem;
  align-items: center;
  margin: 0;
}

.scrollable-device-details-container {
  padding-top: 15px;
  word-break: break-all;
  height: 500px;
  overflow-y: scroll; }
  .scrollable-device-details-container .row {
    margin-right: 0 !important; }
  .scrollable-device-details-container .no-gutter [class*='col-'] {
    padding-right: 0;
    padding-left: 0; }
  .scrollable-device-details-container h4 {
    margin-bottom: 20px; }
  .scrollable-device-details-container .device-edit-config-btn:hover, .scrollable-device-details-container :focus {
    text-decoration: none; }
.scrollable-device-details-container .device-details-config-container {
    margin-bottom: 0;
}

.form-group  {
    margin-bottom: 15px;
}

.scrollable-device-details-container .details-btn {
    margin-bottom: 10px;
}

.device-details-container {
  padding-top: 15px;
  word-break: break-all;
}

.device-details-container h4 {
    margin-bottom: 20px;
}

.device-details-container .device-edit-config-btn:hover, .device-details-container :focus {
    text-decoration: none;
}

.device-details-container .device-details-config-container {
    margin-bottom: 0;
}
  .device-details-container .details-btn {
    margin-bottom: 10px; }

.buttonInside {
  position: relative;
  margin-bottom: 10px; }

.dashboard-search-btn {
  position: absolute;
  right: 1px;
  top: 1px;
  border: none;
  height: 32px;
  width: 32px;
  outline: none;
  text-align: center;
  font-weight: bold;
  padding: 2px;
  background: none; }

.dashboard-search-btn:hover {
  cursor: pointer; }

.uib-daypicker {
  outline: none !important; }

.uib-daypicker:focus {
  outline: none !important; }

.uib-datepicker table, table:focus {
  outline: none !important; }

.show-error-select-search .ng-invalid .custom-match {
  border: 1px solid red; }

.device-details-table tr td:first-child {
  font-weight: bold;
  padding-bottom: 3px;
  padding-right: 10px;
  white-space: nowrap; }

.device-details-table tr td:nth-child(2) {
  width: 100%; }

.device-details-table tr td input {
  margin-bottom: 10px; }

.panel-pt {
  border: none !important;
  border-radius: 0 !important;
  margin-bottom: 0 !important; }
  .panel-pt .panel-heading {
    border-radius: 0 !important;
    color: #fff;
    background-color: var(--color-pt-blue);
    padding: 10px 15px;
    border-bottom: 1px solid transparent;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}
h4, .h4 {
    font-size: 18px;
}
    .panel-pt .panel-heading h4 {
      font-weight: normal !important;
      margin-bottom: 2px !important;
      margin-top: 2px !important;
}
  .panel-pt .panel-body-light {
    padding-left: 5px;
    padding-bottom: 3px;
}

.panel-body {
    padding: 15px;
    background: #fff;
}

.ctc-info {
  --gap-size: 2rem;
  --separator-width: 2px;
  --separator-offset: calc(var(--gap-size) / 2);
  display: grid;
  grid-template-areas:
        "previous-submission current-submission"
        "schedule-info schedule-info";
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: minmax(7rem, 1fr);
  gap: var(--gap-size);
  overflow: hidden;
}

.ctc-info > .ctc-info--cell {
  position: relative;
}

.ctc-info > .ctc-info--cell::after,
.ctc-info > .ctc-info--cell::before {
  content: "";
  position: absolute;
  background: var(--color-pt-border-default);
}

.ctc-info > .ctc-info--cell::after {
  top: 0;
  left: calc(var(--separator-offset) * -1);

  width: var(--separator-width);
  height: 100%;
}

.ctc-info > .ctc-info--cell::before {
  top: calc(var(--separator-offset) * -1);
  left: 0;

  width: 100%;
  height: var(--separator-width);
}

.ctc-message {
  display: grid;
  grid-template-areas: 'title message';
  grid-template-columns: min-content 1fr;
  grid-template-rows: minmax(3rem, 1fr);
  column-gap: 2rem;
  margin-bottom: 1rem;
  font-weight: bold;
}

.ctc-message__list {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  color: var(--color-pt-orange);
  font-weight: bold;
}

.ctc-submission {
  display: grid;
  grid-template-rows: 2.6rem 1fr;
  row-gap: 15px;
}

.ctc-submission--current {
  grid-area: current-submission;
}

.ctc-submission--previous {
  grid-area: previous-submission;
}

.ctc-submission--header div:first-child {
  font-weight: bold;
}

.schedule-info {
  display: grid;
  grid-area: schedule-info;
  grid-template-areas:
        "vin rd rd"
        "lp tpy db";
  grid-template-columns: minmax(0, 1fr) repeat(2, minmax(0, 0.5fr));
  row-gap: 0.5rem;
}

.ctc-info--vin span:first-child,
.ctc-info--license-plate span:first-child,
.ctc-info--registration-date span:first-child,
.ctc-info--tests-per-year span:first-child,
.ctc-info--days-before span:first-child,
.ctc-submission--stat span:first-child {
  font-weight: bold;
  padding-bottom: 3px;
  padding-right: 10px;
  white-space: nowrap;
}

.ctc-info--vin {
  grid-area: vin;
}

.ctc-info--license-plate {
  grid-area: lp;
}

.ctc-info--registration-date {
  grid-area: rd;
}

.ctc-info--tests-per-year {
  grid-area: tpy;
}

.ctc-info--days-before {
  grid-area: db;
}


.top-offset {
  margin-top: 15px; }

.user-profile-container .user-details span {
  width: 80px;
  float: left;
  display: block;
  font-weight: bold; }

.user-profile-container .action-heading .title {
  font-size: 18px;
  margin-top: 3px;
  display: block;
  float: left; }

.btn-pt-warning {
  background-color: #f0ad4e;
  border-color: #eea236;
  color: #fff;
}

.btn-pt-warning:hover {
  background-color: #ec971f;
  border-color: #d58512;
  color: #fff;
}

.btn-pt {
  background-color: var(--color-pt-blue);
  border-color: var(--color-pt-light-1) !important;
  color: #fff; }

.btn-pt:hover {
  color: #fff !important;
  background-color: var(--color-pt-blue-dark) !important; }

.panel-body-clearfix {
  padding: 0 !important; }

.alert-clearfix p {
  margin-bottom: 10px !important; }

.disabled-cursor {
  cursor: no-drop; }

.custom-button {
  padding: 3px 10px !important;
  border: none;
  background-color: transparent;
  white-space: nowrap; }
  .custom-button select {
    -webkit-appearance: none;
    -moz-appearance: none;
    border-radius: 5px !important; }

.custom-button-disabled {
  opacity: 0.4; }

.custom-button:focus,
.custom-buttom-enabled:focus,
.custom-button:hover,
.custom-button-enabled:hover {
  background: var(--color-pt-blue) !important;
  color: #ffffff; }

.dropdown .custom-dropdown > ul {
  padding: 0px;
  margin: 0px; }

.dropdown .custom-dropdown > ul > li {
  padding: 5px 10px; }

.dropdown .custom-dropdown > ul > li:hover {
  background: var(--color-pt-fill-light-hover); }

.customer-purchase-order-container .angular-ui-tree-empty {
  border: 3px dashed #bbb;
  background-image: unset !important;
  background-color: var(--color-pt-light-1) !important; }
  .customer-purchase-order-container .angular-ui-tree-empty:before {
    content: "Drag and drop here";
    position: relative;
    top: 33px;
    width: 100%;
    display: inline-block;
    text-align: center; }


.vpo {
    width: 100%;
    margin: 2px 0px;
    text-align: left;
    line-height: 2;
}

.inner-container {
  background-color: #ffffff;
  margin: 15px;
}
.vh-80{
  height:80vh
}
label {
    display: inline-block;
    max-width: 100%;
    margin-bottom: 5px;
    font-weight: 700;
}
.btn-default {
    color: var(--color-pt-icon);
    background-color: #fff;
/*    border-color: var(--color-pt-border-default);*/
}

.btn-default:hover, .btn-default:focus {
  background: var(--color-pt-fill-default-hover);
  cursor: pointer;
  border-color: var(--color-pt-border-default-hover);
}

.vp1{
    display:flex;
    justify-content:space-between;
    align-items:center;

}
.pg{
    width:30%;
    flex:1;
}
.details-btn{
    border-color: var(--color-pt-border-default);
}

.panel-default > .panel-heading {
    color: var(--color-pt-icon);
    background-color: var(--color-pt-fill-light-hover);
    border-color: var(--color-pt-border-default);
}
.panel-heading {
    padding: 10px 15px;
    border-bottom: 1px solid transparent;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}

.panel{
    border: 1px solid var(--color-pt-border-default) !important;
    margin-bottom: 20px;
    background-color: #fff;
    border: 1px solid transparent;
    border-radius: 4px;
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

.glyphicon {
    position: relative;
    top: 1px;
    display: inline-block;
    font-family: "Glyphicons Halflings";
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}





.login-container {
  padding: 0;
  background-color: var(--color-pt-light-2) !important; }

.no-gutter > [class*='col-'] {
  padding-right: 0;
  padding-left: 0; }

.btn-primary {
  color: var(--color-pt-blue) !important;
  background-color: transparent !important;
  border-color: var(--color-pt-blue) !important; }

.btn-primary.btn-solid {
  background-color: var(--color-pt-blue) !important;
  color: #fff !important;
}
.btn-primary:hover, .btn-primary:focus {
  background-color: var(--color-pt-blue) !important;
  color: #fff !important; }

.pt-btn-cancel {
  background-color: transparent !important;
  border-color: #9999a1 !important;
  color: #9999a1 !important; }

.pt-btn-cancel:hover {
  background-color: #fff !important;
  border-color: #47474f !important;
  color: #47474f !important; }

.btn-danger {
  background-color: transparent !important;
  border-color: var(--color-pt-danger) !important;
  color: var(--color-pt-danger) !important; }

.btn-danger:hover {
  background-color: var(--color-pt-danger) !important;
  border-color: var(--color-pt-danger) !important;
  color: #fff !important; }

.forms-container {
  margin-left: 15px;
  margin-right: 15px; }

.panel-form-views {
  margin-left: -15px; }

.panel-form-views > [class*='col-'] {
  padding-left: 0; }

.glyphicon-remove {
  color: red; }

.glyphicon-pushpin {
  color: var(--color-pt-blue); }

.glyphicon-ok {
  color: green; }

.custom-icon {
  padding: 3px 4px 2px 2px !important;
  font-size: 1.6em; }
.custom-icon-card{
  font-size: 1.2em;
  padding:3px 4px 2px 2px !important;
}
a.button-with-icon {
  color: var(--color-pt-icon);
  text-decoration: none; }
  a.button-with-icon:hover, a.button-with-icon:active, a.button-with-icon:focus {
    color: var(--color-pt-blue);
    text-decoration: none; }
  a.button-with-icon .custom-icon-medium {
    padding: 0 !important;
    font-size: 1.2em; }

.default-action:hover {
  color: var(--color-pt-blue); }


.collapse:not(.show) {
  display: none; }

.navbar-collapse {
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-align: center;
  align-items: center; }

.navbar-nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none; }

.nav-tabs .nav-item {
  margin-bottom: -1px; }

.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0; }

.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.vpo {
  width: 100%;
  margin: 2px 0px;
  text-align: left;
  line-height: 2; }

.no-border-radius {
  border-radius: 0px !important; }

.configuration-name-link:hover {
  color: var(--color-pt-blue-dark); }

.configuration-name-link {
  color: inherit;
  cursor: pointer;
  text-decoration: none !important; }

.fas.configuration-refresh {
  color: var(--color-pt-icon);
  margin-left: 20px;
  vertical-align: middle;
  font-size: 20px; }

.fas.configuration-refresh:hover {
  color: var(--color-pt-blue-dark); }

a.new-refresh {
  margin-left: 20px;
  margin-top: 6px;
  display: inline-block; }

.fas.new-refresh {
  color: var(--color-pt-icon);
  vertical-align: middle;
  font-size: 20px; }

.fas.new-refresh:hover {
  color: var(--color-pt-blue-dark); }

.assign-disabled-icon {
  filter: opacity(0.2);
  background-color: var(--color-pt-icon); }

.assign-disabled-icon:hover {
  filter: opacity(0.2);
  background-color: var(--color-pt-icon); }

.assign-icon {
  display: inline-block;
  margin-top: 5px;
  padding-right: 2px;
  background-color: var(--color-pt-icon);
  -webkit-mask: url("/img/assign-icon-3ff0ed4c11a0187872ff514ea5cf855f.svg") no-repeat center;
  mask: url("/img/assign-icon-3ff0ed4c11a0187872ff514ea5cf855f.svg") no-repeat center;
  background-size: 21px;
  width: 21px;
  height: 21px;
  background-repeat: no-repeat; }

.assign-icon:hover {
  background-color: var(--color-pt-blue); }

.inline-block {
  display: inline-block;
}

.script-hyperlink {
    color: inherit;
    text-decoration: none;
}

span.script-hyperlink:hover,
a.script-hyperlink:hover {
  cursor: pointer;
  color: var(--color-pt-blue-dark);
}

input[type="file"] {
  width: 100%; }

.disable-select {
  -webkit-user-select: none;
  /* Safari */
  -khtml-user-select: none;
  /* Konqueror HTML */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  /* supported by Chrome and Opera */
}

.bg-white {
  background-color: #ffffff !important; }

.main-container > .sidebar > .sidebar-menu .custom-sidebar-menu-item {
  line-height: 20px;
  margin-bottom: 5px;
  padding: 0 5px;
  cursor: pointer;
  text-transform: capitalize; }

.main-container > .sidebar > .sidebar-menu .custom-sidebar-menu-item:hover {
  line-height: 20px; }

.fs-12 {
  font-size: 12px !important; }

.nested {
  margin-left: 15px; }

.nestedSubMenu {
  margin-left: 10px; }

.scroll-submenu {
  overflow-y: auto;
  height: 100%;
  max-height: calc(100vh - 401px); 
}

td.fitwidth {
  width: 1px;
  white-space: nowrap; }

.mr-15p {
  margin-right: 15%; }

.mr-40 {
  margin-right: 40px; }



.bg-red {
  background-color: red; }

.bg-yellow {
  background-color: yellow; }

.bg-green {
  background-color: green; }

.bg-clip {
  background-clip: content-box !important; }

.small2 {
  font-size: 80%; }

#d-block {
  display: block; }

.fw-500 {
  font-weight: 500; }

span.resetCounter {
  cursor: pointer;
  margin-right: 5px; }

.resetCounter.resetCounter__disabled {
  cursor: auto;}

.statusInfo {
  display: flex;
  justify-content: space-between; }

.statusInfo span {
  flex: 1;
  align-self: center; 
  max-width: fit-content !important;
}

.w-50 {
  width: 50% !important; }

.w-75 {
  width: 75% !important; }

.rs-p {
  padding: 0px !important; }

.w-30 {
  width: 30% !important; }

.align-self {
  align-self: center; }

.flex-0 {
  flex: 0 !important; }

.p-x-15-y0 {
  padding: 0 15px !important; }

.color-success {
  color: #28a745 !important; }

.color-danger {
  color: #dc3545 !important; }

.badge-success {
  color: #fff !important;
  background-color: #28a745 !important; }

.badge-danger {
  color: #fff !important;
  background-color: #dc3545 !important; }

.badge-info {
  color: #1b1d1e !important;
  background-color: #b3c1cf !important; }

.badge-init {
  color: #fff !important;
  background-color: #17a2b8 !important; }

.ml-4 {
  margin-left: 4px; }

.toggle-button {
  display: flex;
  background: gray;
  width: 7%;
  height: 14px;
  border-radius: 30px;
  transition: all 300ms ease-in-out; }

.toggle-button.active {
  justify-content: end;
  background: var(--color-pt-blue); }

.toggle-button > .inner-circle {
  width: 20px;
  border: gray 3px solid;
  align-self: center;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  transition: all 300ms ease-in-out; }

.toggle-button.active > .inner-circle {
  border: var(--color-pt-blue) 3px solid; }

.container {
  min-width: 992px !important; }

.m-0 {
  margin: 0 !important; }

.mt-0,
.my-0 {
  margin-top: 0 !important; }

.mr-0,
.mx-0 {
  margin-right: 0 !important; }

.mb-0,
.my-0 {
  margin-bottom: 0 !important; }

.ml-0,
.mx-0 {
  margin-left: 0 !important; }

.m-1 {
  margin: 0.25rem !important; }

.mt-1,
.my-1 {
  margin-top: 0.25rem !important; }

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important; }

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important; }

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important; }

.m-2 {
  margin: 0.5rem !important; }

.mt-2,
.my-2 {
  margin-top: 0.5rem !important; }

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important; }

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important; }

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important; }

.m-3 {
  margin: 1rem !important; }

.mt-3,
.my-3 {
  margin-top: 1rem !important; }

.mr-3,
.mx-3 {
  margin-right: 1rem !important; }

.mb-3,
.my-3 {
  margin-bottom: 1rem !important; }

.ml-3,
.mx-3 {
  margin-left: 1rem !important; }

.m-4 {
  margin: 1.5rem !important; }

.mt-4,
.my-4 {
  margin-top: 1.5rem !important; }

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important; }

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important; }

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important; }

.m-5 {
  margin: 3rem !important; }

.mt-5,
.my-5 {
  margin-top: 3rem !important; }

.mr-5,
.mx-5 {
  margin-right: 3rem !important; }

.mb-5,
.my-5 {
  margin-bottom: 3rem !important; }

.ml-5,
.mx-5 {
  margin-left: 3rem !important; }

.p-0 {
  padding: 0 !important; }

.pt-0,
.py-0 {
  padding-top: 0 !important; }

.pr-0,
.px-0 {
  padding-right: 0 !important; }

.pb-0,
.py-0 {
  padding-bottom: 0 !important; }

.pl-0,
.px-0 {
  padding-left: 0 !important; }

.p-1 {
  padding: 0.25rem !important; }

.pt-1,
.py-1 {
  padding-top: 0.25rem !important; }

.pr-1,
.px-1 {
  padding-right: 0.25rem !important; }

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important; }

.pl-1,
.px-1 {
  padding-left: 0.25rem !important; }

.p-2 {
  padding: 0.5rem !important; }

.pt-2,
.py-2 {
  padding-top: 0.5rem !important; }

.pr-2,
.px-2 {
  padding-right: 0.5rem !important; }

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important; }

.pl-2,
.px-2 {
  padding-left: 0.5rem !important; }

.p-3 {
  padding: 1rem !important; }

.pt-3,
.py-3 {
  padding-top: 1rem !important; }

.pr-3,
.px-3 {
  padding-right: 1rem !important; }

.pb-3,
.py-3 {
  padding-bottom: 1rem !important; }

.pl-3,
.px-3 {
  padding-left: 1rem !important; }

.p-4 {
  padding: 1.5rem !important; }

.pt-4,
.py-4 {
  padding-top: 1.5rem !important; }

.pr-4,
.px-4 {
  padding-right: 1.5rem !important; }

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important; }

.pl-4,
.px-4 {
  padding-left: 1.5rem; }

.p-5 {
  padding: 3rem !important; }

.pt-5,
.py-5 {
  padding-top: 3rem !important; }

.pr-5,
.px-5 {
  padding-right: 3rem !important; }

.pb-5,
.py-5 {
  padding-bottom: 3rem !important; }

.pl-5,
.px-5 {
  padding-left: 3rem !important; }

.p-10 {
  padding: 10px !important;
}

.pt-10,
.p-10 {
  padding-top: 10px !important;
}

.pr-10,
.p-10 {
  padding-right: 10px !important;
}

.pl-10,
.p-10 {
  padding-left: 10px !important;
}

.pb-10,
.p-10 {
  padding-bottom: 10px !important;
}

.d-none {
  display: none !important;
}

.float-none {
  float: none !important;
  margin: auto !important; }




.w-92 {
  width: 100%; }

.word-break-all {
  word-break: break-all; }


.d-inline-block {
  display: inline-block !important; }

.d-flex {
  display: -ms-flexbox !important;
  display: flex !important; }

.align-items-center {
  -ms-flex-align: center !important;
  align-items: center !important; }

.justify-content-start {
  -ms-flex-pack: start !important;
  justify-content: flex-start !important; }

.justify-content-end {
  -ms-flex-pack: end !important;
  justify-content: flex-end !important; }

.justify-content-center {
  -ms-flex-pack: center !important;
  justify-content: center !important; }

.justify-content-between {
  -ms-flex-pack: justify !important;
  justify-content: space-between !important; }

.justify-content-around {
  -ms-flex-pack: distribute !important;
  justify-content: space-around !important; }

.parent {
  display: block;
  position: relative;
  float: left;
  line-height: 30px;
  background-color: var(--color-pt-blue);
  border-right: var(--color-pt-border-default) 1px solid; }

.parent a {
  margin: 10px;
  color: #FFFFFF;
  text-decoration: none; }

.parent:hover > .sub > ul {
  display: block;
  position: absolute;
  z-index: 2; }

.child {
  display: none; }

.child li {
  background-color: #E4EFF7;
  line-height: 30px;
  border-bottom: var(--color-pt-border-default) 1px solid;
  border-right: var(--color-pt-border-default) 1px solid;
  width: 100%; }

.child li a {
  color: #000000; }

.custom-navbar ul {
  list-style: none;
  margin: 0;
  padding: 0px;
  min-width: 10em; }

#menu ul ul {
  left: 100%;
  top: 0;
  margin-left: 1px; }

.parent > ul > li:hover {
  background-color: #95B4CA; }

.parent li:hover {
  background-color: #F0F0F0; }

.expand {
  font-size: 12px;
  float: right;
  margin-right: 5px; }

.float-right {
  float: right !important; }

.custom-navbar {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0.5rem 1rem; }

.dropdown-menu {
  border-radius: 0 !important;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 2000;
  display: none; /* none by default, but block on "open" of the menu */
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0; /* override default ul */
  font-size: 14px;
  text-align: left; /* Ensures proper alignment if parent has it changed (e.g., modal footer) */
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid var(--color-pt-border-default); /* IE8 fallback */
  border: 1px solid rgba(0, 0, 0, .15);
  border-radius: 4px;
  box-shadow: 0 6px 12px rgba(0, 0, 0, .175);

  /* Aligns the dropdown menu to right
     Deprecated as of 3.1.0 in favor of `.dropdown-menu-[dir]` */
  &.pull-right {
    right: 0;
    left: auto;
  }

  /* Dividers (basically an hr) within the dropdown */
  .divider {
      height: 1px;
      margin: 9px 0;
      overflow: hidden;
      background-color: #e5e5e5;
  }

  /* Links within the dropdown menu */
  > li > a {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: 400;
    line-height: 1.428571429;
    color: var(--color-pt-icon);
    white-space: nowrap; /* prevent links from randomly breaking onto new lines */
    text-decoration: none;

    &:hover,
    &:focus {
      color: darken(#333, 5%);
      background-color: var(--color-pt-fill-light-hover);
    }
  }
}

.notify-fade-out {
    opacity: 0 !important;
    transition: opacity 1s ease-out;
}

.notify {
    bottom: 20px;
    right: 10px;
    z-index: 50000;
    box-shadow: 0 6px 10px rgba(0, 0, 0, .2);
    padding: 8px;
    opacity: 1;
    position: relative;
}

.notify:hover {
    cursor: pointer;
    opacity: 0.7;
}

.pt-card-header{
  color: #fff;
  background-color: var(--color-pt-blue);
}

.h-full {
  height: 100%;
}

.absolute {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: block;
  position: absolute;
}

.flex-content-wrapper {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.flex-table-container {
  flex-grow: 1;
  overflow: auto;
}

.scroll,
.scroll-y {
  overflow-y: auto;
}

.scroll,
.scroll-x {
  overflow-x: auto;
}

.hover-pointer:hover,
.tagV:hover {
  cursor: pointer;
}

.mono-font {
  font-family: ApercuMono, monospace;
}



.col-xs-8 {
    width: 66.66666667%;
}

.w-90 {
  width: 90%;
}

.w-70 {
  width: 70%;
}

.w-5 {
  width: 5%;
}
.w-10 {
  width: 10%;
}

.w-20 {
  width: 20%;
}
.w-40 {
  width: 40%;
}

.w-60 {
  width: 60%;
}

.w-80 {
  width: 80%;
}

.invoice-table__order-header--fixed,
.invoice-table__carton-count-header--fixed,
.invoice-table__device-count-header--fixed,
.invoice-table__model-header--fixed,
.invoice-table__date-header--fixed,
.invoice-table__account-header--fixed,
.invoice-table__invoice-header--fixed {
    width: 12rem;
}

.invoice-table__created-on-header,
.invoice-table__device-count-header {
    width: auto;
}

.ctc-state {
  font-weight: bold;
}

.ctc-state.ctc-state__failed {
  color: var(--color-pt-red);
}
.ctc-state.ctc-state__passed {
  color: var(--color-pt-green);
}

.ctc-state.ctc-state__indeterminate,
.ctc-state.ctc-state__not-ready {
  color: var(--color-pt-yellow);
}
.ctc-state.ctc-state__overdue {
  color: var(--color-pt-orange);
}
.ctc-state.ctc-state__pending,
.ctc-state.ctc-state__submitted,
.ctc-state.ctc-state__not-available {
  color: var(--color-pt-gray);
}

.ctc_border_gray {
  border: 2px solid var(--color-pt-gray);
}

.ctc_border_none {
  border: none;
}

.ctc_border_black,
.ctc_border_black_bold {
  border: 4px solid black;
}

.color_state_background_red {
  background: var(--color-pt-red);
}

.color_state_background_green {
  background: var(--color-pt-green);
}

.color_state_background_yellow {
  background: var(--color-pt-yellow);
}

.color_state_background_orange {
  background: var(--color-pt-orange);
}

.color_state_background_grey {
  background: var(--color-pt-gray);
}

.color_state_background_transparent {
  border: thin inset black;
}

.pt-switch {
  --on: var(--color-pt-blue);
  --off: white;
  display: flex;
  align-items: center;
  gap: .5rem;
  margin: 0;
  cursor: pointer;
  border: 1px solid var(--on);
  color: var(--on);
  padding: .1rem .2rem;
  font-weight: normal;
}

.pt-switch.pt-switch__disabled {
  opacity: 0.65;
  cursor: not-allowed;
}

.pt-switch > input[type=checkbox] {
  appearance: none;
  height: 2rem;
  width: 6rem;
  background-color: var(--off);
  position: relative;
  border-radius: .2em;
  cursor: inherit;
  border: 1px solid var(--color-pt-border-default);
  color: white;
}

.pt-switch > input[type=checkbox]::before {
  --width: 6ch;
  --height: 1.9em;
  content: '';

  display: flex;
  align-items: center;
  justify-content: center;

  height: var(--height);
  width: var(--width);
  transform: translate(-50%, -50%);
  position: absolute;
  top: 50%;
  left: calc(var(--width)/2 + .1em);
  border-radius: .2em;
  transition: .3s ease;
  border: 1px solid var(--color-pt-border-default);
  background-color: var(--off);
}

.pt-switch > input[type=checkbox]:checked::before {
  content: 'Undo';
  left: calc(100% - (var(--width)/2 + .1em));
  background-color: var(--on);
}

.clickable:hover{
  cursor: pointer;
}

.text-pt-warning {
  color: #8a6d3b;
}

.text-pt-blue {
  color: var(--color-pt-blue);
}

.text-lightgray {
  color: lightgray
}

.h-80 {
  height: 80% !important;
}

.h-20 {
  height: 20% !important;
}

.password-eye-icon {
  float: right;
  margin-right: 15px;
  margin-top: -25px;
  position: relative;
  z-index: 2;
}
.password-eye-icon:hover {
  color: var(--color-pt-blue);
}

.fa-copy:hover{
  color: var(--color-pt-blue);
}

.status-box {
  height: 18px;
  width: 18px;
  padding: 5px;
  border-radius: 2px;
  margin: 0 auto;
}

.pt-alert {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(0, 0, 0, .5);
}

.pt-alert--content {
  background-color: white;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
}

.pt-alert--header,
.pt-alert--body,
.pt-alert--footer {
  padding: 1rem;
}

.pt-alert--header {
  border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
}

.pt-alert--footer {
  border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);
  display: flex
;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: .5rem;
}

.paginationButtons {
  cursor: pointer;
}

@media (max-width: 576px) {
  .modal-dialog {
    max-width: 80%;
    margin-right: auto;
    margin-left: auto;
  }
}



/* Hide table on mobile, show cards */
        @media (max-width: 768px) {
        #device-dropdown{
              display: none !important;
        }
        .device-dropdown{
        disable:none;}
            .flex-table-container .row-table , .po-table{
                display: none !important;
            }

            .device-cards-container , .po-card{
                display: block !important;
            }

        }

        /* Default state - hide cards on desktop */
        .device-cards-container {
            display: none;
        }

        /* Status indicators - keeping these minimal */
        .status-indicator {
            width: 16px;
            height: 16px;
            border-radius: 50%;
            display: inline-block;
        }


        .mono-font {
            font-family: monospace;
        }


      /* Device Cards for Mobile View */
        .device-cards-container {
            display: none;
            padding: 10px;
        }

        .device-cards-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 10px;
            margin-bottom: 15px;
            background-color: #f8f9fa;
            border-radius: 6px;
            border: 1px solid #dee2e6;
        }

        .master-checkbox-container {
            display: flex;
            align-items: center;
        }

        .master-checkbox-label {
            margin-left: 8px;
            font-weight: 500;
        }

        .device-count {
            color: #6c757d;
            font-size: 0.9rem;
        }

        .device-card {
            background-color: #fff;
            border-radius: 8px;
            box-shadow: 0 2px 4px rgba(0,0,0,0.1);
            margin-bottom: 16px;
            padding: 16px;
            border: 1px solid #dee2e6;
        }

        .device-card-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 12px;
            border-bottom: 1px solid #f0f0f0;
            padding-bottom: 8px;
        }

        .device-card-title {
            font-weight: bold;
            font-size: 1.1rem;
            display: flex;
            align-items: center;
        }

        .device-card-status {
            display: flex;
            gap: 8px;
        }

        .device-card-checkbox {
            margin-right: 10px;
        }

        .device-card-field {
            margin-bottom: 8px;
            display: flex;
        }

        .device-card-label {
            font-weight: 500;
            width: 35%;
            color: #666;
            flex-shrink: 0;
        }

        .device-card-value {
            flex-grow: 1;
            word-break: break-word;
        }

        .device-card-actions {
            display: flex;
            justify-content: space-between;
            margin-top: 12px;
            padding-top: 12px;
            border-top: 1px solid #f0f0f0;
        }


        .mono-font {
            font-family: monospace;
        }

        .card-button {
            padding: 6px 12px;
            background-color: #0d6efd;
            color: white;
            border: none;
            border-radius: 4px;
            cursor: pointer;
            font-size: 0.9rem;
        }
        @media (max-width: 992px) {
            .flex-xs-reverse{
                  flex-direction:column-reverse;
                  margin-top:1em
            }
            #purchaseOrderList{
                  margin-bottom:2em;
            }

        }
        @media (max-width: 1200px) {
              .padding-r-3rem{
                padding-right: 3rem;
              }
        }
        /* Media Query for Mobile Devices */
        @media (max-width: 768px) {
            .flex-table-container .row-table {
                display: none !important;
            }

            .device-cards-container {
                display: block;
            }

            .choose-columns-overlay-btn {
                top: 0%;
                z-index: 100;
            }
             .status-box {
                    width: 16px;
                    height: 16px;
                    border-radius: 50%;
                    display: inline-block;
                }
               .color_state_background_green {
                    background-color: #28a745;
                }

                .color_state_background_yellow {
                    background-color: #ffc107;
                }

                .color_state_background_red {
                    background-color: #dc3545;
                }
                .margin-b-1em{
                    margin-bottom: 1em;
                }

        }
  .flex-1 {
    flex: 1;
  }

  .flex-2 {
    flex: 2;
  }

.width-300{
width:300px}

.solidCheck {
    outline: 2px solid #2684FF; /* customize as needed */
    outline-offset: 2px;
}
