body[data-reg-ui-client-status=show] {
  position: relative;
  overflow: hidden;
}
@media screen and (max-height: 675px) {
  body[data-reg-ui-client-status=show] {
    overflow: auto;
  }
}

body[data-reg-ui-client-status=load],
body[data-reg-ui-client-status=load] * {
  cursor: wait !important;
}

.reg-ui-client {
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateX(-100%);
  /* full page overlay: http://www.iab.com/guidelines/z-index-guidelines/ */
  box-sizing: border-box;
  visibility: hidden;
  /* [LC] use visibility + z-index instead of display, because animation does not work with display: none */
  z-index: -1;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  min-height: 100vh;
  height: 100%;
  background-color: #FFFFFF;
  background-color: rgba(255, 255, 255, 0.9);
  overflow: auto;
  animation: 0.5s fadeOut;
  /* for popup modal scrolling on iOS */
  -webkit-overflow-scrolling: touch;
  /* set top to 0 if browser window is NOT high enough */
}
.reg-ui-client *,
.reg-ui-client *:before,
.reg-ui-client *:after {
  box-sizing: inherit;
}
.reg-ui-client[data-status=show] {
  transform: translateX(0);
  z-index: 8000000;
  visibility: visible;
  animation: 0.5s fadeIn;
}
.reg-ui-client__iframe-container, .reg-ui-client__wide-iframe-container, .reg-ui-client__uverify-iframe-container {
  background-color: #FFFFFF;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
  position: relative;
  width: 100%;
}
.reg-ui-client__iframe-container {
  max-width: 375px;
}
.reg-ui-client__wide-iframe-container {
  max-width: 570px;
}
.reg-ui-client__uverify-iframe-container {
  max-width: 700px;
}
.reg-ui-client__iframe {
  overflow: hidden;
  width: 100%;
  height: 615px;
  display: block;
}
.reg-ui-client__wide-iframe {
  overflow: hidden;
  width: 100%;
  height: 510px;
  display: block;
}
.reg-ui-client__uverify-iframe {
  overflow: hidden;
  width: 100%;
  height: 680px;
  display: block;
}
@media screen and (max-height: 675px) {
  .reg-ui-client__iframe-container {
    top: 0;
    transform: none;
  }
}
@media screen and (max-height: 900px) {
  .reg-ui-client__uverify-iframe {
    height: 675px;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
    z-index: 8000000;
    visibility: visible;
  }
  100% {
    opacity: 0;
    z-index: -1;
    visibility: hidden;
  }
}