#logreg-forms {
  margin: 10vh auto;
  padding: 0em 1.5em;
  background-color: #ffffff90;
  box-shadow: 0 7px 7px rgba(0, 0, 0, 0.12), 0 12px 40px rgba(0, 0, 0, 0.24);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1); }
  #logreg-forms h1 {
    padding: 24px; }
  #logreg-forms form {
    width: 100%;
    padding: 1em 0em 3.5em 0em;
    margin: auto; }
  #logreg-forms .form-control {
    position: relative;
    box-sizing: border-box;
    height: auto;
    padding: 10px;
    font-size: 16px; }
  #logreg-forms .form-control:focus {
    z-index: 2;
    box-shadow: none;
    border-color: #ced4da; }
  #logreg-forms .form-signin input[type="email"] {
    margin-bottom: -1px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0; }
  #logreg-forms .form-signin input[type="password"] {
    border-top-left-radius: 0;
    border-top-right-radius: 0; }
  #logreg-forms .social-login {
    margin-bottom: 14px;
    display: flex;
    flex-direction: row;
    justify-content: space-between; }
  #logreg-forms .social-btn {
    font-weight: 100;
    width: 49%;
    color: white;
    font-size: 0.9rem; }
  #logreg-forms a {
    color: #fff; }
  #logreg-forms #logreg-form .lines {
    width: 200px;
    border: 1px solid red; }
  #logreg-forms button[type="submit"] {
    margin: 1.8em 0em 0.1em 0em; }
  #logreg-forms .facebook-btn {
    background-color: #3C589C; }
  #logreg-forms .google-btn {
    background-color: #DF4B3B; }
  #logreg-forms .form-signup .social-btn {
    width: 210px; }
  #logreg-forms .form-signup input {
    margin-bottom: 2px; }
  #logreg-forms .form-signup .social-login {
    width: 210px !important;
    margin: 0 auto; }
  #logreg-forms .submit {
    background: -webkit-linear-gradient(0deg, #2dfbff 0%, #3c96ff 100%);
    border-radius: 25px;
    color: #fff; }

/* Mobile */
@media screen and (max-width: 500px) {
  #logreg-forms {
    padding: 0em 0.75em; }
    #logreg-forms .social-login {
      margin: 0 auto;
      margin-bottom: 10px;
      flex-direction: column; }
    #logreg-forms .social-btn {
      font-size: 1.3rem;
      font-weight: 100;
      width: 100%;
      color: white; }
    #logreg-forms .social-btn:nth-child(1) {
      margin-bottom: 5px; }
    #logreg-forms .social-btn span {
      display: none; }
    #logreg-forms .facebook-btn:after {
      content: 'Facebook'; }
    #logreg-forms .google-btn:after {
      content: 'Google+'; } }

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

/*** Global styles */
body {
  font-family: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  position: relative;
  min-height: 100vh;
  padding-bottom: 74px;
  /* Should be equal to the height of your footer */
  background: repeating-linear-gradient(45deg, #263646 0%, #263646 10%, #2B3E50 0%, #2B3E50 50%) 0/15px 15px; }

.color-secondary {
  color: #03DAC6; }

.color-success {
  color: #5cb85c; }

.color-error {
  color: #d9534f; }

.borderless {
  border: none !important; }

.custom-control-label::before {
  border: #9965f4 solid 2px; }

.hide {
  display: none; }

footer {
  padding: 25px 0;
  text-align: center;
  color: rgba(255, 255, 255, 0.6);
  background-color: black;
  position: absolute;
  bottom: 0;
  width: 100%; }
  footer p {
    margin: 0;
    font-size: 12px; }

.navbar {
  padding: 0.5rem 1rem; }
  .navbar a.navbar-brand {
    margin-top: -3px; }
  .navbar .nav-item {
    text-transform: uppercase; }
    .navbar .nav-item.active, .navbar .nav-item:hover {
      background-color: #596a7b; }
  .navbar .user-menu {
    text-transform: none; }
  .navbar a.glowing {
    text-shadow: 0 0 10px #fff, 0 0 20px #fff, 0 0 30px #fff, 0 0 40px #9965f4, 0 0 70px #9965f4, 0 0 80px #9965f4, 0 0 100px #9965f4, 0 0 150px #9965f4; }
  .navbar .badge-btn {
    position: relative;
    height: 1.8rem;
    margin-right: 1.5em; }
    .navbar .badge-btn img {
      height: 1.3rem; }
    .navbar .badge-btn .badge {
      position: absolute;
      left: 22px;
      top: 1px;
      height: 18px;
      border-radius: 4px;
      background-color: #9965f4;
      transition: transform 0.2s;
      /* Animation */ }
      .navbar .badge-btn .badge:hover {
        transform: scale(1.3); }
  @media (min-width: 992px) {
    .navbar {
      padding: 0rem 1rem; }
      .navbar .nav-item {
        padding: 0.5rem 0.24rem; } }

hr {
  background-color: #ffffff90; }

.icon-btn {
  background-color: transparent;
  border: none;
  color: rgba(255, 255, 255, 0.75); }
  .icon-btn:hover, .icon-btn:active, .icon-btn:focus {
    background-color: transparent !important;
    border: none !important;
    color: white !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important; }

.dropdown-menu .dropdown-item i {
  width: 20px;
  margin-right: 16px;
  text-align: center; }

.form-container {
  margin: 3em 0em;
  padding: 2.5em;
  background: #2B3E50;
  -webkit-box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.3) !important;
  box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.3) !important;
  border: none !important; }
  .form-container .form-control[readonly] {
    background-color: #ffffff90;
    border: 1px solid #ffffff90; }
  .form-container h2 {
    border-bottom-style: solid;
    border-bottom-width: thin; }

.flipH {
  -webkit-transform: scaleX(-1);
  -moz-transform: scaleX(-1);
  -ms-transform: scaleX(-1);
  transform: scaleX(-1); }

.flipV {
  -webkit-transform: scaleY(-1);
  -moz-transform: scaleY(-1);
  -ms-transform: scaleY(-1);
  transform: scaleY(-1); }

.flipH.flipV {
  -webkit-transform: scaleX(-1) scaleY(-1);
  -moz-transform: scaleX(-1) scaleY(-1);
  -ms-transform: scaleX(-1) scaleY(-1);
  transform: scaleX(-1) scaleY(-1); }

.rotate90 {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg); }

.swal2-popup {
  background-color: #22313f !important;
  border-radius: unset !important; }
  .swal2-popup .swal2-title, .swal2-popup .swal2-content, .swal2-popup #swal2-content {
    color: #EBEBEB !important;
    text-align: left !important; }
  .swal2-popup.swal2-modal .swal2-content {
    color: #EBEBEB !important;
    font-size: 1rem !important; }
  .swal2-popup.swal2-modal .swal2-title {
    color: #EBEBEB !important;
    font-size: 1.4rem !important; }
  .swal2-popup.swal2-modal button {
    border-radius: unset !important;
    border: none !important; }
    .swal2-popup.swal2-modal button.swal2-confirm {
      background-color: #9965f4 !important; }
    .swal2-popup.swal2-modal button.swal2-cancel {
      background-color: #03DAC6 !important; }

.gauge {
  padding: 8px;
  margin-bottom: -150px; }

.dg-icon {
  height: 1em;
  vertical-align: text-bottom; }

/** Shared styles for printer and print cards */
.card .gauge-container {
  padding: 0 16px 14px; }

.card .info-section {
  background: #293b4d;
  margin-top: -18px; }
  .card .info-section .row {
    padding: 0.3em 0em 0.1em;
    text-align: center; }
    .card .info-section .row div[class^="col-"] {
      padding: 0px 8px; }
  .card .info-section .numbers {
    font-size: 1.5em; }
  .card .info-section .text-subscript {
    font-size: 0.8rem; }

/** Webcam */
.webcam_container {
  width: 100%;
  position: relative;
  outline: none;
  background-color: black; }
  .webcam_container .webcam_rotated {
    position: relative;
    width: 100%;
    padding-bottom: 100%; }
    .webcam_container .webcam_rotated .webcam_fixed_ratio {
      position: absolute;
      transform: rotate(-90deg);
      top: 0;
      bottom: 0; }
      .webcam_container .webcam_rotated .webcam_fixed_ratio.ratio43 .thumbnail img, .webcam_container .webcam_rotated .webcam_fixed_ratio.ratio43 .thumbnail video {
        height: 18.75%;
        top: initial;
        bottom: 0px; }
      .webcam_container .webcam_rotated .webcam_fixed_ratio.ratio169 .thumbnail img, .webcam_container .webcam_rotated .webcam_fixed_ratio.ratio169 .thumbnail video {
        height: 14.06%;
        top: initial;
        bottom: 0px; }
      .webcam_container .webcam_rotated .webcam_fixed_ratio .webcam_fixed_ratio_inner {
        width: 100%; }
        .webcam_container .webcam_rotated .webcam_fixed_ratio .webcam_fixed_ratio_inner.full {
          height: 100%; }
  .webcam_container .webcam_unrotated .webcam_fixed_ratio {
    width: 100%;
    padding-bottom: 100%;
    position: relative; }
    .webcam_container .webcam_unrotated .webcam_fixed_ratio.ratio43 {
      padding-bottom: 75%; }
    .webcam_container .webcam_unrotated .webcam_fixed_ratio.ratio169 {
      padding-bottom: 56.25%; }
    .webcam_container .webcam_unrotated .webcam_fixed_ratio.ratio1610 {
      padding-bottom: 62.5%; }
    .webcam_container .webcam_unrotated .webcam_fixed_ratio .webcam_fixed_ratio_inner {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0; }
  .webcam_container img, .webcam_container video {
    object-fit: contain; }
  .webcam_container .full img, .webcam_container .full video {
    width: 100%;
    height: 100%;
    z-index: initial; }
  .webcam_container .thumbnail img, .webcam_container .thumbnail video {
    width: 25%;
    height: 25%;
    position: absolute;
    right: 0px;
    top: 0px;
    z-index: 1; }

/*** Printer Card *****/
.printer-card {
  margin-top: 2em; }
  .printer-card .card .card-header {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center; }
    .printer-card .card .card-header .title-box {
      display: flex;
      flex-flow: column nowrap;
      max-width: 90%; }
      .printer-card .card .card-header .title-box .printer-name, .printer-card .card .card-header .title-box .print-filename {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis; }
    .printer-card .card .card-header .primary-title {
      font-weight: bolder; }
    .printer-card .card .card-header .secondary-title {
      font-weight: lighter;
      font-size: 0.8em; }
  .printer-card .card .card-body .container-fluid {
    padding: 0px; }
  .printer-card .card .card-body.failure-alert a {
    color: #5d10e3; }
    .printer-card .card .card-body.failure-alert a:hover {
      color: #400b9b; }

#new-printer {
  min-height: 25em; }
  #new-printer .new-printer-container {
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    margin-top: 6em; }
    #new-printer .new-printer-container a {
      text-align: center;
      border: thin dashed;
      border-color: #7935f1;
      padding: 5em 3em; }
      #new-printer .new-printer-container a:hover {
        text-decoration: none; }

/*** Printer Form *****/
form#printer_form .form-label {
  font-size: 1.1rem; }

form#printer_form input[type="checkbox"] {
  margin-right: 0.75rem; }

form#printer_form input[type="number"] {
  width: 4rem; }

form#printer_form .form-group {
  margin-top: 0.5rem; }
  form#printer_form .form-group .custom-control {
    padding-bottom: 0.15rem;
    padding-top: 0.15rem; }

form#printer_form .form-control {
  border: 1px solid #4E5D6C; }

form#printer_form .sensitivity > div {
  margin-bottom: 0.5rem; }

form#printer_form .sensitivity div[class^="hint-"] {
  display: none; }

form#printer_form .sensitivity #sensitivity-slider {
  width: 100%; }
  form#printer_form .sensitivity #sensitivity-slider .slider-selection {
    background: #9965f4; }
  form#printer_form .sensitivity #sensitivity-slider .slider-handle {
    background: #03DAC6; }

form#printer_form .sensitivity .slider.slider-horizontal:hover .tooltip.tooltip-main, form#printer_form .sensitivity .slider.slider-vertical:hover .tooltip.tooltip-main {
  opacity: 0.7 !important; }

form#printer_form .sensitivity .slider.slider-horizontal:hover .tooltip-inner, form#printer_form .sensitivity .slider.slider-vertical:hover .tooltip-inner {
  font-size: 90%;
  width: auto; }

form#printer_form .sensitivity .slider.slider-horizontal:hover .tooltip.tooltip-main.top .tooltip-arrow:after,
form#printer_form .sensitivity .slider.slider-vertical:hover .tooltip.tooltip-main.top .tooltip-arrow:after {
  content: '';
  width: 0;
  height: 0;
  position: absolute;
  left: 45%;
  bottom: -10px;
  border: transparent 5px solid;
  border-top: #000 5px solid; }

#smartwizard.sw-theme-default {
  -webkit-box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.3) !important;
  box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.3) !important;
  border: none !important; }
  #smartwizard.sw-theme-default .sw-toolbar {
    background: none !important;
    border-top: thin solid; }
  #smartwizard.sw-theme-default > ul.step-anchor > li > a {
    color: rgba(255, 255, 255, 0.4) !important; }
  #smartwizard.sw-theme-default > ul.step-anchor > li.done > a {
    color: #EBEBEB !important; }
  #smartwizard.sw-theme-default > ul.step-anchor > li.active > a {
    color: #9965f4 !important; }
    #smartwizard.sw-theme-default > ul.step-anchor > li.active > a:after {
      background: #9965f4; }

#smartwizard .step-content {
  min-height: 24em;
  background: none; }
  #smartwizard .step-content.tab-pane {
    padding-top: 1.5rem; }
  #smartwizard .step-content.form-step {
    display: flex;
    flex-flow: column; }
  #smartwizard .step-content.token-step #smartwizard .step-content.plugin-step {
    padding: 1em 0.5em; }
  #smartwizard .step-content img {
    padding: 1em 2em; }
  #smartwizard .step-content.connection-step {
    text-align: center;
    padding: 1em; }
    #smartwizard .step-content.connection-step i {
      margin: 1em; }
    #smartwizard .step-content.connection-step #connected i {
      color: #5cb85c; }

/**** printer-acted */
.printer-acted {
  text-align: center; }

/*** timelapse-gallery  */
.timelapse-gallery {
  margin-top: 1.5rem; }
  .timelapse-gallery .card-body {
    position: relative; }
  .timelapse-gallery .card-img-top {
    position: relative;
    background-color: black; }
    .timelapse-gallery .card-img-top a.fullscreen-btn {
      position: absolute;
      top: 0;
      right: 0;
      padding: 0.5rem;
      background-color: rgba(0, 0, 0, 0.7);
      color: rgba(255, 255, 255, 0.5); }
  .timelapse-gallery #tl-fullscreen-modal .modal-full {
    min-width: 100%;
    margin: 0; }
  .timelapse-gallery #tl-fullscreen-modal .modal-full .modal-content {
    min-height: 100vh; }
    .timelapse-gallery #tl-fullscreen-modal .modal-full .modal-content .modal-body {
      padding: 0; }
      .timelapse-gallery #tl-fullscreen-modal .modal-full .modal-content .modal-body .video-player {
        height: calc(100vh - 251px); }
  .timelapse-gallery .hints {
    font-size: smaller;
    margin-bottom: 1em; }
  .timelapse-gallery .timelapse-card {
    margin-top: 0.75em; }
  .timelapse-gallery .pagination {
    margin-bottom: 0;
    margin-top: 15px; }
  .timelapse-gallery .alert-banner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0.3rem;
    display: none; }
  .timelapse-gallery .card-body.plain-view {
    min-height: 10em; }
  .timelapse-gallery img.toggle-icon {
    width: 20px;
    height: 20px; }
  .timelapse-gallery .card-img {
    margin: 31px 0px; }
  .timelapse-gallery .card-img-overlay {
    top: initial;
    padding: 0.5rem;
    background-color: rgba(78, 93, 108, 0.7); }

.upload-box.dropzone {
  border: thin dashed;
  border-color: #7935f1;
  color: #9965f4;
  background: none;
  margin: auto;
  min-height: 194px;
  padding: 20px 16px; }
  .upload-box.dropzone a {
    text-align: center; }
    .upload-box.dropzone a:hover {
      text-decoration: none; }

/**** printer auth token page **/
.printer-auth-token {
  padding: 2rem 0rem; }
  .printer-auth-token .token {
    padding: 1.5rem 3rem 2.5rem;
    border: #ffffff90 thin dashed;
    margin-bottom: 2rem;
    text-align: center; }
    .printer-auth-token .token .input-group {
      margin-top: 1rem; }

#pass-change-form button[type="submit"] {
  margin: 1.8em 0em 0.1em 0em; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIl90aGVtZS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJ3RoZW1lJztcblxuLyoqKiBHbG9iYWwgc3R5bGVzICovXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgcGFkZGluZy1ib3R0b206IDc0cHg7IC8qIFNob3VsZCBiZSBlcXVhbCB0byB0aGUgaGVpZ2h0IG9mIHlvdXIgZm9vdGVyICovXG4gIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoNDVkZWcsIGRhcmtlbigkY29sb3ItYmcsIDMpIDAlLCBkYXJrZW4oJGNvbG9yLWJnLCAzKSAxMCUsICRjb2xvci1iZyAwJSwgJGNvbG9yLWJnIDUwJSkgMCAvIDE1cHggMTVweDtcbn1cblxuLmNvbG9yLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xufVxuXG4uY29sb3Itc3VjY2VzcyB7XG4gIGNvbG9yOiAkY29sb3Itc3VjY2Vzcztcbn1cblxuLmNvbG9yLWVycm9yIHtcbiAgY29sb3I6ICRjb2xvci1lcnJvcjtcbn1cblxuLmJvcmRlcmxlc3Mge1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXI6ICRjb2xvci1wcmltYXJ5IHNvbGlkIDJweDtcbiAgfVxufVxuXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmZvb3RlciB7XG4gIHBhZGRpbmc6IDI1cHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNik7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxufVxuXG4ubmF2YmFyIHtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGEubmF2YmFyLWJyYW5kIHtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICB9XG4gIC5uYXYtaXRlbSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAmLmFjdGl2ZSwgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvci1ncmF5LCA1KTtcbiAgICB9XG4gIH1cbiAgLnVzZXItbWVudSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICBhLmdsb3dpbmcge1xuICAgIHRleHQtc2hhZG93OiAwIDAgMTBweCAjZmZmLCAwIDAgMjBweCAjZmZmLCAwIDAgMzBweCAjZmZmLCAwIDAgNDBweCAkY29sb3ItcHJpbWFyeSwgMCAwIDcwcHggJGNvbG9yLXByaW1hcnksIDAgMCA4MHB4ICRjb2xvci1wcmltYXJ5LCAwIDAgMTAwcHggJGNvbG9yLXByaW1hcnksIDAgMCAxNTBweCAkY29sb3ItcHJpbWFyeTtcbiAgfVxuXG4gIC5iYWRnZS1idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEuOHJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNWVtO1xuICAgIGltZyB7XG4gICAgICBoZWlnaHQ6IDEuM3JlbTtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDIycHg7XG4gICAgICB0b3A6IDFweDtcbiAgICAgIGhlaWdodDogMThweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnM7IC8qIEFuaW1hdGlvbiAqL1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBwYWRkaW5nOiAwcmVtIDFyZW07XG4gICAgLm5hdi1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjI0cmVtO1xuICAgIH1cbiAgfVxuXG59XG5cbmhyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWZvcm0tYmc7XG59XG5cbi5pY29uLWJ0biB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNzUpO1xuXG4gICY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAxLjApICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5kcm9wZG93bi1tZW51IHtcbiAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgIGkge1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogM2VtIDBlbTtcbiAgcGFkZGluZzogMi41ZW07XG4gIGJhY2tncm91bmQ6ICRjb2xvci1iZztcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggM3B4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjMpICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMykgIWltcG9ydGFudDtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWZvcm0tYmc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZm9ybS1iZztcbiAgICB9XG4gIH1cblxuICBoMiB7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogdGhpbjtcbiAgfVxufVxuXG4uZmxpcEgge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgLW1vei10cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbn1cblxuLmZsaXBWIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG4gIC1tb3otdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG59XG5cbi5mbGlwSC5mbGlwViB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoLTEpIHNjYWxlWSgtMSk7XG4gIC1tb3otdHJhbnNmb3JtOiBzY2FsZVgoLTEpIHNjYWxlWSgtMSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgtMSkgc2NhbGVZKC0xKTtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpIHNjYWxlWSgtMSk7XG59XG5cbi5yb3RhdGU5MCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuLnN3YWwyLXBvcHVwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvci1iZywgNSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogdW5zZXQgIWltcG9ydGFudDtcbiAgLnN3YWwyLXRpdGxlLCAuc3dhbDItY29udGVudCwgI3N3YWwyLWNvbnRlbnQge1xuICAgIGNvbG9yOiAkY29sb3ItdGV4dCAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gICYuc3dhbDItbW9kYWwge1xuICAgIC5zd2FsMi1jb250ZW50IHtcbiAgICAgIGNvbG9yOiAkY29sb3ItdGV4dCAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5zd2FsMi10aXRsZSB7XG4gICAgICBjb2xvcjogJGNvbG9yLXRleHQgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIGJ1dHRvbiB7XG4gICAgICBib3JkZXItcmFkaXVzOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICYuc3dhbDItY29uZmlybSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgICYuc3dhbDItY2FuY2VsIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZ2F1Z2Uge1xuICBwYWRkaW5nOiA4cHg7XG4gIG1hcmdpbi1ib3R0b206IC0xNTBweDtcbn1cblxuLmRnLWljb24ge1xuICBoZWlnaHQ6IDFlbTtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xufVxuXG4vKiogU2hhcmVkIHN0eWxlcyBmb3IgcHJpbnRlciBhbmQgcHJpbnQgY2FyZHMgKi9cblxuLmNhcmQge1xuICAuZ2F1Z2UtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwIDE2cHggMTRweDs7XG4gIH1cbiAgLmluZm8tc2VjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogZGFya2VuKCRjb2xvci1iZywgMSk7XG4gICAgbWFyZ2luLXRvcDogLTE4cHg7XG5cbiAgICAucm93IHtcbiAgICAgIHBhZGRpbmc6IDAuM2VtIDBlbSAwLjFlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGRpdltjbGFzc149XCJjb2wtXCJdIHtcbiAgICAgICAgICBwYWRkaW5nOiAwcHggOHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAubnVtYmVycyB7XG4gICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIH1cbiAgICAudGV4dC1zdWJzY3JpcHQge1xuICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgfVxuICB9XG59XG5cbi8qKiBXZWJjYW0gKi9cblxuLndlYmNhbV9jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdXRsaW5lOiBub25lO1xuXG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuXG4gIC53ZWJjYW1fcm90YXRlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuXG4gICAgLndlYmNhbV9maXhlZF9yYXRpbyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuXG4gICAgICAmLnJhdGlvNDMge1xuICAgICAgICAudGh1bWJuYWlsIHtcbiAgICAgICAgICBpbWcsIHZpZGVvIHtcbiAgICAgICAgICAgIGhlaWdodDogMTguNzUlO1xuICAgICAgICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgICAgICAgYm90dG9tOiAwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYucmF0aW8xNjkge1xuICAgICAgICAudGh1bWJuYWlsIHtcbiAgICAgICAgICBpbWcsIHZpZGVvIHtcbiAgICAgICAgICAgIGhlaWdodDogMTQuMDYlO1xuICAgICAgICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgICAgICAgYm90dG9tOiAwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC53ZWJjYW1fZml4ZWRfcmF0aW9faW5uZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAmLmZ1bGwge1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC53ZWJjYW1fdW5yb3RhdGVkIHtcbiAgICAud2ViY2FtX2ZpeGVkX3JhdGlvIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICAgICYucmF0aW80MyB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gICAgICB9XG5cbiAgICAgICYucmF0aW8xNjkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAgICAgfVxuXG4gICAgICAmLnJhdGlvMTYxMCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA2Mi41JTtcbiAgICAgIH1cblxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAud2ViY2FtX2ZpeGVkX3JhdGlvX2lubmVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaW1nLCB2aWRlbyB7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgfVxuXG4gIC5mdWxsIHtcbiAgICBpbWcsIHZpZGVvIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgei1pbmRleDogaW5pdGlhbDtcbiAgICB9XG4gIH1cblxuICAudGh1bWJuYWlsIHtcbiAgICBpbWcsIHZpZGVvIHtcbiAgICAgIHdpZHRoOiAyNSU7XG4gICAgICBoZWlnaHQ6IDI1JTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwcHg7XG4gICAgICB0b3A6IDBweDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG59XG5cbi8qKiogUHJpbnRlciBDYXJkICoqKioqL1xuLnByaW50ZXItY2FyZCB7XG4gIG1hcmdpbi10b3A6IDJlbTtcblxuICAuY2FyZCB7XG4gICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAudGl0bGUtYm94IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgICBtYXgtd2lkdGg6IDkwJTtcblxuICAgICAgICAucHJpbnRlci1uYW1lLCAucHJpbnQtZmlsZW5hbWUge1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnByaW1hcnktdGl0bGUge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgfVxuICAgICAgLnNlY29uZGFyeS10aXRsZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgfVxuICAgIH1cbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgIC5jb250YWluZXItZmx1aWQge1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICB9XG5cbiAgICAgICYuZmFpbHVyZS1hbGVydCB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLXByaW1hcnksIDIwKTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLXByaW1hcnksIDM1KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI25ldy1wcmludGVyIHtcbiAgbWluLWhlaWdodDogMjVlbTtcbiAgLm5ldy1wcmludGVyLWNvbnRhaW5lciB7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogNmVtO1xuXG4gICAgYSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBib3JkZXI6IHRoaW4gZGFzaGVkO1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNvbG9yLXByaW1hcnksIDEwKTtcbiAgICAgIHBhZGRpbmc6IDVlbSAzZW07XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKiogUHJpbnRlciBGb3JtICoqKioqL1xuXG5mb3JtI3ByaW50ZXJfZm9ybSB7XG4gIC5mb3JtLWxhYmVsIHtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xuICB9XG4gIGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgIHdpZHRoOiA0cmVtO1xuICB9XG4gIC5mb3JtLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgLmN1c3RvbS1jb250cm9sIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjE1cmVtO1xuICAgICAgcGFkZGluZy10b3A6IDAuMTVyZW07XG4gICAgfVxuICB9XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ncmF5O1xuICB9XG5cbiAgLnNlbnNpdGl2aXR5IHtcbiAgICA+ZGl2IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICB9XG5cbiAgICBkaXZbY2xhc3NePVwiaGludC1cIl0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAjc2Vuc2l0aXZpdHktc2xpZGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgLnNsaWRlci1zZWxlY3Rpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgIH1cbiAgICAgIC5zbGlkZXItaGFuZGxlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNsaWRlci5zbGlkZXItaG9yaXpvbnRhbDpob3ZlciwgLnNsaWRlci5zbGlkZXItdmVydGljYWw6aG92ZXIge1xuICAgICAgICAudG9vbHRpcC50b29sdGlwLW1haW4ge1xuICAgICAgICAgICAgb3BhY2l0eTogMC43ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLnRvb2x0aXAtaW5uZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiA5MCU7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc2xpZGVyLnNsaWRlci1ob3Jpem9udGFsOmhvdmVyIC50b29sdGlwLnRvb2x0aXAtbWFpbi50b3AgLnRvb2x0aXAtYXJyb3c6YWZ0ZXIsXG4gICAgLnNsaWRlci5zbGlkZXItdmVydGljYWw6aG92ZXIgLnRvb2x0aXAudG9vbHRpcC1tYWluLnRvcCAudG9vbHRpcC1hcnJvdzphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNDUlO1xuICAgICAgYm90dG9tOiAtMTBweDtcbiAgICAgIGJvcmRlcjogdHJhbnNwYXJlbnQgNXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLXRvcDogIzAwMCA1cHggc29saWQ7XG4gICAgfVxuICB9XG59XG5cbiNzbWFydHdpemFyZCB7XG4gICYuc3ctdGhlbWUtZGVmYXVsdCB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggM3B4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjMpICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogMHB4IDNweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4zKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIC5zdy10b29sYmFyIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci10b3A6IHRoaW4gc29saWQ7XG4gICAgfVxuICAgID4gdWwuc3RlcC1hbmNob3IgPiBsaSA+IGEge1xuICAgICAgY29sb3I6ICRjb2xvci1kaXNhYmxlZCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICA+IHVsLnN0ZXAtYW5jaG9yID4gbGkuZG9uZSA+IGEge1xuICAgICAgY29sb3I6ICNFQkVCRUIgIWltcG9ydGFudDtcbiAgICB9XG4gICAgPiB1bC5zdGVwLWFuY2hvciA+IGxpLmFjdGl2ZSA+IGEge1xuICAgICAgY29sb3I6ICRjb2xvci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc3RlcC1jb250ZW50IHtcbiAgICBtaW4taGVpZ2h0OiAyNGVtO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICAmLnRhYi1wYW5lIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gICAgfVxuXG4gICAgJi5mb3JtLXN0ZXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIH1cblxuICAgICYudG9rZW4tc3RlcFxuICAgICYucGx1Z2luLXN0ZXAge1xuICAgICAgcGFkZGluZzogMWVtIDAuNWVtO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBwYWRkaW5nOiAxZW0gMmVtO1xuICAgIH1cblxuICAgICYuY29ubmVjdGlvbi1zdGVwIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDFlbTtcblxuICAgICAgaSB7XG4gICAgICAgIG1hcmdpbjogMWVtO1xuICAgICAgfVxuXG4gICAgICAjY29ubmVjdGVkIHtcbiAgICAgICAgaSB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKioqIHByaW50ZXItYWN0ZWQgKi9cbi5wcmludGVyLWFjdGVkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKioqIHRpbWVsYXBzZS1nYWxsZXJ5ICAqL1xuXG4udGltZWxhcHNlLWdhbGxlcnkge1xuXG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcblxuICAuY2FyZC1ib2R5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuY2FyZC1pbWctdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG5cbiAgICBhLmZ1bGxzY3JlZW4tYnRuIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjcpO1xuICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC41KTtcbiAgICB9XG4gIH1cbiAgI3RsLWZ1bGxzY3JlZW4tbW9kYWwge1xuICAgIC5tb2RhbC1mdWxsIHtcbiAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAubW9kYWwtZnVsbCAubW9kYWwtY29udGVudCB7XG4gICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcblxuICAgICAgLm1vZGFsLWJvZHkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC52aWRlby1wbGF5ZXIge1xuICAgICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDI1MXB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuaGludHMge1xuICAgIGZvbnQtc2l6ZTogc21hbGxlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIH1cblxuICAudGltZWxhcHNlLWNhcmQge1xuICAgIG1hcmdpbi10b3A6IDAuNzVlbTtcbiAgfVxuXG4gIC5wYWdpbmF0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gIH1cblxuICAuYWxlcnQtYmFubmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMC4zcmVtO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuY2FyZC1ib2R5LnBsYWluLXZpZXcge1xuICAgIG1pbi1oZWlnaHQ6IDEwZW07XG4gIH1cblxuICBpbWcudG9nZ2xlLWljb24ge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgfVxuICAuY2FyZC1pbWcge1xuICAgIG1hcmdpbjogMzFweCAwcHg7XG4gIH1cbiAgLmNhcmQtaW1nLW92ZXJsYXkge1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZ3JheSwgMC43KTtcbiAgfVxufVxuXG4udXBsb2FkLWJveCB7XG4gICYuZHJvcHpvbmUge1xuICAgIGJvcmRlcjogdGhpbiBkYXNoZWQ7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNvbG9yLXByaW1hcnksIDEwKTtcbiAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWluLWhlaWdodDogMTk0cHg7XG4gICAgcGFkZGluZzogMjBweCAxNnB4O1xuXG4gICAgYSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKioqKiBwcmludGVyIGF1dGggdG9rZW4gcGFnZSAqKi9cbi5wcmludGVyLWF1dGgtdG9rZW4ge1xuICBwYWRkaW5nOiAycmVtIDByZW07XG4gIC50b2tlbiB7XG4gICAgcGFkZGluZzogMS41cmVtIDNyZW0gMi41cmVtO1xuICAgIGJvcmRlcjogJGNvbG9yLWZvcm0tYmcgdGhpbiBkYXNoZWQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG4gIH1cbn1cblxuI3Bhc3MtY2hhbmdlLWZvcm0gYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIG1hcmdpbjogMS44ZW0gMGVtIDAuMWVtIDBlbTtcbn1cbiIsIiRjb2xvci1wcmltYXJ5OiAjOTk2NWY0O1xuJGNvbG9yLXNlY29uZGFyeTogIzAzREFDNjtcbiRjb2xvci1ncmF5OiAjNEU1RDZDO1xuJGNvbG9yLWZvcm0tYmc6ICNmZmZmZmY5MDtcbiRjb2xvci1kaXNhYmxlZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuJGNvbG9yLXN1Y2Nlc3M6ICM1Y2I4NWM7XG4kY29sb3ItZXJyb3I6ICNkOTUzNGY7XG4kY29sb3ItYmc6ICMyQjNFNTA7XG4kY29sb3ItdGV4dDogI0VCRUJFQjtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxxQkFBcUI7QUFDckIsQUFBQSxJQUFJLENBQUM7RUFDSCxXQUFXLEVBQUUsNEpBQTRKO0VBQ3pLLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFVBQVUsRUFBRSxLQUFLO0VBQ2pCLGNBQWMsRUFBRSxJQUFJO0VBQUUsa0RBQWtEO0VBQ3hFLFVBQVUsRUFBRSxrRkFBZ0gsQ0FBQyxDQUFDLENBQUcsSUFBSSxDQUFDLElBQUksR0FDM0k7O0FBRUQsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLEtBQUssRUNYVyxPQUFPLEdEWXhCOztBQUVELEFBQUEsY0FBYyxDQUFDO0VBQ2IsS0FBSyxFQ1hTLE9BQU8sR0RZdEI7O0FBRUQsQUFBQSxZQUFZLENBQUM7RUFDWCxLQUFLLEVDZE8sT0FBTyxHRGVwQjs7QUFFRCxBQUFBLFdBQVcsQ0FBQztFQUNWLE1BQU0sRUFBRSxlQUFlLEdBQ3hCOztBQUVELEFBQ0UscUJBRG1CLEFBQ2xCLFFBQVEsQ0FBQztFQUNSLE1BQU0sRUM3Qk0sT0FBTyxDRDZCSSxLQUFLLENBQUMsR0FBRyxHQUNqQzs7QUFHSCxBQUFBLEtBQUssQ0FBQztFQUNKLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7O0FBRUQsQUFBQSxNQUFNLENBQUM7RUFDTCxPQUFPLEVBQUUsTUFBTTtFQUNmLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLEtBQUssRUFBRSx3QkFBb0I7RUFDM0IsZ0JBQWdCLEVBQUUsS0FBSztFQUN2QixRQUFR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 */
