/* Inzi ID OCR CSS */
* {
  margin: 0;
  padding: 0;
  border: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
h1,
h2,
h3,
h4,
h5,
h6,
p {
  /* margin-bottom: 10px; */
}
ol,
ul,
dl {
  list-style-position: inside;
}

:root {
  --scanbox_width: "500px";

  /* --camera_height: 92vh; */
  /* --camera_footer_height: 8vh; */

  /* --camera_top: 20vh; */
  /* --camera_height: 52vh; */
  --camera_top: 20vh;
  --camera_height: 52vh;
  --camera_footer_height: 8vh;

  --camera_width: 88vw;
  --camera_footer_width: 12vw;

  font-family: "Noto Sans KR", sans-serif;
  font-size:10px; /* for rem */
}

#inzicamera {
  display: none;
}

@media (orientation: portrait) {
  #inzicamera {
    position: absolute;
    left:0;
    right:0;
    width:100%;
    height:100%;
    /* object-fit:cover; */ /* cover, contain */
    /* object-position: center center; */
    overflow: hidden;
    background-color: black;
    z-index: 800;
  }

  #inzicamera .inzicamera-body-video {
    position: absolute;
    left: 0px;
    top:var(--camera_top);
    width: 100%;
    height: var(--camera_height);
    object-fit: cover;
    object-position: center center;
    overflow: hidden;
    z-index: 801;
    background-color:black;
  }

  #inzicamera .inzicamera-body-canvas {
    position: absolute;
    left: 0px;
    top:var(--camera_top);
    width: 100%;
    height: var(--camera_height);
    object-fit: cover;
    object-position: center center;
    overflow: hidden;
    z-index: 802;
  }


   .inzicamera-body {
    left:0;
    top:var(--camera_top);
    width:100%;
    height: var(--camera_height);

    position: absolute;
    /*background-color: black;*/
    z-index: 804;
  }

  #inzicamera-upperbox {
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    top: 10%;
    left: 5px;
    right: 5px;
    height: 20%;
    margin: 0;
    font-weight: 600;
    font-size: 12px;
    text-align: center;
    vertical-align: bottom;
    color: #ffffff;
    z-index: 805;
  }
  
  /* Global */
  #inzicamera-upperbox .upperbox-msg {
    font-weight: 600;
    font-size: 14px;
    text-align: center;
    /*vertical-align: bottom;*/
    color: #ffffff;
  }

  #inzicamera-upperbox .valid_item {
    color:#d2be90;
    list-style-type: none;
  }
  
  #inzicamera-upperbox .invalid_item {
    color:rgb(191, 118, 133);
    list-style-type: none;
  }
  
  #inzicamera-upperbox .total_elapsed_time {
    color:deepskyblue;
    font-weight: 600;
    font-size: 18px;
  }		

  #inzi-camera-guide {
    position: absolute;
    left: 50%;
    bottom: 2vh;
    width: var(--scanbox_width);
    transform: translateX(-50%);
    margin: 0;
    font-weight: 600;
    font-size: 15px;
    text-align: center;
    vertical-align: bottom;
    color: #ffffff;
    z-index: 809;
  }  

  #inzi-camera-guide .camera-tip-wapper {
    display: flex;
    flex-direction: column;
    align-items: center;
  }  

  .inzicamera-footer {
    position: fixed;
    left: 0px;
    bottom: 0px;
    right: 0px;
    /* padding: 0 24px 10px 24px; */
    /* height: 8vh; */
    height: var(--camera_footer_height);
    
    padding-left: 2.4rem;
    padding-right: 1.2rem;
  
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: white;
    z-index: 810;
  }

}

@media (orientation: landscape) {

  #inzicamera {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100vh;
    background-color: black;
    overflow: hidden;
    z-index: 800;
  }

    
  #inzicamera .inzicamera-body-video {
    position: absolute;
    top: 0px;
    left: 0px;
    /* width: 80%; */
    width: var(--camera_width);
    height: 100%;
    object-fit:cover; /* cover, contain */
    object-position: center center;
    /* background-color: black; */
    overflow: hidden;
    z-index: 802;
  }

  #inzicamera .inzicamera-body-canvas {
    position: absolute;
    top: 0px;
    left: 0px;
    width: var(--camera_width);
    height: 100%;
    object-fit:cover; /* cover, contain */
    object-position: center center;
    overflow: hidden;
    z-index: 803;
  }

  .inzicamera-body {
    top: 0px;
    left: 0px;
    width: var(--camera_width);
    height: 100%;
    position: absolute;
    /* background-color: black; */
    z-index: 810;
  }

  #inzicamera-upperbox {
    position: absolute;
    bottom: 0px;
    left: 0px;
    right: 0px;
    color: white;    

    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0;
    font-weight: 600;
    font-size: 12px;
    text-align: center;
    vertical-align: bottom;
  }

  #inzicamera-upperbox .upperbox-msg {
    text-align: center;
    font-size: 14px;
    margin: 0 0 5px 0;
  }

  #inzicamera-upperbox .valid_item {
    color:#d2be90;
    list-style-type: none;
  }
  
  #inzicamera-upperbox .invalid_item {
    color:rgb(191, 118, 133);
    list-style-type: none;
  }
  
  #inzicamera-upperbox .total_elapsed_time {
    color:deepskyblue;
    font-weight: 600;
    font-size: 18px;
  }		

  #inzi-camera-guide {
    display: none;
    /*
    bottom: 0px;
    left: 0px;
    width: 100%;
    //height: 25px;
    position: absolute;
    padding-top: 2px;
    padding-bottom: 4px;
    background-color: black;
    z-index: 803;
    */
  }  


  .inzicamera-footer {
    top: 0px;
    right: 0px;
    width: var(--camera_footer_width);
    height: 100%;
    position: absolute;
    /* background-color: black; */
    font-size:3vh;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: white;
    flex-direction: column-reverse;
    padding: 2.4rem 1.4rem;
    padding-top: 1.2rem;
    z-index: 810;
  }
  
}

.toast-wrap {
  display: table;
  position: fixed;
  top:5%;
  left: 50%;
  width:70%;
  -webkit-transform: translate(-50%, -0%);
  -ms-transform: translate(-50%, -0%);
  -moz-transform: translate(-50%, -0%);
  -o-transform: translate(-50%, -0%);
  transform: translate(-50%, -0%);
  padding: 10px;
  border-radius: 5%;
  text-align: center;
  vertical-align: middle;
  font-weight: bold;
  font-size: 1.2em;
  z-index: 9999;
}
.toast-wrap::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #b0d197;
  opacity: 0.5;
  z-index: -1;
  border-radius: 10px;
}


/* Global */
#inzi-camera-guide .guide-msg {
  font-weight: 600;
  font-size: 14px;
  text-align: center;
  /* vertical-align: bottom; */
  color: #ffffff;
}


#inzi-camera-guide .camera-tip {
  display: flex;
  margin-top: 5px;
  flex-flow: row nowrap;
  align-items: center;
}
#inzi-camera-guide .camera-tip img {
  width: 28px;
  height: auto;
  margin-right: 8px;
}
#inzi-camera-guide .camera-tip p {
  font-weight: 600;
  font-size: 14px;
  white-space: nowrap;
  color: #ffffff;
}

#cameraLoadingWapper {
  display: none;
  /* top: 50%; */
  /* left: 50%; */
  width: 100%;
  height: 100%;
  position: absolute;
  /* width: 200px; */
  /* height: 210px; */
  /* transform: translate(-50%, -50%); */
  z-index:900;
}

#cameraLoadingWapper .cameraLoading {
  /* display: block; */
  top: 50%;
  left: 50%;
  position: absolute;
  width: 200px;
  height: 210px;
  transform: translate(-50%, -50%);
  /* z-index:900; */
}

#cameraLoadingWapper .cameraLoading div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 180px;
  height: 180px;
  margin: 4px;
  border: 24px solid #ffffff;
  border-radius: 50%;
  animation: loading 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: #e2a10c transparent transparent transparent;
}
#cameraLoadingWapper .cameraLoading div:nth-child(1) {
  animation-delay: -0.45s;
}
#cameraLoadingWapper .cameraLoading div:nth-child(2) {
  animation-delay: -0.3s;
}
#cameraLoadingWapper .cameraLoading div:nth-child(3) {
  animation-delay: -0.15s;
}
@keyframes loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

#cameraLoadingWapper .progressbar {
  display: none;
  background-color: #09B864;
  border-radius: 4px;
  box-shadow: inset 0 0.5em 0.5em rgba(0,0,0,0.05);
  height: 15px;
  width: 200px;
  margin: 2rem 0 2rem 0;
  overflow: hidden;
  position: absolute;
  /* transform: translateZ(10%); */
  top: 60%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#cameraLoadingWapper .progressbar_bar {
  background-color: #ececec;
  box-shadow: inset 0 0.5em 0.5em rgba(94, 49, 49, 0.05);
  bottom: 0;
  left: 0%;
  position: absolute;
  right: 0;
  top: 0;
}

/*******************************************************
  카메라 Footer 시작
********************************************************/



.inzicamera-footer-device {
  width: 100%;
  /* display: flex; */
  display: none;
  justify-content: center;
  z-index: 811;
  
}

.inzicamera-footer-device-select {
  height: fit-content;
  width: 80%;
  min-height: 1px;
  background-color: rgb(0, 0, 0, 0);
  color: white;
  font-size: 5vmin;
  text-align-last: center;
  text-align: center;
  border-color: white;
  border-width: 1px;
  border-style: solid;
  padding: 2px 0;

}

.inzicamera-footer .toggle_area {
  height: 4.7rem;
  text-align: center;
}
.inzicamera-footer .toggle_area > p {
  font-size: 1.4rem;
  font-weight: 500;
  color: #c1c6cc; 
  /* color: #565b63; */
  
  margin-bottom: 0.5rem;
}
.inzicamera-footer .toggle {
  width: 4.2rem;
  height: 2.2rem;
  border-radius: 1.1rem;
  background-color: #c1c6cc;
  margin: 0 auto;
}
.inzicamera-footer .toggle label {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  cursor: pointer;
}

.inzicamera-footer .toggle.toggle-auto {
  width: 4.2rem;
  height: 2.2rem;
  border-radius: 1.1rem;
  background-color: #2d8cff;
}

.inzicamera-footer .toggle_area:has(.toggle.toggle-auto) > p {
  color: #2d8cff;
}

.inzicamera-footer .toggle label::after {
  content: "";
  position: absolute;
  left: 0.4rem;
  top: 0.4rem;
  display: block;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 1.8rem;
  background-color: white;
  transition: 0.3s;
}
.inzicamera-footer .toggle.toggle-auto label::after {
  left: 2.4rem;
}

.inzicamera-footer .cam_icon {
  position: absolute;
  top: -3.2rem;
  left: 50%;
  transform: translateX(-50%);
  width: 9.2rem;
  height: 9.2rem;
  border-radius: 9.2rem;
  background-color: #2d8cff;
  border: 4px solid #ffffff;
  background-image: url(../images/camera.png);
  background-position: center center;
  background-repeat: no-repeat;
}

.inzicamera-footer .x_btn {
  height: 4rem;
  width: 4rem;
  cursor: pointer;
  background-image: url(../images/btn_icon.png);
}



@media (orientation: landscape) {

  .inzicamera-footer .cam_icon {
      top: 50%;
      left: -2.7rem;
      transform: translate(0, -50%);
  }
}

/*******************************************************
  카메라 Footer 종료
********************************************************/


