@font-face {
  font-family: 'ChosunGu';
  src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_20-04@1.0/ChosunGu.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}


html, .main_body {width:100%; height:100%; min-width:1600px; background:url("/images/body_bg.gif"); font-family: 'ChosunGu'; color:#000; font-size:1em; margin:0; padding:0;}

.iframe_body {width:100%; height:100%; font-family: 'ChosunGu'; color:#000; font-size:1em; margin:0; padding:0;}

ul, ol, li, dl, dt, dd {list-style:none; margin:0; padding:0;}
a:link,a:visited,a:active,a:hover {text-decoration:none;}
img {max-width: 100%; vertical-align:middle !important;}
p {margin:0; padding:0;}
.table {table-layout:fixed; background-color:#fff; text-align:center; border-collapse: collapse;}
.table_bgnone {table-layout:fixed; text-align:center; border-collapse: collapse;}
caption {color:#000; border-top:2px solid #4d4d4d; border-left:1px solid #d4d4d4; border-right:1px solid #d4d4d4; border-bottom:0;text-align:left; background: linear-gradient( to bottom, #fff, #ebebeb ); font-size:1.05em; padding:0;}

.caption {color:#000; text-align:left; background: linear-gradient( to bottom, #fff, #ebebeb ); font-size:1.05em; padding:0;}
th,
td {
border: 1px solid #d6d6d6;
vertical-align: middle !important;
}
table thead th {

font-weight: normal;
}
.title td {background-color:#f5f5f5; text-align:center;}

.justify-content-between {align-items: center !important;}
/***** 보더 *****/
.border-all-danger {border:2px solid #dc3545 !important;}
.border-bottom-danger {border-bottom:2px solid #dc3545 !important;}
.border-left-danger {border-left:2px solid #dc3545 !important;}
.border-right-danger {border-right:2px solid #dc3545 !important;}
.border-top-danger {border-top:2px solid #dc3545 !important;}
.border-bottom-dark {border-bottom:1px solid #525252 !important;}
.border-right-dark {border-right:1px solid #525252 !important;}
/***** 폰트 *****/
.gulim {font-family:"gulim"; font-size:12px; letter-spacing: 0px !important;}
.arial {font-family:'arial', sans-serif; font-weight:normal;}
/***** 백그라운드 *****/
.bg-header {background: linear-gradient( to bottom, #3abcb6, #26a09d ); letter-spacing: 1px; border-bottom:1px solid #02817e;}
.bg-noise {background:url("/images/bg_noise.gif");}
.bg-brown {background-color:#fff8d2 !important;}
.bg-gray {background-color:#e9e9e9 !important; text-align:center; color:#313131;}
.bg-dark {background-color:rgb(36, 36, 36);}
.bg-slash {background: url('/images/slash.png'); background-size: 100% 100%; background-color:#e9e9e9;}
.bg-transparent {background-color: transparent !important;}
/***** 글자색 *****/
.text-brown {color:#fff3ad;}
/***** 포인터 *****/
.pointer {cursor:pointer;}
/***** 버튼 *****/
.btn {font-family:"gulim"; font-size:12px !important;}
/***** 그림자 *****/
.text-shadow {text-shadow: 0px 0px 3px #000;}
.text-shadow-white {text-shadow: 0px 0px 3px #fff;}
/***** HOVER *****/
.hover:hover {background-color:#fffce9 !important;}
.hover-black:hover {background-color:#333; color:#fff;}
.active-black {background-color:#333; color:#fff;}
.hover-brown:hover {background-color:#fff8d2 !important;}
.active-brown {background-color:#fff8d2;}
.hover-rgb3:hover {background:rgba(0, 0, 0, 0.3);}
.active-rgb3 {background:rgba(0, 0, 0, 0.3);}
.hover-rgb6:hover {background:rgba(0, 0, 0, 0.6);}
.active-rgb6 {background:rgba(0, 0, 0, 0.6);}
.hover-background-danger:hover {background-color:#dc3545 !important;}
.active-background-danger {background-color:#dc3545 !important;}
.bg-hoverbrown {
background-color: #fff6c2 !important;
}
.bg-cellbrown {
background-color: #ffe357 !important;
}


.bg-hoverred {
  background-color: #dc3545 !important;
  }
  .bg-cellred {
  background-color: #dc3545 !important;
  }
/***** LI사이즈 *****/
.ul50 li.ul50_left {float:left; width:49.5%;}
.ul50 li.ul50_right {float:right; width:49.5%;}
.ul33 li {float:left; width:33.333333%;}
.ul25 li {float:left; width:25%;}
.ul20 li {float:left; width:20%;}
.ul10 li {float:left; width:10%;}
.ul5 li {float:left; width:5%;}
/***** ToolTip *****/
.tooltip-inner {
max-width: 1000px;
padding: 10px;
font-size:1rem;
font-family: 'ChosunGu';
}
/***** 체크박스 *****/
.wh20 {width:16px; height:16px;}
/***** CK에디터5 높이 *****/
.ck-editor__editable {min-height: 300px;}
.min-height100 {min-height: 100px !important;}
.min-height200 {min-height: 200px !important;}
.min-height300 {min-height: 300px !important;}
/***** 내부리스트 *****/
.innerList {position:relative; width:100%; height:710px; overflow:auto;}
.innerList li {float:left; width:100%; padding:10px 5px; border-bottom:1px solid #d6d6d6; cursor:pointer;}
.innerList li:hover {background-color:#000; color:#fff;}
.innerList li:last-child {border:0;}


/***** 내부리스트 *****/
.innerSearch {position:relative; width:100%; height:310px; overflow:auto;}
.innerSearch li {float:left; width:100%; padding:10px 5px; border-bottom:1px solid #d6d6d6; cursor:pointer;}
.innerSearch li:last-child {border:0;}

/***** PDF 뷰어 *****/
.pdfobject-container {width: 100%; max-width: 100%; height: 1460px; margin: 0;}
/***** 마스크 *****/
#mask {position:absolute; left:0; top:0; z-index:9999; background-color: rgba(0, 0, 0, 0.9); display: none; width: 100%; height: 100%;}
/***** 블링크 *****/
@keyframes blink {
0% { opacity: 1; }
50% { opacity: 0; }
100% { opacity: 1; }
}

.blinking {
animation: blink 0.5s infinite;
}


.loading-popup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.7);
display: flex;
align-items: center;
justify-content: center;
z-index: 9999;
color: #fff;
}

#CalendarLayer, #CalendarLayer1, #CalendarLayer2, #CalendarLayer3 {display:none; z-index:1;}
code, pre {font-family: 'NanumSquareNeo-Variable'; font-size:0.95em;}


.btn-pt {padding-top:9px;}


/***** 테이블 스크롤 *****/
.table-scroll {width:100%; white-space: nowrap; overflow-y: auto; padding:0;}
.table-scroll::-webkit-scrollbar {height: 20px; background-color: #F5F5F5;}
.table-scroll::-webkit-scrollbar-thumb {-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3); background-color: #D62929;}

/***** 다중업로드 파일 *****/
.upload-dropzone {
  border: 2px dashed #ccc;
  transition: all 0.3s ease;
  cursor: pointer;
}
.upload-dropzone.dragover {
  background-color: #f8f9fa;
  border-color: #0d6efd;
}
.file-list {
  margin-top: 1rem;
}
.file-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.5rem 1rem;
  margin-bottom: 0.25rem;
}
.file-info {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.file-name {
  max-width: 300px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/***** 프로그래스 바 *****/
.progress-container {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10000;
  width: 300px;
  padding: 20px;
  border-radius: 5px;
  display: none;
  z-index: 1000000;
}
.progress {
  margin: 10px 0;
  height: 20px;
}
.progress-bar {
  transition: width 0.3s ease-in-out;
}
.status-text {
  margin-top: 10px;
  text-align: center;
}


.popup-container {
position: fixed;
left: 10px;
bottom: 0px;
z-index: 9999;
}
.slide-popup {
width: 300px;
background: white;
transform: translateY(200px);
transition: transform 0.5s ease-in-out;
margin-top: 10px;
}
.slide-popup.show {
transform: translateY(0);
}
.popup-container .slide-popup:first-child {
margin-top: 0;
}

#sortable-container {
border: 1px solid #ced4da;
border-radius: 0.25rem;
height: 225px;
overflow-y: auto;
background-color: white;
}
#sortable {
list-style-type: none;
margin: 0;
padding: 0;
}
#sortable li {
margin: 0;
padding: 0.5em 0.8em;
font-size: 1em;
cursor: grab;
border-bottom: 1px solid #eee;
transition: background-color 0.2s;
}
#sortable li:hover {
background-color: #f8f9fa;
}
#sortable li:active {
cursor: grabbing;
}
#sortable li:last-child {
border-bottom: none;
}
.ui-state-highlight {
height: 2.2em;
background: #fff3cd;
border: 1px dashed #ffc107;
}

figure.table table {
  width: 100%;
  table-layout: fixed;
}

figure.image {
text-align: center !important;
}

figure.image-style-side {
text-align: right !important;
}

.text-tiny {
  font-size: 0.7em;
}

.text-small {
  font-size: 0.85em;
}

.text-big {
  font-size: 1.4em;
}

.text-huge {
  font-size: 1.8em;
}
