@charset "UTF-8";

.tabulator {border-radius: 5px;}
.tabulator .tabulator-header .tabulator-col {background: #FFF;}
.tabulator-row.tabulator-row-even {background-color: #F2F2F2; }
/* .tabulator-row {border-bottom: 1px solid #aaa;} */
.tabulator .tabulator-footer {background-color: #FFF;}


.tabulator .tabulator-footer .tabulator-page {border:  1px solid #400d93; color: #400d93;}
.tabulator .tabulator-footer .tabulator-page:not(disabled):hover {background-color: #400d93;}
.tabulator .tabulator-footer .tabulator-page.active {color: #333;}



#list {width: 100%; min-height: 560px;}
.btn-primary { color: #fff !important; background-image: none !important; background-color: #0d6efd !important; border-color: #0d6efd !important; }
.btn-primary:hover{background-color: #0b5ed7 !important; border-color: #0a58ca !important; }
.w2ui-form .w2ui-buttons {padding: 10px 0px;}
.w2ui-form .w2ui-buttons button {cursor: pointer;}

.custom-toolbar {
	background-color: #6f42c1; /* 원하는 배경색 */
	color: white;              /* 글자색 */
}
.custom-toolbar-label {
	color: white !important;
	font-weight: bold;
	padding-left: 10px;
}
.custom-toolbar-label .webix_el_box {
	color: #FFF !important;
}
.custom-toolbar-icon .webix_icon {
	color: white !important;
}

.custom-save-button button {
	background-color: #6f42c1 !important;
	color: white !important;
	border: none !important;
}

.custom-save-button button:hover {
	background-color: #0056b3 !important;
}

.custom-save2-button button {
	background-color: #0056b3 !important;
	color: white !important;
	border: none !important;
}

.custom-save2-button button:hover {
	background-color: #0080ff !important;
}

.custom-save3-button button {
	background-color: #00c600!important;
	color: white !important;
	border: none !important;
}

.custom-save3-button button:hover {
	background-color: #80ff00!important;
}

.custom-red-button button {
	background-color: #d00000!important;
	color: white !important;
	border: none !important;
}

.custom-red-button button:hover {
	background-color: #ff7575!important;
}

.custom-del-button button {
	background-color: #e0e3ef!important;
	color: #CE0018 !important;
	border: none !important;
}

.custom-del-button button:hover {
	background-color: #CE0018 !important;
	color: white !important;
}

.custom-cancel-button button {
	color: #6f42c1 !important;
}

.custom-cancel-button button:hover {
	color: #6f42c1 !important;
}

.webix_dtable .webix_ss_header .webix_hcolumn div.webix_last_row, 
.webix_dtable .webix_ss_header .webix_span.webix_last_row,
.webix_dtable div.webix_ss_vscroll_header{
	border-bottom: 1px solid #6f42c1;
}
.webix_view .webix_pager_item{
	color: #6f42c1 !important;
}
.webix_view .webix_pager_item_selected {
	background-color: #6f42c1 !important;
}
#app {min-height: 768px;}
#app #main {min-height: 768px;}
.webix_view.custom_no_border {
	background-color: #f5f5f5;
}

.webix_win_content .webix_win_body .webix_view .webix_dtable .webix_ss_header .webix_hcell{font-size:12px; color: rgb(62, 73, 89);}

.webix_win_content .webix_win_body .webix_view.webix_form .webix_inp_label{font-size:12px; color: rgb(62, 73, 89);}

.margin_top_10{margin-top: 10px;}

.margin_top_20{margin-top: 20px;}

.margin_top_30{margin-top: 30px;}

/* tool tip */
.action_btns.d-flex{
	display: block !important;
}
.action_btn.white_card{
	border-radius: 25px;
}
.action_btn::after {
    content: attr(data-tooltip);
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    background: #333;
    color: #fff;
    padding: 5px 10px;
    border-radius: 4px;
    font-size: 12px;
/*     white-space: nowrap; */
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s;
    margin-bottom: 5px;
}

.action_btn:hover::after {
    opacity: 1;
}


.action_btn.white_card .fas.fa-copy{
	color: #1E90FF;
}
.action_btn.white_card .fas.fa-file-excel{
	color: #228B22;
}
.action_btn.white_card .fas.fa-trash{
	color: #DC143C;
}

.chart-card {
	background-color: #FFF; padding: 7.5px 20px; box-sizing: border-box; height: 400px; display: flex;
    flex-direction: column; overflow: hidden;
}

.chart-card canvas {
    flex: 1;
    min-height: 0;
    max-height: 320px !important;  /* 카드 높이 - 패딩 - 제목 */
    width: 100% !important;
    height: auto !important;
}

.card-title {
    flex-shrink: 0;  /* 제목 영역 고정 */
    margin-bottom: 10px;
}

.card-shadow {
    box-shadow: 0 2px 8px rgba(0,0,0,0.1) !important;
}

.chart-container {
    position: relative;
    flex: 1;  /* 남은 공간 모두 차지 */
    min-height: 0;  /* flex 자식 overflow 방지 */
}

.webix_dtable .red-font {
    color: red !important;
    font-weight: bold !important;
}

.webix_dtable .yellow-font {
    color: #FFAB00 !important;
}
.webix_el_colorpicker input, .webix_el_combo input, .webix_el_datepicker input, .webix_el_search input, .webix_el_text input,
.webix_el_colorpicker .webix_inp_static, .webix_el_datepicker .webix_inp_static, .webix_el_richselect .webix_inp_static,
.webix_el_select select,
.webix_column,
.webix_hcell,
.webix_view,
.webix_inp_label
 {
	font-size: 12px;
}

.webix_view .webix_gantt_scale_cell  {
	font-size: 12px;
}

.badge {
    display: inline-block;
    padding: .35em .65em;
    color: #000;
    font-size: 12px; 
    font-weight: 700;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: .25rem;
}
.modal {
	top: 100px;
}
.excel_upload {
	padding: 10px;
}

.excel_upload .form-group {
	margin-bottom: 20px;
}

.excel_upload .alert {
	font-size: 14px;
}

.excel_upload .alert ul {
	padding-left: 20px;
	margin-top: 10px;
}

.excel_upload .alert li {
	margin-bottom: 5px;
}

#uploadResultErrors {
	max-height: 180px;
	overflow-y: auto;
}

#uploadResultErrors .error-item {
	padding: 5px;
	margin-bottom: 5px;
	background-color: #f8f9fa;
	border-left: 3px solid #dc3545;
	font-size: 13px;
}

.upload-summary {
	display: flex;
	justify-content: space-around;
	text-align: center;
	padding: 15px;
}

.upload-summary-item {
	flex: 1;
}

.upload-summary-item .number {
	font-size: 24px;
	font-weight: bold;
}

.upload-summary-item .label {
	font-size: 14px;
	color: #6c757d;
	margin-top: 5px;
}

.upload-summary-item.success .number {
	color: #28a745;
}

.upload-summary-item.fail .number {
	color: #dc3545;
}

.hide-checkbox .webix_table_checkbox {
    display: none !important;
}

/* Webix Scheduler 일정뷰 - 하루 종일 열 너비 */
.webix_event_time {
    width: 90px !important;
    min-width: 80px !important;
    white-space: normal !important;
    word-break: keep-all !important;
}

/* ✅ 테이블 셀 텍스트 잘림 방지 - 마우스 오버시 브라우저 기본 툴팁 표시 */
.webix_cell,
.webix_column > div {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    title: attr(title);
}

/* ✅ webix 셀에 title 속성 자동 부여용 */
.webix_dtable .webix_cell {
    position: relative;
}