﻿/**** 전반적스타일 ****/
/**********************/
@font-face {
  font-family: NanumSquareRoundR;
  src: url(./open-iconic/font/fonts/NanumSquareRoundR.ttf);
}

.eSology *{
    letter-spacing: -0.5px;
}


.eSology .es_body {
    margin: 0;
    padding: 0;
}

/*컨트롤글씨크기*/
.eSology .ant-btn,
.eSology .ant-picker {
    font-size: 14px;
}
/*버튼안 label */
.ant-btn label {
    cursor:inherit;
}
/* 정렬 */
.es_tAligh_left,
.es_tAlign_left {
    display: block;
    text-align: left;
}

.es_tAligh_right,
.es_tAlign_right {
    display: block;
    text-align: right;
}

.es_tAligh_center,
.es_tAlign_center {
    display: block;
    text-align: center;
}
.es_tAligh_left > *,
.es_tAligh_center > *,
.es_tAligh_right > *,
.es_tAlign_left > *,
.es_tAlign_center > *,
.es_tAlign_right > *{
    display: inline-flex !important;
}
.es_selfAlign_left {
    float: left;
}
.es_selfAlign_right {
    float: right;
}
/*.es_vAlign_middle {
    display:inline-flex;
    align-items:center;
    height:100%;
}*/

/* 텍스트정렬 */
/*사용하는지 확인 요망. 중복 됨*/
.textAlign_Right {
    text-align: right;
}

.textAlign_left {
    text-align: left;
}

.textAlign_center {
    text-align: center;
}

/* 컨트롤 shadow color 지정*/
html {
    /*--antd-wave-shadow-color: #5668ea !important*/ /*16진수값만*/ /*;*/
    --antd-wave-shadow-color: none;
}

/*  H 정의 
    - H1의 반응형크기(bootstrap)를 H2,H3 포함 재정의,
    */
.eSology h1 {
    font-size: calc(1.375rem + 1.5vw); /*bootstrap*/
}

/* 한글의 얇은 Bold 재정의 */
.eSology h1, .eSology h2, .eSology h3 {
    font-weight: 600 ;
    letter-spacing:-1pt;
}

/* 기본폰트크기 */
:root, body.eSology, es_header {
  font-size: 14px;
  font-family: Malgun Gothic, sans-serif;
}

/* 창크기에 따른 폰트크기 정의 */
/* 기능제거 */
/*@media (max-width: 400px) {
    :root, body.eSologe {
        font-size: 14px;
    }
}*/

/* 페이지 타이틀 */
.pageTitle {
    font-size: 1.2rem;
}

/* 페이지 헤더 */
.es_pageHeader {
    background-color: #ececec;
    height:42px;
    min-width:1200px;
}
.es_pageHeader.reportList .ant-page-header-heading-left::before {
    content: '\00a0';
    position:absolute;
    display: inline-block;
    background-image: url(/images/icon_pageHeader_reportList.png);
    background-repeat: no-repeat;
    background-size: 31px 28px;
    width:31px;
    height:28px;
}
.es_pageHeader.reportList .ant-page-header-heading-title {
    margin-left:40px;
    font-size: 16px;
    font-weight: 600;
    color: black;
}
.es_pageHeader.reportList .ant-page-header-heading-sub-title,
.es_pageHeader.reportPage .ant-page-header-heading-sub-title{
    font-size: 14px;
    font-weight: 600;
    color: black;
    border-left:1px solid rgba(0, 0, 0, 0.15);
    line-height:20px;
}
.es_pageHeader .ant-picker,
.es_pageHeader .ant-input {
    border-color: #c5c5c5;
}
.es_pageHeader_reportName::before {
    content: '\00a0';
    display: inline-block;
    background-image: url(/images/icon_pageHeader_reportName.png);
    background-repeat: no-repeat;
    background-size: 17px 19px;
    width: 17px;
    height: 19px;
    margin-right:3px;
    margin-left:2px;
}
.es_pageHeader_reportName{
    vertical-align:middle;
    line-height:20px;
    display:inline-block;
    margin-bottom:1px;
}
.ant-page-header-heading-extra .ant-select + .ant-btn {
    margin-left:0;
}
.es_groupHeader .ant-page-header-heading-extra .dx-gridlayout-item + .dx-gridlayout-item {
    margin-left: 4px;
}
.es_groupHeader .ant-page-header-heading-left {
    min-height:31px;
}
/* 시스템헤더 */
.eSology .es_header {
    position: fixed;
    z-index: 100;
    width: 100%;
    min-width: 1200px;
    padding: 0 20px;
    background-color: #f7f7f7;
    height: 60px;
    align-items: center;
    padding-right: 24px !important;
    padding-left: 24px !important;
    color: white;
}
.eSology .es_header .es_systemLogo a  {
    margin:0;
}
.eSology .top-row.es_header {
    background-color: #2c3a68;
}
.es_systemLogo {
    display:inline-flex;
    height:100%;
    align-items:center;
}
.es_topInfo {
    display:inline-flex;
    float:right;
    height:100%;
    align-items:center;
/*    justify-content: flex-end;*/
}
.es_topInfo .userName::before {
    content: '\00a0';
    background-image: url(/images/loginImg.png);
    background-repeat: no-repeat;
    background-size: 20px 20px;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 4px;
}



/****그리드레이아웃 정의****/
/***************************/
/* 정보 양식 그리드레이아웃 infoTable */
.es_infoTable {
    border-top: 1px solid #e1e1e1;
    /*background-color: #f6f6f6; 20220511 YKJ */ 
    display: inline-flex
}

.es_infoTable .ant-typography,
.es_infoTable a {
    display: inline-flex;
    height: 100%;
    align-items: center;
    padding: 0px 5px 0px 8px;
    white-space: nowrap;
}

.es_infoTable .dx-gridlayout-item > div:not(.dx-gridlayout):first-child /*개발시 div 사용시 해결용*/ {
    display: flex;
    height: 100%;
}

.es_infoTable .dx-gridlayout-root > div.dx-gridlayout-item {
    border-bottom: 1px solid #e1e1e1;
    padding: 2px;
    min-height:36px;
}
/*그리드레이아웃 안에 그리드 레이아웃 넣을 경우 예외처리*/
.es_infoTable .dx-gridlayout-root > div.dx-gridlayout-item .dx-gridlayout .dx-gridlayout-root > div.dx-gridlayout-item {
    border-bottom: none;
    padding: 0;
    min-height:32px;
}

.eSology .es_infoTable .ant-input,
.eSology .es_infoTable .ant-picker,
.eSology .es_infoTable .ant-select,
.eSology .es_infoTable .ant-radio-group {
    margin: 0px;
}
.eSology .es_infoTable .ant-radio-group {
    height: 100% !important;
}

.es_infoTable .dx-gridlayout-item .ant-typography {
    padding-left: 8px;
}

.eSology .es_infoTable .ant-picker {
    display: flex !important;
}

.eSology .es_infoTable .ant-input-affix-wrapper {
    padding: 0;
}

.eSology .es_infoTable .ant-input-suffix {
    margin: 0 6px;
    font-size: 12px;
}

.eSology .es_infoTable .ant-input-affix-wrapper > input.ant-input {
    padding: 4px 11px;
}
.eSology .es_borderGrid .dx-gridlayout-root > div.dx-gridlayout-item {
    border: 1px solid #e1e1e1;
    margin-left: -1px;
    margin-top: -1px;
}
.eSology .es_infoTable .es_infoTable_th { /*20220511 YKJ */
    background-color: #f6f6f6;
}
/*스크롤바 안에서 left border 사라짐 해결 위해*/
.es_borderGrid {
    padding-left: 1px;
}
/*스크롤바 안에서 BG 사라짐 해결 위해*/
.eSology .ant-tabs .dx-gridlayout.es_borderGrid {
    height:initial;
}

.eSology .es_infoTable .ant-btn.ant-btn-link {
    height: 100%
}

/* 폭 100% 차지않는 컨트롤용 */
.es_gl_full {
    display: flex !important;
    width:100%;
}



/* Page Header Title */
.eSology .ant-page-header {
    padding:0 24px;
}
.eSology .ant-page-header-heading-title {
    font-size: 16px;
    line-height: 20px;
    font-weight: 600;
    color: #2b68ce;
    letter-spacing: -1px;
    margin-right: 10px;
}

.eSology .ant-page-header-heading-sub-title {
    font-size: 14px;
    line-height: 16px;
    font-weight: 600;
    color: #5691da;
    letter-spacing: -1px;
}

.eSology .ant-page-header-heading-title .anticon {
    vertical-align: middle;
    font-size: large;
    margin-bottom: 3px;
}

.eSology .ant-page-header-heading-sub-title {
    /*border-left: 2px solid #5691da;*/
    padding-left: 6px;
}
.eSology .ant-page-header-heading-title div + .ant-typography {
    vertical-align:middle;
}
.eSology .ant-page-header-heading-sub-title .inputGroup {
    border-radius: 4px;
    background-color: #eeeeee;
    border: 1px solid #e4e4e4;
    padding: 2px 15px;
    margin-left: 6px;
}

/* Popup Header Title */
.eSology .ant-modal .es-header-title {
    font-size: 15px;
    line-height: 20px;
    font-weight: 600;
    color: #536ac4;
}
.eSology .es-header-title {
    font-size: 16px;
}
.eSology .ant-modal-root .ant-page-header-heading-sub-title {
    font-size: 12px;
    line-height: 18px;
    font-weight: 600;
    color: #4b8fe2;
}


/* GridLayout text항목 구분 */
.es_textSpaceLeft {
    margin-left: 25px;
}
/* 보더박스 */
.es_BorderBox {
    border: 1px solid #e1e1e1;
    padding: 4px;
}
/* 컨트롤 폰트 크기*/
.eSologe .ant-btn,
.eSology .ant-input,
.eSology .ant-picker,
.eSology .ant-radio-button-wrapper,
.eSology .ant-picker-input > input {
    font-size: 14px;
}
/* 컨트롤 크기*/
.eSology .ant-input,
.eSology .ant-picker,
.eSology .ant-select,
.eSology .ant-radio-group {
    /*min-height: 32px;*/
    margin: 1px 0;
}
/* 팝업창 */
.eSology .ant-modal-body {
    padding: 8px 20px 16px 20px;
    font-size:14px;
}
.eSology .ant-modal .ant-page-header {
    padding: 3px 0;
}
.eSology .ant-modal-header {
    background-color: #e1e1e1;
    border-top: 1px solid white;
    border-left: 1px solid white;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    padding: 10px 16px;
}
.eSology .ant-modal-content {
    border-radius: 8px;
}
.ant-modal-footer {
    padding-bottom: 16px;
    text-align: center;
}
.eSology .ant-modal-footer .ant-btn + .ant-btn:not(.ant-dropdown-trigger) {
    margin-left: 0px;
}
.eSology .ant-modal-footer .ant-btn {
    min-width: 100px;
    min-height: 36px;
}
.eSology .ant-modal-footer .ant-btn,
.eSology .ant-modal-footer .ant-btn:disabled,
.eSology .ant-modal-footer .ant-btn:hover {
    border-radius: 20px
}
.eSology .ant-modal-title {
    background-image: url(/Images/popupWinIcon.png);
    background-size:inherit;
    padding-left: 29px;
    background-repeat: no-repeat;
    font-weight: Bold;
    padding-top: 1px;
    margin-top: 3px;
    min-height:25px;
}
.eSology .ant-modal-close .icon {
    width: 20px;
    height: 20px;
}
.eSology .ant-modal-close .anticon {
    vertical-align: inherit;
}
.eSology .ant-modal-close-x {
    width: 32px;
    height: 32px;
    line-height: 32px;
}
.eSology .ant-modal-close {
    top: 10px;
    right: 10px;
}
.eSology .ant-modal { /*브라우저 크기가 작아질 경우 모달창이 작아지며 우측으로 이동하는 현상 해결*/
    max-width: initial;
}
.eSology .ant-modal-root .ant-modal-wrap { /*브라우저 크기가 작아질 경우 모달창 작아지며 찌그러지는 문제 해결 */
    min-width: 1200px;
}




/**** Ant 테이블 관련 정의 ****/
/* DxGrid Row 높이정의*/
.eSology .grid-row {
}
/* 셀 전체 패딩 */
.eSology .ant-table-tbody > tr > td,
.eSology .ant-table-thead > tr > th {
    padding: 4px 8px;
}
/* 테이블 전체 폰트 */
.eSology .ant-table {
    font-size: 14px;
    border-radius:0;
}
/* 헤더 bg */
.eSology .ant-table-thead > tr > th {
    background: #f1f1f1;
}
/* Table Border color 변경*/
.eSology .ant-table td,
.eSology .ant-table th {
    border-color: #dedede !important;
    color: rgba(0,0,0,1);
}
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table,  
.eSology .ant-table.ant-table-bordered > .ant-table-container {
    border-color: #dedede;
}
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-header > table {
    border-top: 1px solid #dedede;
}
.eSology .ant-table.ant-table-bordered .ant-table-body {
    border-right: 1px solid #dedede;
}
.eSology .ant-table.ant-table-small .ant-table-footer,
.eSology .ant-table.ant-table-small .ant-table-tbody > tr > td,
.eSology .ant-table.ant-table-small .ant-table-thead > tr > th,
.eSology .ant-table.ant-table-small .ant-table-title,
.eSology .ant-table.ant-table-small tfoot > tr > td,
.eSology .ant-table.ant-table-small tfoot > tr > th {
    padding:3px;
}
.eSology .ant-table .ant-table-thead th {
    text-align: center;
    font-size: 13px;
    color: rgba(0,0,0,.5);
    font-weight:600;
    padding:6px 8px;
}
/*강제 border 색상 주기로 하단 class 불필요 */
/*.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table,*/ /* Header top Border */
/*.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table > thead > tr > th,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table > tbody > tr > td,*/ /* 나머지 셀들 */
/*.eSology .ant-table.ant-table-bordered > .ant-table-container*/ /* 제일 외각left Border */ /*{
    border-color: #dedede;
}*/
/*.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-body > table > tbody > tr > td,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-body > table > tfoot > tr > td,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-body > table > tfoot > tr > th,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-body > table > thead > tr > th,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table > tbody > tr > td,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table > tfoot > tr > td,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table > tfoot > tr > th,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table > thead > tr > th,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-header > table > tbody > tr > td,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-header > table > tfoot > tr > td,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-header > table > tfoot > tr > th,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-header > table > thead > tr > th,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-summary > table > tbody > tr > td,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-summary > table > tfoot > tr > td,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-summary > table > tfoot > tr > th,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-summary > table > thead > tr > th {
    border-color: #dedede;
}*/
/* 스크롤시 border 안보임 해결 연구중*/
/*.eSology .ant-table.ant-table-bordered .ant-table-body {
border-top: 1px solid #dedede;
border-bottom: 1px solid #dedede;
}*/
/* 테이블에 라운드를 줄 경우*/
/*.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table > thead > tr > th:first-child,
.eSology .ant-table.ant-table-bordered > .ant-table-container {
    border-top-left-radius: 5px;
}

.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table > thead > tr > th:last-child {
    border-top-right-radius: 5px;
}

.eSology .ant-table.ant-table-bordered > .ant-table-container,
.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table > tbody > tr:last-child > td:first-child {
    border-bottom-left-radius: 5px;
}

.eSology .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table > tbody > tr:last-child > td:last-child {
    border-bottom-right-radius: 5px;
}*/

/* ant Table Pagination 정렬 */
.eSology .ant-table-pagination {
    justify-content: center;
}


/**** Tab 컨트롤 정의****/
/************************/

/* Tab (Top)컨트롤 공통 */
.eSology .ant-tabs {
    font-size: 14px;
}
.eSology .ant-tabs-tab-btn .ant-btn.ant-btn-icon-only {
    background-color: transparent;
}
.ant-tabs-tab .ant-space-item .ant-btn-icon-only {
    width: inherit;
}
/* Tab (Top)컨트롤 1 Depth */
.es_tabCtrl_1d.ant-tabs-top > .ant-tabs-nav::before,
.es_tabCtrl_1d.ant-tabs-top > div > .ant-tabs-nav::before {
    border-bottom: 2px solid #576bdf;
}

.es_tabCtrl_1d.ant-tabs {
    margin-top: 6px;
    font-size: 14px;
}

.es_tabCtrl_1d .ant-tabs-tab {
    font-size: 15px;
    font-weight: bold;
    padding: 0;
    min-height: 34px;
    border: 2px solid #f1f1f1;
    border-radius: 3px 3px 0 0;
    margin-bottom: 2px;
}

.es_tabCtrl_1d .ant-tabs-tab-active {
    background-color: white;
    border-color: #576bdf;
    border-bottom-color: transparent;
    margin-bottom: 0;
    padding-bottom:2px;
}

.es_tabCtrl_1d .ant-tabs-ink-bar {
    display: none;
}

.es_tabCtrl_1d .ant-tabs-tab + .ant-tabs-tab {
    margin-left: 1px;
}

.es_tabCtrl_1d .ant-tabs-tab .anticon {
    margin-right: 0;
    vertical-align: baseline;
}
.eSology .es_tabCtrl_1d .ant-tabs-tab .anticon,
.eSology .es_tabCtrl_2d .ant-tabs-tab .anticon {
    font-size: 18px;
}

.es_tabCtrl_1d .ant-tabs-tab-btn {
    margin: 5px 15px 0 15px;
    min-width:70px;
}
.es_tabCtrl_1d .ant-tabs-tab.ant-tabs-tab-active .ant-typography,
.es_tabCtrl_1d .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn,
.es_tabCtrl_1d .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn .anticon {
    color: #576bdf;
}
.es_tabCtrl_1d .ant-tabs-tab .ant-typography,
.es_tabCtrl_1d .ant-tabs-tab .ant-tabs-tab-btn,
.es_tabCtrl_1d .ant-tabs-tab .ant-tabs-tab-btn .anticon {
    text-align:center
}
/*텝에 도움말버튼 추가시 크기커지는 문제 보완 20221215*/
.es_tabCtrl_1d .ant-tabs-tab .ant-typography {
   /*min-width:70px;*/
   display:inline-block;
   text-align:center;
}
/* Tab (Top)컨트롤 1 Depth TabBorderBox */
.es_TabBorder.ant-tabs-top > .ant-tabs-nav,
.es_TabBorder.ant-tabs-top > div > .ant-tabs-nav {
    margin-bottom: 0;
    min-height: 32px;
}
.es_TabBorder .ant-tabs-content-holder {
    border: 1px solid #dedede;
    padding: 12px;
    margin-top: -2px;
}

/* Tab (Top)컨트롤 2 Depth */
.es_tabCtrl_2d {
    margin-top: 10px;
}

.es_tabCtrl_2d.ant-tabs-top > .ant-tabs-nav,
.es_tabCtrl_2d.ant-tabs-top > div > .ant-tabs-nav {
    margin-bottom: 0;
    min-height: 32px;
}

.es_tabCtrl_2d.ant-tabs-top .ant-tabs-nav {
    border: 1px solid #dedede;
    background-color: #f6f6f6;
}

.es_tabCtrl_2d.ant-tabs-top > .ant-tabs-nav::before,
.es_tabCtrl_2d.ant-tabs-top > div > .ant-tabs-nav::before /*Tab Nav Underline*/ {
    display: none;
}

.es_tabCtrl_2d .ant-tabs-ink-bar /*Tab Active UnderBar*/ {
    display: none;
}

.es_tabCtrl_2d .ant-tabs-tab {
    font-size: 14px;
    font-weight: bold;
    padding: 5px 15px 4px 15px;
    min-height: 30px;
    border-right: 1px solid #dedede;
    border-radius: 0;
}

.es_tabCtrl_2d .ant-tabs-tab .anticon {
    margin-right: 0;
    font-size: 16px;
    vertical-align: baseline;
}

.es_tabCtrl_2d .ant-tabs-tab-btn:hover {
    color: #4d73f1;
}
.es_tabCtrl_2d .ant-tabs-tab-active {
    background: #576bdf;
    border-right-color: transparent;
}

.es_tabCtrl_2d .ant-tabs-tab-active .ant-tabs-tab-btn,
.es_tabCtrl_2d .ant-tabs-tab-active .anticon,
.es_tabCtrl_2d .ant-tabs-tab-active .ant-typography {
    color: white;
}

.es_tabCtrl_2d .ant-tabs-content-holder {
    border: 1px solid #dedede;
    border-top-width: 0;
    padding: 12px;
}

.es_tabCtrl_2d.ant-tabs > .ant-tabs-nav .ant-tabs-nav-wrap {
    margin: -1px;
    position: absolute;
}
.es_tabCtrl_2d .ant-tabs-content {
    min-height:100px;
}
.es_tabCtrl_2d .ant-tabs-tab + .ant-tabs-tab {
    margin-left: 0px;
}
.es_tabs-left_listboxStyle .ant-tabs-card.ant-tabs-left > .ant-tabs-nav .ant-tabs-tab + .ant-tabs-tab {
    margin-top: 0;
}
.es_tabs-left_listboxStyle .ant-tabs-left > .ant-tabs-nav .ant-tabs-tab .ant-space {
    min-height: 28px;
}

/**** 버튼 정의 ****/
/*******************/
/* ant-btn 기본 */
.eSology .ant-btn,
.eSology .ant-btn:hover,
.eSology .ant-btn:disabled {
    border-radius: 3px;
}
.eSology .ant-btn {
    transition: all .1s cubic-bezier(.645,.045,.355,1);
    height:inherit;
}
.eSology .ant-btn > span {
    width:100%;
}
/* ant-btn 아이콘 only 버튼 기본 */
.eSology .ant-btn-icon-only {
    padding: 4px 0;
    height: 33px;
    width: 33px;
    border: 0;
    background: transparent;
}

/* 버튼색상 재정의 IMPORTANT */
.eSology .ant-btn {
    color: #2c2c2c ;
    border-color: #c9cccf ;
}
.eSology .ant-btn:hover, .eSology .ant-btn.ant-btn-default:hover {
    color: #6076f1 ;
    border-color: #6076f1 ;
}
.eSology .ant-btn:focus, .eSology .ant-btn.ant-btn-default:focus {
    color: #6076f1 ;
}

.ant-btn-primary,
.es_btn_primary {
    color: #ffffff !important;
    background: #576bdf !important;
    border-color: #5063d1 !important;
}

.ant-btn-primary:hover,
.es_btn_primary:hover {
    color: #ffffff !important;
    background: #6076f1 !important;
    border-color: #4b5dc7 !important;
}
.es_btn_blue {
    color: #ffffff !important;
    border-color: #367cc8 !important;
    background: #3d84d2 !important;
}
.es_btn_blue:hover{
    color: #ffffff !important;
    border-color: #388dd5 !important;
    background: #4499e1 !important;
}
.es_btn_green {
    color: #ffffff !important;
    border-color: #489147 !important;
    background: #4f9c4d !important;
}
.es_btn_green:hover {
    color: #ffffff !important;
    border-color: #57a247 !important;
    background: #60ad4f !important;
}
.es_btn_mint {
    color: #ffffff !important;
    background: #3ca8b4 !important;
    border-color: #389fab !important;
}
.es_btn_mint:hover {
    color: #ffffff !important;
    background: #45bac7 !important;
    border-color: #40b0bd !important;
}
.es_btn_orange {
    color: #ffffff !important;
    background: #f8a528 !important;
    border-color: #f09f25 !important;
}
.es_btn_orange:hover {
    color: #ffffff !important;
    background: #ffb333 !important;
    border-color: #f5ab2e !important;
}
.es_btn_red {
    color: #ffffff !important;
    background: #f24b4d !important;
    border-color: #e84547 !important;
}
.es_btn_red:hover {
    color: #ffffff !important;
    background: #ff615b !important;
    border-color: #f45953 !important;
}
.es_btn_purple {
    color: #ffffff !important;
    background: #6462d1 !important;
    border-color: #5e5bc8 !important;
}
.es_btn_purple:hover {
    color: #ffffff !important;
    background: #7370ec !important;
    border-color: #7370ec !important;
}
.es_btn_dark {
    color: #ffffff !important;
    border-color: #374058 !important;
    background: #414b64 !important;
}

.es_btn_dark:hover {
    color: #ffffff !important;
    border-color: #374058 !important;
    background: #485679 !important;
}
.es_pageHeader .es_btn_pageHeader_back {
    width: 25px;
    height: 25px;
    transition: none;
    vertical-align: middle;
    border-width: 0;
    background-color: transparent;
    padding:0;
    margin-right:6px;
}
.es_btn_pageHeader_back {
    background-image: url(/images/btn_headerBack.png);
    display: inline-block;
    background-size: 25px;
    background-repeat: no-repeat;
    opacity:1;
    width:25px;
    height:25px;
}
.es_btn_pageHeader_back:hover {
    background-image: url(/images/btn_headerBack_hover.png);
    background-repeat: no-repeat;
}
.es_btn_pageHeader_back + .ant-typography {
    display:inline-block;
    vertical-align:middle;
    margin-top:1px;
}

.ant-btn-text.ant-btn-text,
.ant-btn-text.ant-btn-text:hover,
.ant-btn.ant-btn-link,
.ant-btn.ant-btn-link:hover {
    border-color: transparent !important;
}

.ant-btn.ant-btn-link >span,
.eSology a,
.eSology .btn-link,
.eSology a:not([href]):not([class]) {
    color: #257fd3;
    text-decoration:none;
}
.ant-btn.ant-btn-link:hover span,
.eSology a:hover,
.eSology .btn-link:hover,
.eSology a:not([href]):not([class]):hover,
.eSology a.nav-link:hover {
    color:#2494fb ;
    text-decoration: underline ;
}


.eSology .ant-btn.ant-btn-link {
    padding: 0 5px 0 8px;
}
.eSology .ant-btn.ant-btn-link:hover {
    color: #5668ea;
}

/*버튼 아이콘*/
.eSology .ant-btn .anticon {
  font-size: 18px;
  /*vertical-align:initial;*/
}
.eSology .ant-btn .anticon .icon {
    margin-top:-1px;
    margin-left:-2px;
}
.eSology .ant-btn > .anticon {
    width: inherit;
}

.eSology .ant-btn > .anticon + span,
.eSology .ant-btn > span + .anticon {
    margin-left:0px;
    padding-left:0;
    width: inherit;
}

.es_infoBox {
    border: 1px solid #e1e1e1;
    padding: 10px;
    background-color: #f7f7f7;
}

/* 그리드테이블in 체크버튼관련 */
.btnStyle_checked {
    border-radius: 3px;
    border: 1px solid #ffb7b7;
    color: #ff6c6c;
    font-size: 20px;
    height: 33px;
    width: 33px;
    padding: 4px 0;
}
/* 버튼 포커스 정의 */
.eSology .ant-btn:focus {
    color: unset
}

/* Ant 스위치 버튼 */
.eSology .ant-switch {
    width: 32px;
    height: 18px;
    min-width: 28px;
    border-radius: 3px;
    vertical-align:super;
    margin:7px 0;
    /*background-color: rgba(0,0,0,.25);*/
}

.eSology .ant-switch.ant-switch-checked {
    width: 32px;
    min-width: 28px;
    /*background-color: red;*/
}

.eSology .ant-switch-handle {
    width: 14px;
    height: 14px;
}

.eSology .ant-switch-handle::before {
    border-radius: 2px;
    box-shadow: none;
}

.eSology .ant-switch-checked .ant-switch-handle {
    left: calc(100% - 14px - 2px);
}
.eSology .ant-switch-checked {
    background-color: #576bdf;
}
/* 아이콘버튼 */
.es_iconBtn.ant-btn .anticon {
    font-size: 18px;
    line-height:17px;
    vertical-align: text-bottom;
    margin: 0;
}

.es_iconBtn.ant-btn {
    padding-left: 10px;
    padding-right: 10px;
}

.es_iconBtn.ant-btn span {
    font-size: 14px;
}



/* 라이오 그룹, 버튼 */
.es_radioToggle {
    height: 28px !important;
    display: flex;
    align-items: center;
}

.es_radioToggle .ant-radio-button-wrapper {
    height: 28px;
    min-width: 50px;
    padding: 0 8px;
    text-align: center;
    line-height: 24px;
    transition:color .1s,background .1s,border-color .1s,box-shadow .1s;
    border-color:#5063d1;
}

.es_radioToggle .ant-radio-button-wrapper:hover {
    color: #6076f1;
    border-color: #6076f1;
}

.es_radioToggle .ant-radio-button-wrapper > span:last-child {
    display: inline-flex;
    align-items: center;
}

.es_radioToggle .ant-radio-button-wrapper:first-child {
    border-radius: 16px 0 0 16px;
    border-right:0;
}

.es_radioToggle .ant-radio-button-wrapper:last-child {
    border-radius: 0 16px 16px 0;
}

.es_radioToggle .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled) {
    background-color: #576bdf;
    border-color: #5063d1;
    color: white;
}

.es_radioToggle .ant-radio-button-wrapper-checked:not([class*=' ant-radio-button-wrapper-disabled']).ant-radio-button-wrapper:first-child {
    border-right-color: unset;
}

.es_radioToggle .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled)::before {
    width: 0;
}


/** 검색박스 ***/
.es_searchBox {
    text-align: right;
}
.es_searchBox .ant-input-group.ant-input-group-compact {
    display: inline-block !important;
}

.es_searchBox .ant-input,
.es_searchBox .ant-picker,
.es_searchBox .ant-input-group.ant-input-group-compact {
    width: auto;
}
.es_searchBox .ant-input,
.es_searchBox .ant-picker,
.es_searchBox .ant-select{
    max-width: 120px;
}


.es_searchBox .ant-input,
.es_searchBox .ant-picker,
.es_searchBox .ant-btn,
.es_searchBox .searchIcon,
.es_searchBox .ant-input-group.ant-input-group-compact,
.es_searchBox label,
.es_searchBox .ant-typography{
    vertical-align: middle;
}

.es_searchBox > label {
    margin-left: 4px;
}

.eSology .es_searchBox label.searchHeader {
    margin-left: -3px;
    margin-right:3px;
    font-weight: bold;
    color: #727272;
}

.es_searchBox .searchIcon {
    font-size: 16px;
    color: #727272;
}
.es_searchBox > .ant-btn {
    margin-left:-1px;
}


/****** 기타 ******/
/******************/


.eSology .es_disable > .ant-input-affix-wrapper {
    border: none !important;
    box-shadow: none !important;
    cursor: default;
    background-color: white;
}
.es_bgWhite {
    background-color: white !important;
}
.eSology .app-container.es_notAuthLayout {
    padding: 0;
}
.es_textBold,
.es_textBold > .ant-typography {
    font-weight: 600 !important;
}
/*포커스border color */
.eSology .ant-btn:focus {
    border-color: #6076f0 !important;
}
/*에디터 Textarea bottom line 안보임 해결*/
.edit-height {
   padding-bottom:1px;
}
/**** Row분할 (Space Item) ****/
.ant-space-item > .ant-btn + .ant-btn {
    margin-left: 3px;
}
/* Right분할 */
.es_division_right .ant-space-item:first-child {
    width:100%;
}
.es_division_right .ant-space-item:last-child {
    display: contents;
}
/* Left분할 */
.es_division_left .ant-space-item:first-child {
    display: contents;
}

.es_division_left .ant-space-item:last-child {
    width: 100%;
    margin-left: 8px
}
/* text 좌우 여백 */
.es_textSpace {
    display: inline-block;
    margin: 0 5px;
}
/* 우측정렬 */
.es_alignLeft {
    float: right;
}


/* 필수입력항목 */
.es_required::after {
    content: "";
    width: 6px;
    height: 6px;
    background-color: #ff4c2e;
    border-radius: 3px;
    display: inline-block;
    vertical-align: text-top;
    margin-top: -8px;
    margin-left: 3px;
}

/* 조건부 필수입력항목 */
.es_requiredBlue::after {
  content: "";
  width: 6px;
  height: 6px;
  background-color: #2b68ce;
  border-radius: 3px;
  display: inline-block;
  vertical-align: text-top;
  margin-top: -8px;
  margin-left: 3px;
}

.ant-space-item .es_required::after {
    margin-top: 0px;
}
/* link 버튼에 필수입력항목 설정시*/
.es_required.ant-btn.ant-btn-link::after {
    display: none;
}

.es_required.ant-btn.ant-btn-link > span::after {
    content: "";
    width: 6px;
    height: 6px;
    background-color: #ff4c2e;
    border-radius: 3px;
    display: inline-block;
    vertical-align: text-top;
    margin-top: 0;
    margin-left: 3px;
}
/* 필수입력항목 메세지 Text */
.es_requiredMsg::before {
    content: "";
    width: 7px;
    height: 7px;
    line-height:7px;
    background-color: #ff4c2e;
    border-radius: 4px;
    display: inline-block;
    margin-bottom:2px;
    margin-right: 3px;
}

.es_requiredMsg {
    float: right;
    margin-top: 3px;
    margin-bottom: 3px;
}

.es_requiredMark {
    width: 8px;
    height: 8px;
    background-color: #ff4c2e;
    border-radius: 4px;
    display: inline-block;
    margin-top: -8px;
    margin-right: 3px;
}

/* text-event*/
.es_requiredMsg::after {
    clear: both;
    content: "";
}
.es_textEvent {
    color: #db8641;
}
.es_textEvent::before {
    color: #db8641;
    margin: 0;
    content: "※";
    display: inline-block;
    margin-right: 4px;
}
.es_textRed {
    color: #f95c5c;
}
.es_popup_headerBox {
    border-radius: 6px;
    background-color: #e8f3f4;
    border: 1px solid #d1e7e9;
    padding: 18px;
}

.mg_10 {
    margin: 10px;
}

.mg_15 {
    margin: 15px;
}

.mg_20 {
    margin: 20px;
}
/*float */
.float_Unset {
    float: unset;
}

.float_right {
    float: right;
}

/* text */
.text_bold {
    font-weight: 600;
}
/*** text color ***/
.text_red {
    color: #f55656;
}

.text_blue {
    color: #4982e2;
}
/*input 값 정렬*/
.es_Input_align_right,
.es_Input_align_right > .ant-input {
    text-align: right;
}
.es_Input_align_right > .ant-input-suffix {
    padding-top: 4px;
    margin-left:-6px !important;
    margin-right:11px;
}
/*** es Table ***/
.es_table {
    width: 100%;
    border-collapse: collapse;
    background-color: White;
}
.es_table th {
    background-color:#eeeeee;
}
.es_table th,
.es_table td{
    border: 1px solid #dbdbdb;
}
.es_table th {
    padding:6px;
    color:#848484;
    font-weight:bold;
}
.es_table td {
    padding:2px;
}


/***탭버튼 아이콘버튼***/
.eSology .ant-tabs .es_tabInBtn.ant-btn-icon-only,
.eSology .ant-tabs .es_tabInBtn.ant-btn-icon-only:hover {
    border-width: 0;
}
.eSology .ant-tabs .es_tabInBtn.ant-btn-icon-only {
    width: 18px;
    height: 18px;
}
/*20220418YKJ .eSology .ant-btn-icon-only,
.eSology .ant-btn-icon-only:hover {
    color: #1890ff;
}*/


/*****leftMenu****/
.es_leftMenu {
    position: fixed;
    width:260px;
    height:100%;
}
.es_leftMenu a {
    text-decoration: none;
}
.es_leftMenu.ant-menu-inline .ant-menu-item {
    margin-bottom:0;
    margin-top:0px;
    line-height:18px;
}


/**** Tree 컨트롤 ****/
.es_tree.ant-tree {
    color: black;
    background-color: transparent;
    padding:1px;
}
.es_tree .ant-tree-node-content-wrapper {
    width: 100%;
    transition: all .1s,border 0s,line-height 0s,box-shadow 0s;
    padding-top:0px;
    padding-bottom:0px;
    border-radius:2px;
}
.es_tree.ant-tree .ant-tree-treenode {
    padding:0;
}
.es_tree .ant-tree-title {
    margin-bottom: 3px;
    display:inline-block;
    vertical-align:middle;
}
.es_tree .ant-tree-checkbox {
    margin-right: 3px;
}
.es_tree.ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected {
    background-color: #536ac4;
}
.es_tree.ant-tree .ant-tree-node-selected .ant-tree-title {
    color:#ffffff;
}
.es_tree.ant-tree .ant-tree-node-selected .ant-typography {
    color: white;
}
.es_tree .ant-tree-switcher-line-icon {
    margin-top: -3px;
    font-size: 16px;
    vertical-align:middle;
}
.es_tree .ant-tree-switcher {
    width: 20px;
    background-color: transparent;
    transition: none;
}
.es_tree .ant-tree-switcher .ant-select-tree-switcher-icon svg,
.es_tree .ant-tree-switcher .ant-tree-switcher-icon svg {
    transition: none;
}
.es_tree .ant-tree-switcher .ant-tree-switcher-icon {
    font-size: 12px;
}
.es_tree .ant-tree-node-content-wrapper:hover {
    background-color: rgba(255,255,255,0.10);
}
.es_tree.ant-tree-show-line .ant-tree-indent-unit::before {
    right: 18px;
}

.es_treeCtrlHeader .anticon {
    font-size: 18px;
    vertical-align: initial;
    margin-right: 4px;
}
.es_treeCtrlHeader .ant-typography {
    font-size:14px;
    color: #536ac4;
    font-weight:600;
}
.es_tree .ant-space-item {
    line-height: 19px;
}
.es_tree .es_treeStatusIcon {
    margin-right: 4px !important;
    height:16px;
}
.es_treeStatusIcon > img {
    margin-top:-6px;
}
.es_tree .ant-space {
    margin: 4px 0;
}
/* Tree Ctrl leafLine Color */
.es_tree.ant-tree-show-line .ant-tree-indent-unit::before,
.es_tree.ant-tree-show-line .ant-tree-switcher-leaf-line::before,
.es_tree.ant-tree-show-line .ant-tree-switcher-leaf-line::after {
    border-color: #67728a;
}

/***** es_drawer ******/
.es_drawerParents {
    overflow: hidden;
    position: relative;
}

.es_drawer .ant-drawer-content-wrapper,
.es_drawer.ant-drawer {
    position: absolute;
}

.es_drawer .ant-drawer-content {
    background-color: transparent;
    padding: 6px;
}

.es_drawer .ant-drawer-wrapper-body {
    background-color: white;
    border-radius: 10px;
    border: 1px solid #c8c8c8;
}

.es_drawer .ant-drawer-header,
.es_drawer .ant-drawer-body {
    background-color: transparent;
}

.es_drawer.ant-drawer-right.ant-drawer-open .ant-drawer-content-wrapper {
    box-shadow: none;
}

.es_drawer .ant-drawer-mask {
    background-color: rgba(220,220,220, .6);
}

.es_drawer .ant-drawer-body {
    margin: 8px 8px 8px 0;
}

/**보고서현황. 구현후 삭제나 가공**/
.es_reportListContainer {
    background: #dfdfdf;
    height:100%;
    background-image:url(/images/reportList_waterMark.png) ;
    background-position-x:50%;
    background-position-y:50%;
    background-repeat:no-repeat;
}
.es_reportWarpList {
    padding:15px;
    letter-spacing:-0.5px;
}
.es_reportWarpItem {
    width: 33.33%;
    padding:10px;
}
.es_reportWarpItem.ant-list-item {
    display:inline-table;
    border:none;
    margin-right:-5px;
    }
.es_reportWarpItem .ant-card {
    width:100%;
        height: 100%;
    border: 1px solid #c5c5c5;
    border-radius: 8px;
    background-color: #ffffff;
    display: inline-block;
    box-shadow: 3px 3px 6px rgba(0,0,0, 0.1);
}
.es_reportWarpItem .ant-card-actions {
    background:none;
    border-top:none;
    margin:6px 18px 10px 18px;
}
.es_reportWarpItem .ant-card-actions > li {
    margin:0;
}
/*232020 불필요*/
/*.es_reportWarpItem .ant-card-actions > li:first-child {
    color:#4b4f54;
}*/
.es_reportWarpItem .ant-card-actions .anticon {
    font-size:22px;
}
.es_reportWarpItem .ant-card-actions > li {
    border-right:none;
    width:32px !important;
}
.es_reportWarpItem .ant-card-actions > li:last-child {
    float:right;
}
.es_reportWarpItem .ant-card-actions > li:hover .icon {
    color: #6076f1;
}
.es_reportWarpItem div h3 {
    margin: 0;
    padding: 0;
    font-size: 16px;
    line-height: 22px;
}
@media (max-width: 1800px) {
    .es_reportWarpItem {
        width: 50%;
    }
}
@media (min-width: 1801px) and (max-width: 2300px) {
    .es_reportWarpItem {
        width: 33.33%;
    }
}
@media (min-width: 2301px) {
    .es_reportWarpItem {
        width: 25%;
    }
}

/***보고서현황페이지 height:100% 관련 ***/

article  {
    height:100%;
    padding-top:60px;
    overflow:hidden;
}
.page {
    height:100%;
}
.es_reportWarpList {
    overflow:auto;
}

/*** 보고서 목록 ***/
.es_cardContents {
    position:relative;
}
.es_reportWarpItem .ant-card-body {
    padding:10px 14px 0px 14px;
}
.es_reportCardHeader {
    font-size: 18px;
    font-weight: 600;
    color: black;
    line-height: 32px;
    padding-left:14px;
}
.es_reportCard_infoBox {
    background-color: #f1f3f4;
    border-radius:6px;
    padding:20px;
}
.es_cardContents .ant-progress-circle-trail {
    stroke: #dedede !important;
}
.es_cardContents .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path {
    stroke: #5797df;
}
.es_cardContents .ant-progress-status-success .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path {
    stroke: #7fc442;
    /*stroke-width:90px;*/
}
/*.es_cardContents .ant-progress-status-success .ant-progress-text::before {
    content: url("/images/icon_report_complete_w.png");
    display: inline-block;
    position: relative;
    margin-top:-4px;
    margin-right:-4px;
}*/
.es_cardContents .ant-progress-status-success .ant-progress-text .anticon {
    display:none;
}
.es_cardContents .ant-progress-status-success + .es_progressText > .ant-typography {
  /*    color: #7fc442;
    border-color: #7fc442;*/
/*  color: white;
  border-color: white;*/
  color: #666666;
  border-color: #eaeaea;
}
.es_cardContents .ant-progress-circle-path {
    stroke-width: 7px;
    stroke-linecap: square;
}
.es_cardContents .ant-progress-inner {
    border-radius:60px;
    background-color:#ffffff;
}
.es_cardContents .ant-progress {
    margin-right:14px;
}
.es_cardContents .dx-gridlayout > .dx-gridlayout-root {
    align-content: center;
}
.es_cardContents .es_ReportInfo .dx-gridlayout-item {
    position: relative;
}
.es_cardContents .es_ReportInfo .es_reportInfoItem {
    border-bottom: 1px solid #dfe0e0;
    font-size:14px;
    font-weight:400;
}
.es_reportInfoItem .ant-typography {
    color: #666666;
}
.es_reportInfoContent .ant-typography {
    color:black;
    font-weight:400;
}
.es_cardContents .es_ReportInfo .es_reportInfoItem::after {
    position: absolute;
    right: -2px;
    top: 6px;
    content: "";
    height: 14px;
    border-right: 1px solid #dadada;
}
.es_ReportInfo .dx-gridlayout-item {
    display:grid;
    min-height:28px;
    padding:2px 0;
}
.es_ReportInfo .es_reportInfoContent {
    margin-right: 3px;
    border-bottom: 1px solid #dadada;
    white-space: normal;
    vertical-align: middle;
}
.es_cardContents .es_reportInfoContent {
    padding-left:8px;
}
.es_cardContents .ant-progress-circle .ant-progress-text {
    top:55px;
    font-size:28px;
}
.es_cardContents .es_progressText {
    position: absolute;
    display: inline-block;
    width: 120px;
    bottom: 22px;
    left: 0;
    text-align: center;
    color: black;
}
.es_cardContents .es_progressText > .ant-typography {
    line-height:16px;
    bottom: 20px;
    font-size: 14px;
    border: 1px solid #eaeaea;
    border-radius:12px;
    padding:1px 8px 3px 8px;
    display:inline-block;
    min-width:55px;
    color: black;
}


/*** Rreport Page ***/
.es_contentsRoot {
    height:100%;
}
.es_contentsRoot .es_leftFrame {
    padding: 7px 0 7px 7px;
    height: calc(100vh - 102px);
}
.es_contentsRoot .es_contents {
    padding: 20px 24px 20px 20px;
    height: unset;
    overflow-y:auto;
}
.es_treeCtrlHeader {
    border: 1px solid #dbdbdb;
    border-width: 1px 1px 0 1px;
    background-color:white;
    border-radius:4px 4px 0 0;
    padding:10px 15px;
}
.es_treeCtrlBox {
    border: 1px solid #dbdbdb;
    border-width: 1px;
    background-color: #f0f0f0;
    border-radius: 0 0 4px 4px;
    overflow-y: auto;
    padding: 1px;
}
.es_leftFrame .es_treeCtrlBox .ant-tree {
    background-color:transparent;
}


/* 보고서작성 */
.es_reportPage_header {
    font-size: 18px;
    font-weight: 600;
    color: black;
    display:inline-block;

}
.es_reportPage_header > img {
    margin-bottom:4px;
}
.es_reportPage_headerBox {
    height: 50px;
    position: fixed;
    top: 102px;
    left:0px;
    margin-left:313px;
    z-index: 10;
    background-color: white;
    width: calc(100% - 338px);
    box-sizing:border-box;
    border-bottom: 1px solid #e3e3e4;
    padding:6px 0 6px 0;
}
.es_reportPage_headerExtra {
    display:inline-block;
    float:right;
}
.es_reportPage_headerExtra >form {
    display: inline-block;
}
.es_reportPage_header{
    display:inline-block;
    margin-top:10px;
}
.eSology .es_groupHeader {
    padding:6px 0 0 0;
}
.es_groupHeader .es-header-title {
    font-size: 15px;
}
.es_groupHeader .ant-page-header-heading-extra {
    margin-top:0;
    margin-bottom:0;
    display:flex;   /*20220511 YKJ*/
    align-items:center;
}
.es_groupHeader .ant-page-header-heading-extra .ant-select + .ant-select, /*20220511 YKJ*/
.es_groupHeader .ant-page-header-heading-extra .ant-select + .ant-btn{
    margin:0;
    margin-left:4px;
}
.eSology .es_groupHeader_tabHeader {
    font-size: 16px;
    color: #253d82;
}
.eSology .es_groupHeader_small {
    font-size: 14px;
    color: #323d65;
}

.eSology .es_groupHeader_2depth .ant-page-header-heading-title {
    font-size: 14px;
    color: #323d65;
}
.eSology .es_groupHeader_2depth .ant-page-header-heading-sub-title {
    font-size: 14px;
    color: #89939f;
    border-left: 1px solid #89939f;
    padding-left: 6px;
}
/**** Main ****/
.es_main {
    height: 100%;
}
.es_scrollViewer_inFrame {
    height: calc(100vh - 102px);
    overflow-y: auto;
    padding: 24px;
    width: 100%;
    overflow-x:auto;
}
.es_scrollViewer {
    height: calc(100vh - 102px);
    overflow: auto;
}
.es_reportWarpList {
    min-width:1300px;
}
.es_frameInContents {
    min-width: 1010px;
    margin-top: 30px;
}


/** es_list*/
.es_list,
.es_list ul{
    margin: 0;
    padding: 0;
}
.es_list li{
    list-style:none;
    line-height: 18px;
    padding-left:10px;
}
.es_list li + li{
    margin-top:2px;
}
.es_list li::before{
    content:"";
    width:5px;
    height:5px;
    background-color:gray;
    border-radius:3px;
    display:inline-block;
    position:absolute;
    margin-top:7px;
    margin-left:-10px;
}

/*버튼박스*/
.es_btnBox {
    text-align:center;
}
.es_btnBox button {
    display:inline-block;
    width:inherit;
}
.es_btnBox button + button {
    margin-left:3px;
}

/****툴팁 Tooltip***/
.eSology .ant-tooltip {
    font-size:13px;
}
.eSology .ant-tooltip-inner {
/*    background-color: rgba(2,28,89,.80);*/
    border-radius: 16px;
    padding: 4px 15px;
    min-height: 30px;
}
.eSology .ant-tooltip-inner,
.eSology .ant-tooltip-arrow-content {
    background-color: rgba(80,98,160,.80);
    --antd-arrow-background-color: rgba(80, 98, 160, 0.0) ;
}
.eSology.ant-tooltip-arrow-content::before {
    background-color: var(--antd-arrow-background-color);
}

/***페이저 pagination ****/
.eSology .ant-pagination .ant-pagination-item a {
    color: #838383;
}
.eSology .ant-pagination .ant-pagination-item-active a {
    color: #576bdf;
}
.eSology .ant-pagination a:hover,
.eSology .ant-pagination a:not([href]):not([class]):hover {
    color: #6076f1;
    text-decoration: none;
}
.eSology .ant-pagination .ant-pagination-item:hover {
    border-color: #aeb8f6;
}
.eSology .ant-pagination .ant-pagination-item-active,
.eSology .ant-pagination .ant-pagination-item-active:hover,
.eSology .ant-pagination .ant-pagination-item-link:hover {
    border-color: #7588f6;
    color: #6076f1;
}
.eSology .ant-pagination-disabled .ant-pagination-item-link:hover {
}
.eSology .ant-pagination-item-link .anticon {
    vertical-align: 2px;
}
.eSology .ant-pagination-options-size-changer {
    margin: 0;
}
.eSology .ant-select .ant-select-selector:hover,
.eSology .ant-select.ant-select-open .ant-select-selector {
    border-color: #576bdf ;
}
.eSology .ant-select .ant-select-selector {
    transition:none;
}
.eSology .ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector {
    border-color: #576bdf;
    box-shadow:none;
}

.eSology .ant-select.ant-select-arrow .anticon:not(.ant-select-suffix) {
    pointer-events: none;
}


/*** 컨트롤 Shadow ***/
.eSology .ant-input,
.eSology .ant-picker {
    box-shadow: none;
}

/***달력 ****/
.eSology .ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner {
    background-color: #576bdf;
}

/*** 컨트롤 마우스이벤트***/
.eSology .ant-input:hover,
.eSology .ant-picker:hover,
.eSology .ant-input:focus,
.eSology .ant-picker:focus {
    border-color: #6076f0;
}

/*** 에디터용 체크박스 ***/
.es_checkbox4Editor {
    border-radius: 20px;
    background-color: #e9e9e9;
    display: inline-block;
    width: 96px;
    height: 34px;
    padding: 2px;
    position:relative;
}
.es_checkbox4Editor .ant-checkbox-inner{
    padding: 4px 14px;
    background-color: white;
    border-radius: 20px;
    border: 1px solid #9b9b9b;
    color: #4d4d4d;
    display: flex;
    width: 100%;
    height:30px;
    transition: none;
}
.es_checkbox4Editor .ant-checkbox-input:focus + .ant-checkbox-inner {
    border-color: #fa980f;
}
.es_checkbox4Editor .ant-checkbox-inner::before {
    position: absolute;
    content: url("/images/icon_check.png");
    top: 6px;
}
.es_checkbox4Editor .ant-checkbox-inner::after {
    position: absolute;
    content: "에디터";
    color: black;
    top: 6px;
    left: 34px;
    transform: none;
    opacity: 1;
    border: none;
    transition: none;
}
.es_checkbox4Editor + span:not(.ant-checkbox-inner) {
    display: none;
}
.ant-checkbox-wrapper-checked .es_checkbox4Editor .ant-checkbox-inner::before {
    content: url("/images/icon_check_w.png");
}
.ant-checkbox-wrapper-checked .es_checkbox4Editor .ant-checkbox-inner::after {
    color: white;
}
.ant-checkbox-wrapper-checked .es_checkbox4Editor .ant-checkbox-inner {
    /*    background-color: #41b356;
    border-color: #2d9840;*/
    background-color: #fa980f;
    border-color: #dc7e00;
    transition: none;
}
.eSology .ant-btn.es_editorAfterBtn {
    vertical-align: text-bottom;
    margin-left: 2px;
    height: 31px;
    padding: 3px 14px;
    margin-block: 1px;
    border-radius: 16px;
}

.es_checkbox4Editor.ant-checkbox-checked::after {
    display:none;
}
.ant-checkbox-wrapper .es_checkbox4Editor:hover .ant-checkbox-inner {
    /*    border-color: #48c15e;
    background-color: #ecfde8;*/
    border-color: #ff9c00;
    background-color: #fcf5e0;
}
.ant-checkbox-wrapper-checked .es_checkbox4Editor:hover .ant-checkbox-inner {
    /*    background-color: #50c165;
    border-color: #32a547;*/
    background-color: #faab0f;
    border-color: #e29400;
}

/***페이지 Top 버튼***/
.es_pageTop > #eBackTop,
.es_pageTop > #backTop {
    background-color: #7187ff !important;
    border-color: #6076f0 !important;
    border-width: 1px;
    width: 38px;
    height: 38px;
    border-radius: 20px;
    padding: 6px 7px 7px 7px;
    text-align: center;
    position: fixed;
    margin: 24px;
    bottom: 0;
    right: 0;
    visibility: hidden;
    transition: none;
    opacity:0.7;
}
.es_pageTop > .ant-btn .anticon {
    color: white ;
    font-size: 26px;
}
.es_pageTop > #eBackTop:hover,
.es_pageTop > #backTop:hover,
.es_pageTop > #BackTop:hover .anticon,
.es_pageTop > #eBackTop:hover .anticon {
    background-color: #6076f0 !important;
    opacity:1;
}

/* ul li 스타일 */
ul.es_list {
    margin: 2px 0 4px 0;
    padding: 0px;
    margin-left: 10px;
    margin-bottom: 4px;
    list-style: none;
}
 ul.es_list li {
    margin: 0;
    padding: 2px 0;
    list-style: none;
    position: relative;
}
 ul.es_list li:before {
    margin: 0;
    content: "";
    display: inline-block;
    width: 5px;
    height: 5px;
    background-color: #8e909b;
    margin-right:4px;
    border-radius:3px;
    position:absolute;
    top:9px;
    left:-10px
}


/*** 달력 컬렌더 ***/
.eSology .ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner::before {
    border-color: #6076f0;
}
.eSology .ant-picker-dropdown .ant-picker-footer .ant-picker-today-btn {
    color: #5063d1;
}
.eSology .ant-picker-dropdown .ant-picker-footer .ant-picker-today-btn:hover {
    color: #6076f1;
}

/****** Dx Rich 에디터 ******/
/****************************/
.es_DxRichEdit {
    border-radius:6px 6px 0 0;
}
.es_DxRichEdit .nav {
    background-color:#727a9b;
    padding-top:4px;
    border-radius:4px 4px 0 0;
    padding-left:4px;
}
.es_DxRichEdit .nav-tabs .nav-link {
    color: white;
    margin-bottom:0;
}
.es_DxRichEdit .nav-tabs {
    border-bottom: none;
}
.es_DxRichEdit .nav-link.active {
    color: black;
}
.es_DxRichEdit .dxbs-tabs-scrollable:not(.dxbs-tabs-scrollbuttons)>.dxbs-scroll-viewer {
    padding-left:0;
}
.es_DxRichEdit .dxreRibbon .dxbs-tabs .nav-tabs .nav-item .nav-link {
    padding: 0px 16px 4px 16px;
}
.es_DxRichEdit .nav-tabs .nav-link:hover {
    text-decoration:none;
    color:white;
    background-color:#4a5479;
    border-color:transparent;
}
.es_DxRichEdit .nav-tabs .nav-link.active:hover {
    color: inherit;
    background-color: White;
}
.es_DxRichEdit .dxbs-ribbon.border-bottom {
    border-bottom: 1px solid #cacaca !important;
}
.es_DxRichEdit .dxreRibbon .dx-r-toolbar .dx-image,
.es_DxRichEdit .dxreRibbonToolbar.dxbs-toolbar-dropdown .dx-image {
    height:15px;
    width:15px;
}
.es_DxRichEdit .dxreRibbon .dx-r-toolbar .dx-image {
    opacity: 0.6;
}
.es_DxRichEdit .dxreRibbon .dx-r-toolbar .dx-image:hover {
    opacity: 1;
}
.es_DxRichEdit .dxreRibbon .dx-r-toolbar .active .dx-image {
    opacity: 1;
}
.es_DxRichEdit .dx-r-toolbar.dxbs-toolbar.dxbs-ta-nib > .btn-toolbar > .btn-group > :not(:first-child) {
    margin-left: 2px;
}
.es_DxRichEdit .dx-r-toolbar.dxbs-toolbar.dxbs-ta-nib .dx-toolbar-edit .dxbs-combobox input,
.es_DxRichEdit .dxbs-toolbar-dropdown .dx-toolbar-edit .dxbs-combobox input {
    border: 1px solid #e1e1e1;
}

.es_DxRichEdit .form-control.dxbs-input-group-append .btn-secondary {
    background-color: white;
}
.es_DxRichEdit .form-control.dxbs-input-group-append .btn-secondary:hover {
    background-color: #e5e5e5;
}
.es_DxRichEdit .form-control.dxbs-input-group-append .btn-secondary .dx-image {
    color: black;
}
.eSology .dxbs-dropdown .dropdown-item.dxbs-clickable.focused {
    background-color: #576bdf !important;
}
.eSology .dxbs-dropdown .dropdown-item:active {
    background-color: #788eec !important;
}
.es_DxRichEdit .dxreRibbon .dx-r-toolbar {
    padding:4px;
}

/***보고서 작성현황 popup 창 관련 **/
.es_rWritingStatus {
    border-radius: 4px;
    border: 1px solid #e0e0e0;
    background-color: white;
    margin: 2px;
}
.rStatusHeader {
    background-color: #efefef;
    color: #393939;
    border-radius:3px 3px 0 0;
    padding:4px 10px;
    position:relative;
    height:50px;
}
.rStatusHeader > H3 {
    display:inline-block;
    font-size:28px;
    font-weight:200;
    line-height:20px;
    position: absolute;
    left:12px;
    top:14px;
    letter-spacing:0;
}
.rStatusHeader > span {
    display:inline-flex;
    white-space:break-spaces;
    font-size:14px;
    font-weight:600;
    margin-left:38px;
    height:100%;
    align-items:center;
    line-height:18px;
}

.rStatusContents{
    width:200px;
    margin:auto;
    margin-top:0px;
    margin-bottom:22px;
    position:relative;
}
.rStatusContents > img {
    margin-right:10px;
}

.rStatusContents > span {
    display:inline-block;
    width:90px;
    text-align:center;
    font-size:16px;
    font-weight:600;
    vertical-align:middle;
    margin-top:-25px;
}
.rStatusContents > span.wStatus_nowritten {
    color: #a0a0a0;
}
.rStatusContents > span.wStatus_inProgress {
    color: #e38608;
}
.rStatusContents > span.wStatus_complete {
    color: #3b9e50;
}
.rStatus_comment {
    font-size: 12px;
    color: #5c5c5c;
    height: 24px;
    padding: 2px 14px 2px 12px;

}
.rStatus_comment > span {
    padding-left: 18px;
    background-image: url(/images/icon_reportPartStatus_cmd.png);
    background-repeat: no-repeat;
    background-size: 14px 14px;
    background-position-x: 0px;
    background-position-y: 3px;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.rSratusContents_btn {
    border-radius: 16px;
    padding: 2px 10px;
    position: absolute;
    right: 0;
    top: 45px;
    width:118px;
    text-align:center;
}

.eSology .rSratusContents_btn > button.ant-btn {
    border-radius: 16px;
    padding: 2px 10px;
}
.rSratusContents_btn > button.ant-btn .anticon {
    font-size: 14px;
    margin-top: -6px;
    vertical-align: middle;
    margin-right: -4px;
}
.es_rWritingStatusDlg{
    margin-top:10px;
}

/*연구결과추이Dlg Row 추가 관련*/
.eSology .es_borderGrid .dx-gridlayout-root > div.dx-gridlayout-item.es_blankArea {
    padding: 0;
    padding-right:1px;
    border-left-width: 0;
    border-right-width: 0;
}
.eSology .es_borderGrid .dx-gridlayout-root > div.dx-gridlayout-item.es_blankArea_bf {
}
.es_addRowItem .es_blankArea > .ant-btn {
    margin:2px 2px 0px 2px;
    height:32px;
}
.es_addRowItemG + .es_addRowItemG {
    margin-top:-1px;
}
.addItemBtn {
    margin-top:4px;
}
.eSology .addItemBtn.ant-btn > .anticon + span {
    padding-left: 2px;
}
.es_blankArea_bf + .es_blankArea {
    border-right-width: 1px !important;
}

.es_blankArea_bf :not( +.es_blankArea) {
    border-right-width: 1px !important;
}

/*GHS Dlg 구분정보 헤더*/
.es_ghsDlg_group {
    margin-top:12px;
    margin-Bottom:4px;
    margin-left:6px;
}
.es_ghsDlg_group_Header {
    display:flex;
}
.es_ghsDlg_group_Header > label {
    margin-top:2px;
}
.es_ghsDlg_group_Header > input.ant-input {
    font-size:16px;
    font-weight:bold;
    padding:0;
    padding-left:6px;
    border:none;
}
.es_ghsDlg_group_contents {
    display:flex;
}
.es_ghsDlg_group_contents button.ant-btn {
    margin:1px;
    margin-right:0;
}
.es_ghsDlg_group_contents .itemHeader {
    align-self:center;
    min-width:110px;
}

/*GHS Dlg AntList*/
.es_ghs_AntList.ant-list {
    display:unset !important;
    height:unset !important;
}
.es_ghs_AntList.ant-list .ant-spin-container  {
    margin-left: 12px;
    margin-right: 12px;
}
.es_ghs_AntList.ant-list .ant-spin-container .ant-row {
    margin:0px !important;
}
.es_ghs_AntList.ant-list .ant-col {
    padding: 0px !important;
}
.es_ghs_AntList.ant-list .ant-col .ant-list-item {
    margin-bottom:0px;
    padding:4px;
}
.es_ghs_AntList.ant-list .ant-spin-container {
    margin:4px !important;
}
.es_ghs_AntList.ant-list .ant-spin-container .ant-card {
    padding: 2px !important;
    margin: 0px !important;
    border-radius: 3px;
    border:none;
}
.es_ghs_AntList.ant-list .select-item.ant-list-item {
    border-radius: 5px;
    background: #c0c9fd;
}
.es_ghs_AntList.ant-list .select-item.ant-list-item .ant-card {
    background: #7c8dee;
}
.es_ghs_AntList.ant-list .ant-card .ant-card-head {
    background: #ffffff;
    border:1px solid #e7e7e7;
}
.es_ghs_AntList.ant-list .ant-card .ant-card-body {
    background: #f3f3f3;
    border-top:none;
    border:1px solid #e7e7e7;
}
/*리스트메뉴*/
.es_frameInContents .leftListBox {
    background-color: #eeeeee;
    border: solid 1px #e1e1e1;
}
.es_frameInContents .ant-tabs-content {
    display: unset;
}
.leftListBox .listItemHeader {
    background-color: White;
    border-bottom: 1px solid #e6e6e6;
    padding: 5px;
    width: 100%;
}
.leftListBox .listItemHeader .ant-typography {
    font-size: 13px;
    color: #576bdf;
    font-weight: bold;
}
.listItem_breakLine {
    height:10px;
}
.listItem_emptyItem {
    padding: 10px 10px 10px 15px;
    border-bottom: 1px solid #e6e6e6;
    display: inline-block;
    width: 100%;
    color: #848484;
}
.leftListBox .listItemTplt {
    padding: 4px;
    padding-left: 15px;
    width: 100%;
}
.leftListBox .listItemTplt.ItemSelected {
    background-color:#536ac4;
}
.leftListBox .listItemTplt.ItemSelected > span {
    color:white;
}
.leftListBox .ant-list-item {
    border-bottom-width:0;
    padding:0;
}


.es_userComment {
    background-color: #5678da;
    color: white;
    padding: 4px 24px 4px 10px;
    border-radius: 8px 8px 0 0;
    margin-top: 10px;
}
.eSology .es_userComment+.ant-input {
    margin-top:0;
}

/*ant-empty*/
.es_emptyData {
    margin-top:40px;
}
.es_emptyData .ant-empty-description,
.es_emptyData .ant-empty-footer{
    margin:0;
}

/*searchbox 버튼과 인풋혼용시 vertical align 정리*/
.es_searchBox .ant-btn + span >.ant-upload {
    vertical-align:middle;
}

/*DX Tab*/
.es_dxTab .nav-tabs {
    border-bottom: 2px solid #576bdf;
}
.es_dxTab .nav-tabs .nav-link {
    margin-bottom:0px;
    min-width:70px;
    font-weight:bold;
    color: rgba(0, 0, 0, 0.85);
    padding: 6px 20px 4px 20px;
    text-align:center;
    border:2px solid #f1f1f1;
    border-bottom:0;
}
.es_dxTab .nav-tabs .nav-link.active {
    margin-bottom:-2px;
    border:2px solid #576bdf;
    border-bottom:0;
    color: #576bdf;
    padding: 6px 20px;
}
.es_dxTab_contents {
    border: 1px solid #dedede;
    border-top:0;
    padding:12px;
}

/*HazardItem*/
.es_hazardItemBox {
    background-color: #dcdee2;
    padding:20px;
}
.es_hazardItemBox .hazard-item a {
    border:10px solid transparent;
    text-decoration:none;
    font-weight:bold;
    border-radius:100px;
    font-size:17px;
    font-weight:bold;
    text-align:center;
    padding:0;
}
.es_hazardItemBox .hazard-item > a.nav-active {
    border-color:#4d7ff1;
}
.es_hazardItemBox .es_hazardItem_inner {
    border:4px solid white;
    width:130px;
    height:130px;
    border-radius:50%;
    padding-top:48px;
    text-align:center;
    position:relative;
}
.es_hazardItem_inner::before {
    display: inline-block;
    content: "";
    width: 118px;
    height: 118px;
    background: rgb(255,255,255);
    background: linear-gradient(0deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.25) 100%);
    position: absolute;
    top:2px;
    left:2px;
    border-radius:50%;
}

/*위험도 Status ball*/
.es_hazardResultCtrl > a{
    padding:0;
}
.es_hazardResultCtrl .hazardItem {
    border: 3px solid #eaeaea;
    border-radius: 50%;
    width: 24px;
    height: 24px;
}
.es_hazardResultCtrl .hazardItem:hover {
    border: 3px solid #5373fc !important;
}

/*infoTable 자동 줄바꿈 필요시*/
.es_textWrapTable .dx-gridlayout-item .ant-typography {
    white-space: inherit;
}

/*버튼 비활성화*/
.eSology .ant-btn[disabled],
.eSology .ant-pagination-item-link[disabled] {
    opacity: 0.5;
}
.eSology .ant-btn[disabled]:hover {
    border-color: inherit;
    color:inherit;
}

/* ant Table cell에 icon */
.eSology .ant-table-cell > .anticon {
    display: block;
}

.eSology .borderColor {
    border-color: #e1e1e1;
}

/*모달 정의*/
.eSology .ant-modal-body .es_searchBox {
    margin-bottom: 4px;
}

.eSology .ant-modal-body .es_scrollViewer_inFrame {
    height:inherit;
    padding:0;
}


/*컨트롤 read only, disabled*/
.eSology .ant-input:read-only:hover,
.eSology .ant-input:read-only:focus,
.eSology textarea:read-only:hover,
.eSology textarea:read-only:focus,
.eSology .ant-input:read-only,
.eSology textarea:read-only {
    cursor: default;
    border: 1px solid #ececec !important;
/*    background: white;*/
    box-shadow: none !important;
}

.eSology .ant-select.ant-select-disabled .ant-select-selector:hover,
.eSology .ant-select.ant-select-disabled .ant-select-selector {
    border-color: #d9d9d9;
}
.eSology .ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector,
.eSology .ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector input,
.eSology .ant-select-disabled .ant-select-arrow {
    cursor: default;
}

.icon_inDataTable {
    color: #4291ea;
    font-size: 20px;
}

.noBorderBox {
    padding: 0 !important;
    border: none !important;
}
.es_noWrap {
    white-space: nowrap;
}
.es_smallText {
    font-size:9px;
}
.eSology pre {
    font-size: 14px;
    font-family: Malgun Gothic, sans-serif;
}

.es_ellipsis {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.eSology .headerCardName .ant-typography {
    letter-spacing: initial;
}

/*Error Page */

.errorPage {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: -1px;
}
.errorContent {
    width: 720px;
    margin: auto;
    margin-top: 180px;
    text-align:center;
}
.errorContent h2 {
    font-size: 32px;
    letter-spacing:-.2ex;
    margin-block-end: 0.5em;
}
.errorPage .errorMsg {
    width: auto;
    max-width: 700px;
    min-width: 480px;
    border-top: 1px solid #d7d7d7;
    word-break: break-word;
    padding-top: 10px;
    margin-bottom: 34px;
}
.errorPage .linkBtn {
    border: 1px solid #838383;
    padding: 6px 32px;
    background-color: #8b8b8b;
    border-radius: 18px;
    color: white;
    text-decoration: none;
}
.errorPage .linkBtn:hover {
    border: 1px solid #3470c2;
    background-color: #4588e3;
    color: white;
    text-decoration: none;
}




