@charset "UTF-8";

@keyframes loading_image {
    100% {
        transform: rotate(360deg);
    }
}

#popupContent .ib-tab-contents.ib-classic_blue { top: -2px; }
/* Popup PREFIX */
#mcframeAlert .layer_bg, #mcframeConfirm .layer_bg, #popupContent .layer_bg {position:fixed; width:100%; height:100%; background: rgb(0,0,0); opacity: 0.5; left:0; top:0; z-index: 20000;}
#mcframeAlert .layer_wrap, #mcframeConfirm .layer_wrap {z-index: 20001;}
#popupContent .layer_wrap {
  position:fixed;
  /*width:95%;*/
  max-width: 1500px;
  /*height: 650px;*/
  background:#fff;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius:10px;
  overflow:hidden;
  z-index:10001;
  box-shadow:0 0 10px 0 rgba(0,0,0,0.15);
}

@media (max-width: 575px) {
  #popupContent .layer_wrap{
    width: 90%!important;
  }
}

#popupContent .modal-body {
 max-height: 800px;
 overflow:auto;
}

.modal-dialog-scrollable {
	display : flex !important;
	align-items : center !important;
	min-height : calc(100% - var(--bs-modal-margin) * 2) !important;
	word-wrap: break-word !important;
  overflow-wrap: break-word !important;
  word-break: keep-all !important;
}

.modal-dialog-centered {
	word-wrap: break-word !important;
  overflow-wrap: break-word !important;
  word-break: keep-all !important;
}

.b-l-n {
  border-left: none!important;
}

.b-r-n {
  border-right: none!important;
}
/* Summernote */
.note-editor .dropdown-toggle::after { display: none !important; }
.note-dropdown-menu.note-btn:not(.note-color-btn) { min-width: auto !important; white-space: nowrap !important; padding: 5px 15px 5px 10px !important; text-align: left !important; }
.note-editor .note-dropdown-menu { box-shadow: 0 4px 6px rgba(0,0,0,0.2) !important; white-space: nowrap !important; }
.note-editor .note-toolbar .note-dropdown-menu { min-width: auto !important; }
a.note-dropdown-item, a.note-dropdown-item:hover{margin: 5px !important;}
.note-editor .note-color .note-dropdown-menu { white-space: nowrap !important; padding: 10px 5px !important; }
.note-editor .note-palette-title { margin: 5px 0 10px 0 !important; padding-bottom: 5px !important; text-align: center; }
.note-color-reset, .note-color-select { margin: 5px 0 !important; }
.note-editor .note-color-palette .note-btn:not(.note-color-btn) { width: 100% !important; margin-top: 5px !important; border-radius: 4px !important; }
.note-editor .note-color-palette { position: relative !important; }
.note-editor .note-color-select-btn { display: block !important; position: absolute !important; opacity: 0 !important; width: 100% !important; height: 30px !important; bottom: 0 !important; left: 0 !important; cursor: pointer !important; z-index: 10; }
.note-modal .note-modal-body { padding: 10px 20px !important; }
.note-modal .note-modal-body .note-form-group { padding-bottom: 10px; }
.note-modal .note-modal-footer { padding: 0px 10px 0px 0px; min-height: 55px !important; }
.note-modal-footer .note-btn { margin: 10px !important; }
.note-modal .checkbox.sn-checkbox-open-in-new-window input { margin: revert !important; }
.note-editor .note-editing-area .note-editable { font-family: Arial, '맑은 고딕', 'Malgun Gothic', 'Apple SD Gothic Neo', sans-serif !important; }
.note-editor .note-dropdown-menu button.note-color-reset,
.note-editor .note-dropdown-menu button.note-color-select,
.note-editor .note-dropdown-menu .note-btn:not(.note-color-btn) { background-color: #e9e9e9 !important; border: 1px solid #ddd !important; color: #333 !important; }

.note-editor .note-dropdown-menu button.note-color-reset:hover,
.note-editor .note-dropdown-menu button.note-color-select:hover,
.note-editor .note-dropdown-menu .note-btn:not(.note-color-btn):hover { background-color: #d4d4d4 !important; border-color: #ccc !important; color: #000 !important; }

.note-editor .note-dropzone { 
  display: table !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  background-color: rgba(0, 0, 0, 0.6) !important;
  border: none !important;
  border-radius: 4px;
  transition: opacity 0.2s ease-in-out !important;
}
.note-editor.dragover .note-dropzone { 
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
.note-btn-group.note-resize .note-btn{
  height: 33px !important;    /* 세로 길이 고정 */
}

[data-bs-theme="dark"] .note-editor .note-editing-area .note-editable,
[data-bs-theme="dark"] .note-editor .note-btn,
[data-bs-theme="dark"] .note-editor .note-dropdown-item,
[data-bs-theme="dark"] .note-editor .note-palette-title,
[data-bs-theme="dark"] .note-modal .note-modal-title,
[data-bs-theme="dark"] .note-modal .note-form-label,
[data-bs-theme="dark"] .note-modal .checkbox label,
[data-bs-theme="dark"] .note-modal .close,
[data-bs-theme="dark"] .note-modal input.note-input {
    color: #e0e0e0 !important;
}
[data-bs-theme="dark"] .note-editor .note-editing-area .note-editable,
[data-bs-theme="dark"] .note-modal input.note-input { background-color: #1e1e1e !important; }
[data-bs-theme="dark"] .note-editor .note-toolbar,
[data-bs-theme="dark"] .note-editor .note-dropdown-menu,
[data-bs-theme="dark"] .note-modal .note-modal-content { background-color: #333 !important; }
[data-bs-theme="dark"] .note-editor .note-btn:not(.note-color-btn) { background-color: #2b2b2b !important; }
[data-bs-theme="dark"] .note-editor .note-color-palette .note-btn:not(.note-color-btn),
[data-bs-theme="dark"] .note-modal .note-btn { background-color: #444 !important; }
[data-bs-theme="dark"] .note-editor .note-dropdown-item,
[data-bs-theme="dark"] .note-editor .note-palette-title { background-color: transparent !important; }
[data-bs-theme="dark"] .note-editor.note-frame,
[data-bs-theme="dark"] .note-editor .note-toolbar,
[data-bs-theme="dark"] .note-editor .note-dropdown-menu,
[data-bs-theme="dark"] .note-modal .note-modal-content,
[data-bs-theme="dark"] .note-modal .note-modal-header,
[data-bs-theme="dark"] .note-modal .note-modal-footer { border-color: #444 !important; }
[data-bs-theme="dark"] .note-modal input.note-input,
[data-bs-theme="dark"] .note-editor .note-btn:not(.note-color-btn),
[data-bs-theme="dark"] .note-editor .note-color-btn,
[data-bs-theme="dark"] .note-modal .note-btn,
[data-bs-theme="dark"] .note-editor .note-palette-title { border: 1px solid #555 !important; }
[data-bs-theme="dark"] .note-editor .note-btn:not(.note-color-btn):hover,
[data-bs-theme="dark"] .note-editor .note-dropdown-item:hover,
[data-bs-theme="dark"] .note-modal .note-btn:hover { background-color: #555 !important; color: #fff !important; }
[data-bs-theme="dark"] .note-editor .note-color-btn:hover { border-color: #fff !important; }
[data-bs-theme="dark"] .note-editor .note-btn:active,
[data-bs-theme="dark"] .note-modal .note-btn:active { background-color: #222 !important; transform: scale(0.95) !important; }
[data-bs-theme="dark"] .note-editor .note-btn.active { background-color: #4da6ff !important; color: #fff !important; border-color: #4da6ff !important; }
[data-bs-theme="dark"] .note-editor .note-dropdown-item i { color: #4da6ff !important; }
[data-bs-theme="dark"] .note-editor .note-btn:focus,
[data-bs-theme="dark"] .note-modal .note-btn:focus { background-color: #333 !important; border-color: #444 !important; }
[data-bs-theme="dark"] .note-modal input.note-input:focus { outline: 1px solid #4da6ff !important; border-color: #4da6ff !important; }
[data-bs-theme="dark"] .note-editor .note-dropdown-menu button.note-color-reset,
[data-bs-theme="dark"] .note-editor .note-dropdown-menu button.note-color-select,
[data-bs-theme="dark"] .note-editor .note-dropdown-menu .note-btn:not(.note-color-btn) { background-color: #444 !important; color: #e0e0e0 !important; border: 1px solid #555 !important; }
[data-bs-theme="dark"] .note-editor .note-dropdown-menu button.note-color-reset:hover,
[data-bs-theme="dark"] .note-editor .note-dropdown-menu button.note-color-select:hover,
[data-bs-theme="dark"] .note-editor .note-dropdown-menu .note-btn:not(.note-color-btn):hover { background-color: #555 !important; color: #fff !important; }

[data-bs-theme="dark"] .note-popover, 
[data-bs-theme="dark"] .note-popover .popover-content,
[data-bs-theme="dark"] .note-popover .popover-body .note-popover-arrow {
    background-color: #212529 !important;
}
[data-bs-theme="dark"] .note-popover, 
[data-bs-theme="dark"] .note-popover .popover-body .note-popover-arrow {
    border: 1px solid #495057 !important; 
}
[data-bs-theme="dark"] .note-popover.bottom .note-popover-arrow:after {
  border-bottom-color: #212529 !important;
}


.h-200px {height: 200px !important;}
.h-236px {height: 236px !important;}
.h-250px {height: 250px !important;}
.h-350px {height: 350px !important;}
.h-360px {height: 360px !important;}
.h-370px {height: 370px !important;}
.h-400px {height: 400px !important;}
.h-410px {height: 410px !important;}
.h-421px {height: 421px !important;}
.h-430px {height: 430px !important;}
.h-451px {height: 451px !important;}
.h-469px {height: 469px !important;}
.h-530px {height: 530px !important;}
.h-550px {height: 550px !important;}
.h-580px {height: 580px !important;}
.h-600px {height: 600px !important;}
.h-791px {height: 791px !important;}
.h-800px {height: 800px !important;}

.w-20 {width: 20% !important;}
.w-50 {width: 50% !important;}

.w-80px {width: 80px !important;}

.h-100 {height: 100% !important}

.mn-h-200 {min-height: 200px !important;}

.mx-h-400 {max-height: 400px !important;}
.mx-h-500 {max-height: 500px !important;}

.mn-w-500 {min-width: 500px !important;}

.of-auto{overflow-y: auto;}

.text-center{text-align: center!important;}

.m-b-0{margin-bottom: 0!important;}

.m-l-a{margin-left: auto!important;}

.m-r-0{margin-right: 0!important;}

.p-t-0{padding-top: 0!important;}

.div-right-flex {
  display: flex;
  align-items: center;
}
.div-right-flex .gx-title-6 {margin: 0;}
.div-right-flex .unitLabelText {
  margin-left: auto;
  font-size: 14px;
}
		
.cursor-pointer {
  cursor: pointer;
  user-select: none;
}

.icon-hover-primary { color: #383c40; transition: color 0.2s; }
.icon-hover-primary:hover { color: #0d6efd; }
[data-bs-theme="dark"] .icon-hover-primary { color: #ffffff; }
[data-bs-theme="dark"] .icon-hover-primary:hover { color: #0d6efd; }

html:not([data-bs-theme="dark"]) .form-control[readonly] {
    background-color: #e9ecef;
    opacity: 1;
}
/* .form-control[readonly] { */
/*     background-color: #e9ecef; */
/*     opacity: 1; Bootstrap 기본 흐림 제거 */
/* } */

.new-search-select {
  position: relative;
  min-width: 250px;
  font-family: sans-serif;
}

.new-search-select .select-selected {
  background-color: #fff;
  border: 1px solid #dee2e6;
  padding: .375rem 2.25rem .375rem .75rem;
  cursor: pointer;
  position: relative;
  border-radius:0.375rem;
  min-height: 34px;
}

.new-search-select .select-selected::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  width: 11px;
  height: 11px;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16' stroke='currentColor'%3e%3cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateY(-50%);
  pointer-events: none;
}

.new-search-select .select-selected.active::after {
  transform: translateY(-50%) rotate(180deg);
}

.new-search-select .select-items {
  position: absolute;
  background-color: #fff;
  border: 1px solid #ccc;
  border-top: none;
  width: max-content;
  max-height: 350px;
  overflow-y: auto;
  display: none;
  z-index: 100;
}

.new-search-select .select-items div {
  padding: 8px;
  cursor: pointer;
}

.new-search-select .select-items div:hover {
  background-color: #f1f1f1;
}

.new-search-select .select-search {
  width: 100%;
  box-sizing: border-box;
  padding: 8px;
  border: none;
  border-bottom: 1px solid #ccc;
  outline: none;
}

/*loading layer*/
.loading-layer {width:100%; height:100vh; position: fixed; z-index:30000; background:rgba(0,0,0,0.5); top:0; left:0; display:none;}
.loading-layer.simple {background:none;}
.loading-layer.simple > div {background:none;}
.loading-layer > div {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width:80%;
    max-width: 360px;
    border-radius:10px;
    background:#fff;
    padding: 40px 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.loading-layer > div > strong {font-size: 2rem;color: #1d7df9;margin-bottom: 10px;}
.loading-layer > div > p {font-size:1.6rem; color:#000;}
.wheel-loader{position:relative;width: 80px;height: 80px;display: block;margin: 0 auto 20px;}
.wheel-loader span{position:absolute;left: 46%;top: 22px;width: 6px;height: 20px;background:#318aff;border-radius:6px;transform-origin:center bottom;opacity:0;animation: loading_spin 1.2s linear infinite;}
.wheel-loader span:nth-child(1) {transform:rotate(0deg) translate(-50%, -100%);  animation-delay:-1.1s;}
.wheel-loader span:nth-child(2) {transform:rotate(30deg) translate(-50%, -100%); animation-delay:-1s;}
.wheel-loader span:nth-child(3) {transform:rotate(60deg) translate(-50%, -100%); animation-delay:-0.9s;}
.wheel-loader span:nth-child(4) {transform:rotate(90deg) translate(-50%, -100%); animation-delay:-0.8s;}
.wheel-loader span:nth-child(5) {transform:rotate(120deg)translate(-50%, -100%); animation-delay:-0.7s;}
.wheel-loader span:nth-child(6) {transform:rotate(150deg)translate(-50%, -100%); animation-delay:-0.6s;}
.wheel-loader span:nth-child(7) {transform:rotate(180deg)translate(-50%, -100%); animation-delay:-0.5s;}
.wheel-loader span:nth-child(8) {transform:rotate(210deg)translate(-50%, -100%); animation-delay:-0.4s;}
.wheel-loader span:nth-child(9) {transform:rotate(240deg)translate(-50%, -100%); animation-delay:-0.3s;}
.wheel-loader span:nth-child(10){transform:rotate(270deg)translate(-50%, -100%); animation-delay:-0.2s;}
.wheel-loader span:nth-child(11){transform:rotate(300deg)translate(-50%, -100%); animation-delay:-0.1s;}
.wheel-loader span:nth-child(12){transform:rotate(330deg)translate(-50%, -100%); animation-delay:0s;}
@keyframes loading_spin{
    0%   {opacity:1;}
    100% {opacity:0;}
}

.line-loader{display:flex;gap:8px;}
.bar{width: 10px;border-radius:6px;background: #1da8f9;animation:line 1s linear infinite;}
.bar:nth-child(1), .bar:nth-child(4){height:48px;}
.bar:nth-child(2){height: 32px;margin-top: 7px;}
.bar:nth-child(3){height: 33px;margin-top: 7px;}
.bar:nth-child(1){animation-delay:0s;}
.bar:nth-child(2){animation-delay:0.15s;}
.bar:nth-child(3){animation-delay:0.3s;}
.bar:nth-child(4){animation-delay:0.45s;}
@keyframes line {
    0%   {opacity:0.2;}
    50%  {opacity:1;}
    100% {opacity:0.2;}
}

.display-none {display: none;}

.border-table {
  border-collapse: collapse; /* ⭐ 중요 */
  width: 100%;
}

.border-table th,
.border-table td {
  border: 1px solid #ddd;
}

.auth-terms-contents{white-space:pre-wrap;}

.date-picker, .date-time-picker{
	background-image: url('../assets/images/calendar.svg');
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 1.25rem 1.25rem;
  padding-right: 2rem;
  cursor: pointer;
  width: 140px!important;
  background-color: var(--bs-body-bg) !important;
  color: var(--bs-body-color);
}

[data-bs-theme="dark"] .date-picker, .date-time-picker{
  background-image: url('../assets/images/calendar-white.svg');
}

.date-picker{width: 140px!important;}

.date-time-picker{width: 175px!important;}

.ag-header-cell-label, .ag-header-cell-comp-wrapper {
  justify-content: center !important;
}

.ag-header-cell, .ag-header-group-cell {
  border-right: 1px solid #ccc;
}

.ag-column-last {
  border-right: none!important;
}

.ag-cell-center{text-align: center!important;}
.ag-cell-right{text-align: right!important;}

.ag-cell-value {
    border: 0!important;
}

.ag-header-cell-resize{
	opacity: 0!important;
	right: -6px!important;
}

[data-bs-theme="dark"] .ag-theme-mode {
    --ag-background-color: #0d1b2a;
    --ag-foreground-color: #e0e1dd;
    --ag-border-color: #415a77;
    --ag-header-background-color: #1b263b;
    --ag-header-foreground-color: #e0e1dd;
    --ag-row-background-color: #0d1b2a;
    --ag-odd-row-background-color: #162536;
    --ag-accent-color: #3498db;
    --ag-range-selection-background-color: rgba(52, 152, 219, 0.2);
    --ag-secondary-foreground-color: #b0b0b0;
    --ag-input-focus-border-color: #3498db;
}

[data-bs-theme="dark"] .ag-theme-mode .ag-row {
    background-color: var(--ag-row-background-color) !important;
}

[data-bs-theme="dark"] .ag-theme-mode .ag-row-odd {
    background-color: var(--ag-odd-row-background-color) !important;
}

[data-bs-theme="dark"] .new-search-select .select-selected {
    background-color: #212529 !important;
    color: #f8f9fa !important;
    border: 1px solid #495057 !important;
}

[data-bs-theme="dark"] .new-search-select .select-items {
    background-color: #212529 !important;
    border: 1px solid #495057 !important;
}

[data-bs-theme="dark"] .new-search-select .select-items div {
    background-color: #212529 !important;
    color: #f8f9fa !important;
}

[data-bs-theme="dark"] .new-search-select .select-items div:hover {
    background-color: #343a40 !important;
}

[data-bs-theme="dark"] .new-search-select .select-search {
    background-color: #212529 !important;
    color: #f8f9fa !important;
    border-bottom: 1px solid #495057 !important;
}

.ag-body-viewport, .ag-body-horizontal-scroll-viewport {
    scrollbar-gutter: stable both-edges;
}

.ag-drag-overlay {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background-color: rgba(0, 0, 0, 0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  font-weight: bold;
  z-index: 999;
  transition: opacity 0.2s ease-in-out;
  pointer-events: none;
  color: #87cefa;
  opacity: 0;
  border-radius: 8px;
}

.ag-drag-overlay.dragover {
  opacity: 1; 
}

.ag-drag-overlay.hover {
  color: #098ddf;
  opacity: 1; 
}

::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}
::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
}

.nav.nav-tab-gx > li:has(.active){z-index: 4!important;}