@charset "UTF-8";
@font-face {
  font-family: LINESeedSansKR;
  src: local("※"), url(/resources/font/LINESeedKR-Th.woff) format("woff");
  font-weight: 100;
  font-style: normal;
}
@font-face {
  font-family: LINESeedSansKR;
  src: local("※"), url(/resources/font/LINESeedKR-Rg.woff) format("woff");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: LINESeedSansKR;
  src: local("※"), url(/resources/font/LINESeedKR-Bd.woff) format("woff");
  font-weight: 600;
  font-style: normal;
}
* {
  font-family: "LINESeedSansKR";
  word-break: keep-all;
}

ul, ol {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.table {
  table-layout: fixed;
}
.table th, .table td {
  vertical-align: middle !important;
}

.hidden {
  display: none !important;
}

.display-mo {
  display: none;
}

.ml-1 {
  margin-left: 10px;
}
.ml-2 {
  margin-left: 15px;
}
.ml-3 {
  margin-left: 20px;
}
.ml-4 {
  margin-left: 25px;
}
.ml-5 {
  margin-left: 30px;
}

.mr-1 {
  margin-right: 10px;
}
.mr-2 {
  margin-right: 15px;
}
.mr-3 {
  margin-right: 20px;
}
.mr-4 {
  margin-right: 25px;
}
.mr-5 {
  margin-right: 30px;
}

.fs-xl {
  font-size: 2rem !important;
}
.fs-lg {
  font-size: 1.5rem !important;
}
.fs-md {
  font-size: 1rem !important;
}
.fs-sm {
  font-size: 0.875rem !important;
}
.fs-xs {
  font-size: 0.75rem !important;
}

.tac {
  text-align: center !important;
}
.tar {
  text-align: right !important;
}
.tal {
  text-align: left !important;
}

.img-wrap {
  text-align: center;
}

.logo-img {
  width: 200px;
}

.gray {
  color: #575b65;
}

.bg-primary {
  background: #0086FF !important;
}
.bg-black {
  background: #101113 !important;
}
.bg-white {
  background: #fff !important;
}
.bg-positive {
  background: #3DF491 !important;
}
.bg-negative {
  background: #F24147 !important;
}
.bg-default {
  background: #F0F8FF !important;
}
.bg-secondary {
  background: #66b6ff !important;
}
.bg-gray {
  background-color: #575b65 !important;
}
.bg-light-gray {
  background-color: #f6f7f8 !important;
}
.bg-slate-gray {
  background-color: #898e99 !important;
}
.bg-dark-blue {
  background-color: #005099 !important;
}
.bg-sky-blue {
  background-color: #eaf5ff !important;
}
.bg-jasmin {
  background-color: #e4ccff;
}
.bg-rank-f {
  background-color: #ffc107 !important;
}
.bg-rank-e {
  background-color: #fff;
}
.bg-rank-d {
  background-color: #fff;
}
.bg-rank-c {
  background-color: #fff;
}
.bg-rank-b {
  background-color: #fff;
}
.bg-rank-a {
  background-color: #fff;
}

.color-primary {
  color: #0086FF !important;
}
.color-black {
  color: #101113 !important;
}
.color-white {
  color: #fff !important;
}
.color-positive {
  color: #3DF491 !important;
}
.color-negative {
  color: #F24147 !important;
}
.color-default {
  color: #F0F8FF !important;
}
.color-secondary {
  color: #66b6ff !important;
}
.color-yellow {
  color: #ffc107 !important;
}
.color-orange {
  color: #fd7e14 !important;
}
.color-gray {
  color: #575b65 !important;
}
.color-slate-gray {
  color: #898e99 !important;
}

.btn {
  border: none;
}
.btn-radius {
  border-radius: 9999px;
}
.btn:hover {
  border: none;
}
.btn-primary {
  background: #0086FF !important;
  color: #fff;
}
.btn-secondary {
  background: #66b6ff !important;
  color: #fff;
}
.btn-gray {
  background: #575b65 !important;
  color: #fff;
}
.btn-default {
  background-color: #898e99 !important;
  color: #fff !important;
}
.btn-primary-border {
  color: #0086FF;
  background-color: #fff;
  border: 1px solid #0086FF;
}
.btn-primary-border:hover {
  background-color: #0086FF;
  color: #fff;
  border: 1px solid #fff;
}
.btn-positive {
  background-color: #3DF491;
  color: #fff;
}
.btn-negative {
  background-color: #F24147;
  color: #fff;
}
.btn-orange {
  background-color: #fd7e14;
  color: #fff;
}
.btn-yellow {
  background-color: #ffc107;
  color: #fff;
}

.w-full {
  width: 100% !important;
}
.w-half {
  width: 50% !important;
}
.w-quarter {
  width: 25% !important;
}
.w-20 {
  width: 20% !important;
}
.w-60 {
  width: 60% !important;
}
.w-70 {
  width: 70% !important;
}
.w-33 {
  width: 33% !important;
}
.w-30 {
  width: 33% !important;
}

.require {
  color: #F24147;
}

.form-control {
  font-size: 1rem;
  padding: 0.75rem;
  line-height: 1.5;
  height: 3rem;
  border-radius: 0.75rem;
  border-color: #dbdde0;
  appearance: none;
}
.form-control-color {
  padding: 0.25rem 0.75rem;
}

input[type=checkbox] + label, input[type=radio] + label {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

[class*=icheck-] {
  min-height: 22px;
  margin-top: 6px !important;
  margin-bottom: 6px !important;
  padding-left: 0;
}
[class*=icheck-] > label {
  padding-left: 29px !important;
  min-height: 22px;
  line-height: inherit;
  display: inline-block;
  position: relative;
  vertical-align: top;
  margin-bottom: 0;
  font-weight: 400;
  cursor: pointer;
}
[class*=icheck-] > input:first-child {
  position: absolute !important;
  opacity: 0;
  margin: 0;
}
[class*=icheck-] > input:first-child + label::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 22px;
  height: 22px;
  border: 1px solid #dbdde0;
  border-radius: 2px;
  margin-left: -29px;
}
[class*=icheck-] > input.border-radius:first-child + label::before {
	border-radius: 9999px;
}
[class*=icheck-] > input:first-child:checked + label::before {
  background-color: #007bff;
  border-color: #007bff;
}
[class*=icheck-] > input:first-child:checked + input[type=hidden] + label::after, [class*=icheck-] > input:first-child:checked + label::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 7px;
  height: 10px;
  border: 2px solid #fff;
  border-left: none;
  border-top: none;
  transform: translate(7.75px, 4.5px) rotate(45deg);
  -ms-transform: translate(7.75px, 4.5px) rotate(45deg);
}

.fw-bold {
  font-weight: 700;
}

.icheck-secondary input[type=checkbox]:hover + label::before {
  border: none;
}
.icheck-secondary input[type=checkbox] + label::before {
  background-color: #fff;
}
.icheck-secondary input[type=checkbox]:checked + label::before {
  background: #66b6ff;
}
.icheck-secondary input[type=checkbox]:checked + label::after {
  border-color: #fff;
}

h2.tlt {
  font-size: 1.5rem;
  font-weight: 700;
}

h3.tlt {
  font-size: 1.2rem;
  font-weight: 700;
}

h4.tlt {
  font-size: 1rem;
  font-weight: 700;
}

p.text {
  font-size: 1rem;
  color: #575b65;
}

.popup {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(127, 127, 127, 0.6274509804);
  z-index: 9999;
}

.popup-dialog {
  min-width: 320px;
  background-color: #fff;
  position: absolute;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  border-radius: 0.375rem;
  box-shadow: 0 4px 20px 0 rgba(10, 13, 20, 0.15);
}
.popup-dialog.modal-lg {
  min-width: auto;
  width: 80%;
}

.inner-btn {
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translate(0, -50%);
}

.modal-dialog {
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
}

.daterangepicker {
  z-index: 9999;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.card:not(.note-editor):hover {
  color: #007bff;
  border-color: #007bff;
  box-shadow: 0 0 1px rgb(0, 123, 255), 0 1px 3px rgb(0, 123, 255);
}
.card:not(.note-editor):hover path {
  stroke: #007bff;
}

.doughnut {
  width: 200px;
  height: 100px;
  background-color: #fff;
  border-radius: 9999px 9999px 0 0;
  position: relative;
  background-image: linear-gradient(#fff, #fafafd), linear-gradient(to bottom, #95a4ff, transparent);
  background-origin: border-box;
  background-clip: content-box, border-box;
  border-bottom: 0;
}

/* Firefox  */
input[type=number] {
  -moz-appearance: textfield;
}

.logo-thumb-img {
  width: 200px;
}

select.form-control {
  background-image: url(/resources/img/common/select_arrow.png);
  background-repeat: no-repeat;
  background-position: 90% 50%;
  padding: 0.75rem 2rem 0.75rem 0.75rem;
}

.addr-wrap {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 400px;
  max-height: 50vh;
  z-index: 9999;
}

.custom-file .custom-file-label {
  color: #939bb1;
  border-top-left-radius: 0.75rem !important;
  border-bottom-left-radius: 0.75rem !important;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
.custom-file .custom-file-label::after {
  content: "";
  padding: 0;
  border: none;
  background-color: none;
}
.custom-file + .input-group-append {
  line-height: 1;
}
.custom-file + .input-group-append .input-group-text {
  cursor: pointer;
  border-top-right-radius: 0.75rem !important;
  border-bottom-right-radius: 0.75rem !important;
  background-color: #898e99;
  color: #fff;
}

input[type=text] + .input-group-append .btn {
  border-top-right-radius: 0.75rem;
  border-bottom-right-radius: 0.75rem;
}

.border-radius {
  border-radius: 0.75rem;
}

.border-radius-circle {
  border-radius: 9999px;
}

.addr-btn {
  background-color: #898e99;
  color: #fff;
}

.custom-control-label::before {
  background-color: #fff;
  box-shadow: none;
}

.radio-list label::before {
  top: 50%;
  transform: translate(0, -50%);
  width: 1.5rem;
  height: 1.5rem;
}
.radio-list label::after {
  top: 50%;
  transform: translate(0, -50%);
  width: 1.5rem;
  height: 1.5rem;
}

.sidebar-mini.sidebar-collapse .user-panel img {
  width: 50px;
}
.sidebar-mini .user-panel img {
  width: 90px;
}

.nav-sidebar > .nav-item.menu-open > .nav-link {
  background-color: rgba(0, 31, 59, 0.1);
}
.nav-sidebar .nav-item .nav-link:focus {
  background-color: rgba(0, 31, 59, 0.1);
}

.nav-treeview .nav-link {
  color: #fff !important;
}
.nav-treeview .nav-link.active {
  background-color: #66b6ff;
}

.content-wrapper {
  background-color: #fff;
}

.txt-ellipsis {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

.table-responsive .table {
  min-width: 100%;
  width: auto;
}

.fc-button-primary {
  background-color: #0086FF !important;
  border: none !important;
}

.has-numbering-table tbody tr {
  counter-increment: aaa;
}
.has-numbering-table tbody tr th:first-child:before {
  content: counter(aaa);
}

/* .table-primary 수정 */
.table-primary {
  border-color: #0086FF !important;
  overflow: hidden;
}
.table-primary th, .table-primary td {
  border-color: #0086FF !important;
}
.table-primary thead {
  background-color: #0086FF !important;
  color: #fff !important;
  border-color: #0086FF !important;
}
.table-primary thead th, .table-primary thead td {
  background-color: #0086FF !important;
  color: #fff !important;
  border-color: #0086FF !important;
}
.table-primary tbody {
  background-color: #fff !important;
  border-color: #0086FF !important;
}
.table-primary tbody tr .img-td img {
  width: 40px;
}

textarea.resize-false {
  resize: none;
}

.table-border-radius {
  overflow: hidden;
  border-radius: 0.75rem;
}

.fc-toolbar {
  flex-direction: row;
  align-items: center;
}

table.dataTable .sorting[rowspan="2"]::before {
  top: 50%;
  transform: translate(0, -40%);
}
table.dataTable .sorting[rowspan="2"]::after {
  top: 50%;
  transform: translate(0, -30%);
}

.dataTables_wrapper .previous, .dataTables_wrapper .next {
  font-size: 0;
}
.dataTables_wrapper .previous a, .dataTables_wrapper .next a {
  height: 38px;
  width: 32px;
}
.dataTables_wrapper .previous a {
  background-image: url(/resources/img/icon/chevron-left-solid.svg);
  background-size: 20px 20px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}
.dataTables_wrapper .next a {
  background-image: url(/resources/img/icon/chevron-right-solid.svg);
  background-size: 20px 20px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

.previous, .next {
  font-size: 0;
}
.previous a, .next a {
  height: 24px;
  width: 24px;
  display: block;
}

.previous a {
  background-image: url(/resources/img/icon/chevron-left-solid.svg);
  background-size: 20px 20px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

.next a {
  background-image: url(/resources/img/icon/chevron-right-solid.svg);
  background-size: 20px 20px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

.btn-borderless {
  color: #898e99;
}
.btn-borderless.active {
  color: #111;
}

.status-poor {
  bottom: 0;
  left: 15%;
}
.status-normal {
  top: -30px;
}
.status-good {
  bottom: 0;
  right: 15%;
}

.belt-tab-list {
  overflow: auto;
}
.belt-tab-list .belt-tab {
  background-color: #fff;
  min-width: 80px;
  text-align: center;
  border-radius: 0.75rem;
  cursor: pointer;
}
.belt-tab-list .belt-tab:not(:first-child) {
  margin-left: 1rem;
}
.belt-tab-list .belt-tab.active {
  background-color: #0086FF;
  color: #fff;
}

.progress-circle {
  position: relative;
  width: 80px;
  height: 80px;
  border-radius: 100%;
}
.progress-circle::before {
  content: "";
  position: absolute;
  width: 70px;
  height: 70px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  display: block;
  border-radius: 100%;
}
.progress-circle .progress-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.hover-none:hover {
  color: inherit !important;
}

.training-processed {
  background-color: #0086FF;
  width: 20px;
  height: 20px;
  display: inline-block;
  border-radius: 100%;
  border: solid 1px #0086FF;
  position: relative;
}
.training-processed::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 7px;
  height: 10px;
  border: 2px solid #fff;
  border-left: none;
  border-top: none;
  transform: translate(5.75px, 2.5px) rotate(45deg);
  -ms-transform: translate(5.75px, 2.5px) rotate(45deg);
}

.training-not-processed {
  background-color: #fff;
  width: 20px;
  height: 20px;
  display: inline-block;
  border-radius: 100%;
  border: solid 1px #c0c2c8;
}

video#attendanceVideo {
  width: 100%;
}

/* Chart.js */
@keyframes chartjs-render-animation {
  from {
    opacity: 0.99;
  }
  to {
    opacity: 1;
  }
}
.chartjs-render-monitor {
  animation: chartjs-render-animation 1ms;
}

.chartjs-size-monitor, .chartjs-size-monitor-expand, .chartjs-size-monitor-shrink {
  position: absolute;
  direction: ltr;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  pointer-events: none;
  visibility: hidden;
  z-index: -1;
}

.chartjs-size-monitor-expand > div {
  position: absolute;
  width: 1000000px;
  height: 1000000px;
  left: 0;
  top: 0;
}

.chartjs-size-monitor-shrink > div {
  position: absolute;
  width: 200%;
  height: 200%;
  left: 0;
  top: 0;
}

.note-editor p {
	margin-bottom: 0;
}
.text-nowrap {
	text-overflow: ellipsis;
}
.wd-break-all {
	word-break: break-all;
}
.popup-body.notice-content p {
	word-break: break-all;
}
.select2 {
	z-index: 9999;
}
.select2-container {
	width: 100% !important;
}
.select2-container .select2-selection--single {
	height: auto !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 50% !important;
	transform: translateY(-50%);
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 1 !important;
	margin-top: 0 !important;
}
.select2 .select2-selection {
	padding: .75rem .5rem;
}
#faceRecogPopup .popup-content {
	width: 50vw;
}
.select2-results__option:empty {
	display: none;
}
.nav-item .nav-link.dropdown-toggle::after {
	display: none;
}
@media screen and (max-width: 1024px) {
	#faceRecogPopup .popup-content {
		width: 80vw;
	}
}
@media screen and (max-width: 768px) {
  .mo-h-full {
    height: 100vh;
  }
  .addr-wrap {
    max-width: 200px;
  }
  .display-pc {
    display: none;
  }
  .display-mo {
    display: none;
  }
  .mo-rotate-90 {
    transform: rotate(90deg);
  }
  .status-poor {
    bottom: 0;
    left: 5%;
  }
  .status-good {
    bottom: 0;
    right: 5%;
  }
}