/* ============================================================================
   HTML 기본 리셋 스타일 - common_v3.css에서 관리
   (iframe, html/body, img, header/footer/nav, h1-h6, a, ul/ol/li,
    fieldset, legend/caption, table 등)
   ============================================================================ */

input,
button,
textarea,
select {
    font-family: 'Noto Sans KR', sans-serif;
}

/* i 태그는 아이콘용이므로 font-family 초기화 */
i {
    font-family: initial;
    font-style: normal;
}

/* FullCalendar 아이콘 폰트 보호 */
.fc-icon,
i.fc-icon,
span.fc-icon {
    font-family: 'fcicons' !important;
    font-style: normal !important;
}

button {
    cursor: pointer;
    margin: 0;
    height: 34px;
    padding: 0 17px;
    margin-left: 8px;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 500;
    text-align: center;
    text-align: center;
    letter-spacing: 0;
    vertical-align: middle;
    background: none;
    border: none;
    overflow: visible;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /* font-family: 'Noto Sans KR', sans-serif; */
}

button:focus,
button:active {
    border: 0;
    outline: 0;
    -webkit-appearance: none;
}

input[type=text],
input[type=password],
input[type=number],
input[type=email],
input[type=date],
input[type=tel],
input[type=search],
input[type=time] {
    width: 100%;
    height: 36px;
    padding: 11px 10px 12px;
    font-weight: 500;
    color: #666;
    vertical-align: top;
    border: 1px solid var(--grid-border-color);
    border-radius: 4px;
    background-color: #fff;
    box-shadow: none;
    -webkit-border: 1px solid var(--grid-border-color);
    -webkit-outline: none !important;
    -webkit-appearance: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

input:focus,
select:focus,
input[type=checkbox]:checked {
    outline: none !important;
}

input[type=text]:focus,
input[type=password]:focus,
input[type=number]:focus,
input[type=email]:focus,
input[type=date]:focus,
input[type=tel]:focus,
input[type=search]:focus {
    border: 1px solid var(--focus-outline);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

input[type=text]:disabled,
input[type=password]:disabled,
input[type=number]:disabled,
input[type=email]:disabled,
input[type=date]:disabled,
input[type=tel]:disabled,
input[type=url]:disabled,
input[type=email]:disabled,
input[type=search]:disabled,
textarea:disabled {
    cursor: not-allowed;
    color: #666;
    background-color: #F6F6F6;
    border: 1px solid var(--grid-border-color);
}

input[type=text]:read-only,
input[type=password]:read-only,
input[type=number]:read-only,
input[type=email]:read-only,
input[type=date]:read-only,
input[type=tel]:read-only,
input[type=url]:read-only,
input[type=email]:read-only,
input[type=search]:read-only,
textarea:read-only {
    cursor: not-allowed;
    font-weight: 500;
    color: #666;
    background-color: #F6F6F6;
    border: 1px solid var(--grid-border-color);
    outline: none;
}

.readonly {
    cursor: not-allowed;
    color: #666;
    background-color: #F6F6F6;
    border: 1px solid var(--grid-border-color);
}

input[type=checkbox],
input[type=radio] {
    margin: 0;
    vertical-align: middle;
    border: 0;
    background-color: #fff;
    box-shadow: none;
    -webkit-appearance: none;
    cursor: pointer;
}

input[type=radio]+label,
input[type=checkbox]+label {
    display: inline-block;
    font-size: 12px;
    vertical-align: top;
    cursor: pointer;
}

input[type=radio]:disabled,
input[type=checkbox]:disabled,
input[type=radio]:disabled+label,
input[type=checkbox]:disabled+label {
    /* font-family: 'Noto Sans KR', sans-serif; */
}

/*2021-02-02 radio 수정 ver2*/
input[type=radio] {
    width: 16px;
    height: 16px;
    border: 1px solid var(--grid-border-color);
    border-radius: 50%;
    background-color: #fff;
}

input[type=radio]:checked {
    border: 1px solid var(--grid-border-color);
    background-image: url('/resources/images/radio_check_v3.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 10px;
}

input[type=radio]:disabled {
    border: 0;
    background-image: url('/resources/images/radio_disabled_v2.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100%;
}

input[type=radio]:checked:disabled {
    border: 0;
    background-image: url('/resources/images/radio_disabled_check_v2.png');
    background-size: 100%;
}

/*2021-02-02 checkbox 수정 ver2*/
input[type=checkbox] {
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 1px solid var(--grid-border-color);
    border-radius: 4px;
    background-color: #fff;
}

input[type=checkbox]:checked {
    border: 1px solid #43B8A1;
    background-image: url('/resources/images/checked.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 20px;
}

input[type=checkbox]:disabled {
    border: 1px solid var(--grid-border-color);
    background-color: #EEEEEE;
    cursor: not-allowed;
    border-radius: 4px;
}

.check_disable input[type="checkbox"]:not(:checked) {
    border: 1px solid var(--grid-border-color);
    background-color: #EEEEEE;
    cursor: not-allowed;
    border-radius: 4px;
}

.check_disable input[type=checkbox]:checked,
input[type=checkbox]:checked:disabled {
    border: 0;
    background-image: url('/resources/images/checked_readonly.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100%;
    cursor: not-allowed;
    border-radius: 4px;
}


input[type=checkbox].small {
    width: 12px;
    height: 12px;
    border: 1px solid #bbbbbb;
    border-radius: 3px;
    background-color: #fff;
    display: inline-block;
}

input[type=checkbox].toggle_switch {
    width: 41px;
    height: 20px;
    border-radius: 20px;
    border: 2px solid #b8b8b8;
    background-color: #b8b8b8;
    text-align: right;
}

input[type=checkbox].toggle_switch::before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    vertical-align: middle;
    background-color: #fff;
    border-radius: 50%;
}

input[type=checkbox].toggle_switch:checked {
    border-radius: 20px;
    border: 2px solid #409eff;
    background-color: #409eff;
    text-align: left;
    background-image: none;
}

input[type=checkbox].toggle_switch:checked::before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    vertical-align: middle;
    background-color: #fff;
    border-radius: 50%;
}

input[type=file] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

input[type=text]:only-child,
input[type=password]:only-child,
input[type=search]:only-child,
input[type=number]:only-child,
input[type=email]:only-child,
input[type=tel]:only-child {
    width: 100%;
}

textarea {
    width: 100%;
    min-height: 4.167rem;
    margin: 0.208rem 0;
    padding: 0.3rem 0.417rem;
    font-weight: 400;
    font-size: 0.868rem;
    color: #333;
    vertical-align: middle;
    /*border: 1px solid #ccc;*/
    border: 1px solid var(--grid-border-color);
    background-color: #fff;
    box-shadow: none;
    outline: none;
    -webkit-appearance: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

textarea:focus {
    outline: none;
    border-color: var(--focus-outline);
}

/* ============================================================================
   HTML 추가 리셋 스타일 - common_v3.css에서 관리
   (hr, article/aside/etc, address, sub, strong, img, input spinners,
    input[readonly/disabled], select, placeholder, .box,
    skip navigation, .valignT/M/B, .positionR/A, .show/.hide/.desc, .w100p)
   ============================================================================ */

.dispaly_ib {
    display: inline-block !important;
}

.h100 {
    height: 100% !important;
}

/* ============================================================================
   margin/padding/background 유틸리티 클래스 - common_v3.css에서 관리
   (.mgAuto, .mg0~100, .mgt*, .mgr*, .mgb*, .mgl*,
    .pd0~100, .pdt*, .pdr*, .pdb*, .pdl*, .pd24_32, .back_gray)
   ============================================================================ */


/*border*/
.border {
    border: 1px solid #dfdfdf;
}

.bordera {
    border: 1px solid #707070;
}

.bordert {
    border: none !important;
    border-top: 1px solid #707070 !important;
}

.borderr {
    border: none !important;
    border-right: 1px solid #707070 !important;
}

.borderb {
    border: none !important;
    border-bottom: 1px solid #707070 !important;
}

.borderl {
    border: none !important;
    border-left: 1px solid #707070 !important;
}

.border0 {
    border: none !important;
}


.contents_wrap {
    width: 100%;
    min-width: 1000px;
    max-width: 1920px;
    /*height: 100%;*/
    margin: 0 auto 0;
    position: relative;
    padding: 30px 32px 40px;
    font-size: 14px;
    container-type: inline-size;
    container-name: contents;
}

.contents_wrap::after {
    content: '';
    display: block;
    clear: both;
}

/*.contents_header>.contents_header_top*/
.contents_header {
    display: inline-block;
    width: 100%;
    max-width: 1920px;
    min-width: 1200px;
    height: auto;
    min-height: 140px;
    padding: 20px 32px;
    margin-bottom: 0px;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border: 1px solid #E7E7E9;
    /* 	overflow-y: scroll; */
    /* 	-ms-overflow-style: none; */
    margin-bottom: 21px;
}

/* .contents_header::-webkit-scrollbar{display:none;} */
.contents_header_top {
    position: relative;
    width: 100%;
    text-align: right;
    max-width: 1956px;
    /*min-width: 1360px;*/
    align-items: center;
    margin-bottom: 10px;
}

.contents_header_top .star_icon {
    display: inline-block;
    width: 20px;
    height: 30px;
    float: left;
    background-image: url(/resources/images/star_off.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 17px;
    cursor: pointer;
}

.contents_header_top .star_icon.on {
    background-image: url(/resources/images/star_on.png);
}

.contents_header_top .list_title {
    display: inline-block;
    height: 29px;
    line-height: 35px;
    letter-spacing: 1px;
    color: #444;
    font-weight: 500;
    font-size: 16px;
    padding-left: 8px;
    float: left;
}

.contents_header_top .list_sub_title {
    position: absolute;
    bottom: 4px;
    left: 2px;
    display: inline-block;
    letter-spacing: 1px;
    color: #74788d;
    font-weight: 400;
    font-size: 14px;
}

.contents_header_top .fade_btn {
    position: absolute;
    top: 135px;
    right: -8px;
    display: inline-block;
    width: 20px;
    height: 30px;
    background-image: url(/resources/images/fade_btn_off.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 12px;
}

.contents_header_top .fade_btn.on {
    background-image: url(/resources/images/fade_btn_on.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 12px;
}

.content_header_inner {
    display: inline-block;
    width: 100%;
    margin: 0 auto;
    vertical-align: top;
}

/* .content_header_inner div:nth-child(3) { */
/*   margin-right: 15 !important; */
/* } */
/* .content_header_inner div:nth-child(6n) { */
/*   margin-right: 0 !important; */
/* } */

.content_header_inner::after {
    content: '';
    display: block;
    clear: both;
}

/* .contents_header .search_btn{position:absolute;top:10px;right:10px;width:30px;color:#333;font-size:23px;}
.contents_header .search_btn:hover{color:#3659d1;} */
.data_btn {
    width: 100px;
    position: absolute;
    left: 0;
    bottom: 0;
    display: inline-block;
    padding: 0 10px;
    height: 30px;
    border-radius: 3px;
    margin-left: 5px;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 1px;
    border: 1px solid #5867dd;
    background-color: #5867dd;
    color: #fff;
}

.contents_header .data_btn:hover {
    border: 1px solid #4f5cc6;
    background-color: #4f5cc6;
    color: #fff;
}

.contents_area {
    display: inline-block;
    width: 100%;
    max-width: 1920px;
    min-width: 1200px;
    height: auto;
    min-height: 500px;
    border: none !important;
}

.ea_contents_area {
    display: inline-block;
    width: 100%;
    min-width: 1200px;
    height: auto;
    min-height: 500px;
    border: none !important;
}

.contents_area.content_document,
.contents_area:has(> .content.ea_bt_wrap) {
    max-width: 1360px;
    margin: 0 auto;
}

/*.contents_area::after {
	content: '';
	display: block;
	clear: both;
}*/

.contents_area.half_h_contents {
    /* 	height: 662px; */
    /*	height: 654px;*/
    /*height: 648px;*/
    /*height: calc(100% - 123px - 43px);*/
    height: calc(100vh - 238px); /* 헤더 + 검색영역 + 여백 */
    min-height: 500px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* 좌우 분할 레이아웃 - flex-XX 또는 grid_inner_wrap_left 포함 시 자동 적용 */
.contents_area.half_h_contents:has(> [class*="flex-"]),
.contents_area.half_h_contents:has(> .grid_inner_wrap_left) {
    flex-direction: row;
    gap: 10px;
}

/* 상하 분할 레이아웃 - grid_inner_wrap 여러 개일 때 gap 자동 적용 */
.contents_area.half_h_contents:has(> [class*="grid_inner_wrap"] + [class*="grid_inner_wrap"]) {
    row-gap: 10px !important;
}

/* half_h_contents 내 grid_inner_wrap 여러 개일 때만 margin 제거 (gap으로 대체) */
.contents_area.half_h_contents:has(> [class*="grid_inner_wrap"] + [class*="grid_inner_wrap"]) > [class*="grid_inner_wrap"] {
    margin-bottom: 0 !important;
}

/* half_h_contents - inner_tab_wrap2 내부 flex 체인 */
.contents_area.half_h_contents .inner_tab_wrap2 {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.contents_area.half_h_contents .inner_tab_wrap2 > .scroll_wrap {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
}

.contents_area.half_h_contents .scroll_wrap > .grid_wrap {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
}

.contents_area.half_h_contents .grid_wrap > .tab-nav-wrapper {
    flex: 0 0 auto;
}

.contents_area.half_h_contents .grid_wrap > .inner_panel {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
}

.contents_area.half_h_contents .inner_panel > [id$="Grid"] {
    flex: 1 1 auto;
    height: 100% !important;
}

.contents_area.min_half_h_contents {
    height: unset;
    /*min-height: calc(100vh - 72px - 43px - 21px - 102px);*/ /* calc 제거 */
}

.contents_area.double_h_contents {
    /*height: calc(100% - 205px - 43px);*/
    /*height: calc(100vh - 72px - 43px - 21px - 184px);*/ /* calc 제거 */
    min-height: 480px;
}

.contents_area_no_head {
    /*height: calc(100vh - 70px - 45px);*/ /* calc 제거 */
    min-height: 600px;
}

.contents_area.only_contents {
    /*height:779px;*/
    /*height: calc(100% - 43px);*/
    /*height: calc(100vh - 70px - 45px);*/ /* calc 제거 */
    min-height: 600px;
}

.contents_area.expend_contents {
    height: 100%;
    padding-bottom: 40px;
}

.contents_area2 {
    width: 100%;
    height: calc(100% - 175px);
    margin-top: 16px;
    border: none !important;
}

contents_area2::after {
    content: '';
    display: block;
    clear: both;
}

.contents_area.small {
    height: calc(100% - 287px) !important;
}

.contents_area.visible {
    box-shadow: 0 3px 3px rgba(51, 51, 51, .35);
    background-color: #fff;
    padding: 10px;
    padding-bottom: 10px;
    border-radius: 5px;
}

.content_area_expend {
    height: calc(100% - 8px);
    /* 	overflow-y: scroll; */
    scroll-behavior: smooth;
    -ms-overflow-style: none;
}

.visible_small_top {
    box-shadow: 0 3px 3px rgba(51, 51, 51, .35);
    background-color: #fff;
    padding: 10px;
    border-radius: 5px;
    border: 1px solid #dbdbdb;
}

.visible_small_bottom {
    box-shadow: 0 3px 3px rgba(51, 51, 51, .35);
    background-color: #fff;
    padding: 10px;
    border-radius: 5px;
    border: 1px solid #dbdbdb;
    margin-top: 15px;
}

.grid_inner_wrap {
    display: inline-block;
    width: 100%;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    vertical-align: top;
}

.grid_inner_wrap0 {
    display: inline-block;
    width: 100%;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    vertical-align: top;
    /*float: left;*/
}

.grid_inner_wrap.half,
.grid_inner_wrap0.half {
    height: calc(50% - 10px);
}

.grid_inner_wrap.both,
.grid_inner_wrap0.both {
    width: calc(50% - 10px);
}

.grid_inner_wrap1 {
    /* 	height: 49.5%; */
    /* 	box-shadow: 0 3px 3px rgba(51, 51, 51, .1); */
    /* 	background-color: #fff; */
    /* 	padding: 10px; */
    /* 	border-radius: 5px; */
    /* 	border: 1px solid #dbdbdb; */
    /* 	float: left; */
    display: inline-block;
    width: 100%;
    height: 266px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
}

.grid_inner_wrap3 {
    display: inline-block;
    width: 100%;
    /* 	height: 321px; */
    /*height: ;*/
    margin-bottom: 20px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    float: left;
    height: 50%;
}

.grid_inner_wrap_f {
    display: inline-block;
    width: 100%;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    background-color: #fff;
    border: 1px solid #E7E7E9;
    border-radius: 4px;
    padding: 20px 32px;
}

.grid_inner_wrap_fw50 {
    display: inline-block;
    width: calc(50% - 10px) !important;
    height: 320px;
    margin-bottom: 21px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    float: left;
}

/* 좌우 분할 레이아웃 - flex + gap-10 */
.contents_area.half_h_contents:has(.grid_inner_wrap_left) {
    flex-direction: row;
    gap: 10px;
}

.grid_inner_wrap_left {
    display: inline-block;
    width: calc(20% - 5px);
    height: 100%;
    box-shadow: none;
    float: left;
}

.grid_inner_wrap_right {
    display: inline-block;
    width: calc(80% - 5px);
    height: 100%;
    box-shadow: none;
    float: right;
}


.ea_left_grid {
    width: calc(100% - 380px);
    margin-top: 20px;
    margin-right: 20px;
}

.grid_inner_wrap_ea {
    display: inline-block;
    width: calc(100% - 380px);
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    background-color: #fff;
    border: 1px solid #E7E7E9;
    border-radius: 4px;
    padding: 20px 32px;
    margin-bottom: 20px;
}

.form_object {
    position: relative;
    min-height: 54px;
    display: inline-block;
    cursor: pointer;
    text-align: left;
    vertical-align: top;
    width: 100%;
}

/* form_object.x_full 내 버튼 영역 세로 중앙 정렬 */
.form_object.x_full #div_btn,
.form_object.x_full [id$="_btn"] {
    display: flex;
    align-items: center;
    height: 100%;
    min-height: 54px;
}

/* ea 전자결재 폼용 (기존 float 레이아웃) */
.form_object.ea_form {
    width: calc(25% - 11.25px);
}

/* 그리드 레이아웃 사용 시 ea_form 처리 */
.grid_layout .form_object.ea_form {
    width: 100%;
    grid-column: span 3;
}

.form_object.ea_form_double {
    width: calc(50% - 7.5px);
}

.form_object.half_form {
    width: calc(8.44% - 12.5px);
}

/*.form_object.ea_form:nth-of-type(4){
	margin-right: 0;
}*/

.form_object.radio_form {
    min-height: 20px;
    margin-top: 23px;
    margin-bottom: 23px;
}

.form_object.radio_form2 {
    min-height: 20px;
    margin-bottom: 48px;
}

.form_object.textarea {
    min-height: 110px;
    height: auto;
    /*outline-color: #5CCE75;*/
}

.form_object.textarea2 {
    min-height: 210px;
    height: auto;
}

.form_object.grid {
    height: 220px;
}

.form_object.grid380 {
    height: 380px;
}

.form_object.z_index3000 {
    z-index: 3000;
}

.form_object.fade_form {
    display: none;
}

.form_object.wide {
    height: 130px;
    padding-top: 35px;
    text-align: center;
}

.form_object.preview {
    height: 130px;
    padding-top: 35px;
    text-align: center;
}

.form_object.preview img {
    display: inline-block;
    width: 50%;
    height: 110px;
}

.form_object::after {
    content: '';
    display: block;
    clear: both;
}

.form_object.form_object_from::after {
    content: '~';
    position: absolute;
    top: 55%;
    right: -10px;
    font-size: 13px;
    color: #333;
}

.form_object .label_inp0 {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    float: left;
    width: 100%;
    height: 20px;
    line-height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    color: #646c9a;
}

.form_object .label_inp1 {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    float: left;
    width: 50%;
    height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    color: #646c9a;
}

.form_object .label_inp2 {
    position: absolute;
    top: 0;
    left: 52%;
    display: inline-block;
    float: left;
    width: 50%;
    height: 20px;
    line-height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    color: #646c9a;
}

.form_object .label_inp1.line {
    top: -5px;
}

.form_object .label_checkbox0 {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    float: left;
    width: 100%;
    height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    color: #646c9a;
}

.form_object .label_checkbox1 {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    float: left;
    width: 100%;
    height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    color: #646c9a;
}

.form_object .label_checkbox2 {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    float: left;
    width: 50%;
    height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    color: #646c9a;
}

.form_object .label_checkbox3 {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    float: left;
    width: 50%;
    height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    color: #646c9a;
}

.form_object .label_checkbox4 {
    float: left;
    display: inline-block;
    width: 25%;
    height: 20px;
    line-height: 20px;
    font-size: 13px;
    font-weight: 500;
    text-align: left;
;
    color: #646c9a;
}

.form_object .label_checkbox5 {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    float: left;
    width: 25%;
    height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    color: #646c9a;
}

.form_object .label_checkbox2.line {
    top: -5px;
}

.form_object .label_checkbox3.line {
    top: -5px;
}

/* .form_object .label_checkbox1{position:absolute;bottom:7px;right:0;float:left;display:inline-block;width:100%;height:20px;line-height:20px;font-size:13px;font-weight:400;text-align:left;color:#646c9a;} */
/* .form_object .label_checkbox2{position:absolute;bottom:7px;left:0;float:left;display:inline-block;width:48%;height:20px;line-height:20px;font-size:13px;font-weight:400;text-align:left;color:#646c9a;} */
/* .form_object .label_checkbox3{position:absolute;bottom:7px;right:0;float:left;display:inline-block;width:48%;height:20px;line-height:20px;font-size:13px;font-weight:400;text-align:left;color:#646c9a;} */
/* .form_object .label_checkbox4{float:left;display:inline-block;height:20px;line-height:20px;font-size:13px;font-weight:400;text-align:left;margin-right:10px;margin-top:20px;color:#646c9a;} */
/* .form_object .label_checkbox5{float:left;display:inline-block;width:23.7%;height:20px;line-height:20px;font-size:13px;font-weight:400;text-align:left;margin-right:10px;margin-top:20px;color:#646c9a;} */
/* .form_object .label_checkbox6{float:right;display:inline-block;width:23.7%;height:20px;line-height:20px;font-size:13px;font-weight:400;text-align:left;margin-top:20px;color:#646c9a;} */
.form_object .inner_label {
    padding-right: 5px;
}

.form_object .label_radio0 {
    float: left;
    display: inline-block;
    height: 20px;
    /* 	line-height: 20px; */
    /* 	font-size: 13px; */
    /* 	font-weight: 500; */
    /* 	color: #646c9a; */
    text-align: left;
    margin-right: 20px;
    margin-top: 32px;
    font-size: 14px;
    font-weight: 400;
    color: #828B97;
}

/* .form_object .label_radio0 span { */
/* 	margin-left: 3px; */
/* } */

/* input:focus + label{color:#0153a7;} */
/* select:focus + label{color:#0153a7;} */
.form_object label.required::after {
    content: '필수입력';
    position: absolute;
    top: 5px;
    right: 5px;
    opacity: 0;
    font-size: 10px;
    color: #bbb;
    font-weight: 300;
}

input:focus+label.required::after {
    opacity: 1;
    top: 0;
}

select:focus+label.required::after {
    opacity: 1;
    top: 0;
}

label.label_checkbox0.required::after {
    opacity: 1;
    top: 0;
}

label.label_checkbox1.required::after {
    opacity: 1;
    top: 0;
}

label.label_checkbox2.required::after {
    opacity: 1;
    top: 0;
}

label.label_checkbox3.required::after {
    opacity: 1;
    top: 0;
}

label.label_checkbox4.required::after {
    opacity: 1;
    top: 0;
}

/*2021-01-15 인풋 일반 수정 ver2*/
.form_object .label_inp0_v2 {
    position: absolute;
    top: 0;
    left: 0;
    /*display: inline-block;*/
    /*float: left;*/
    /*width: 100%;*/
    height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: var(--label-font-weight);
    /*color: #828B97;*/
    color: var(--form-label);
}

.form_object .label_inp1_v2 {
    position: absolute;
    top: 0;
    left: 0;
    /*display: inline-block;*/
    /*float: left;*/
    /*width: 100%;*/
    /*height: 20px;*/
    /*line-height: 20px;*/
    text-align: left;
    font-size: 13px;
    font-weight: var(--label-font-weight);
    /*color: #222222;*/
    color: var(--form-label);
}

.form_object .label_inp2_v2 {
    position: absolute;
    top: 0;
    left: 52%;
    /*display: inline-block;*/
    /*float: left;*/
    height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: var(--label-font-weight);
    /*color: #828B97;*/
    color: var(--form-label);
}

.form_object .label_inp3_v2 {
    position: absolute;
    top: 0;
    left: 0;
    /*display: inline-block;*/
    /*float: left;*/
    width: 50%;
    height: 20px;
    line-height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: var(--label-font-weight);
    /*color: #222222;*/
    color: var(--form-label);
}

.form_object .blue,
.grid_title.blue {
    /* 	color: #1c77e0; */
    color: var(--required-label);
}

.form_object .red {
    color: #ff0000;
}

.form_object .label_inp3_v2.line {
    top: -5px;
    line-height: 100%;
}

.form_object .label_checkbox0_v2 {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    float: left;
    width: 100%;
    height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    /* 	color: #222222; */
    color: #828B97;
}

.form_object .label_checkbox1_v2 {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    float: left;
    width: 100%;
    height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    color: #222222;
}

.form_object .label_checkbox2_v2 {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    float: left;
    width: 50%;
    height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    color: #828B97;
}

.form_object .label_checkbox3_v2 {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    float: left;
    width: 50%;
    height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    color: #828B97;
}

.form_object .label_checkbox4_v2 {
    float: left;
    display: inline-block;
    width: 25%;
    height: 20px;
    line-height: 20px;
    font-size: 13px;
    font-weight: 500;
    text-align: left;
;
    color: #222222;
}

.form_object .label_checkbox5_v2 {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    float: left;
    width: 25%;
    height: 20px;
    line-height: 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    /*color: #222222;*/
    color: #828B97;
}

.form_object .input_from {
    position: absolute;
    bottom: 0;
    left: 48%;
    display: inline-block;
    width: 4%;
    height: 27px;
    line-height: 27px;
    font-size: 13px;
    color: #333;
}

.form_object .form_select0 {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 27px;
    border: none;
    outline: none;
    border: 1px solid #e2e5ec;
    color: #333;
    font-size: 13px;
    background-image: url(/resources/images/svg/select_off.svg);
    background-repeat: no-repeat;
    background-position: 97% center;
    background-size: 9px;
}

.form_object .form_select0:focus {
    background-image: url(/resources/images/svg/select_on.svg);
    color: #333;
}

.form_object .form_select1 {
    position: absolute;
    bottom: 0;
    right: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 27px;
    border: none;
    outline: none;
    border: 1px solid #e2e5ec;
    color: #333;
    font-size: 13px;
    background-image: url(/resources/images/svg/select_off.svg);
    background-repeat: no-repeat;
    background-position: 97% center;
    background-size: 9px;
}

.form_object .form_select1:focus {
    background-image: url(/resources/images/svg/select_on.svg);
    color: #333;
}

/*2021-01-26 selectbox 수정 ver2*/
.select_box {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    border: none;
    outline: none;
}

.select_box.readonly .select_btn {
    background-color: #f5f6f8;
    border: 1px solid #e3e5ea;
    color: #888888;
    background-image: url(/resources/images/select_off_v2R.png);
    cursor: not-allowed;
}

.select_box.readonly .select_drop {
    position: absolute;
    top: -999999999999999999999999999999999999px;
    left: -999999999999999999999999999999999999px;
}

.select_box1.readonly .select_btn {
    background-color: #f5f6f8;
    border: 1px solid #e3e5ea;
    color: #888888;
    background-image: url(/resources/images/select_off_v2R.png);
    cursor: not-allowed;
}

.select_box1.readonly .select_drop {
    position: absolute;
    top: -999999999999999999999999999999999999px;
    left: -999999999999999999999999999999999999px;
}

.select_btn {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 27px;
    line-height: 27px;
    padding-left: 12px;
    padding-right: 12px;
    text-align: left;
    border: none;
    outline: none;
    border: 1px solid #e3e5ea;
    color: #333;
    font-size: 13px;
    background-image: url(/resources/images/select_off_v2.png);
    background-repeat: no-repeat;
    background-position: 97% center;
    background-size: 5px;
    border-radius: 3px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.select_btn.on {
    border: 2px solid #0170fa;
    background-image: url(/resources/images/select_on_v2.png);
}

.select_drop {
    position: absolute;
    top: 3px;
    left: 0;
    z-index: 15000;
    display: none;
    width: 100%;
    max-height: 170px;
    min-height: 50px;
    overflow-y: scroll;
    padding: 15px 0;
    border: 1px solid #ebecf0;
    border-radius: 3px;
    background-color: #fff;
}

.select_drop .autoInput {
    width: 80% !important;
    margin-left: 30px;
    padding: 0 5px;
    border: 1px solid #e3e5ea;
    font-size: 13px;
    text-align: left;
    border-radius: 3px;
}

.select_option {
    display: inline-block;
    width: 100%;
    height: 30px;
    line-height: 30px;
    padding: 0 30px;
    font-size: 13px;
}

.select_option:hover {
    background-color: #ebecf0;
}

.form_object .select_box1 {
    position: absolute;
    bottom: 0;
    right: 0;
    float: left;
    display: inline-block;
    width: 100%;
    border: none;
    outline: none;
}

.form_object .select_box1:focus {
    background-image: url(/resources/images/svg/select_on_v2.svg);
    color: #333;
    border: 2px solid #0170fa;
}

.form_object .form_file0 {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 27px;
    line-height: 100px;
    overflow: hidden;
    color: transparent;
    font-size: 13px;
    border: none;
    border: 1px solid #e2e5ec;
    background-image: url(/resources/images/file_btn3.png);
    background-repeat: no-repeat;
    background-position: 98% 50%;
    background-size: 11px;
    text-align: left;
}

.form_object .form_file0:focus {
    color: #333;
}

.form_object .form_file1 {
    position: absolute;
    bottom: 0;
    right: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 27px;
    line-height: 100px;
    overflow: hidden;
    color: transparent;
    font-size: 13px;
    border: none;
    border: 1px solid #e2e5ec;
    background-image: url(/resources/images/file_btn3.png);
    background-repeat: no-repeat;
    background-position: 98% 50%;
    background-size: 11px;
    text-align: left;
}

.form_object .form_file1:focus {
    color: #333;
}

.form_object .form_file3 {
    position: absolute;
    bottom: 7px;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 100px;
    line-height: 300px;
    overflow: hidden;
    color: transparent;
    font-size: 13px;
    border: none;
    border: 1px solid #e2e5ec;
    background-image: url(/resources/images/file_btn3.png);
    background-repeat: no-repeat;
    background-position: 98% 98%;
    background-size: 11px;
    text-align: left;
}

.form_object .form_date0 {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 27px;
    margin: 0;
    padding: 0;
    padding-left: 5px;
    overflow: hidden;
    color: #333;
    font-size: 13px;
    border: none;
    border: 1px solid #e2e5ec;
    background-image: url(/resources/images/date_btn3.png);
    background-repeat: no-repeat;
    background-position: 98% 50%;
    background-size: 13px;
}

.form_object .form_date1 {
    position: absolute;
    bottom: 0;
    right: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 27px;
    margin: 0;
    padding: 0;
    padding-left: 5px;
    overflow: hidden;
    color: #333;
    font-size: 13px;
    border: none;
    border: 1px solid #e2e5ec;
    background-image: url(/resources/images/date_btn3.png);
    background-repeat: no-repeat;
    background-position: 98% 50%;
    background-size: 13px;
}

.form_object .form_pop0 {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 27px;
    overflow: hidden;
    font-size: 13px;
    border: none;
    border: 1px solid #e2e5ec;
    background-image: url(/resources/images/svg/pop_btn.svg);
    background-repeat: no-repeat;
    background-position: 98% 50%;
    background-size: 13px;
    text-align: left;
}

.form_object .form_pop0:focus {
    color: #333;
}

.form_object .form_pop1 {
    position: absolute;
    bottom: 0;
    right: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 27px;
    line-height: 100px;
    overflow: hidden;
    font-size: 13px;
    border: none;
    border: 1px solid #e2e5ec;
    background-image: url(/resources/images/svg/pop_btn.svg);
    background-repeat: no-repeat;
    background-position: 98% 50%;
    background-size: 13px;
    text-align: left;
}

.form_object .form_pop:focus {
    color: #333;
}

.form_object .form_pop3 {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 120px;
    line-height: 300px;
    overflow: hidden;
    font-size: 13px;
    border: none;
    border: 1px solid #e2e5ec;
    background-image: url(/resources/images/svg/pop_btn.svg);
    background-repeat: no-repeat;
    background-position: 98% 50%;
    background-size: 13px;
    text-align: left;
}

.form_object .form_pop4 {
    padding-right: 27px;
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 36px;
    line-height: 100px;
    overflow: hidden;
    font-size: 13px;
    border: none;
    border: 1px solid var(--grid-border-color);
}

.form_object input[data-pop="true"] {
    text-overflow: ellipsis;
    padding-right: 25px;
}

.form_object .form_popup_btn {
    display: inline-block;
    wdith: 27px;
    height: 27px;
    position: absolute;
    bottom: 0;
    right: 1px;
    background-image: url(/resources/images/svg/pop_btn.svg);
    background-repeat: no-repeat;
    background-position: 98% 50%;
    background-size: 13px;
}

.form_object .form_popup_btn2 {
    display: inline-block;
    wdith: 27px;
    height: 27px;
    position: absolute;
    bottom: 0;
    right: 1px;  /* 기본값: 오른쪽에 붙음 */
    background-image: url(/resources/images/svg/pop_btn.svg);
    background-repeat: no-repeat;
    background-position: 98% 50%;
    background-size: 13px;
}

/* fw50이 있을 때만 왼쪽 입력창(50% 위치)에 붙음 */
.form_object:has(.fw50) .form_popup_btn2 {
    right: calc(48% + 13px);
}

.form_object .form_check0 {
    position: absolute;
    bottom: 4.5px;
    left: 0;
    float: left;
    display: inline-block;
}

.form_object .form_check1 {
    position: absolute;
    bottom: 4.5px;
    left: 25%;
    float: left;
    display: inline-block;
}

.form_object .form_check2 {
    position: absolute;
    bottom: 4.5px;
    left: 50%;
    float: left;
    display: inline-block;
}

.form_object .form_check3 {
    position: absolute;
    bottom: 4.5px;
    left: 75%;
    float: left;
    display: inline-block;
}

.form_object .form_radio0 {
    margin-top: 32px;
    float: left;
    display: inline-block;
    width: 16px;
    height: 16px;
    border: none;
    outline: none;
    border: 1px solid #e2e5ec;
    font-size: 13px;
    text-align: left;
    margin-right: 8px;
}

.form_object .form_radio1 {
    margin-top: 32px;
    float: left;
    display: inline-block;
    width: 16px;
    height: 16px;
    border: none;
    outline: none;
    border: 1px solid #e2e5ec;
    font-size: 13px;
    text-align: left;
    margin-right: 8px;
}

.form_object input.center {
    text-align: center;
}

.form_object input.right {
    text-align: right;
}


/*2023-09-07 수평형식 체크박스 추가*/
.checkbox_wrap {
    display: inline-block;
    height: 22px;
    line-height: 20px;
    float: left;
    cursor: pointer;
    text-align: left;
    vertical-align: top;
    margin-right: 15px;
    margin-bottom: 24px;
}

.checkbox_wrap .checkbox_row {
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 1px solid var(--grid-border-color);
    border-radius: 4px;
    float: left;
    margin-right: 8px;
}

.checkbox_wrap .checkbox_row:hover {
    background-color: #EEF6F5;
}

.checkbox_wrap .checkbox_row:disabled {
    background-color: #EEEEEE;
}

.checkbox_wrap .checkbox_row:disabled:checked {
    background-image: url(/resources/images/check_disabled_v2.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 20px;
}

.checkbox_wrap .label_checkbox_row {
    display: inline-block;
    float: left;
    font-size: 12px;
    font-weight: 700;
    color: #828B97;
}



.form_object .form_inp0_v2 {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    /* 	height: 27px; */
    height: 36px;
    border: none;
    outline: none;
    /* 	border: 1px solid #e3e5ea; */
    border: 1px solid var(--grid-border-color);
    font-size: 13px;
    text-align: left;
    border-radius: 4px;
    color: #666;
}

.form_object .form_inp1_v2 {
    position: absolute;
    bottom: 0;
    right: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 36px;
    border: none;
    outline: none;
    /* 	border: 1px solid #e3e5ea; */
    border: 1px solid var(--grid-border-color);
    font-size: 13px;
    text-align: left;
    border-radius: 4px;
    color: #666;
}

.form_object .form_date0_v2 {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 36px;
    margin: 0;
    /*padding: 0;*/
    /*padding-left: 12px;*/
    overflow: hidden;
    color: #666;
    font-size: 13px;
    border: none;
    border: 1px solid var(--grid-border-color);
    background-image: url(/resources/images/calendar.png);
    background-repeat: no-repeat;
    background-position: 98% center;
    background-size: 16px;
    border-radius: 4px;
}

.form_object .form_date1_v2 {
    position: absolute;
    bottom: 0;
    right: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 36px;
    margin: 0;
    /*padding: 0;*/
    /*padding-left: 12px;*/
    overflow: hidden;
    color: #666;
    font-size: 13px;
    border: none;
    border: 1px solid var(--grid-border-color);
    background-image: url(/resources/images/calendar.png);
    background-repeat: no-repeat;
    background-position: 96% center;
    background-size: 16px;
    border-radius: 4px;
}

.form_object .form_date0_v2.fw50,
.form_object .form_date1_v2.fw50 {
    padding: 11px 6px 12px;
    background-position: calc(100% - 6px) center;
}

/* modal_wrap 등 컨테이너 쿼리 밖에서도 fw50 datepicker 간격 적용 */
.modal_wrap.grid_layout .form_object.datepicker .form_date0_v2.fw50 {
    margin-right: 10px;
    width: calc(50% - 5px);
}
.modal_wrap.grid_layout .form_object.datepicker .form_date1_v2.fw50 {
    width: calc(50% - 5px);
}

.form_object .form_date0_v2R {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 36px;
    margin: 0;
    padding: 0;
    padding-left: 5px;
    overflow: hidden;
    color: #666;
    font-size: 13px;
    border: none;
    border: 1px solid var(--grid-border-color);
    background-image: url(/resources/images/calendar.png);
    background-repeat: no-repeat;
    background-position: 96% center;
    background-size: 16px;
    border-radius: 4px;
}

.form_object .form_date1_v2R {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 36px;
    margin: 0;
    padding: 0;
    padding-left: 5px;
    overflow: hidden;
    color: #666;
    font-size: 13px;
    border: none;
    border: 1px solid var(--grid-border-color);
    background-image: url(/resources/images/calendar.png);
    background-repeat: no-repeat;
    background-position: 96% center;
    background-size: 16px;
    border-radius: 4px;
}

.form_object .form_pop1_v2 {
    padding-right: 27px;
    position: absolute;
    bottom: 0;
    right: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 36px;
    line-height: 100px;
    overflow: hidden;
    font-size: 13px;
    border: none;
    /* 	border: 1px solid #e3e5ea; */
    border: 1px solid var(--grid-border-color);
    border-radius: 3px;
}

.form_object .form_pop4_v2 {
    padding-right: 27px;
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 36px;
    line-height: 100px;
    overflow: hidden;
    font-size: 13px;
    border: none;
    /* 	border: 1px solid #e3e5ea; */
    border: 1px solid var(--grid-border-color);
    border-radius: 3px;
    color: #666
}

.form_object .form_popup_btn2_v2 {
    display: inline-block;
    width: 16px;
    height: 16px;
    position: absolute;
    bottom: 10px;
    right: 0px;  /* 기본값: 오른쪽에 붙음 */
    background-image: url(/resources/images/popup_btn.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 16px;
}

/* fw50이 있을 때만 왼쪽 입력창(50% 위치)에 붙음 */
.form_object:has(.fw50) .form_popup_btn2_v2 {
    right: calc(50% + 10px);
}

/* 그리드 레이아웃 + fw50: 간격 조정 */
.grid_layout .form_object:has(.fw50) .form_popup_btn2_v2,
.content_inner_v2.grid_layout .form_object:has(.fw50) .form_popup_btn2_v2 {
    right: calc(52% + 6px);
}

.form_object .form_popup_btn_v2 {
    display: inline-block;
    width: 16px;
    height: 16px;
    position: absolute;
    bottom: 10px;
    right: 10px;
    background-image: url(/resources/images/popup_btn.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 16px;
    padding: 0 !important;
}

.form_object .form_popup_btn_v2R {
    display: inline-block;
    width: 16px;
    height: 16px;
    position: absolute;
    bottom: 10px;
    right: 10px;
    background-image: url(/resources/images/popup_btn.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 16px;
    padding: 0;
}

.form_object .form_popup_btn2_v2R {
    display: inline-block;
    width: 16px;
    height: 16px;
    position: absolute;
    bottom: 10px;
    right: 10px;  /* 기본값: 오른쪽에 붙음 */
    background-image: url(/resources/images/popup_btn.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 16px;
}

/* fw50이 있을 때만 왼쪽 입력창(50% 위치)에 붙음 */
.form_object:has(.fw50) .form_popup_btn2_v2R {
    right: calc(50% + 10px);
}

/* 그리드 레이아웃 + fw50: 간격 조정 */
.grid_layout .form_object:has(.fw50) .form_popup_btn2_v2R,
.content_inner_v2.grid_layout .form_object:has(.fw50) .form_popup_btn2_v2R {
    right: calc(52% + 6px);
}

.form_object .form_textarea0 {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 88px;
    /*border: none;*/
    /* 	outline: none; */
    /*border: 1px solid #e3e5ea;*/
    font-size: 13px;
    text-align: left;
    border-radius: 3px;
}

.form_object .form_textarea1 {
    margin-top: 30px;
    float: left;
    display: inline-block;
    width: 100%;
    height: 170px;
    /*border: none;*/
    /* 	outline: none; */
    /*border: 1px solid #e3e5ea;*/
    font-size: 13px;
    text-align: left;
    border-radius: 3px;
}

.form_object .form_textarea2 {
    display: inline-block;
    width: 100%;
    height: 88px;
    font-size: 13px;
    text-align: left;
    border-radius: 3px;
    margin: 0;
}

.form_object .form_textarea3 {
    margin-top: 20px;
    display: inline-block;
    width: 100%;
    font-size: 13px;
    text-align: left;
    border-radius: 3px;
}

.btn_search {
    display: inline-block;
    width: 27px;
    height: 27px;
    position: absolute;
    bottom: 0;
    right: 1px;
    background-image: url(/resources/images/search2.png);
    background-repeat: no-repeat;
    background-position: 98% 50%;
    background-size: 15px;
}

.btn_search2 {
    display: inline-block;
    width: 27px;
    height: 27px;
    position: absolute;
    bottom: 0;
    right: calc(48% + 13px);
    background-image: url(/resources/images/search2.png);
    background-repeat: no-repeat;
    background-position: 98% 50%;
    background-size: 15px;
}

.form_object .form_object_txt {
    font-size: 13px;
    color: #555555;
    padding-top: 30px;
}

/* input active 표시 */
.if {
    display: inline-block;
    width: 0;
    height: 1px;
    z-index: 50;
    position: absolute;
    bottom: 0px;
    background-color: #5d78ff;
    transition: all ease 0.3s;
}

.form_object input:focus~.if {
    width: 100%;
}

.form_object select:focus~.if {
    width: 100%;
}

.form_object .form_inp0.fw50 {
    width: 48%;
}

.form_object .form_inp1.fw50 {
    width: 48%;
}

.form_object .select_box.fw50 {
    width: 48%;
}

.form_object .select_box.fw50 .drop_box_list {
    top: 35px !important;
}

.form_object .select_box1.fw50 {
    width: 48%;
}

.form_object .form_file0.fw50 {
    width: 48%;
}

.form_object .form_file1.fw50 {
    width: 48%;
}

.form_object .form_date0.fw50 {
    width: 48%;
}

.form_object .form_date1.fw50 {
    width: 48%;
}

.form_object .form_date0.fw70 {
    width: 68%;
}

.form_object .form_pop0.fw50 {
    width: 48%;
}

.form_object .form_pop1.fw50 {
    width: 48%;
}

.form_object .form_pop4.fw50 {
    width: 48%;
}

/*2021-01-15 수정 ver2*/
.form_object .form_inp0_v2.fw50 {
    width: 48%;
}

.form_object .form_inp1_v2.fw50 {
    width: 48%;
}

.form_object .form_select0_v2.fw50 {
    width: 48%;
}

.form_object .form_select1_v2.fw50 {
    width: 48%;
}

.form_object .form_date0_v2.fw50 {
    width: 48%;
}

.form_object .form_date1_v2.fw50 {
    width: 48%;
}

.form_object .form_date0_v2.fw70 {
    width: 68%;
}

.form_object .form_date1_v2.fw70 {
    width: 68%;
}

.form_object .form_date0_v2R.fw50 {
    width: 48%;
}

.form_object .form_date1_v2R.fw50 {
    width: 48%;
}

.form_object .form_date0_v2R.fw70 {
    width: 68%;
}

.form_object .form_date1_v2R.fw70 {
    width: 68%;
}

.form_object .form_pop1_v2.fw50 {
    width: 48%;
}

.form_object .form_pop1_v2.fw30 {
    width: 28%;
}

.form_object .form_pop4_v2.fw50 {
    width: 48%;
}

.form_object .form_pop4_v2.fw70 {
    width: 68%;
}

.form_object .form_pop4_v2.fw30 {
    width: 28%;
}

/* .form_object .label_checkbox0.fw50{width:48%;} */
/*.form_object.w100 {
	width: 100% !important;
}

.form_object.w98 {
	width: 98% !important;
}

.form_object.w91 {
	width: 91% !important;
}

.form_object.w90 {
	width: 90% !important;
}

.form_object.w80 {
	width: 80% !important;
}

.form_object.w73 {
	width: 73% !important;
}

.form_object.w70 {
	width: 70% !important;
}

.form_object.w65 {
	width: 65% !important;
}

.form_object.w63 {
	width: 63% !important;
}

.form_object.w60 {
	width: 60% !important;
}

.form_object.w50 {
	width: 50% !important;
}

.form_object.w49 {
	width: 49% !important;
}

.form_object.w48 {
	width: 48% !important;
}

.form_object.w47 {
	width: 47% !important;
}

.form_object.w46 {
	width: 46% !important;
}

.form_object.w45_9 {
	width: 45.9% !important;
}

.form_object.w45 {
	width: 45% !important;
}

.form_object.w42 {
	width: 42% !important;
}

.form_object.w40 {
	width: 40% !important;
}

.form_object.w35 {
	width: 35% !important;
}

.form_object.w33 {
	width: 33% !important;
}

.form_object.w32 {
	width: calc(32% + 12px) !important;
}

.form_object.w30 {
	width: calc(30% + 12px) !important;
}

.form_object.w27 {
	width: 27% !important;
}

.form_object.w25 {
	width: 25% !important;
}

.form_object.w24 {
	width: 24% !important;
}

.form_object.w23 {
	width: 23% !important;
}

.form_object.w22 {
	width: 22% !important;
}

.form_object.w21 {
	width: 21% !important;
}

.form_object.w20 {
	width: 20% !important;
}

.form_object.w19 {
	width: 19% !important;
}

.form_object.w18 {
	width: 18% !important;
}

.form_object.w17 {
	width: 17% !important;
}

.form_object.w16 {
	width: 16% !important;
}

.form_object.w15 {
	width: 15% !important;
}

.form_object.w14 {
	width: 14% !important;
}

.form_object.w13 {
	width: 13% !important;
}

.form_object.w12 {
	width: 12% !important;
}

.form_object.w11 {
	width: 11% !important;
}

.form_object.w10 {
	width: 10% !important;
}

.form_object.w9 {
	width: 9% !important;
}

.form_object.w7 {
	width: 7% !important;
}

.form_object.w6 {
	width: 6% !important;
}

.form_object.w5 {
	width: 5% !important;
}

.form_object.w4 {
	width: 4% !important;
}

.form_object.w3 {
	width: 3% !important;
}*/

.form_object.fb {
    padding-top: 20px;
    border-bottom: 1px solid #707070;
    height: 50px;
}

.form_object.ft {
    border-bottom: 1px solid #e2e5ec;
    height: 50px;
    line-height: 0;
}

/*list > table*/
.list_table {
    width: 100%;
}

.list_table thead tr {
    border-top: 1px solid #dfdfdf;
    background-color: rgb(247, 247, 247);
}

.list_table thead tr th {
    padding: 10px 0;
    text-align: center;
    font-size: 13px;
    color: #333;
    font-weight: normal;
}

.list_table thead tr th.left {
    text-align: left;
    padding: 10px 10px;
}

.list_table thead tr th.right {
    text-align: right;
    padding: 10px 10px;
}

.list_table thead tr th.bold {
    font-weight: 500;
}

.list_table tbody tr {
    border-top: 1px solid #dfdfdf;
    background-color: #fff;
}

.list_table tbody tr td {
    padding: 10px 0;
    text-align: center;
    font-size: 13px;
    color: #333;
    font-weight: normal;
}

.list_table tbody tr td.left {
    text-align: left;
    padding: 10px 10px;
}

.list_table tbody tr td.right {
    text-align: right;
    padding: 10px 10px;
}

.list_table tbody tr td.bold {
    font-weight: 500;
}

.list_table tbody tr:last-child {
    border-bottom: 1px solid #dfdfdf;
}

/* 버튼 애니메이션 */
/* @ */
/* keyframes blink { 0% { */
/* 	color: #48465b; */
/* } */
/* 33 */
/* % */
/* { */
/* color */
/* : */
/* #eee; */
/* } */
/* 66 */
/* % */
/* { */
/* color */
/* : */
/* #48465b; */
/* } */
/* 100 */
/* { */
/* color */
/* : */
/* #48465b; */
/* } */
/*form > form layout*/
.content::after {
    content: '';
    display: block;
    clear: both;
}

.form_header {
    position: relative;
    width: 100%;
    height: 40px;
    text-align: right;
    letter-spacing: -2px;
}

.form_header::after {
    content: '';
    display: block;
    clear: both;
}

.form_header .form_title {
    position: absolute;
    top: 5px;
    left: 0;
    display: inline-block;
    letter-spacing: 1px;
    color: #48465b;
    font-weight: 500;
    font-size: 17px;
}

.form_header .form_path {
    position: absolute;
    top: 28px;
    left: 0px;
    display: inline-block;
    letter-spacing: 1px;
}

.form_header .form_path .form_path_link {
    font-size: 12px;
    color: #0725bc;
    font-weight: 500;
    text-decoration: none;
    padding: 0 5px;
}

.form_header .form_path .form_path_link:hover {
    background-color: rgba(88, 103, 221, .1);
    border-bottom: 1px solid #0725bc;
}

.form_header .form_path .form_path_link .path::after {
    content: '>';
    font-size: 13px;
    color: #0725bc;
    padding: 0 5px;
}

.form_header .form_path .form_path_link .path.path_last::after {
    content: none;
}

.form_header .form_sub_title {
    position: absolute;
    bottom: 8px;
    left: 2px;
    display: inline-block;
    letter-spacing: 1px;
    color: #74788d;
    font-weight: 400;
    font-size: 14px;
}

/* button { */
/* 	height: 30px; */
/* 	padding: 0 10px; */
/* 	margin-right: 2px; */
/* 	border-radius: 3px; */
/* 	font-size: 12px; */
/* 	font-weight: 500; */
/* 	text-align: center; */
/* } */
button.btn_default {
    border: 1px solid #000;
    color: #fff;
    background-color: #000;
    transition: all 0.2s ease;
}

button.btn_default:hover {
    background-color: #222;
    color: #fff;
    border: 1px solid #222;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.25);
    transform: translateY(-1px);
}

/* button.btn_disabled{background-color:#f7f8fa;border:1px solid #ccc;color:#bbb;cursor:not-allowed;}
button.btn_disabled:hover{background-color:#f7f8fa;border:1px solid #ccc;color:#bbb;} */
button.btn_type0 {
    background-color: #48465b;
    border: 1px solid #48465b;
    color: #fff;
    transition: all 0.2s ease;
}

button.btn_type0:hover {
    background-color: #3a3850;
    border: 1px solid #3a3850;
    color: #fff;
    box-shadow: 0 3px 8px rgba(72, 70, 91, 0.3);
    transform: translateY(-1px);
}

button.btn_type1 {
    background-color: #ccc;
    border: 1px solid #ccc;
    color: #fff;
    transition: all 0.2s ease;
}

button.btn_type1:hover {
    background-color: #bbb;
    border: 1px solid #bbb;
    color: #fff;
}

button.btn_type2 {
    background-color: var(--btn-primary);
    border: 1px solid var(--btn-primary);
    color: #fff;
    transition: all 0.2s ease;
}

button.btn_type2:hover {
    border: 1px solid var(--btn-primary-hover);
    background-color: var(--btn-primary-hover);
    color: #fff;
}

button.btn_type3 {
    background-color: #5867dd;
    border: 1px solid #5867dd;
    color: #fff;
    transition: all 0.2s ease;
}

button.btn_type3:hover {
    background-color: #4f5cc6;
    border: 1px solid #4f5cc6;
    color: #fff;
    box-shadow: 0 3px 8px rgba(88, 103, 221, 0.3);
    transform: translateY(-1px);
}

button.btn_type4 {
    background-color: #6851a1;
    border: 1px solid #6851a1;
    color: #fff;
    transition: all 0.2s ease;
}

button.btn_type4:hover {
    background-color: #5b35bb;
    border: 1px solid #5b35bb;
    color: #fff;
    box-shadow: 0 3px 8px rgba(104, 81, 161, 0.3);
    transform: translateY(-1px);
}

button.btn_type5 {
    background-color: #fd397a;
    border: 1px solid #fd397a;
    color: #fff;
    transition: all 0.2s ease;
}

button.btn_type5:hover {
    background-color: #fd1361;
    border: 1px solid #fd1361;
    color: #fff;
}

button.btn_type6 {
    background-color: #cea87a;
    border: 1px solid #cea87a;
    color: #fff;
    transition: all 0.2s ease;
}

button.btn_type6:hover {
    background-color: #c19a68;
    border: 1px solid #c19a68;
    color: #fff;
    box-shadow: 0 3px 8px rgba(206, 168, 122, 0.3);
    transform: translateY(-1px);
}

button.btn_type7 {
    background-color: #70936c;
    border: 1px solid #70936c;
    color: #fff;
    transition: all 0.2s ease;
}

button.btn_type7:hover {
    background-color: #5d7d59;
    border: 1px solid #5d7d59;
    color: #fff;
    box-shadow: 0 3px 8px rgba(112, 147, 108, 0.3);
    transform: translateY(-1px);
}

button.btn_type8 {
    background-color: #008da2;
    border: 1px solid #008da2;
    color: #fff;
    transition: all 0.2s ease;
}

button.btn_type8:hover {
    background-color: #007a8c;
    border: 1px solid #007a8c;
    color: #fff;
    box-shadow: 0 3px 8px rgba(0, 141, 162, 0.3);
    transform: translateY(-1px);
}

/*2021-01-14 버튼 추가 ver2*/
button.basic {
    background-color: var(--main-color);
    border: 1px solid var(--main-color);
    color: #fff;
    transition: all 0.2s ease;
}

button.basic:hover {
    background-color: var(--btn-primary-hover);
    border: 1px solid var(--btn-primary-hover);
}

button.basic.disabled,
button.basic:disabled {
    background-color: #dcdcdc;
    color: #fff;
    border: 1px solid #bebebe;
    min-width: 70px;
}

button.basic:disabled {
    cursor: not-allowed;
}

button.primary {
    background-color: #0d60c0;
    color: #fff;
    border: 1px solid #0d60c0;
    min-width: 70px;
    transition: all 0.2s ease;
}

button.primary:hover {
    background-color: #1c77e0;
    color: #fff;
    border: 1px solid #1c77e0;
}


button.primary.disabled {
    background-color: #dcdcdc;
    color: #fff;
    border: 1px solid #bebebe;
    min-width: 70px;
}

button.disabled:hover {
    background-color: #dcdcdc;
    color: #fff;
    border: 1px solid #bebebe;
    cursor: not-allowed
}

button.red {
    background-color: #ed5565;
}

button.yellow {
    background-color: #f7a54a;
}

button.blink_btn {
    -webkit-animation: blink 2s linear infinite;
}

button.btn_icon {
    width: 30px;
    height: 30px;
    border: 1px solid #48465b;
    color: #48465b;
    background-color: #fff;
    font-size: 15px;
    padding: 0;
}

button.btn_icon:hover {
    background-color: #fff;
    color: #000;
    border: 1px solid #000;
}

/* button.btn_icon.search{ */
/* 	background-image: url(/resources/images/search2.png); */
/*     background-repeat: no-repeat; */
/*     background-size: 18px; */
/*     background-position: center center; */
/*     border-radius: 50%; */
/*   	box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.28); */
/* } */
/* button.btn_icon.plus{ */
/* 	background-image: url(/resources/images/plus2.png); */
/*     background-repeat: no-repeat; */
/*     background-size: 25px; */
/*     background-position: center center; */
/*     border-radius: 50%; */
/*   	box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.28); */
/* } */
/* button.btn_icon.trash{ */
/* 	background-image: url(/resources/images/trash4.png); */
/*     background-repeat: no-repeat; */
/*     background-size: 22px; */
/*     background-position: center center; */
/*     border-radius: 50%; */
/*   	box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.28); */
/* } */
/* button.btn_icon.save{ */
/* 	background-image: url(/resources/images/save4.png); */
/*     background-repeat: no-repeat; */
/*     background-size: 20px; */
/*     background-position: center center; */
/*     border-radius: 50%; */
/*   	box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.28); */
/* } */
/* button.btn_icon.question{ */
/* 	background-image: url(/resources/images/question5.png); */
/*     background-repeat: no-repeat; */
/*     background-size: 20px; */
/*     background-position: center center; */
/*     border-radius: 50%; */
/*   	box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.28); */
/* } */
.form_body {
    width: 100%;
    padding: 10px;
    border: 1px solid #dfdfdf;
    background-color: #fff;
    margin-bottom: 10px;
    text-align: center;
    border-radius: 3px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, .1);
}

.form_body::after {
    content: '';
    display: block;
    clear: both;
}

.form_body .form_body_inner {
    width: 100%;
    height: 100%;
    display: inline-block;
    text-align: justify;
}

.form_body .form_body_inner.hide_form0 {
    display: none;
}

.form_body .form_body_inner.hide_form1 {
    display: none;
}

.form_body.hide_bottom {
    position: relative;
}

.form_body.hide_bottom .hide_btn0 {
    position: absolute;
    bottom: 10px;
    right: 10px;
    display: inline-block;
    width: 30px;
    height: 30px;
    background-image: url(/resources/images/fade_btn_off2.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 16px;
}

.form_body.hide_bottom .hide_btn0.on {
    background-image: url(/resources/images/fade_btn_on2.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 16px;
}

.form_body.hide_bottom .hide_btn1 {
    position: absolute;
    bottom: 10px;
    right: 10px;
    display: inline-block;
    width: 30px;
    height: 30px;
    background-image: url(/resources/images/fade_btn_off2.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 16px;
}

.form_body.hide_bottom .hide_btn1.on {
    background-image: url(/resources/images/fade_btn_on2.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 16px;
}

.form_body_inner::after {
    content: '';
    display: block;
    clear: both;
}

.form_object::after {
    content: '';
    display: block;
    clear: both;
}

.hr_employee_content {
    display: inline-block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    border: 1px solid #E7E7E9;
    border-radius: 4px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    padding: 20px 32px;
    padding-bottom: 0;
    margin-bottom: 20px;
}

.form_object_img {
    display: inline-block;
    position: relative;
    width: 186px !important;
    max-height: 428px;
    float: left;
    margin-right: 40px !important;
}

.form_object_img .img_section {
    display: inline-block;
    width: 186px !important;
    height: 202px;
    border: 1px solid var(--grid-border-color);
    background-image: url(/resources/images/gallery.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 40px;
    background-color: #F6F6F6;
    border-radius: 4px;
}

.form_object_img .profile_img_section {
    display: inline-block;
    width: 186px;
    height: 202px;
    border: 1px solid var(--grid-border-color);
    background-image: url(/resources/images/gallery.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 40px;
}

.form_object_img .form_pop {
    display: inline-block;
    width: 34px;
    height: 34px;
    background-color: #f8f8f8;
    border: 1px solid #c4c4c4;
    border-radius: 3px;
    background-image: url(/resources/images/object_img_btn.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 20px;
    line-height: 500px;
    float: right;
    position: absolute;
    bottom: 0;
    left: 0;
}

.form_object_img1 .check_box {
    display: inline-block;
    width: 100%;
    height: 35px;
    text-align: center;
}

.form_object_img1 .check_box .inner_label {
    font-size: 14px;
    font-weight: 500;
    color: #646c9a;
}

.form_object_img1 .img_btn {
    display: inline-block;
    width: 100%;
    height: 35px;
    text-align: center;
}

.form_object_img1 .img_btn button {
    width: 100px;
    height: 35px;
    line-height: 35px;
    background-color: #000;
    color: #fff;
    text-align: center;
}

.form_object_img .form_img_title {
    width: 100%;
    height: 44px;
    line-height: 44px;
    padding: 0 10px !important;
    color: #48465b;
    font-size: 14px;
    letter-spacing: 1px;
    font-weight: 500;
    background-color: #eee;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    text-align: center;
}

.form_object_img .form_img {
    display: inline-block;
    width: 160px;
    height: 160px;
    margin: 15px 0;
    border: 3px solid #fff;
    box-shadow: 0px 0px 13px 0px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

.form_object_img .form_img img {
    vertical-align: middle;
    width: 100%;
}

.form_object_img .form_btn {
    display: inline-block;
    width: 100%;
    height: 55px;
    text-align: center;
}

.form_object_img .form_btn .img_search {
    width: 30px;
    height: 30px;
    border: 1px solid #707070;
    border-radius: 3px;
    color: #707070;
    font-size: 16px;
}

.form_object_img .form_btn .img_delete {
    width: 30px;
    height: 30px;
    border: 1px solid #707070;
    border-radius: 3px;
    color: #707070;
    font-size: 16px;
}

.form_object_img .form_btn button:hover {
    background-color: #707070;
    color: #fff;
}

.form_object_wrap {
    float: left;
    width: 100%;
    margin-top: 20px;
}

.form_object_wrap::after {
    content: '';
    display: block;
    clear: both;
}

.form_object_wrap1 {
    float: left;
    width: calc(100% - 200px);
}

.content {
    height: 100%;
}

/* split-row를 가진 .content는 flex 컨테이너로 */
.content:has(.split-row) {
    display: flex !important;
    flex-direction: column !important;
    /* height: auto !important; - 제거: 탭 안의 그리드가 300px에서 잘리는 문제 해결 */
}

.content::after {
    content: '';
    display: block;
    clear: both;
}

/*2021-02-05 추가 ver2*/
.content_inner_v2 {
    display: inline-block;
    width: 100%;
    border: 1px solid var(--grid-border-color);
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    background-color: #fff;
    padding: 20px;
    border-radius: 4px;
    overflow: hidden;
}

/* content_inner_v2 간격 - 부모에 gap-10 클래스 사용 */

/* content_inner_v2 + grid_layout 조합 */
.content_inner_v2.grid_layout {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-column-gap: 15px;
    grid-row-gap: 16px;
}

/*inner_tab*/
.inner_tab_wrap {
    width: 100%;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.01);
    background-color: #fff;
    padding: 10px;
    border-radius: 5px;
    border: 1px solid #dbdbdb;
    float: left;
}

/* inner_tab_wrap 내 폼 - 12칸 그리드 (검색/본문과 동일하게 span 2) */
.inner_tab_wrap > form {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 10px;
}

.inner_tab_wrap > form > .form_object {
    grid-column: span 2;
}

.inner_tab_wrap > form > .form_object.x_full {
    grid-column: 1 / -1;
}

.inner_tab_wrap2 {
    width: 100%;
    height: 100% !important;
    /*background-color: #fff;*/
    border-radius: 5px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    /*border: 1px solid #E7E7E9;*/
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    overflow: visible !important;
}

.inner_tab_wrap2.half {
    height: calc(50% - 10px);
}

.inner_tab_wrap3 {
    width: 100%;
    background-color: #fff;
    border-radius: 5px;
    float: left;
}

.inner_tab_wrap::after {
    content: '';
    display: block;
    clear: both;
}

.inner_tab_wrap2::after {
    content: '';
    display: block;
    clear: both;
}

.inner_tab_wrap3::after {
    content: '';
    display: block;
    clear: both;
}

.inner_tab_wrap2.none_p_b {
    border: none !important;
}

.inner_tab_wrap.h100per {
    height: 100% !important;
    min-height: 710px !important;
    max-height: 710px;
}

.inner_tab_wrap.h50per {
    height: 49% !important;
    min-height: 49% !important;
    margin-bottom: 7px;
}

.inner_tab_wrap.h_fixed {
    height: 100%;
    min-height: 615px !important;
    max-height: 615px;
    overflow-y: scroll;
}

.h_flexible {
    float: left;
    width: 100%;
    height: 615px;
}

.h_flexible::after {
    content: '';
    display: block;
    clear: both;
}

.h_flexible.fold0 {
    min-height: 480px;
    max-height: 480px;
}

.h_flexible.fold1 {
    min-height: 480px;
    max-height: 480px;
}

/* .inner_tab_wrap.h10{height:10px !important;min-height:10px !important;max-height:10px !important;} */
/* .inner_tab_wrap.h20{height:20px !important;min-height:20px !important;max-height:20px !important;} */
/* .inner_tab_wrap.h30{height:30px !important;min-height:30px !important;max-height:30px !important;} */
/* .inner_tab_wrap.h40{height:40px !important;min-height:40px !important;max-height:40px !important;} */
/* .inner_tab_wrap.h50{height:50px !important;min-height:50px !important;max-height:50px !important;} */
/* .inner_tab_wrap.h60{height:60px !important;min-height:60px !important;max-height:60px !important;} */
/* .inner_tab_wrap.h70{height:70px !important;min-height:70px !important;max-height:70px !important;} */
/* .inner_tab_wrap.h80{height:80px !important;min-height:80px !important;max-height:80px !important;} */
/* .inner_tab_wrap.h90{height:90px !important;min-height:90px !important;max-height:90px !important;} */
/* .inner_tab_wrap.h100{height:100px !important;min-height:100px !important;max-height:100px !important;} */
/* .inner_tab_wrap.h110{height:110px !important;min-height:110px !important;max-height:110px !important;} */
/* .inner_tab_wrap.h120{height:120px !important;min-height:120px !important;max-height:120px !important;} */
/* .inner_tab_wrap.h130{height:130px !important;min-height:130px !important;max-height:130px !important;} */
/* .inner_tab_wrap.h140{height:140px !important;min-height:140px !important;max-height:140px !important;} */
/* .inner_tab_wrap.h150{height:150px !important;min-height:150px !important;max-height:150px !important;} */
/* .inner_tab_wrap.h160{height:160px !important;min-height:160px !important;max-height:160px !important;} */
/* .inner_tab_wrap.h170{height:170px !important;min-height:170px !important;max-height:170px !important;} */
/* .inner_tab_wrap.h180{height:180px !important;min-height:180px !important;max-height:180px !important;} */
/* .inner_tab_wrap.h190{height:190px !important;min-height:190px !important;max-height:190px !important;} */
/* .inner_tab_wrap.h200{height:200px !important;min-height:200px !important;max-height:200px !important;} */
/* .inner_tab_wrap.h210{height:210px !important;min-height:210px !important;max-height:210px !important;} */
/* .inner_tab_wrap.h220{height:220px !important;min-height:220px !important;max-height:220px !important;} */
/* .inner_tab_wrap.h230{height:230px !important;min-height:230px !important;max-height:230px !important;} */
/* .inner_tab_wrap.h240{height:240px !important;min-height:240px !important;max-height:240px !important;} */
/* .inner_tab_wrap.h250{height:250px !important;min-height:250px !important;max-height:250px !important;} */
/* .inner_tab_wrap.h260{height:260px !important;min-height:260px !important;max-height:260px !important;} */
/* .inner_tab_wrap.h270{height:270px !important;min-height:270px !important;max-height:270px !important;} */
/* .inner_tab_wrap.h280{height:280px !important;min-height:280px !important;max-height:280px !important;} */
/* .inner_tab_wrap.h290{height:290px !important;min-height:290px !important;max-height:290px !important;} */
/* .inner_tab_wrap.h300{height:300px !important;min-height:300px !important;max-height:300px !important;} */
/* .inner_tab_wrap.h310{height:310px !important;min-height:310px !important;max-height:310px !important;} */
/* .inner_tab_wrap.h320{height:320px !important;min-height:320px !important;max-height:320px !important;} */
/* .inner_tab_wrap.h330{height:330px !important;min-height:330px !important;max-height:330px !important;} */
/* .inner_tab_wrap.h340{height:340px !important;min-height:340px !important;max-height:340px !important;} */
/* .inner_tab_wrap.h350{height:350px !important;min-height:350px !important;max-height:350px !important;} */
/* .inner_tab_wrap.h360{height:360px !important;min-height:360px !important;max-height:360px !important;} */
/* .inner_tab_wrap.h370{height:370px !important;min-height:370px !important;max-height:370px !important;} */
/* .inner_tab_wrap.h380{height:380px !important;min-height:380px !important;max-height:380px !important;} */
/* .inner_tab_wrap.h390{height:390px !important;min-height:390px !important;max-height:390px !important;} */
/* .inner_tab_wrap.h400{height:400px !important;min-height:400px !important;max-height:400px !important;} */
/* .inner_tab_wrap.h410{height:410px !important;min-height:410px !important;max-height:410px !important;} */
/* .inner_tab_wrap.h420{height:420px !important;min-height:420px !important;max-height:420px !important;} */
/* .inner_tab_wrap.h430{height:430px !important;min-height:430px !important;max-height:430px !important;} */
/* .inner_tab_wrap.h440{height:440px !important;min-height:440px !important;max-height:440px !important;} */
/* .inner_tab_wrap.h450{height:450px !important;min-height:450px !important;max-height:450px !important;} */
/* .inner_tab_wrap.h460{height:460px !important;min-height:460px !important;max-height:460px !important;} */
/* .inner_tab_wrap.h470{height:470px !important;min-height:470px !important;max-height:470px !important;} */
/* .inner_tab_wrap.h480{height:480px !important;min-height:480px !important;max-height:480px !important;} */
/* .inner_tab_wrap.h490{height:490px !important;min-height:490px !important;max-height:490px !important;} */
/* .inner_tab_wrap.h500{height:500px !important;min-height:500px !important;max-height:500px !important;} */
/* .inner_tab_wrap.h510{height:510px !important;min-height:510px !important;max-height:510px !important;} */
/* .inner_tab_wrap.h520{height:520px !important;min-height:520px !important;max-height:520px !important;} */
/* .inner_tab_wrap.h530{height:530px !important;min-height:530px !important;max-height:530px !important;} */
/* .inner_tab_wrap.h540{height:540px !important;min-height:540px !important;max-height:540px !important;} */
/* .inner_tab_wrap.h550{height:550px !important;min-height:550px !important;max-height:550px !important;} */
/* .inner_tab_wrap.h560{height:560px !important;min-height:560px !important;max-height:560px !important;} */
/* .inner_tab_wrap.h570{height:570px !important;min-height:570px !important;max-height:570px !important;} */
/* .inner_tab_wrap.h580{height:580px !important;min-height:580px !important;max-height:580px !important;} */
/* .inner_tab_wrap.h590{height:590px !important;min-height:590px !important;max-height:590px !important;} */
/* .inner_tab_wrap.h600{height:600px !important;min-height:600px !important;max-height:600px !important;} */
/* .inner_tab_wrap.h610{height:610px !important;min-height:610px !important;max-height:610px !important;} */
/* .inner_tab_wrap.h620{height:620px !important;min-height:620px !important;max-height:620px !important;} */
/* .inner_tab_wrap.h630{height:630px !important;min-height:630px !important;max-height:630px !important;} */
/* .inner_tab_wrap.h640{height:640px !important;min-height:640px !important;max-height:640px !important;} */
/* .inner_tab_wrap.h650{height:650px !important;min-height:650px !important;max-height:650px !important;} */
/* .inner_tab_wrap.h660{height:660px !important;min-height:660px !important;max-height:660px !important;} */
/* .inner_tab_wrap.h670{height:670px !important;min-height:670px !important;max-height:670px !important;} */
/* .inner_tab_wrap.h680{height:680px !important;min-height:680px !important;max-height:680px !important;} */
/* .inner_tab_wrap.h690{height:690px !important;min-height:690px !important;max-height:690px !important;} */
/* .inner_tab_wrap.h700{height:700px !important;min-height:700px !important;max-height:700px !important;} */
/* .inner_tab_wrap.h710{height:710px !important;min-height:710px !important;max-height:710px !important;} */
/* .inner_tab_wrap.h720{height:720px !important;min-height:720px !important;max-height:720px !important;} */
/* .inner_tab_wrap.h730{height:730px !important;min-height:730px !important;max-height:730px !important;} */
/* .inner_tab_wrap.h740{height:740px !important;min-height:740px !important;max-height:740px !important;} */
/* .inner_tab_wrap.h750{height:750px !important;min-height:750px !important;max-height:750px !important;} */
/* .inner_tab_wrap.h760{height:760px !important;min-height:760px !important;max-height:760px !important;} */
/* .inner_tab_wrap.h770{height:770px !important;min-height:770px !important;max-height:770px !important;} */
/* .inner_tab_wrap.h780{height:780px !important;min-height:780px !important;max-height:780px !important;} */
/* .inner_tab_wrap.h790{height:790px !important;min-height:790px !important;max-height:790px !important;} */
/* .inner_tab_wrap.h800{height:800px !important;min-height:800px !important;max-height:800px !important;} */
/* .inner_tab_wrap.h810{height:810px !important;min-height:810px !important;max-height:810px !important;} */
/* .inner_tab_wrap.h820{height:820px !important;min-height:820px !important;max-height:820px !important;} */
/* .inner_tab_wrap.h830{height:830px !important;min-height:830px !important;max-height:830px !important;} */
/* .inner_tab_wrap.h840{height:840px !important;min-height:840px !important;max-height:840px !important;} */
/* .inner_tab_wrap.h850{height:850px !important;min-height:850px !important;max-height:850px !important;} */
/* .inner_tab_wrap.h860{height:860px !important;min-height:860px !important;max-height:860px !important;} */
/* .inner_tab_wrap.h870{height:870px !important;min-height:870px !important;max-height:870px !important;} */
/* .inner_tab_wrap.h880{height:880px !important;min-height:880px !important;max-height:880px !important;} */
/* .inner_tab_wrap.h890{height:890px !important;min-height:890px !important;max-height:890px !important;} */
/* .inner_tab_wrap.h900{height:900px !important;min-height:900px !important;max-height:900px !important;} */
/* .inner_tab_wrap.h910{height:910px !important;min-height:910px !important;max-height:910px !important;} */
/* .inner_tab_wrap.h920{height:920px !important;min-height:920px !important;max-height:920px !important;} */
/* .inner_tab_wrap.h930{height:930px !important;min-height:930px !important;max-height:930px !important;} */
/* .inner_tab_wrap.h940{height:940px !important;min-height:940px !important;max-height:940px !important;} */
/* .inner_tab_wrap.h950{height:950px !important;min-height:950px !important;max-height:950px !important;} */
/* .inner_tab_wrap.h960{height:960px !important;min-height:960px !important;max-height:960px !important;} */
/* .inner_tab_wrap.h970{height:970px !important;min-height:970px !important;max-height:970px !important;} */
/* .inner_tab_wrap.h980{height:980px !important;min-height:980px !important;max-height:980px !important;} */
/* .inner_tab_wrap.h990{height:990px !important;min-height:990px !important;max-height:990px !important;} */
/* .inner_tab_wrap.h100{height:1000px !important;min-height:1000px !important;max-height:1000px !important;} */
/* .inner_tab_wrap.h1100{height:1100px !important;min-height:1100px !important;max-height:1100px !important;} */
/* .inner_tab_wrap.h1200{height:1200px !important;min-height:1200px !important;max-height:1200px !important;} */
.inner_tab_wrap.tab_wrap_hide {
    display: none;
}

.hide_btn_wrap {
    float: left;
    position: relative;
    width: 100%;
    height: 20px;
}

.hide_btn_wrap .hide_btn0 {
    position: absolute;
    bottom: 0;
    right: 0;
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url(/resources/images/fade_btn_off2.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 16px;
}

.hide_btn_wrap .hide_btn0.on {
    background-image: url(/resources/images/fade_btn_on2.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 16px;
}

.small_form_wrap {
    width: 100%;
    height: 170px;
    float: left;
    margin-top: 17px;
}

.small_form_wrap>li {
    display: inline-block;
    width: 33%;
    height: 170px;
    padding-left: 30px;
    padding-right: 17px;
    float: left;
    vertical-align: top;
    border: 1px solid #dbdbdb;
    border-radius: 3px;
    background-color: #fff;
}

.small_form_wrap li.form_area {
    padding: 10px;
}

.small_form_wrap li.grid_area {
    margin: 0 0.5%;
    padding: 10px;
}

.small_form_wrap li.file_area {
    position: relative;
    padding: 10px;
    width: 66%;
    float: right;
}

.small_form_wrap li.file_area .form_right_title {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 50;
}

.small_form_wrap li.file_area .appr_process.scroll_process {
    display: inline-block;
    width: 100%;
    height: 110px;
    position: absolute;
    top: 60px;
    left: 0;
    overflow-y: scroll;
    scroll-behavior: smooth;
    -ms-overflow-style: none;
}

.small_form_wrap li.file_area li.process_step {
    border: none;
    width: 100%;
    height: 30px;
}

/*스크롤 디자인변경*/
/* .inner_tab_wrap::-webkit-scrollbar { */
/*   width:10px; height:10px; */
/* } */
/* .inner_tab_wrap::-webkit-scrollbar-button { */
/*   background-color:#fff; width:20px;height:20px; */
/* } */
/* .inner_tab_wrap::-webkit-scrollbar-thumb { */
/*   background-color: #ddd; border-radius:5px; */
/* } */
/* .inner_tab_wrap::-webkit-scrollbar-button:vertical:increment { */
/*     background:url(/resources/images/angle_down_solid.png) no-repeat 0px 5px; background-size:8px; */
/* } */
/* .inner_tab_wrap::-webkit-scrollbar-button:vertical:decrement { */
/* 	background:url(/resources/images/angle_up_solid.png) no-repeat 0px 5px; background-size:8px; */
/* } */
/* .inner_tab_wrap::-webkit-scrollbar-button:horizontal:increment { */
/*     background:url(/resources/images/angle_right_solid.png) no-repeat 5px 0; background-size:5px; */
/* } */
/* .inner_tab_wrap::-webkit-scrollbar-button:horizontal:decrement { */
/* 	background:url(/resources/images/angle_left_solid.png) no-repeat 5px 0; background-size:5px; */
/* } */
/* .form_right 스크롤바 - 전역 스타일 사용 */

.inner_tab_wrap .scroll_wrap {
    width: auto;
    height: 100%;
}

.inner_label_title.fw50 {
    width: 50%;
}

.grid_wrap {
    float: left;
    width: 100%;
}

/* ============================================================================
   탭 + 그리드 레이아웃
   구조: .grid_wrap > .tab-nav-wrapper + .inner_panel(s)
   ============================================================================ */

/* grid_wrap - flex 컨테이너 */
.grid_wrap {
    display: flex !important;
    flex-direction: column !important;
    float: none !important;
    height: inherit !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

/* inner_panel 안에 grid_wrap이 하나만 있을 때 100% */
.inner_panel:not(:has(.grid_wrap + .grid_wrap)) > .grid_wrap {
    height: 100% !important;
}

/* 그리드가 연속으로 쌓일 때 위쪽 그리드 바닥에 border */
.inner_panel > .grid_wrap:has(+ .grid_wrap) .rg-root,
.inner_panel > .grid_wrap:has(+ .grid_wrap) .rg-grid {
    border-bottom: 1px solid var(--grid-border-color);
}

/* tab-nav-wrapper, inner_tabs - 고정 높이 */
.grid_wrap > .tab-nav-wrapper,
.grid_wrap > .inner_tabs {
    flex: 0 0 auto !important;
}

/* 활성 grid_layout - grid 표시 (grid-template-columns는 미디어 쿼리에서 처리) */
.inner_panel.grid_layout[aria-hidden="false"] {
    display: grid !important;
    padding: 20px 24px !important;
    box-sizing: border-box !important;
    align-content: start !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    flex: 1 !important;
    min-height: 0 !important;
}

/* inner_panel.grid_layout 내 form은 투명하게 (자식이 grid에 직접 참여) */
.inner_panel.grid_layout[aria-hidden="false"] > form {
    display: contents !important;
}

/* 활성 탭 flex 설정 - grid_layout 제외 */
.grid_wrap > .inner_panel[aria-hidden="false"]:not(.grid_layout):not(.h200):not(.h250):not(.h280):not(.h300):not(.h320):not(.h350):not(.h400):not(.h450):not(.h500):not(.h600) {
    flex: 1 !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

/* 활성 탭 내부 그리드 컨테이너 - 100% 높이 */
.grid_wrap > .inner_panel[aria-hidden="false"] > [id$="Grid"] {
    flex: 1 !important;
    height: 100% !important;
    min-height: 0 !important;
}

/* grid_layout 내 그리드/split-row가 있는 경우 - 전체 높이 사용 */
.grid_wrap > .inner_panel.grid_layout:has([id$="Grid"]),
.grid_wrap > .inner_panel.grid_layout:has(.split-row) {
    display: flex !important;
    flex-direction: column !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* grid_layout + min-height - 고정 최소 높이 사용 */
.grid_wrap > .inner_panel.grid_layout[class*="min-height-"] {
    flex: 0 0 auto !important;
    height: auto !important;
    overflow-y: auto !important;
}

/* grid_layout 내 split-row - 100% 높이 */
.inner_panel.grid_layout > .split-row {
    flex: 1;
    min-height: 0;
}

/* grid_layout 내 그리드 - 전체 높이 */
.inner_panel.grid_layout > [id$="Grid"],
.inner_panel.grid_layout .split-row [id$="Grid"] {
    height: 100% !important;
    flex: 1 !important;
    min-height: 0 !important;
}

/* 활성 고정 높이 inner_panel (h320 등) - flex 대신 고정 높이 사용 */
.grid_wrap > .inner_panel.h200[aria-hidden="false"],
.grid_wrap > .inner_panel.h250[aria-hidden="false"],
.grid_wrap > .inner_panel.h280[aria-hidden="false"],
.grid_wrap > .inner_panel.h300[aria-hidden="false"],
.grid_wrap > .inner_panel.h320[aria-hidden="false"],
.grid_wrap > .inner_panel.h350[aria-hidden="false"],
.grid_wrap > .inner_panel.h400[aria-hidden="false"],
.grid_wrap > .inner_panel.h450[aria-hidden="false"],
.grid_wrap > .inner_panel.h500[aria-hidden="false"],
.grid_wrap > .inner_panel.h600[aria-hidden="false"] {
    flex: 0 0 auto !important;
    overflow: visible !important;
}

/* 활성 inner_panel 내 그리드 - 100% 높이 */
.grid_wrap > .inner_panel > [id$="Grid"],
.grid_wrap > .inner_panel [id$="Grid"] {
    height: 100% !important;
}

/* 그리드 헤더가 있는 경우 - 헤더 높이 빼기 */
.grid_wrap > .inner_panel:has(.grid-header) [id$="Grid"] {
    height: calc(100% - 44px) !important;
}

/* inner_panel 안의 파일 컴포넌트 - 전체 높이 채우기 */
.grid_wrap > .inner_panel > .small_form_wrap {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

.grid_wrap > .inner_panel > .small_form_wrap > .file_area {
    flex: 1 !important;
    height: auto !important;
    display: flex !important;
    flex-direction: column !important;
}

.grid_wrap > .inner_panel > .small_form_wrap > .file_area > .appr_process {
    flex: 1 !important;
    height: auto !important;
    overflow-y: auto !important;
}

.grid_wrap.grid_wrap_wide {
    width: calc(100% - 330px);
}

.inner_tabs,
.inner_tabs.ui-tabs-nav,
.inner_tabs.ui-widget-header {
    width: 100%;
    height: 58px;
    min-height: 58px;
    max-height: 58px;
    line-height: 58px;
    padding: 0 10px;
    margin: 0;
    border: 1px solid var(--grid-border-color);
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    background-color: #fff;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scrollbar-width: none;
    -ms-overflow-style: none;
    list-style: none;
}

/* inner_tabs 다음 inner_panel - 상단 보더/radius 제거 */
.inner_tabs + .inner_panel,
.inner_tabs + .inner_panel.ui-tabs-panel {
    border-top: none !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

.inner_tabs .inner_tab,
.inner_tabs.ui-tabs-nav > li {
    position: relative;
    display: inline-flex;
    align-items: center;
    width: auto;
    min-width: 80px;
    padding: 0;
    margin: 0;
    height: 100%;
    flex-shrink: 0;
    float: none;
    list-style: none;
}

.inner_tabs.none_p_b:not(.tab-nav-wrapper .inner_tabs) {
    border: 1px solid var(--grid-border-color) !important;
    border-bottom: none !important;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

.inner_tabs .inner_tab .tab_link {
    display: inline-block;
    width: 100%;
    height: 58px;
    line-height: 58px;
    text-align: center;
    text-decoration: none;
    border-bottom: none;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 13px;
    font-weight: 500;
    color: var(--text-primary);
}

.inner_tabs .inner_tab .tab_link.small {
    font-size: 11px;
    ilne-height: 0;
}

/* .inner_tabs .inner_tab .tab_link.on::after{content:'';position:absolute;bottom:-2px;left:1px;display:block !important;width:calc(100% - 2px);height:4px;background-color:#fff;z-index:50;} */
.inner_tabs .inner_tab .tab_link.on {
    color: var(--text-primary);
    font-weight: 500;
    border-bottom: 4px solid var(--main-color);
}

.inner_tabs .inner_tab .tab_link:hover {
    color: var(--main-color);
    font-weight: 500;
}

/* inner tab 닫기 버튼 */
.inner_tabs .inner_tab .tab_link {
    position: relative;
    padding-right: 24px;
    transition: color 0.2s ease;
}

.inner_tabs .inner_tab .close-inner-tab-btn {
    position: absolute;
    top: 50%;
    right: 6px;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    line-height: 16px;
    text-align: center;
    font-size: 14px;
    font-style: normal;
    color: var(--close-btn-color);
    opacity: 0.6;
    cursor: pointer;
    border-radius: 50%;
    transition: all 0.15s ease;
}

.inner_tabs .inner_tab .close-inner-tab-btn::before {
    content: '×';
}

.inner_tabs .inner_tab .close-inner-tab-btn:hover {
    opacity: 1;
    color: var(--close-btn-hover);
    background-color: var(--close-btn-bg-hover);
}

/* 닫기 버튼 없는 탭 (기본) */
.inner_tabs .inner_tab .tab_link:not(:has(.close-inner-tab-btn)) {
    padding-right: 12px;
}

.inner_tabs .inner_tab .tab_link .tab_link_flag {
    display: inline-block;
    width: 18px;
    height: 18px;
    line-height: 15px;
    margin-left: 10px;
    text-align: center;
    background-color: #f8f8f8;
    border-radius: 50%;
    border: 1px solid #e7eaec;
    font-size: 13px;
    color: #676a6c;
}

/* 상단 tab 영역 */
nav .tab .tab_link:hover {
    background-color: var(--main-color);
    color: #fff;
    font-weight: 500;
}


.inner_textarea {
    float: left;
    display: inline-block;
    width: 100%;
    min-height: 700px;
    height: 100%;
    margin-right: 10px;
}

.inner_panel {
    display: inline-block;
    width: 100%;
    border: 1px solid var(--grid-border-color);
    border-radius: 4px;
    background-color: #fff;
    box-sizing: border-box;
}

/* 탭 다음 inner_panel - 상단 보더/radius 제거 */
.tab-nav-wrapper + .inner_panel,
.grid_wrap:has(.tab-nav-wrapper) > .inner_panel {
    border-top: none !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

/* jQuery UI tabs panel 보더 제거 (탭 안에 있을 때만) */
.grid_wrap:has(.tab-nav-wrapper) > .inner_panel.ui-tabs-panel,
.grid_wrap:has(.tab-nav-wrapper) > .inner_panel.ui-widget-content,
.grid_wrap:has(.tab-nav-wrapper) > .inner_panel.ui-corner-bottom {
    border: 1px solid var(--grid-border-color) !important;
    border-top: none !important;
}

/*.inner_panel::after {
	content: '';
	display: block;
	clear: both;
}*/

.inner_panel.form_panel {
    border: 1px solid var(--grid-border-color);
    padding: 20px 30px;
}

.only_contents_panel {
    /*height: calc(100vh - 43px - 59px - 70px);*/ /* calc 제거 */
}

.inner_panel.none_p {
    padding: 0;
}

.panel_section {
    display: inline-block;
    height: 100%;
    margin-right: 20px;
    float: left;
}

.section_grid {
    height: 380px;
}

.inner_textarea_wrap {
    position: relative;
    float: left;
    width: 100%;
    height: 80px;
    margin: 8px 0;
}

.inner_textarea_wrap2 {
    position: relative;
    float: left;
    width: 100%;
    height: 80px;
    margin: 8px 0;
}

.inner_textarea_wrap3 {
    dsipaly: inline-block;
    position: relative;
    float: right;
    width: 19%;
    height: 36%;
    margin: 20px 0 0;
}

.inner_textarea_wrap textarea {
    width: 100%;
    min-widht: 100%;
    max-width: 100%;
    min-height: 78px;
    max-height: 78px;
    border: 1px solid #ccc;
}

.inner_textarea_wrap2 textarea {
    width: 100%;
    min-widht: 100%;
    max-width: 100%;
    min-height: 78px;
    max-height: 78px;
    border: 1px solid #ccc;
}

.inner_textarea_wrap3 textarea {
    width: 100%;
    min-widht: 100%;
    max-width: 100%;
    min-height: 100%;
    max-height: 100%;
    border: 1px solid #ccc;
}

/* 설정페이지 */
.form_ {
    float: left;
    margin-right: 15px;
    width: calc(30% - 15px);
    min-height: 800px;
    height: 100%;
    padding: 15px 15px 5px;
    border: 1px solid #dfdfdf;
    background-color: #fff;
    margin-bottom: 20px;
    text-align: center;
    border-radius: 3px;
}

.form_primary:after {
    content: '';
    display: block;
    clear: both;
}

.form_body.two {
    width: 70%;
    min-height: 80px;
}

.form_body.three {
    width: 70%;
    min-height: 250px;
}

.inner_tab_wrap.two {
    width: 70%;
    min-height: 700px;
}

.inner_tab_wrap.three {
    width: 70%;
    min-height: 390px;
}

.inner_tab_wrap.three .inner_panel {
    width: 50%;
    min-height: 350px;
}

/*aa_asset_master*/
.inner_panel.h190 {
    height: 190px !important;
}

/*tax_vat_f320*/
.inner_panel.h235 {
    height: 235px !important;
}

/*tax_vat_f300_sale*/
.inner_panel.h210 {
    height: 210px !important;
}

/*hr_employee_master*/
.inner_panel.h275 {
    height: 275px !important;
}

/*dash_profile*/
.inner_panel.h460 {
    height: 460px !important;
}

.inner_panel.h295 {
    height: 295px !important;
}

/*hr_employee_manage*/
.inner_panel.h373 {
    height: 373px !important;
}

.inner_panel.h391 {
    height: 391px !important;
}

/*aa_asset*/
.inner_panel.h417 {
    height: 417px !important;
}

/*comm_coporation*/
/* .inner_panel.h443{height:443px !important;} */
/*comm_business*/
.inner_panel.h443 {
    height: 443px !important;
}

/*comm_cv*/
.inner_panel.h445 {
    height: 445px !important;
}

.inner_panel.h350 {
    height: 350px !important;
}

/*hr_employee_master*/
.inner_panel.h651 {
    height: 651px !important;
}

/*at_holiday_remain*/
.inner_panel.h641 {
    height: 641px !important;
}

/*aa_asset*/
.inner_panel.h390 {
    height: 390px !important;
}

/*ga_corp_vehicle*/
.inner_panel.h330 {
    height: 330px !important;
}

/*wi_declaration*/
.inner_panel.h597 {
    height: 597px !important;
}

/*wi_bi_receipt*/
.inner_panel.h600 {
    height: 600px !important;
}

/*fi_bi_account*/
.inner_panel.h661 {
    height: 661px !important;
}

/*fi_replace_setoff*/
.inner_panel.h631 {
    height: 631px !important;
}

/*comm_corporation_master*/
.inner_panel.h318 {
    height: 318px !important;
}

/*re_pay_recipient*/
.inner_panel.h290 {
    height: 290px !important;
}

/*fi_expense_invoice*/
.inner_panel.h661 {
    height: 661px !important;
}

/*yt_year_end_tax_settle*/
.inner_panel.h80 {
    height: 80px !important;
}

.inner_panel.h720 {
    height: 720px !important;
}

/*ga_asset_manage*/
.inner_panel.h316 {
    height: 316px !important;
}

/*sl_pay_invoice*/
.inner_panel.h565 {
    height: 565px !important;
}

/*tax_ac*/
.inner_panel.h635 {
    height: 635px !important;
}

/*tax_ac_tax_f380*/
.inner_panel.h530 {
    height: 530px !important;
}

.inner_panel.h102 {
    height: 102px !important;
}

/*re_pay_dc_recipient*/
.inner_panel.h261 {
    height: 261px !important;
}

/* 전자결재 */
.form_appr_header {
    position: relative;
    display: inline-block;
    width: 70%;
    height: 50px;
    margin: 10px 0 0;
}

.form_appr_body {
    float: left;
    width: 70%;
    height: 100%;
    padding: 15px 15px 5px;
    border: 1px solid #dfdfdf;
    background-color: #fff;
    margin-bottom: 20px;
    text-align: center;
    border-radius: 3px;
}

.form_appr_tab {
    float: left;
    width: 70%;
    height: 100%;
    min-height: 400px;
    padding: 10px;
    border: 1px solid #dfdfdf;
    margin-bottom: 10px;
    border-radius: 3px;
    overflow: scroll;
    scroll-behavior: smooth;
    flex-wrap: nowrap
}

.form_right {
    float: right;
    width: calc(30% - 15px);
    margin-left: 15px;
    margin-top: 10px;
    min-height: 850px;
    max-height: 850px;
    padding: 15px 5px 15px 15px;
    border: 1px solid #dfdfdf;
    background-color: #fff;
    border-radius: 3px;
    overflow-y: scroll;
    scroll-behavior: smooth;
    flex-wrap: nowrap;
}

.form_right button {
    float: right;
}

.form_appr_wrap {
    position: relative;
    min-height: 770px;
    padding-bottom: 90px;
}

.form_appr_info {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 100%;
    margin-bottom: 10px;
}

.form_right_title {
    display: inline-block;
    width: 100%;
    height: 60px;
    padding: 20px 0;
    padding-left: 30px;
    font-size: 15px;
    letter-spacing: 1px;
    color: #222222;
    font-weight: 500;
    border-bottom: 1px solid #dbdbdb;
}

.appr_process {
    display: inline-block;
    width: 100%;
    height: 100%;
}

.appr_complete {
    display: inline-block;
    width: 100%;
    height: 100%;
    margin-bottom: 10px;
}

.process_step {
    display: inline-block;
    width: 100%;
    height: 30px;
    line-height: 30px;
    margin-bottom: 5px;
}

.process_step .appr_employee {
    float: left;
    padding: 0 10px 0 20px;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 1px;
    text-decoration: none;
}

.process_step .appr_date {
    float: left;
    padding: 0 10px;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 1px;
    color: #777;
}

/* .process_step.step1{display:none;} */
.step_delete {
    float: right;
    font-size: 10px;
    margin-top: 12px;
    margin-right: 10px;
    color: #f86e71;
    font-weight: 100;
    cursor: pointer;
}

.form_right_title .warning {
    font-size: 11px;
    letter-spacing: 0;
    color: #ec7b7e;
    margin-left: 17px;
}

.appr_file_btn {
    position: absolute;
    top: 20px;
    right: 22px;
    font-size: 10px;
    font-weight: 100;
    z-index: 50;
    display: inline-block;
    width: 20px;
    text-align: center;
    height: 20px;
    line-height: 20px;
    border-radius: 50%;
    box-shadow: 0px 2px 2px rgba(51, 51, 51, .35);
    background-image: url(/resources/images/plus4.png);
    background-size: 10px;
    background-position: center center;
    background-repeat: no-repeat;
}

.appr_file {
    display: inline-block;
    width: 80%;
    padding: 0 10px;
    font-size: 13px;
    font-weight: 500;
    color: #555555;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    padding-right: 20px;
}

.appr_flie_volume {
    font-size: 13px;
    font-weight: 500;
    color: #555555;
    float: right;
    margin-right: 10px;
}

.process_step.step2 {
    position: relative;
    width: 100%;
    height: 100%;
    font-size: 13px;
    font-weight: 500;
    color: #777;
}

.appr_opinion_img {
    float: left;
    display: inline-block;
    width: 50px;
    height: 50px;
    line-height: 50px;
    background-color: #fff;
    border: 2px solid #ebedf2;
    border-radius: 50%;
    text-align: center;
}

.appr_opinion_img img {
    width: 100%;
    border-radius: 50%;
}

.appr_opinion {
    float: right;
    display: inline-block;
    width: calc(100% - 70px);
    margin-bottom: 10px;
    padding: 5px 10px 10px 10px;
    background-color: #f7f8fc;
    border-radius: 4px;
}

.appr_opinion::before {
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    top: 10px;
    right: 100%;
    margin-right: -70px;
    border-right: solid 10px #f7f8fc;
    border-bottom: solid 17px transparent;
    border-left: solid 17px transparent;
    border-top: solid 17px transparent;
}

.appr_opinion::after {
    content: '';
    display: block;
    clear: both;
}

.appr_opinion_txt {
    display: inline-block;
    width: 100%;
    height: 100%;
}

.forma_right_tabs {
    width: 100%;
    height: 44px;
    line-height: 44px;
    border-bottom: 1px solid #ebedf2;
}

.forma_right_tabs::after {
    content: '';
    display: block;
    clear: both;
}

.forma_right_tabs li.right_tab {
    float: left;
    display: inline-block;
    height: 43px;
    line-height: 43px;
    text-align: center;
    margin-bottom: -1px;
}

.right_tab .right_tab_link {
    display: inline-block;
    width: 100%;
    height: 43px;
    line-height: 43px;
    padding: 0 10px;
    font-size: 13px;
    text-decoration: none;
    text-align: center;
    color: #777;
}

.right_tab .right_tab_link.on {
    color: #5d78ff;
    border-bottom: 1px solid #5d78ff;
    font-weight: 500;
}

.appr_sign_table {
    width: 100%;
    border: 1px solid #ebedf2;
}

.appr_sign_table thead tr {
    border-bottom: 1px solid #ebedf2;
}

.appr_sign_table thead tr th {
    padding: 5px;
    border-right: 1px solid #ebedf2;
    text-align: center;
}

.appr_sign_table thead tr th:last-child {
    border-right: none;
}

.appr_sign_table tbody tr {
    border-bottom: 1px solid #ebedf2;
}

.appr_sign_table tbody tr td {
    border-right: 1px solid #ebedf2;
    text-align: center;
    font-size: 13px;
}

.appr_sign_table tbody tr td:last-child {
    border-right: none;
}

.appr_sign_table tbody tr td img {
    width: 100%;
}

.appr_sign_table tbody tr.appr_sign td {
    padding: 5PX;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 1px;
    text-decoration: none;
}

.appr_sign_table tfoot tr td {
    padding: 5PX;
    border-right: 1px solid #ebedf2;
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 1px;
    color: #777;
}

.appr_sign_table tbody tr.appr_sign_view td {
    padding: 10px 0;
}

.appr_sign_table tfoot tr td:last-child {
    border-right: none;
}

.appr_opinion_write {
    position: absolute;
    bottom: 30px;
    right: 0;
    width: 470px;
    height: 70px;
    margin-bottom: 5px;
}

.appr_opinion_write textarea {
    min-width: 470px;
    max-width: 470px;
    min-height: 70px;
    max-height: 70px;
    font-size: 13px;
    font-weight: 500;
    color: #777;
}

.appr_opinion_btn {
    position: absolute;
    bottom: 0;
    right: 0;
    display: inline-block;
    width: 100%;
    height: 30px;
}

.status_table {
    display: inline-block;
    width: 85px;
    height: 25px;
    line-height: 25px;
    border-radius: 3px;
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 1px;
}

.status {
    float: left;
    display: inline-block;
    width: 80px;
    height: 30px;
    line-height: 30px;
    border-radius: 3px;
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 1px;
}

.status_type0 {
    background-color: rgba(250, 250, 250, .1);
    color: #333;
    cursor: text !important;
}

.status_type1 {
    background-color: rgba(10, 187, 135, .1);
    color: #0abb87;
    cursor: text !important;
}

.status_type2 {
    background-color: rgba(93, 120, 255, .1);
    color: #5d78ff;
    cursor: text !important;
}

.status_type3 {
    background-color: rgba(253, 57, 122, .1);
    color: #fd397a;
    cursor: text !important;
}

.status_type4 {
    background-color: rgba(255, 184, 34, .1);
    color: #ffb822;
    cursor: text !important;
}

.status_type5 {
    background-color: rgba(104, 81, 161, .1);
    color: #5b35bb;
    cursor: text !important;
}

/* 출장신청서 */
.content::after {
    content: '';
    display: block;
    clear: both;
}

.content.ea_bt_wrap {
    position: relative;
    height: unset !important;
}

.grid_title {
    display: inline-block;
    width: 100%;
    margin-bottom: 6px;
    text-align: left;
    color: #828B97;
    font-size: 13px;
    font-weight: 500;
}

.ea_bt_form_title {
    display: inline-block;
    width: 100%;
    margin-bottom: 16px;
    text-align: left;
    color: #828B97;
    font-size: 13px;
    font-weight: 500;
}

.grid_layout .ea_bt_form_title {
    margin-top: 0;
    margin-bottom: 0;
}

.ea_bt_form_title2 {
    display: inline-block;
    width: 100%;
    /* height: 14px; */
    /* margin-bottom: 10px; */
    text-align: left;
    color: #828B97;
    font-size: 13px;
    font-weight: 500;
    margin-bottom: 6px;
    padding-left: 6px;
}

/* ============================================================================
   EA Notice Box - 유의사항 알림 박스 스타일
   ============================================================================ */
.ea_notice_box {
    background: linear-gradient(135deg, #FFF8E6 0%, #FFF3D4 100%);
    border: 1px solid #F0D9A0;
    border-radius: 8px;
    padding: 16px 20px;
    margin: 10px 0;
    box-shadow: 0 2px 4px rgba(0,0,0,0.04);
}

.ea_notice_title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #B8860B;
    margin-bottom: 12px;
}

.ea_notice_icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    background: #F5A623;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    border-radius: 50%;
}

.ea_notice_list {
    padding-left: 28px;
    margin: 0;
}

.ea_notice_list li {
    position: relative;
    font-size: 13px;
    line-height: 1.7;
    color: #666;
    padding-left: 12px;
    margin-bottom: 6px;
}

.ea_notice_list li:last-child {
    margin-bottom: 0;
}

.ea_notice_list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
    width: 4px;
    height: 4px;
    background: #F5A623;
    border-radius: 50%;
}

/* 결재의견 섹션 - approval_step3_wrap과 동일한 스타일 */
.ea_comment_section {
    display: inline-block;
    width: 100%;
    padding-top: 20px;
    position: relative;
    padding-bottom: 27px;
    border-bottom: 1px dashed #D5D5D5;
}

.ea_comment_section .approval_step_title {
    display: block;
    padding-bottom: 12px;
}

.ea_form_title {
    text-align: left;
    color: #666;
    font-size: 13px;
    font-weight: 500;
}

.ea_bt_txt0 {
    display: inline-block;
    line-height: 120%;
    font-size: 13px;
    font-weight: 100;
    float: right;
    margin-top: 8px;
    margin-right: 20px;
}

.ea_bt_form_inner {
    min-height: 686px;
    height: 686px;
    padding: 10px;
    overflow-y: scroll;
    -ms-overflow-style: none;
}

.ea_bt_form_inner2 {
    min-height: 575px;
    height: 575px;
    /* 	padding: 10px; */
    overflow-y: scroll;
    -ms-overflow-style: none;
}

.ea_bt_form_inner3 {
    min-height: 536px;
    height: 536px;
    padding: 10px;
    overflow-y: scroll;
    -ms-overflow-style: none;
}

.ea_bt_form_inner4 {
    min-height: 800px;
    height: 800px;
    padding: 10px;
    overflow-y: scroll;
    -ms-overflow-style: none;
}

.ea_bt_form {
    /* 	display: inline-block; */
    /* 	width: 70%; */
    /* 	margin-right: 1%; */
    /* 	float: left; */
    /* 	border: 1px solid #dfdfdf; */
    /* 	background-color: #fff; */
    /* 	margin-bottom: 10px; */
    /* 	border-radius: 3px; */
    /* 	box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1); */
    display: inline-block;
    width: calc(100% - 380px);
    height: auto;
    float: left;
    margin-right: 20px;
    margin-bottom: 22px;
    padding: 20px 32px;
    background-color: #fff;
    border: 1px solid #E7E7E9;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border-radius: 4px;
}

.ea_modify_form {
    /* 	display: inline-block; */
    /* 	width: 70%; */
    /* 	margin-right: 1%; */
    /* 	float: left; */
    /* 	border: 1px solid #dfdfdf; */
    /* 	background-color: #fff; */
    /* 	margin-bottom: 10px; */
    /* 	border-radius: 3px; */
    /* 	box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1); */
    display: inline-block;
    width: calc(100% - 380px);
    height: auto;
    float: left;
    margin-right: 20px;
    margin-bottom: 22px;
    padding: 20px 32px;
    background-color: #fff;
    border: 1px solid #E7E7E9;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border-radius: 4px;
}

.ea_bt_form.form2 {
    height: auto;
}

.ea_bt_form.form4 {
    height: auto;
}

.ea_bt_form_txt {
    font-size: 13px;
    color: #555;
}

.ea_bt_process {
    display: inline-block;
    width: 360px;
    /*height: 100vh;*/
    background: transparent;
    position: absolute;
    top: 0;
    right: 0;
    text-align: left;
}

/* split-row 내부에서는 flex 레이아웃 사용 */
.split-row > .ea_bt_process {
    display: block;
    width: 100%;
    position: static;
}

.ea_bt_process::after {
    content: '';
    display: block;
    claer: both;
}

.ea_bt_quick {
    position: relative;
    display: none;
    width: 182px;
    height: 100%;
    float: left;
    background-color: #f4f4f4;
    text-align: center;
    padding-top: 75px;
}

.quick_title {
    position: absolute;
    top: 37px;
    left: 39px;
    font-size: 15px;
    font-weight: 500;
    color: #222222;
}

.quick_btn {
    position: absolute;
    top: 31px;
    right: 36px;
    width: 20px;
    height: 20px;
    border: 1px solid #9e9e9e;
    border-radius: 7px;
    background-color: #b8b8b8;
    background-image: url(/resources/images/quick_btn.png);
    background-size: 20px;
    background-position: center center;
    background-repeat: no-repeat;
}

.ea_bt_quick::after {
    content: '';
    display: block;
    claer: both;
}

.quick_menu {
    display: inline-block;
    float: left;
    width: 113px;
    height: 31px;
    background-color: #fff;
    border: 1px solid #dbdbdb;
    border-radius: 5px;
    margin-bottom: 7px;
    margin-left: 30px;
    font-size: 60px;
    cursor: pointer;
}

.quick_menu_link {
    display: inline-block;
    width: 100%;
    height: 100%;
    vertical-align: top;
    line-height: 31px;
    padding: 0 8px;
    text-align: left;
    font-size: 13px;
    color: #666666;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sing_step0 {
    display: inline-block;
    width: 100%;
    min-height: 120px;
    position: relative;
}

.sing_step1 {
    display: inline-block;
    width: 100%;
    min-height: 120px;
    position: relative;
    padding-top: 62px;
}

.sing_step2 {
    display: inline-block;
    width: 100%;
    min-height: 120px;
    position: relative;
    padding-top: 62px;
}

.sing_step3 {
    display: inline-block;
    width: 100%;
    min-height: 120px;
    position: relative;
    padding-top: 62px;
}

.sing_step4 {
    display: inline-block;
    width: 100%;
    min-height: 120px;
    position: relative;
    padding-top: 62px;
}

.sign_step_title {
    position: absolute;
    top: 38px;
    left: 35px;
    font-size: 16px;
    color: #222222;
    font-weight: 500;
}

.sign_step_info {
    position: absolute;
    top: 40px;
    left: 120px;
    font-size: 13px;
    color: #ec7b7e;
}

.sign_step_info2 {
    position: absolute;
    top: 80px;
    right: 20px;
    font-size: 13px;
    color: #ec7b7e;
}

.sign_step_info3 {
    position: static;
    font-size: 13px;
    color: #ec7b7e;
}

.sign_step_btn {
    width: 89px;
    height: 34px;
    background-color: #fff;
    border: 1px solid #cccccc;
    text-align: center;
    color: #666666;
    font-size: 12px;
}

.sign_step_wrap {
    display: inline-block;
    width: 100%;
    padding: 13px 5px;
}

.sign_step {
    display: inline-block;
    width: 100%;
    height: 32px;
    /*     line-height:26px; */
    padding: 3px 4px;
    padding-left: 34px;
    position: relative;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sign_step .close_icon {
    display: none;
    width: 20px;
    height: 20px;
    padding-top: 7px;
    text-align: center;
    position: absolute;
    top: 6px;
    right: 6px;
}

.close_icon.close_icon_as {
    position: absolute;
    top: 5px;
    left: 180px;
}

/* .sign_step:hover::after{ */
/* 	content:""; */
/* 	position:absolute; */
/* 	top:12px; */
/* 	right:12px; */
/* 	display:inline-block; */
/* 	width:8px; */
/* 	height:8px; */
/* 	background-image:url(/resources/images/sign_step_delete.png); */
/* 	background-position:center center; */
/* 	background-size:8px; */
/* 	background-repeat:no-repeat; */
/* 	cursor:pointer; */
/* } */
.sign_step:hover {
    background-color: #f5f5f5;
    border-radius: 16px;
}

.sign_step:hover .close_icon {
    display: inline-block;
    cursor: pointer;
}

.sign_step .sign_status {
    display: inline-block;
    width: 49px;
    height: 24px;
    line-height: 24px;
    text-align: center;
    background-color: #fff;
    border-radius: 12px;
    font-size: 13px;
    margin-right: 10px;
    float: left;
}

.sign_status.status0 {
    border: 1px solid #53b0f8;
    color: #53b0f8;
}

.sign_status.status1 {
    border: 1px solid #32c5d2;
    color: #32c5d2;
}

.sign_status.status2 {
    border: 1px solid #8e9cad;
    color: #8e9cad;
}

.sign_status.status3 {
    border: 1px solid red;
    color: red;
}

.sign_step .sign_name {
    font-size: 14px;
    color: #222222;
    margin-right: 5px;
    display: inline-block;
    width: 145px;
    height: 24px;
    line-height: 24px;
    overflow: hidden;
    float: left;
}

.sign_step .sign_grade {
    font-size: 13px;
    color: #444444;
    margin-right: 5px;
    display: inline-block;
    width: 78px;
    height: 24px;
    line-height: 24px;
    overflow: hidden;
    float: left;
}

.sign_step .sign_team {
    font-size: 13px;
    color: #888888;
    /* 	margin-left: 2%; */
    display: inline-block;
    width: 130px;
    height: 24px;
    line-height: 24px;
    overflow: hidden;
    float: left;
}

.sign_step .sign_date {
    font-size: 13px;
    color: #888888;
    margin-left: 5px;
    display: inline-block;
    width: 115px;
    height: 24px;
    line-height: 24px;
    overflow: hidden;
    float: left;
}

.sign_file_wrap {
    display: inline-block;
    width: 100%;
    padding: 13px 30px;
}

.sign_file {
    display: inline-block;
    width: 100%;
    height: 32px;
    line-height: 26px;
    padding: 3px 4px;
    padding-left: 20px;
    margin-bottom: 10px;
    position: relative;
    font-size: 13px;
    color: #555555;
}

.sign_file::before {
    content: "";
    position: absolute;
    top: 15px;
    left: 10px;
    width: 4px;
    height: 2px;
    background-color: #555555;
}

.sign_file_volume {
    position: absolute;
    top: 3px;
    right: 40px;
    font-size: 13px;
    color: #888888;
}

.sign_file .close_icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    padding-top: 7px;
    text-align: center;
    position: absolute;
    top: 6px;
    right: 6px;
}

/* .sign_file::after{ */
/* 	content:""; */
/* 	position:absolute; */
/* 	top:13px; */
/* 	right:12px; */
/* 	display:inline-block; */
/* 	width:8px; */
/* 	height:8px; */
/* 	background-image:url(/resources/images/sign_step_delete.png); */
/* 	background-position:center center; */
/* 	background-size:8px; */
/* 	background-repeat:no-repeat; */
/* 	cursor:pointer; */
/* } */
.sgin_opinion_wrap {
    display: inline-block;
    width: 100%;
    padding: 13px 30px;
    padding-bottom: 70px;
}

.sign_opinion_left {
    display: inline-block;
    width: 100%;
    min-height: 83px;
    margin-bottom: 55px;
    position: relative;
}

.sign_opinion_left .sign_opinion_img {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background-image: url(/resources/images/profile_default.svg);
    background-size: 48px;
    background-position: center center;
    background-repeat: no-repeat;
    text-align: center;
}

.sign_opinion_left .sign_opinion_img img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
}

.sign_opinion_left .sign_opinion_name {
    position: absolute;
    top: 0;
    left: 62px;
    display: inline-block;
    width: calc(100% - 62px);
    height: 28px;
    font-size: 14px;
    font-weight: 500;
    color: #222222;
}

.sign_opinion_left .sign_opinion_name .sign_opinion_date {
    font-size: 13px;
    color: #888888;
    font-weight: normal;
}

.sign_opinion_left .sign_opinion_name .sign_opinion_date.date0 {
    padding-left: 17px
}

.sign_opinion_left .sign_opinion_name .sign_opinion_date.date1 {
    padding-left: 6px
}

.sign_opinion_left .sign_opinion_txt {
    position: absolute;
    top: 28px;
    left: 62px;
    display: inline-block;
    width: calc(100% - 62px);
    min-height: 40px;
    padding: 12px 19px;
    background-color: #eaeff4;
    border-radius: 10px;
    font-size: 14px;
;
    color: #444444;
    line-height: 150%;
    max-height: 100px;
    overflow-y: scroll;
}

.sign_opinion_right {
    display: inline-block;
    width: 100%;
    min-height: 83px;
    margin-bottom: 55px;
    position: relative;
}

.sign_opinion_right .sign_opinion_img {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background-image: url(/resources/images/profile_default.svg);
    background-size: 48px;
    background-position: center center;
    background-repeat: no-repeat;
    text-align: center;
}

.sign_opinion_right .sign_opinion_img img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
}

.sign_opinion_right .sign_opinion_name {
    position: absolute;
    top: 0;
    right: 62px;
    display: inline-block;
    width: calc(100% - 62px);
    height: 28px;
    font-size: 14px;
    font-weight: 500;
    color: #222222;
    text-align: right;
}

.sign_opinion_right .sign_opinion_name .sign_opinion_date {
    font-size: 13px;
    color: #888888;
    font-weight: normal;
}

.sign_opinion_right .sign_opinion_name .sign_opinion_date.date0 {
    padding-right: 17px
}

.sign_opinion_right .sign_opinion_name .sign_opinion_date.date1 {
    padding-right: 6px
}

.sign_opinion_right .sign_opinion_txt {
    position: absolute;
    top: 28px;
    right: 62px;
    display: inline-block;
    width: calc(100% - 62px);
    min-height: 40px;
    padding: 12px 19px;
    background-color: #eaeff4;
    border-radius: 10px;
    font-size: 14px;
;
    color: #444444;
    line-height: 150%;
    max-height: 100px;
    overflow-y: scroll;
}

.sign_opinion_text {
    display: inline-block;
    /*width:480px;*/
    width: 25%;
    min-height: 160px;
    height: auto;
    position: fixed;
    bottom: 30px;
    right: 60px;
}

.sign_opinion_text textarea {
    width: 100%;
    height: 100px;
}

.sign_opinion_text .sign_opinion_btn {
    /* 	position:absolute; */
    /* 	bottom:10px; */
    /* 	right:0; */

}

.ea_left_scroll_wrap {
    /*min-height: 672px;*/
    /*min-height: 583px;*/
    /*min-height: calc(100vh - 308px);*/ /* calc 제거 */
    /*max-height: calc(100vh - 308px);*/ /* calc 제거 */
    display: inline-block;
    width: calc(100% - 380px);
    float: left;
    margin-right: 20px;
    padding: 20px 32px;
    background-color: #fff;
    border: 1px solid #E7E7E9;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border-radius: 4px;
    overflow-y: auto;
    overflow-x: hidden;
}

/* split-row 내부에서는 flex 레이아웃 사용 */
.split-row > .ea_left_scroll_wrap {
    display: block;
    width: 100%;
    float: none;
    margin-right: 0;
    box-sizing: border-box;
}

/* 뷰모드일 때 form_object 커서 일반모양으로 */
#ea_view_mode~.ea_left_scroll_wrap .form_object {
    cursor: default;
}

/* 뷰모드일 때 인풋 배경 색 변경, 필수값 색 변경 없게 */
#ea_view_mode~.ea_left_scroll_wrap input:read-only,
#ea_view_mode~.ea_left_scroll_wrap textarea:read-only {
    background-color: #fff;
    cursor: default;
}

#ea_view_mode~.ea_left_scroll_wrap .blue {
    color: #828B97;
}

/* .ea_left_scroll { */
/* 	width: 100%; */
/* 	height: 100%; */
/* 	overflow-y: scroll; */
/* } */

/* .ea_left_scroll::-webkit-scrollbar { */
/* 	width: 5px !important; */
/* 	display: block !important; */
/* } */

/* .ea_left_scroll::-webkit-scrollbar-button { */
/* 	width: 0 !important; */
/* 	height: 0 !important; */
/* } */

/* .ea_left_scroll::-webkit-scrollbar-thumb { */
/* 	/*     border-radius: 3px !important; */
/*     background-color: #d3d7de !important; */

/* } */
/* .ea_left_scroll::-webkit-scrollbar-track { */
/* 	background-color: transparent !important; */
/* } */
/* .ea_right_scroll::-webkit-scrollbar { */
/* 	width: 5px !important; */
/* 	display: block !important; */
/* } */
/* .ea_right_scroll::-webkit-scrollbar-button { */
/* 	width: 0 !important; */
/* 	height: 0 !important; */
/* } */
/* .ea_right_scroll::-webkit-scrollbar-thumb { */
/* 	border-radius: 3px !important; */
/* 	background-color: #d3d7de !important; */
/* } */
/* .ea_right_scroll::-webkit-scrollbar-track { */
/* 	background-color: transparent !important; */
/* } */
/*modal*/

/*모달 자동 포커스 방지*/
.ui-dialog:focus {
    outline: none !important;
}

.ui-dialog {
    border-radius: 4px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    max-width: 98vw;
    max-height: 90vh;
    position: fixed !important;
}

.ui-dialog-titlebar {
    height: 50px;
    line-height: 50px;
    padding: 0 32px;
    background-color: #fff;
    border-bottom: 1px solid #E7E7E9;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

.ui-dialog-title {
    display: inline-block;
    font-size: 15px;
    font-weight: 400;
    color: #333;
}

.ui-button {
    /* 	float: right; */
    /* 	margin-top: 5px; */
    /* 	margin-left: 5px; */
    /* 	width: 35px; */
    /* 	height: 35px; */
    /* 	font-size: 12px; */
    /* 	font-weight: 500; */
    /* 	color: #74788d; */

}

.emax_modal_popup {
    z-index: 99999;
    box-shadow: 3px 3px 20px 0px;
}

.ui-dialog-buttonset {
    width: 100%;
    height: 73px;
    line-height: 73px;
    padding: 0 32px;
    text-align: right;
    background-color: #fff;
    /* 	background-color: #fafafa; */
    /* 	border-top: 1px solid #ebedf2;
        border-bottom: 1px solid #ebedf2; */
    border-top: 1px solid #E7E7E9;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

.ui-dialog-titlebar-close {
    position: absolute;
    top: 14px;
    right: 19px;
    width: 12px;
    height: 12px;
    background-image: url(/resources/images/delete3.png);
    background-repeat: no-repeat;
    background-size: 12px;
    background-position: center center;
}

.ui-icon-closethick {
    display: inline-block;
    /*     width: 35px;
        height: 35px;
        background-color: #fff;
        margin-top: 2px;
        margin-right: 7px;
        background-image: url(/resources/images/modal_close_btn.png);
        background-repeat: no-repeat;
        background-position: right center;
        background-size: 14px; */
}

body.modal_body::before {
    content: none;
    background-image: none !important;
}

body.modal_body {
    /* 	background-color: #fafafa; */
    padding: 20px 32px;
    background-color: #fff;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    overflow: auto;
}

.modal_wrap {
    /*display: inline-block;*/
    width: 100%;
    height: 100%;
    /* 	background-color: #fafafa; */
    background-color: #fff;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}


.modal_header_wrap {
    width: 100%;
    margin-bottom: 20px;
    /* 	padding: 14px; */
    /* 	padding-top: 18px; */
    /* 	padding-bottom: 14px; */
    /* 	margin-bottom: 11px; */
    /* 	background-color: #fff; */
    /* 	border: 1px solid #dfdfdf; */
    /* 	border-radius: 3px; */
    text-align: right;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

.modal_header_wrap::after {
    content: '';
    display: block;
    clear: both;
}

body.modal_body .preview_list_wrap {
    /* 	margin-bottom:20px;	 */
    width: 100%;
    height: 75px;
    overflow: hidden;
    margin-bottom: 24PX;
}


.modal_search_inp {
    margin-bottom: 0 !important;
}

.modal_search_btn {
    margin-top: 20px;
}

.modal_header_wrap:has(.form_object):has(.modal_search_btn) {
    display: flex;
    align-items: flex-end;
}

.modal_header_wrap:has(.form_object):has(.modal_search_btn) .modal_search_btn {
    height: 36px;
    line-height: 21px;
}

.modal_header_wrap:has(.form_object):has(.modal_search_btn) .form_object:not(:last-child) {
    margin-right: 5px !important;
}

.modal_header_wrap:has(.form_object):has(.modal_search_btn) .form_object {
    flex: 1;
    width: auto !important;
    margin-bottom: 0 !important;
    margin-right: 0 !important;
}

/* .modal_search_btn:hover{background-color:#fff;border:1px solid #5d78ff;color:#5d78ff;} */
.modal_contents_wrap {
    /* 	width: 100%; */
    /* 	padding: 13px 12px; */
    /* 	margin-bottom: 10px; */
    /* 	background-color: #fff; */
    /* 	border: 1px solid #dfdfdf; */
    /* 	border-radius: 3px; */
    height: calc(100% - 78px);
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

.modal_contents_wrap.modal_contents_wrap_expend {
    height: 100%;
}

.modal_contents_wrap iframe {
    border: none !important;
}


/* 모달 버튼 공통 스타일 */
.modal_footer_btn0,
.modal_footer_btn1 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 70px;
    height: 34px;
    padding: 0 16px;
    font-size: 13px;
    font-weight: 500;
    border-radius: 4px;
    cursor: pointer;
    box-sizing: border-box;
    transition: all 0.15s ease;
}

/* 취소/닫기 버튼 (Secondary) */
.modal_footer_btn0 {
    background-color: #fff;
    border: 1px solid var(--main-color);
    color: var(--main-color);
}

.modal_footer_btn0:hover {
    background-color: var(--main-color-hover);
    border-color: var(--btn-primary-hover);
}

.modal_footer_btn0:active {
    background-color: var(--main-color);
    color: #fff;
    transform: scale(0.98);
}

/* 확인/저장 버튼 (Primary) */
.modal_footer_btn1 {
    background-color: var(--main-color);
    border: 1px solid var(--main-color);
    color: #fff;
}

.modal_footer_btn1:hover {
    background-color: var(--btn-primary-hover);
    border-color: var(--btn-primary-hover);
}

.modal_footer_btn1:active {
    background-color: var(--main-btn-hover);
    transform: scale(0.98);
}

/* realgrid skin에서 같은 클래스 사용.. popup_mask  */
.popup_mask {
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0.2;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 9000;
}

.ajax_mask {
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 9000;
    display: none;
}

.disabled {
    curosr: pointer;
}

/* 법인등록>첨부파일 */
.file_upload {
    height: 120px;
    line-height: 170px;
    text-align: center;
    border: 2px dashed #dfdfdf;
    font-size: 14px;
    color: #74788d;
    cursor: pointer;
    background-image: url(/resources/images/upload-solid.png);
    background-repeat: no-repeat;
    background-position: center 20px;
    background-size: 40px;
}

.file_upload .file_txt {
    color: #2275d7;
}

.file_upload_list {
    height: 470px;
    min-height: 470px;
    padding: 10px;
    border: 1px solid #dfdfdf;
}

.file_upload_list.file_blank {
    line-height: 450px;
    text-align: center;
}

.file_upload_list.file_blank:before {
    content: '첨부된 파일이 없습니다';
    font-size: 14px;
    color: #74788d;
}

.file_upload_list::after {
    content: '';
    display: block;
    clear: both;
}

.file_upload_list .file_link {
    float: left;
    position: relative;
    display: inline-block;
    width: 200px;
    height: 120px;
    line-height: 210px;
    padding: 0 5px;
    margin-right: 7px;
    margin-bottom: 5px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    background-color: #f7f8fa;
    font-size: 12px;
    color: #74788d;
    font-weight: 500;
    border-radius: 4px;
}

.file_upload_list .file_link .file_name {
    font-size: 12px;
    color: #2275d7;
    font-weight: 500;
    cursor: pointer;
}

.file_upload_list .file_link .file_delete {
    position: absolute;
    top: 0;
    right: 5px;
    display: inline-block;
    width: 20px;
    height: 30px;
    line-height: 30px;
    margin-right: 0;
    font-size: 14px;
    color: #a2a5b9;
}

.file_upload_list .file_link .file_delete:hover {
    color: #2275d7;
}

.file_upload_list .file_link.file {
    background-image: url(/resources/images/file-regular.png);
    background-repeat: no-repeat;
    background-position: center 20px;
    background-size: 50px;
}

.file_upload_list .file_link.file-alt-regular {
    background-image: url(/resources/images/file-alt-regular.png);
    background-repeat: no-repeat;
    background-position: center 20px;
    background-size: 50px;
}

.file_upload_list .file_link.file-archive-regular {
    background-image: url(/resources/images/file-archive-regular.png);
    background-repeat: no-repeat;
    background-position: center 20px;
    background-size: 50px;
}

.file_upload_list .file_link.file-audio-regular {
    background-image: url(/resources/images/file-audio-regular.png);
    background-repeat: no-repeat;
    background-position: center 20px;
    background-size: 50px;
}

.file_upload_list .file_link.file-code-regular {
    background-image: url(/resources/images/file-code-regular.png);
    background-repeat: no-repeat;
    background-position: center 20px;
    background-size: 50px;
}

.file_upload_list .file_link.file-excel-regular {
    background-image: url(/resources/images/file-excel-regular.png);
    background-repeat: no-repeat;
    background-position: center 20px;
    background-size: 50px;
}

.file_upload_list .file_link.file-image-regular {
    background-image: url(/resources/images/file-image-regular.png);
    background-repeat: no-repeat;
    background-position: center 20px;
    background-size: 50px;
}

.file_upload_list .file_link.file-pdf-regular {
    background-image: url(/resources/images/file-pdf-regular.png);
    background-repeat: no-repeat;
    background-position: center 20px;
    background-size: 50px;
}

.file_upload_list .file_link.file-powerpoint-regular {
    background-image: url(/resources/images/file-powerpoint-regular.png);
    background-repeat: no-repeat;
    background-position: center 20px;
    background-size: 50px;
}

.file_upload_list .file_link.file-video-regular {
    background-image: url(/resources/images/file-video-regular.png);
    background-repeat: no-repeat;
    background-position: center 20px;
    background-size: 50px;
}

.file_upload_list .file_link.file-word-regular {
    background-image: url(/resources/images/file-word-regular.png);
    background-repeat: no-repeat;
    background-position: center 20px;
    background-size: 50px;
}

/* 나의프로필 */
.form_row {
    float: left;
    min-height: 800px !important;
    max-height: 800px;
    padding: 10px;
    border: 1px solid #dfdfdf;
    background-color: #fff;
    border-radius: 3px;
    overflow-y: scroll;
    scroll-behavior: smooth;
    flex-wrap: nowrap;
    -ms-overflow-style: none;
}

.form_row.profile_overview {
    width: calc(25% - 20px) !important;
    margin-right: 20px
}

.profile_overview .profile {
    width: 100%;
    height: 100%;
}

.profile.profile::after {
    content: '';
    display: block;
    clear: both;
}

.profile_overview .profile .profile_img {
    display: inline-block;
    width: 100px;
    height: 100px;
    border-radius: 10px;
    float: left;
    margin-right: 20px;
}

.profile_img::after {
    content: '';
    display: block;
    clear: both;
}

.profile_overview .profile .profile_img img {
    width: 100%;
    border-radius: 10px;
}

.profile_overview .profile .profile_info0 {
    display: inline-block;
    height: 100px;
}

.profile_info0::after {
    content: '';
    display: block;
    clear: both;
}

.profile_info0 .name {
    font-size: 34px;
    color: #222;
    font-weight: 500;
    padding-bottom: 20px;
}

.profile_info0 .team {
    font-size: 26px;
    color: #222;
    padding-bottom: 40px;
}

.profile_info0 .number {
    font-size: 16px;
    font-weight: 500;
    padding-bottom: 8px;
}

.profile_info0 .number .number_title {
    display: inline-block;
    width: 70px;
}

.profile_info0 .date {
    font-size: 16px;
    font-weight: 500;
}

.profile_info0 .date .date_title {
    display: inline-block;
    width: 70px;
}

/* .profile_overview .profile .profile_info0 .profile_txt0{font-size:16px;color:#48465b;;font-weight: 500;margin-bottom:15px;} */
/* .profile_overview .profile .profile_info0 .profile_txt1{font-size:14px;color:#74788d;font-weight:400;margin-bottom:15px;} */
/* .profile_overview .profile .profile_info0 .profile_txt1 span{font-size:12px;color:#5d78ff;} */
/* .profile_overview .profile .profile_info0 .profile_btn{clear:both;} */
.profile_overview .profile .profile_info_table::before {
    content: '';
    display: block;
    clear: both;
}

.profile_overview .profile .profile_info_table {
    margin-top: 20px;
}

.profile_info_table tbody tr th {
    padding: 5px 0;
    text-align: left;
    font-size: 14px;
    color: #48465b;
    font-weight: 500;
    letter-spacing: 1px;
}

.profile_info_table tbody tr td {
    padding: 5px 10px;
    text-align: right;
    font-size: 12px;
    color: #74788d;
    font-weight: 500;
    letter-spacing: 1px;
}

/* 결제조건등록 */
.term_calc {
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    background-color: #fff;
    padding: 20px;
    border-radius: 5px;
    border: 1px solid #dbdbdb;
}

.term_calc_title {
    display: inline-block;
    width: 100%;
    font-size: 14px;
}

.term_calc_info {
    font-size: 12px;
    padding-top: 5px;
    padding-bottom: 10px;
}

/*근태일정관리*/
.form_calender {
    z-index: 10;
    display: inline-block;
    width: 31%;
    height: 80px;
    border: 1px solid #ccc;
    border-top: none;
    position: absolute;
    top: 40px;
    left: 31.3%;
    text-align: left;
    padding-left: 15px;
    font-size: 13px;
    color: #48465b;
    line-height: 0px;
}

.form_calender2 {
    z-index: 10;
    display: inline-block;
    width: 15.5%;
    height: 80px;
    border: 1px solid #ccc;
    border-top: none;
    position: absolute;
    top: 40px;
    left: 46.7%;
    text-align: left;
    padding-left: 15px;
    font-size: 13px;
    color: #48465b;
    line-height: 0px;
}

.form_calender3 {
    z-index: 10;
    display: inline-block;
    width: 15.5%;
    height: 80px;
    border: 1px solid #ccc;
    border-top: none;
    position: absolute;
    top: 40px;
    left: 16.2%;
    text-align: left;
    padding-left: 15px;
    font-size: 13px;
    color: #48465b;
    line-height: 0px;
}

.form_calender4 {
    z-index: 10;
    display: inline-block;
    width: 31%;
    height: 80px;
    border: 1px solid #ccc;
    border-top: none;
    position: absolute;
    top: 40px;
    left: 46.7%;
    text-align: left;
    padding-left: 15px;
    font-size: 13px;
    color: #48465b;
    line-height: 0px;
}

.form_calender_bdl {
    display: inline-block;
    width: 15px;
    height: 1px;
    background-color: #ccc;
    position: absolute;
    top: 40px;
    left: 31.3%;
}

.form_calender_bdr {
    display: inline-block;
    width: 465px;
    height: 1px;
    background-color: #ccc;
    position: absolute;
    top: 40px;
    left: 36.8%;
}

.form_calender_bdl2 {
    display: inline-block;
    width: 10px;
    height: 1px;
    background-color: #ccc;
    position: absolute;
    top: 40px;
    left: 46.7%;
}

.form_calender_bdr2 {
    display: inline-block;
    width: 177px;
    height: 1px;
    background-color: #ccc;
    position: absolute;
    top: 40px;
    left: 52.5%;
}

.form_calender_bdl3 {
    display: inline-block;
    width: 10px;
    height: 1px;
    background-color: #ccc;
    position: absolute;
    top: 40px;
    left: 16.2%;
}

.form_calender_bdr3 {
    display: inline-block;
    width: 205px;
    height: 1px;
    background-color: #ccc;
    position: absolute;
    top: 40px;
    left: 20.5%;
}

.form_calender_bdl4 {
    display: inline-block;
    width: 15px;
    height: 1px;
    background-color: #ccc;
    position: absolute;
    top: 40px;
    left: 46.7%;
}

.form_calender_bdr4 {
    display: inline-block;
    width: 468px;
    height: 1px;
    background-color: #ccc;
    position: absolute;
    top: 40px;
    left: 52%;
}

/* cip자산 등록 */
.asset_regist {
    min-height: 720px;
    padding: 10px;
}

.asset_regist_title {
    display: inline-block;
    font-size: 14px;
    font-weight: 400;
    color: rgb(130, 139, 151);
}

/* 계정별 보기화면 등록팝업 */
.popu_info_text {
    padding-top: 10px;
    font-size: 12px;
}

.depreciation_table {
    margin-top: 20px;
}

.depreciation_table thead tr th {
    text-align: center;
    font-size: 13px;
    font-weight: 500;
    color: #333;
    padding: 7px 0;
    border-bottom: 1px solid #ccc;
}

.depreciation_table tbody tr th {
    text-align: center;
    font-size: 12px;
    font-weight: 400;
    color: #777;
    padding: 7px 0;
}

.depreciation_table tbody tr td {
    text-align: center;
    font-size: 12px;
    color: #777;
    padding: 5px 0;
    padding: 7px 0;
}

.depreciation_table tbody tr.on {
    background-color: #eee;
}

.pay_cal .pay_cal_textarea {
    display: inline-block;
    width: 100%;
    height: calc(50% - 100px);
}

.pay_cal .pay_cal_textarea textarea {
    width: 100%;
    float: left;
    height: 100%;
    min-height: 165px;
}

.wi_bi_section {
    padding: 10px;
    border: 1px solid #dfdfdf;
    border-radius: 3px;
}

.wi_bi_section1 {
    min-height: 242px;
    height: 242px;
    padding: 10px;
    border: 1px solid #dfdfdf;
    border-radius: 3px;
}

.aaset_regist_sec0 {
    display: inline-block;
    width: 100%;
    height: 100%;
    margin-right: 1%;
    float: left;
    padding: 20px 31px 0px 32px;
    border: 1px solid #dfdfdf;
    background-color: #fff;
    margin-bottom: 10px;
    border-radius: 3px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
}

.aaset_regist_sec1 {
    display: inline-block;
    width: 34%;
    height: 100%;
    float: left;
    border: 1px solid #dfdfdf;
    background-color: #fff;
    padding: 10px;
    margin-bottom: 10px;
    border-radius: 3px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
}

.regist_sec1_inner {
    padding: 10px;
}

.regist_sec1_title {
    display: inline-block;
    width: 100%;
    height: 53px;
    line-height: 53px;
    padding-left: 27px;
    font-size: 15px;
    color: #2e2e2e;
    background-color: #fff;
    margin-bottom: 20px;
    border-bottom: 1px solid #dbdbdb;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}

.holiday_notice_wrap {
    display: inline-block;
    width: 100%;
    height: 100%;
    overflow-y: scroll;
    padding: 20px 27%;
    text-align: center;
}

.holiday_notice_wrap .holiday_notice_title {
    font-size: 24px;
    letter-spacing: 1px;
    line-height: 150%;
    padding-bottom: 70px;
}

.holiday_notice_wrap .holiday_notice_title span {
    color: #aaa;
}

.holiday_notice_wrap .holiday_notice_table0 {
    width: 300px;
    border: 1px solid #333;
    float: right;
    margin-bottom: 50px;
}

.holiday_notice_wrap .holiday_notice_table0 tr th {
    background-color: #f9f9f9;
    font-size: 14px;
    text-align: center;
    padding: 7px 10px;
    border-right: 1px solid #333;
}

.holiday_notice_wrap .holiday_notice_table0 tr td {
    padding: 7px 10px;
}

.holiday_notice_wrap .holiday_notice_table0 tr:first-child {
    border-bottom: 1px solid #333;
}

.holiday_notice_wrap .holiday_notice_table1 {
    border: 1px solid #333;
    margin-bottom: 50px;
}

.holiday_notice_wrap .holiday_notice_table1 thead tr {
    background-color: #f9f9f9;
    border-bottom: 1px solid #333;
}

.holiday_notice_wrap .holiday_notice_table1 thead tr th {
    padding: 7px 10px;
    border-right: 1px solid #333;
}

.holiday_notice_wrap .holiday_notice_table1 tbody tr td {
    height: 30px;
    padding: 7px 10px;
    border-right: 1px solid #333;
}

.holiday_notice_wrap .holiday_notice_txt0 {
    font-size: 15px;
    text-align: left;
    line-height: 170%;
    letter-spacing: 2px;
    margin-bottom: 20px;
}

.holiday_notice_wrap .holiday_notice_txt0 span {
    padding: 0 60px;
}

.holiday_notice_wrap .holiday_notice_txt0 p {
    padding: 10px 0;
}

.holiday_notice_wrap .holiday_notice_txt1 {
    padding: 5px 10px;
    font-size: 14px;
    text-align: left;
    line-height: 170%;
    letter-spacing: 2px;
    border: 1px solid #333;
    margin-bottom: 10px;
}

.holiday_notice_wrap .holiday_notice_txt1 span {
    display: inline-block;
    width: 100%;
    padding: 10px 0;
}

.holiday_notice_wrap .holiday_notice_txt1 p {
    display: inline-block;
    width: 95%;
    padding-left: 10px;
    vertical-align: top;
}

.holiday_notice_wrap .holiday_notice_txt2 {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 30px;
}

.holiday_notice_wrap .holiday_notice_txt3 {
    font-size: 26px;
    font-weight: 500;
    margin-bottom: 70px;
}

.holiday_notice_wrap .holiday_notice_txt4 {
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 1px;
    padding-bottom: 50px;
}

.holiday_notice_wrap .holiday_notice_txt4 span {
    color: #aaa;
}

.holiday_notice_wrap .holiday_notice_table2 {
    border: 1px solid #333;
    margin-bottom: 50px;
}

.holiday_notice_wrap .holiday_notice_table2 thead tr {
    background-color: #f9f9f9;
    border-bottom: 1px solid #333;
}

.holiday_notice_wrap .holiday_notice_table2 thead tr th {
    padding: 7px 10px;
    border-right: 1px solid #333;
}

.holiday_notice_wrap .holiday_notice_table2 tbody tr td {
    height: 30px;
    padding: 7px 10px;
    border-right: 1px solid #333;
}

.holiday_notice_wrap .holiday_notice_table3 {
    border: 1px solid #333;
    margin-bottom: 30px;
}

.holiday_notice_wrap .holiday_notice_table3 thead tr {
    background-color: #f9f9f9;
    border-bottom: 1px solid #333;
}

.holiday_notice_wrap .holiday_notice_table3 thead tr th {
    padding: 7px 10px;
    border-right: 1px solid #333;
}

.holiday_notice_wrap .holiday_notice_table3 tbody tr td {
    height: 30px;
    padding: 7px 10px;
    border-right: 1px solid #333;
}

.vat_report_first {
    border-left: 1px solid #bbb;
    border-top: 1px solid #bbb;
    border-right: 1px solid #bbb;
    padding: 4px;
    font-size: 14px;
}

.vat_report_first strong {
    vertical-align: top;
}

.vat_report_table tbody tr {
    border: 1px solid #ccc;
    border-bottom: 0;
}

.vat_report_table tbody tr td {
    font-size: 14px;
    border: 1px solid #bbb;
    padding: 4px;
}

.vat_report_table tbody tr td.bdn {
    border-right: 0;
}

.vat_report_table tbody tr td.left {
    text-align: left;
}

/*aa_asset_master*/
.inner_panel.h190 {
    height: 190px !important;
}

/*tax_vat_f320*/
.inner_panel.h235 {
    height: 235px !important;
}

/*tax_vat_f300_sale*/
.inner_panel.h210 {
    height: 210px !important;
}

/*hr_employee_master*/
.inner_panel.h275 {
    height: 275px !important;
}

/*hr_employee_manage*/
.inner_panel.h373 {
    height: 373px !important;
}

/*aa_asset*/
.inner_panel.h417 {
    height: 417px !important;
}

/*comm_coporation*/
/* .inner_panel.h443{height:443px !important;} */
/*comm_business*/
.inner_panel.h443 {
    height: 443px !important;
}

/*comm_cv*/
.inner_panel.h445 {
    height: 445px !important;
}

/*hr_employee_master*/
.inner_panel.h651 {
    height: 651px !important;
}

/*at_holiday_remain*/
.inner_panel.h641 {
    height: 641px !important;
}

/*aa_asset*/
.inner_panel.h390 {
    height: 390px !important;
}

/*ga_corp_vehicle*/
.inner_panel.h330 {
    height: 330px !important;
}

/*wi_declaration*/
.inner_panel.h597 {
    height: 597px !important;
}

/*wi_bi_receipt*/
.inner_panel.h600 {
    height: 600px !important;
}

/*fi_bi_account*/
.inner_panel.h661 {
    height: 661px !important;
}

/*fi_replace_setoff*/
.inner_panel.h631 {
    height: 631px !important;
}

/*comm_corporation_master*/
.inner_panel.h318 {
    height: 318px !important;
}

/*re_pay_recipient*/
.inner_panel.h290 {
    height: 290px !important;
}

/*fi_expense_invoice*/
.inner_panel.h661 {
    height: 661px !important;
}

/*sl_bi_setting*/
.inner_panel.h745 {
    height: 745px !important;
}

/*yt_year_end_tax_settle*/
.inner_panel.h80 {
    height: 80px !important;
}

.inner_panel.h720 {
    height: 720px !important;
}

/*ga_asset_manage*/
.inner_panel.h316 {
    height: 316px !important;
}

/*sl_pay_invoice*/
.inner_panel.h565 {
    height: 565px !important;
}

/*tax_ac*/
.inner_panel.h635 {
    height: 635px !important;
}

/*tax_ac_tax_f380*/
.inner_panel.h530 {
    height: 530px !important;
}

.vat_report_table tbody tr td.center {
    text-align: center;
}

.vat_report_table tbody tr td.right {
    text-align: right;
}

.vat_report_table tbody tr td.disabled {
    color: #666 !important;
    background-color: #eee;
}

.vat_report_table tbody tr td.popup {
    position: relative;
}

.vat_report_table tbody tr td.popup button.popup_btn {
    display: inline-block;
    wdith: 27px;
    height: 24px;
    position: absolute;
    top: 1px;
    right: 1px;
    background-image: url(/resources/images/svg/pop_btn.svg);
    background-repeat: no-repeat;
    background-position: 98% 50%;
    background-size: 13px;
}

.vat_report_table tbody tr td.w505 {
    width: 505px !important;
}

.vat_report_table tbody tr td.w500 {
    width: 500px !important;
}

.vat_report_table tbody tr td.w432 {
    width: 432px !important;
}

.vat_report_table tbody tr td.w430 {
    width: 430px !important;
}

.vat_report_table tbody tr td.w420 {
    width: 420px !important;
}

.vat_report_table tbody tr td.w300 {
    width: 300px !important;
}

.vat_report_table tbody tr td.w290 {
    width: 290px !important;
}

.vat_report_table tbody tr td.w282 {
    width: 282px !important;
}

.vat_report_table tbody tr td.w280 {
    width: 280px !important;
}

.vat_report_table tbody tr td.w277 {
    width: 277px !important;
}

.vat_report_table tbody tr td.w275 {
    width: 275px !important;
}

.vat_report_table tbody tr td.w273 {
    width: 273px !important;
}

.vat_report_table tbody tr td.w272 {
    width: 272px !important;
}

.vat_report_table tbody tr td.w270 {
    width: 270px !important;
}

.vat_report_table tbody tr td.w268 {
    width: 268px !important;
}

.vat_report_table tbody tr td.w260 {
    width: 260px !important;
}

.vat_report_table tbody tr td.w253 {
    width: 253px !important;
}

.vat_report_table tbody tr td.w251 {
    width: 251px !important;
}

.vat_report_table tbody tr td.w250 {
    width: 250px !important;
}

.vat_report_table tbody tr td.w240 {
    width: 240px !important;
}

.vat_report_table tbody tr td.w230 {
    width: 230px !important;
}

.vat_report_table tbody tr td.w220 {
    width: 220px !important;
}

.vat_report_table tbody tr td.w210 {
    width: 210px !important;
}

.vat_report_table tbody tr td.w200 {
    width: 200px !important;
}

.vat_report_table tbody tr td.w190 {
    width: 190px !important;
}

.vat_report_table tbody tr td.w180 {
    width: 180px !important;
}

.vat_report_table tbody tr td.w170 {
    width: 170px !important;
}

.vat_report_table tbody tr td.w160 {
    width: 160px !important;
}

.vat_report_table tbody tr td.w158 {
    width: 158px !important;
}

.vat_report_table tbody tr td.w150 {
    width: 150px !important;
}

.vat_report_table tbody tr td.w140 {
    width: 140px !important;
}

.vat_report_table tbody tr td.w130 {
    width: 130px !important;
}

.vat_report_table tbody tr td.w120 {
    width: 120px !important;
}

.vat_report_table tbody tr td.w110 {
    width: 110px !important;
}

.vat_report_table tbody tr td.w100 {
    width: 100px !important;
}

.vat_report_table tbody tr td.w92 {
    width: 92px !important;
}

.vat_report_table tbody tr td.w90 {
    width: 90px !important;
}

.vat_report_table tbody tr td.w80 {
    width: 80px !important;
}

.vat_report_table tbody tr td.w70 {
    width: 70px !important;
}

.vat_report_table tbody tr td.w60 {
    width: 60px !important;
}

.vat_report_table tbody tr td.w56 {
    width: 56px !important;
}

.vat_report_table tbody tr td.w50 {
    width: 50px !important;
}

.vat_report_table.vat_table tbody tr td {
    letter-spacing: 10px;
    padding: 4px 0;
}

.vat_report_table.vat_table0 tbody tr td {
    line-height: 120%;
}

.vat_report_table.vat_table1 tbody tr td {
    line-height: 120%;
}

.vat_report_table.vat_table2 tbody tr td {
    line-height: 120%;
}

.vat_report_table.vat_table4 tbody tr {
    border-bottom: 1px solid #000;
}

.vat_report_table.vat_table5 tbody tr {
    border-bottom: 1px solid #000;
}

.vat_report_table.vat_table6 tbody tr {
    border-bottom: 1px solid #000;
}

.vat_report_table.vat_table7 tbody tr {
    border-bottom: 1px solid #000;
}

.vat_report_table.vat_table8 tbody tr {
    border-bottom: 1px solid #000;
}

.vat_report_table.vat_table9 tbody tr {
    border-bottom: 1px solid #000;
}

.vat_report_table.vat_table10 tbody tr {
    border-bottom: 1px solid #000;
}

/* 공통출력 */
.ui-datepicker {
    display: none;
    width: 303px !important;
    height: 313px !important;
    /* 	position: absolute; */
    float: none;
    clear: both;
    box-sizing: border-box;
    margin: 0px;
    padding: 20px 25px;
    padding-bottom: 0;
    overflow: auto;
    z-index: 3000;
    /*     border: 1px solid rgba(50, 50, 50, 0.3); */
    /*     box-shadow: rgba(0, 0, 0, 0.5) 1px 2px 5px; */
    user-select: none;
    left: 598.391px;
    top: 316px;
    font-size: 12px;
    background: #fff;
    border: 1px solid #d5d5d5;
    box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.1);
    border-radius: 5px;
}

.ui-datepicker-title {
    display: inline-block;
    /* 	margin-left:-50px; */
}

.ui-datepicker-header {
    position: relative;
    width: 100%;
    height: 20px;
    line-height: 20px;
    text-align: center;
}

.ui-datepicker-prev {
    position: absolute;
    left: 4px;
    min-width: 17px;
    min-height: 17px;
    background-repeat: no-repeat;
    background-position: center center;
    /*     background-image:  url(/script/assets/cal_prev.png); */
    width: 20px;
    height: 20px;
    background-image: url(/resources/images/cal_prev2.png);
}

.ui-datepicker-next {
    position: absolute;
    right: 4px;
    min-width: 17px;
    min-height: 17px;
    background-repeat: no-repeat;
    background-position: center center;
    /*     background-image: url(/script/assets/cal_next.png); */
    width: 20px;
    height: 20px;
    background-image: url(/resources/images/cal_next2.png);
}

.ui-icon {
    display: none;
}

.ui-datepicker-year {
    position: relative;
    vertical-align: top;
    height: 16px;
    cursor: default;
    text-align: center;
    font-size: 14px;
    color: #222222;
    font-weight: 500;
}

.ui-datepicker-month {
    position: relative;
    vertical-align: top;
    cursor: pointer;
    top: 0px;
    left: 4px;
    border: none;
    width: 40px;
    height: 16px;
    /*  font-size:12px; */
    font-size: 14px;
    color: #222222;
    font-weight: 500;
}

.ui-datepicker-month::after {
    content: '월';
    font-size: 12px;
}

.ui-datepicker-month option {
    padding: 4px 0;
    padding-left: 5px;
    font-size: 12px;
}

.notification_btn {
    display: inline-block;
    position: absolute;
    width: 34px;
    height: 34px;
    right: 201px;
    top: 19px;
    /*background: #F6F6F6;*/
    /*border-radius: 8px;*/
    text-align: center;
    background-image: url(/resources/kgenc/images/nav_ic_notifications.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 26px;
}

.notification_btn::after {
    content: '';
    width: 5px;
    height: 5px;
    background-color: rgb(255, 60, 36);
    border-radius: 50%;
    position: absolute;
    top: 3px;
    right: 6px;
    transform: translate(50%, -50%);
    animation: blink 1s infinite;
}

.notification_btn.no-unread::after {
    display: none;
    /* unread_chat이 0일 경우 ::after를 숨김 */
}

.notifications_menu {
    position: fixed;
    top: 0;
    right: 0;
    width: 450px;
    height: 100%;
    background: #fff;
    box-shadow: -2px 0 3px rgba(0, 0, 0, 0.1);
    z-index: 1000;
    display: none;
}

/*.popup_mask {*/
/*    position: fixed;*/
/*    top: 0;*/
/*    left: 0;*/
/*    width: 100%;*/
/*    height: 100%;*/
/*    background: rgba(0, 0, 0, 0.5);*/
/*    z-index: 999;*/
/*}*/
.notifications_content_wrap {
    overflow-y: scroll;
    margin-top: 70px;
    height: 92vh;
    margin-right: 5px;
}

.notifications_content>.notifications_content_top {
    height: 70px;
    display: flex;
    padding: 20px;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #ededed;
    background-color: #fff;
    position: fixed;
    top: 0;
    width: 450px;
}

.notifications_content_wrap>.notifications_content_list {
    display: flex;
    width: 100%;
    height: auto;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    margin: 10px 0px;
}

.notifications_content_wrap>.notifications_content_list .notifications_list_inner {
    width: 100%;
    padding: 0 20px;
    cursor: pointer;
}

.notifications_content_wrap>.notifications_null {
    align-content: center;
    text-align: center;
    height: 100%;
    color: #888;
}

.notifications_list_inner>.notifications_inner_item {
    display: flex;
    flex-direction: column;
    background-color: #f8f8f8;
    border: 1px solid #ededed;
    padding: 10px;
    border-radius: 5px;
    gap: 6px;
}

.notifications_inner_item>.notifications_item_contents {
    font-size: 14px;
    line-height: normal;
    color: #333;
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 380px;
}

.notifications_inner_item>.notifications_item_contents .ea_notifications_icon {
    width: 40px;
    height: 34px;
    background-image: url(/resources/kgenc/images/ea_notifications.svg);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 34px;
}

.notifications_item_contents>.ea_notifications_wrap {
    display: flex;
    flex-direction: column;
    gap: 2px;
    width: 340px;
}

.ui-datepicker-current.ui-state-default.ui-priority-secondary.ui-corner-all {
    position: absolute;
    top: 50px;
    right: 30px;
    display: inline-block;
    width: 50px;
    height: 20px;
    font-size: 12px;
    /* 	color:#333;
        border:1px solid #fff; */
    text-align: center;
    line-height: 20px;
    padding: 0 !important;
    border-radius: 5px;
    background-color: #6eaaf8;
    color: #fff;
}

/* .ui-datepicker-current.ui-state-default.ui-priority-secondary.ui-corner-all:hover{
	border-left:1px solid #bbb;
	border-top:1px solid #bbb;
	border-right:1px solid #bbb;
	border-bottom:1px solid #000;
	border-radius:2px;
} */
.ui-datepicker-close {
    display: none;
}

.ui-datepicker-calendar {
    /* margin:2px; */
    margin-top: 30px;
    border-spacing: 3px;
}

.ui-datepicker-calendar thead {
    /* 	opacity: 0.5; */
    color: black;
    font-size: 12px;
    cursor: default;
}

.ui-datepicker-calendar thead tr th {
    min-width: 20px;
    text-align: center;
    width: 30px !important;
    height: 30px !important;
    border-spacing: 3px;
    color: #515e76;
}

.ui-datepicker-calendar thead tr th.ui-datepicker-week-end {
    color: #fd1361;
}

.ui-datepicker-calendar thead tr th.ui-datepicker-week-end a {
    color: #fd1361;
}

.ui-datepicker-calendar tbody {
    font-size: 12px;
    text-align: center;
    border-spacing: 3px;
}

.ui-datepicker-current-day a {
    background-color: #6eaaf8;
    border-radius: 50%;
    color: #fff !important;
}

.ui-datepicker-calendar tbody tr td {
    padding: 1px;
    cursor: pointer;
    background: #fff;
    width: 30px;
    /* 적용 안됨 */
    height: 30px;
    font-size: 12px;
    border-spacing: 3px;
}

.ui-datepicker-calendar tbody tr td a {
    text-decoration: none;
    display: inline-block;
    width: 30px;
    height: 30px;
    text-align: center;
    line-height: 30px;
    cursor: pointer;
    margin: 1px 0;
    color: #444444;
}

/* .ui-datepicker-calendar tbody tr td:hover{
	background: #f7f8fa;
    border-radius: 3px;
} */
.ui-datepicker-other-month {
    color: #ccc;
    border: 1px solid #fff;
}

.ui-datepicker-calendar tbody tr td a:hover {
    background-color: #e7e7e7;
    border-radius: 50%;
}

.ui-datepicker-calendar tbody tr td.ui-datepicker-week-end a {
    color: #fd1361;
}

.ui-datepicker-days-cell-over.ui-datepicker-today {
    /* 	background: #5867dd;
        border-radius: 3px; */
    -webkit-appearance: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.ui-datepicker-days-cell-over.ui-datepicker-today a {
    background-color: #6eaaf8;
    border-radius: 50%;
    color: #fff;
}

.ui-datepicker-days-cell-over.ui-datepicker-today a:hover {
    color: #444444;
}

.ui-state-active {
    color: #fff;
    font-weight: 500;
    display: block;
}

.ui-state-default.ui-state-highlight {
    color: #333;
    font-weight: normal;
}

.ui-datepicker-today a {
    color: #fff;
    font-weight: 500;
    display: block;
}

.ui-datepicker-current-day {
    /* background: #5867dd !important;
    border-radius: 3px !important; */
    -webkit-appearance: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.mtz-monthpicker-year {
    display: inline-block;
    width: 100%;
    height: 30px;
    line-height: 30px;
    padding-left: 100px;
    text-align: center;
    font-size: 15px;
    font-weight: 500;
    background-image: url(/resources/images/svg/select_off.svg);
    background-repeat: no-repeat;
    background-position: 97% center;
    background-size: 9px;
    text-align: center;
}

select.mtz-monthpicker-year:focus {
    border: none;
}

.mtz-monthpicker-month {
    height: 54px;
    line-height: 54px;
    margin: 1% !important;
    padding: 0 !important;
    font-size: 13px;
    cursor: pointer !important;
    border-radius: 4px;
    color: #575962;
}

.mtz-monthpicker-month:hover {
    background-color: #ebedf2;
}

.mtz-monthpicker-month.ui-state-active {
    color: #fff;
    background-color: #286090;
    border-color: #204d74;
}

.mtz-monthpicker-month.ui-state-active:hover {
    background-color: #204d74;
}

/*                  */
/*      Filter      */
/*                  */
.rg-filterselector {
    background-color: #fff !important;
    /*         border :1px solid rgb(200, 200, 200); */
    box-shadow: rgba(0, 0, 0, 0.8) 1px 2px 5px;
    /* font-family: "나눔고딕코딩"; */
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    font-size: 12px;
    padding: 4px;
}

.rg-filter-action-item:hover {
    text-decoration: underline;
}

.rg-filter-action-check {}

.rg-filter-action-label {}

.rg-filter-all {
    background-color: #fff !important;
    color: #595d6e;
}

.rg-filter-all-check {}

.rg-filter-all-label {
    font-size: 12px;
}

.rg-filter-all-hr {}

.rg-filter-items {}

.rg-filter-item {
    color: white;
    background-color: #151500;
}

.rg-filter-item:hover {
    text-decoration: underline;
}

.rg-filter-item-check {}

.rg-filter-item-label {
    font-size: 12px !important;
}

/*                  */
/*    MultiCheck    */
/*                  */
.rg-filterselector {
    background: #fff !important;
    /*         border :1px solid rgb(200, 200, 200); */
    box-shadow: rgba(0, 0, 0, 0.8) 1px 2px 5px;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    color: #595d6e;
    font-size: 12px;
    padding: 4px;
}

.rg-filter-actions {}

.rg-filter-action-item {}

.rg-filter-action-item:hover {
    text-decoration: underline;
    color: #5867dd;
    font-weight: 500;
}

.rg-filter-action-check {}

.rg-filter-action-label {}

.rg-filter-all {
    background-color: #fff !important;
    color: #595d6e;
    font-size: 12px;
}

.rg-filter-all-check {}

.rg-filter-all-label {
    font-size: 12px;
}

.rg-filter-all-hr {}

.rg-filter-items {
    overflow-y: auto;
    scroll-behavior: smooth;
}

.rg-filter-item {
    background-color: #fff !important;
    color: #595d6e;
    font-size: 12px;
    margin: 5px 0;
}

.rg-filter-item:hover {
    text-decoration: underline;
}

.rg-filter-item-check {}

.rg-filter-item-label {}

.rg-filter-search {
    /*     	background-color:#f7f8fa; */
    /*     	border-bottom:1px solid #ebedf2; */
    padding: 5px 0;
}

.rg-filter-buttons {
    background-color: #f7f8fa;
    height: 30px;
    line-height: 30px;
    text-align: right;
    color: #454545;
}

.rg-filter-accept {
    margin-right: 10px;
}

.rg-filter-accept:hover {
    color: #5867dd;
}

.rg-filter-cancel {
    margin-right: 10px;
}

.rg-filter-cancel:hover {
    color: #5867dd;
}

/*                  */
/*    MultiCheck    */
/*                  */
.rg-multicheck {
    background: #fff;
    border: 1px solid rgb(50, 50, 50);
    box-shadow: rgba(0, 0, 0, 0.8) 1px 2px 5px;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    font-size: 12pt;
    padding: 0px;
    margin: 0px;
}

.rg-multicheck-button {
    text-align: center;
}

.rg-multicheck-accept {
    border: 1px solid #0a3c59;
    border-radius: 3px;
    color: #06426c;
    border-width: 1px;
}

.rg-multicheck-cancel {
    border: 1px solid #0a3c59;
    border-radius: 3px;
    color: #06426c;
    border-width: 1px;
}

.rg-multicheck-accept:hover {
    background-color: #888
}

.rg-multicheck-cancel:hover {
    background-color: #888
}

.rg-multicheck-select {
    background: #40ff0b;
    color: #ffffff;
}

.rg-multicheck-list {}

.rg-multicheck-item {
    background: none;
    color: unset;
}

.rg-multicheck-item:hover {
    background: rgba(0, 0, 255, 0.2);
    color: unset;
}

.rg-multicheck-selectitem {
    background: rgba(0, 0, 255, 0.2);
    color: #000;
}

.rg-multicheck {
    background: #fff;
    border: 1px solid rgb(50, 50, 50);
    box-shadow: rgba(0, 0, 0, 0.8) 1px 2px 5px;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    font-size: 12pt;
    padding: 0px;
    margin: 0px;
}

.rg-multicheck-button {
    text-align: center;
}

.rg-multicheck-accept {
    border: 1px solid #0a3c59;
    border-radius: 3px;
    color: #06426c;
    /*border-width: 1px;*/
}

.rg-multicheck-cancel {
    border: 1px solid #0a3c59;
    border-radius: 3px;
    color: #06426c;
    border-width: 1px;
}

.rg-multicheck-accept:hover {
    background-color: #888
}

.rg-multicheck-cancel:hover {
    background-color: #888
}

.rg-multicheck-select {
    background-color: #f7f8fa;
    color: #5d78ff;
}

.rg-multicheck-list {}

.rg-multicheck-item {
    background: none;
    color: unset;
}

.rg-multicheck-item:hover {
    background: rgba(0, 0, 255, 0.2);
    color: unset;
}

.rg-multicheck-selectitem {
    background: rgba(0, 0, 255, 0.2);
    color: #000;
}

/*              */
/*    Popup (custom-menu와 통일)    */
/*              */
.rg-popup-menu {
    padding: 6px 0 !important;
    background: #fff !important;
    border: 1px solid var(--menu-border, #E1E8EE) !important;
    border-radius: 6px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
    font-size: 12.5px !important;
    min-width: 140px !important;
}

.rg-popup-item {
    margin: 0 6px !important;
    padding: 0 12px !important;
    width: calc(100% - 12px) !important;
    height: 28px !important;
    line-height: 30px !important;
    border-radius: 4px !important;
    cursor: pointer;
    color: var(--menu-text, #4a4a4a) !important;
    font-weight: 400 !important;
    transition: background-color 0.15s ease, color 0.15s ease !important;
}

.rg-popup-item:hover {
    background: rgba(11, 171, 139, 0.1) !important;
    color: var(--main-color, #0BAB8B) !important;
}

.rg-popup-item.selected,
.rg-popup-item:active {
    background: var(--menu-bg-active, rgba(11, 171, 139, 0.08)) !important;
    color: var(--main-color, #0BAB8B) !important;
}

.rg-popup-item-disable {
    color: var(--text-muted, #999) !important;
    cursor: not-allowed !important;
}

.rg-popup-item-disable:hover {
    background: transparent !important;
    color: var(--text-muted, #999) !important;
}

.rg-popup-separator {
    height: 1px !important;
    margin: 4px 10px !important;
    background: var(--menu-border, #E1E8EE) !important;
}

.rg-popup-separator-hr {
    height: 1px !important;
    border: 0 !important;
    margin: 4px 10px !important;
    background: var(--menu-border, #E1E8EE) !important;
}

.rg-popup-expander {
    background-image: url("/resource/image/icon/menu_expander.png");
    background-repeat: no-repeat;
    background-position: center center;
}

.rg-popup-check {
    /*
	background-image:url("/resource/image/icon/menu_uncheck.png");
	background-repeat : no-repeat;
	background-position : center center;
	*/
}

.rg-popup-check-checked {
    background-image: url("/resource/image/icon/menu_check.png");
    background-repeat: no-repeat;
    background-position: center center;
}

.rg-popup-radio {
    /*
	background-image:url("/resource/image/icon/menu_unradio.png");
	background-repeat : no-repeat;
	background-position : center center;
	*/
}

.rg-popup-radio-checked {
    background-image: url("/resource/image/icon/menu_radio.png");
    background-repeat: no-repeat;
    background-position: center center;
}

.rg-popup-group1 {
    background: #ffd800;
}

/*              */
/*    date      */
/*              */
.rg-calendar {
    font-size: 12px;
    background: #fff;
    border: 1px solid rgba(50, 50, 50, 1);
    box-shadow: rgba(0, 0, 0, 0.8) 1px 2px 2px;
}

.rg-cal-header {
    background-color: #fff !important;
    height: 30px;
}

.rg-cal-year {
    cursor: default;
    top: 7px;
}

.rg-cal-month {
    cursor: pointer;
    top: 7px;
}

.rg-cal-prev-month {
    background-image: url("/script/assets/cal_prev.png");
    width: 27px;
    height: 27px;
    min-width: 27px;
    min-height: 27px;
}

.rg-cal-prev-month:hover {
    background-image: url("/script/assets/cal_prev_hover.png");
}

.rg-cal-prev-month:active {
    background-image: url("/script/assets/cal_prev_active.png");
}

.rg-cal-next-month {
    background-image: url("/script/assets/cal_next.png");
    width: 27px;
    height: 27px;
    min-width: 27px;
    min-height: 27px;
}

.rg-cal-next-month:hover {
    background-image: url("/script/assets/cal_next_hover.png");
}

.rg-cal-next-month:active {
    background-image: url("/script/assets/cal_next_active.png");
}

.rg-cal-today-button {
    font-size: 12px;
    border: 1px solid transparent;
    border-radius: 3px;
    cursor: pointer;
    top: 5px !important;
    right: 40px !important;
}

.rg-cal-today-button:hover {
    border: 1px solid #aaa;
    background-color: #fff;
    text-decoration: underline;
}

.rg-cal-next-year {
    background-image: url("/resource/image/icon/cal_up.png");
}

.rg-cal-next-year:hover {
    background-image: url("/resource/image/icon/cal_up_hover.png");
}

.rg-cal-next-year:active {
    background-image: url("/resource/image/icon/cal_up_active.png");
}

.rg-cal-prev-year {
    background-image: url("/resource/image/icon/cal_down.png");
}

.rg-cal-prev-year:hover {
    background-image: url("/resource/image/icon/cal_down_hover.png");
}

.rg-cal-prev-year:active {
    background-image: url("/resource/image/icon/cal_down_active.png");
}

.rg-cal-yearmonth {
    height: 30px;
    margin-left: 10px !important;
}

.rg-cal-weeks {
    color: black;
    font-size: 12px;
    cursor: default;
}

.rg-cal-weeks tr th {
    width: 30px !important;
    height: 30px !important;
}

.rg-cal-week-sun {
    color: #fd1361;
}

.rg-cal-week-sat {
    color: #fd1361;
}

.rg-cal-days {
    /* font-family: 'Noto Sans KR', sans-serif; */
    font-size: 12px;
    text-align: center;
}

.rg-cal-day {
    cursor: pointer;
    background: #fff;
    /* 	border: 1px solid #eee; */
    width: 30px;
    height: 30px;
    /*         border-radius: 7px; */
    /* font-family: 'Noto Sans KR', sans-serif; */
    font-size: 12px;
}

.rg-cal-day:hover {
    background: #f7f8fa;
    border-radius: 3px;
    color: #5d78ff;
    /* 	border: 1px solid #eee; */
}

.rg-cal-prev-day {
    color: #ccc;
    border: 1px solid #fff;
}

.rg-cal-next-day {
    color: #ccc;
    border: 1px solid #fff;
}

.rg-cal-today {
    background: #d5d5d5;
}

.rg-cal-focusday {
    background: #5867dd;
    border-radius: 3px;
    /* 	border: 1px solid #aaa; */
    color: #fff;
    font-weight: 500;
}

.rg-cal-month-picker {
    margin: 0px;
    cursor: pointer;
    background: #fff;
    border: 1px solid rgba(50, 50, 50, 0.5);
    box-shadow: rgba(0, 0, 0, 0.5) 1px 2px 5px;
    /* font-family: 'Noto Sans KR', sans-serif; */
    font-size: 12px;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    width: 40px;
    padding-left: 5px;
}

.rg-cal-month-picker-month {
    padding: 1px 4px 1px 4px;
    width: 20px;
    height: 20px;
    border-radius: 7px;
    text-align: center;
}

.rg-cal-month-picker-item {
    padding: 4px 0;
}

.rg-cal-month-picker-item:hover {
    color: #5867dd;
    font-weight: 500;
}

.rg-cal-month-picker-month:hover {
    background: #e8e8e8;
}

/*              */
/*   dropDown   */
/*              */
.rg-dropdownlist {
    /* font-family: 'Noto Sans KR', sans-serif; */
    font-size: 10pt;
    margin: 0px;
}

.rg-dropdown-select {}

.rg-dropdown-item {
    margin: 1px;
}

/*profile*/
.myprofile_section {
    min-height: 800px !important;
    max-height: 800px;
    padding: 10px;
    border: 1px solid #dfdfdf;
    border-radius: 3px;
}

.myprofile_section_samll.margin {
    margin: 0 0.5%;
}

.myprofile_section_small {
    height: 40%;
    padding: 10px;
    border: 1px solid #dfdfdf;
    border-radius: 3px;
}

.myprofile_section_small.marginl {
    margin-left: 0.5%;
}

.myprofile_section_small.margint {
    margin: 0.5% 0;
}

.form_object_img.profile_img0 {
    width: 50%;
}

.profile_img1 {
    width: 92%;
    height: 320px;
    display: inline-block;
    float: left;
    text-align: center;
    border: 1px solid #ccc;
}

.profile_sign_btn {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

.ex_file {
    float: left;
    margin-right: 2px;
    display: inline-block;
    width: 100px;
    height: 30px;
    line-height: 30px;
    background-color: #000;
    color: #fff;
    text-align: center;
    font-size: 12px;
    border-radius: 3px;
}

/*dashboard*/
.dash_board_wrap {
    posigion: relative;
    width: 100%;
    height: calc(100% - 50px);
}

.dash_board_wrap .google_app_wrap {
    position: absolute;
    top: 20px;
    right: 45px;
    display: inline-block;
}

.dash_board_wrap .google_app_wrap::after {
    contnet: '';
    display: block;
    clear: both;
}

.dash_board_wrap .google_app_wrap .google_app {
    display: inline-block;
    float: left;
    width: 38px;
    height: 38px;
    margin-right: 13px;
    background-color: #e4e6ef;
    border: 1px solid #e4e6ef;
    border-radius: 38px;
    box-shadow: 0 2px 2px rgba(51, 51, 51, .35);
    text-align: center;
    line-height: 38px;
    position: relative;
}

.dash_board_wrap .google_app_wrap .google_app:hover .google_app_link {
    color: #333;
}

.dash_board_wrap .google_app_wrap .google_app::after {
    border: 1px solid #7e8299;
    border-radius: 400px;
    content: "";
    display: block;
    height: auto;
    position: absolute;
    top: 12px;
    left: 12px;
    bottom: 0;
    right: 0;
    width: 10px;
    height: 10px;
    transform: scale(1);
    transform-origin: center center;
    animation: 3s pulse forwards infinite ease-out;
    opacity: 0;
}

.dash_board_wrap .google_app_wrap .google_app .google_app_link {
    font-size: 16px;
    color: #7e8299;
}

.dash_board_wrap .card_wrap {
    width: 100%;
    height: 100%;
    padding: 25px 55px 0 40px;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.dash_board_wrap .card_wrap::after {
    content: '';
    display: block;
    clear: both;
}

.dash_board_wrap .card_wrap .card_section {
    display: inline-block;
    float: left;
    margin-bottom: 25px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.dash_board_wrap .card_wrap .card_section:nth-child(2) {
    margin-right: 0;
}

.dash_board_wrap .card_wrap .card_section::after {
    content: '';
    display: block;
    clear: both;
}

.dash_board_wrap .card_wrap .card {
    display: inline-block;
    width: 100%;
    float: left;
    height: 430px;
    color: #7e8299;
    margin-right: 15px;
    margin-bottom: 15px;
    background-color: #fff;
    border: 1px solid #e7eaec;
    background-color: #fff;
    background-color: #fff;
    border-radius: 3px;
    box-shadow: 0 0 30px 0 rgba(82, 63, 105, .05);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.dash_board_wrap .card_wrap .card_section.w1 {
    width: 25%;
}

.dash_board_wrap .card_wrap .card_section.w2 {
    width: 50%;
}

.dash_board_wrap .card_wrap .card_section.w3 {
    width: 75%;
}

.dash_board_wrap .card_wrap .card_section.w4 {
    width: 100%;
}

.dash_board_wrap .card_wrap .card_section .card.w1 {
    width: calc(33.3% - 15px);
}

.dash_board_wrap .card_wrap .card_section .card.w2 {
    width: calc(50% - 15px);
}

.dash_board_wrap .card_wrap .card_section .card.w3 {
    width: 75%;
}

.dash_board_wrap .card_wrap .card_section .card.w4 {
    width: calc(100% - 15px);
}

.dash_board_wrap .card_wrap .card_section .card.w5 {
    width: calc(100% - 15px);
}

.dash_board_wrap .card_wrap .card.h1 {
    height: 245px;
}

.dash_board_wrap .card_wrap .card.h2 {
    height: 500px;
}

.dash_board_wrap .card_wrap .card.h3 {
    height: 570px;
}

.dash_board_wrap .card_wrap .card.h4 {
    height: 830px;
}

.card_wrap .card .card_title {
    padding: 10px;
    border-bottom: 1px solid #e7eaec;
    font-size: 14px;
    color: #676a6c;
}

.card_wrap .card .card_title::after {
    content: '';
    display: block;
    clear: both;
}

/*dashboard>todo list*/
.todo_delete {
    float: right;
    margin-right: 5px;
    font-size: 16px;
    color: #aaa;
    font-weight: 500;
    cursor: pointer;
}

.todo_list .todo_list_text {
    width: 100%;
    height: 200px;
    padding: 10px;
    padding-bottom: 0px;
    overflow-y: scroll;
    scroll-behavior: smooth;
    -ms-overflow-style: none;
}

.todo_list .todo_list_text li {
    position: relative;
    width: 100%;
    height: 36px;
    line-height: 36px;
    margin-bottom: 2px;
    padding: 0 10px 0 15px;
    border-radius: 4px;
    font-size: 13px;
    color: #676a6c;
    letter-spacing: 1px;
    background: #f3f3f4;
    cursor: pointer;
}

.todo_list .todo_list_text li .todo_check {
    color: #007bff;
    margin-right: 5px;
    cursor: pointer;
}

.todo_list .todo_list_text li.checked {
    text-decoration: line-through;
}

.todo_list .todo_list_text li.checked .todochecked {
    color: #007bff;
    margin-right: 5px;
    cursor: pointer;
}

/*dashboard>workspace*/
.workspace_btn {
    display: inline-block;
    float: right;
    margin-right: 5px;
}

.workspace_btn::after {
    content: '';
    display: block;
    clear: both;
}

.workspace_btn button {
    width: 46px;
    height: 24px;
    margin: 0;
    padding: 0;
    float: left;
    border: 1px solid #d2d2d2;
    font-size: 10px;
}

.workspace_btn button:hover {
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.workspace_btn button.on {
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.workspace_btn button:nth-child(1) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.workspace_btn button:nth-child(2) {
    border-radius: 0;
    border-left: 0;
    border-right: 0;
}

.workspace_btn button:nth-child(3) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.approved_list {
    width: 100%;
    height: 100%;
    padding: 10px;
}

.approved_list::after {
    content: '';
    display: block;
    clear: both;
}

.approved_list .approved {
    display: inline-block;
    float: left;
    width: 25%;
    height: 180px;
    padding: 0 5px;
    padding-top: 30px;
}

.approved_list .approved::after {
    content: '';
    display: block;
    clear: both;
}

.approved_list .approved a {
    display: inline-block;
    width: 100%;
    float: left;
    padding: 20px 0 10px;
    text-align: center;
    font-size: 26px;
    font-weight: 500;
    color: #6a6c6f;
    cursor: pointer;
}

.approved_list .approved a.active {
    color: #007bff;
}

.approved_list .approved a.deactivation {
    color: #ed5565;
}

.approved_list .approved span {
    display: inline-block;
    width: 100%;
    float: left;
    text-align: center;
    line-height: 140%;
    font-size: 11px;
    color: #6a6c6f;
}

/*notice*/
.notice_wrap {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 190px;
    padding: 10px;
}

.more_view_btn {
    position: absolute;
    bottom: 0;
    left: 10px;
    display: inline-block;
    width: 95%;
    height: 33px;
    line-height: 33px;
    font-size: 14px;
    font-weight: 300;
    color: #fff;
    text-align: center;
    border-radius: 5px;
    background-color: #1c84c6;
    cursor: pointer;
}

.notice_box {
    display: inline-block;
    width: 100%;
    height: 140px;
    overflow: hidden;
}

.notice_box .notice {
    display: inline-block;
    width: 100%;
    padding: 5px 0;
    margin-bottom: 2px;
    margin-left: 5px;
    font-size: 14px;
    font-weight: 500;
    color: #676a6c;
    letter-spacing: 1px;
    cursor: pointer;
}

.notice_box .notice .notice_date {
    float: right;
    margin-right: 8px;
    font-size: 10px;
    font-weight: normal;
    color: #23c6c8;
    letter-spacing: 0px;
}

/*schedule*/
.schedule_top_sec {
    width: 100%;
    height: 98px;
    background-color: #f3f6fb;
    padding: 15px;
    border-bottom: 1px solid #e7eaec;
}

.schedule_top_sec .schedule_top {
    font-size: 24px;
    font-weight: 100;
    color: #676a6c;
    margin-top: 5px;
    margin-bottom: 10px;
}

.schedule_top_sec .schedule_top_detail {
    font-size: 11px;
    color: #676a6c;
    font-weight: 200;
    letter-spacing: 1px;
}

.schedule_wrap {
    width: 100%;
    height: 100%;
    padding: 20px 20px 20px 20px;
}

.schedule_wrap .schedule {
    display: inline-block;
    position: relative;
    width: 100%;
    min-height: 105px;
    padding-left: 60px;
}

.schedule_wrap .schedule .schedule_detail {
    min-height: 105px;
    border-left: 1px solid #e7eaec;
    border-bottom: 1px solid #e7eaec;
    padding: 10px;
    padding-right: 0;
}

.schedule_wrap .schedule .schedule_detail.last {
    border-bottom: none;
}

.schedule_wrap .schedule .schedule_icon {
    position: absolute;
    top: 0px;
    left: 30px;
    display: inline-block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    background-color: #f8f8f8;
;
    border: 1px solid #e7eaec;
    font-size: 13px;
    text-align: center;
}

.schedule_wrap .schedule .schedule_detail .schedule_detail_title {
    font-size: 14px;
    font-weight: 500;
    color: #676a6c;
}

.schedule_wrap .schedule .schedule_detail .schedule_detail_txt {
    font-size: 13px;
    line-height: 150%;
    color: #676a6c;
    padding-top: 10px;
}

.schedule_wrap .schedule .schedule_date {
    position: absolute;
    top: 35px;
    left: -7px;
    font-size: 13px;
    color: #676a6c;
    line-height: 150%;
    letter-spacing: 1px;
}

.schedule_date .schedule_time {
    font-size: 10px;
    color: #23c6c8;
}

/*arrivals*/
.arrivals_sorting {
    width: 100px;
    height: 24px;
    float: right;
    margin-right: 5px;
    border: 1px solid #d2d2d2;
    border-radius: 3px;
    font-size: 12px;
    background-image: url(/resources/images/svg/select_off.svg);
    background-repeat: no-repeat;
    background-position: 95% center;
    background-size: 8px;
}

.arrivals_wrap {
    padding: 10px;
    height: 520px;
    overflow-y: scroll;
    scroll-behavior: smooth;
    -ms-overflow-style: none;
}

.arrivals_wrap .arrivals_table thead tr th {
    font-size: 13px;
    color: #6a6c6f;
    padding: 10px;
}

.arrivals_wrap .arrivals_table tbody tr:nth-of-type(odd) {
    background-color: #f9f9f9;
}

.arrivals_wrap .arrivals_table tbody tr td {
    border-bottom: 1px solid #e7eaec;
    padding: 10px;
    vertical-align: middle;
    line-height: 1.5;
}

.arrivals_wrap .arrivals_table tbody tr td.arrivals_title {
    font-size: 13px;
    color: #6a6c6f;
}

.arrivals_wrap .arrivals_table tbody tr td.arrivals_title .arrivals_time {
    font-size: 11px;
    padding-top: 10px;
}

.arrivals_wrap .arrivals_table tbody tr td.arrivals_state {
    padding-left: 0;
}

.arrivals_wrap .arrivals_table tbody tr td.arrivals_state span {
    display: inline-block;
    height: 22px;
    line-height: 22px;
    padding: 0 5px;
    font-size: 13px;
    color: #fff;
    text-align: center;
    border-radius: 3px;
}

.arrivals_wrap .arrivals_table tbody tr td.arrivals_state span.state1 {
    background-color: #21b9bb;
}

.arrivals_wrap .arrivals_table tbody tr td.arrivals_state span.state2 {
    background-color: #f7a54a;
}

.arrivals_wrap .arrivals_table tbody tr td.arrivals_state span.state3 {
    background-color: #1c84c6;
}

.arrivals_wrap .arrivals_table tbody tr td.arrivals_state span.state4 {
    background-color: #ed5565;
}

.arrivals_wrap .arrivals_table tbody tr td.arrivals_date {
    font-size: 13px;
    color: #6a6c6f;
}

/*inbox*/
.mail_wrap {
    width: 100%;
    height: 100%;
    padding: 10px 20px;
    padding-top: 5px;
}

.mail_wrap .mail {
    display: inline-block;
    width: 100%;
    padding-top: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #e7eaec;
}

.mail_wrap .mail .mail_sender {
    font-size: 14px;
    color: #23c6c8;
    cursor: pointer;
}

.mail_wrap .mail .mail_sender:hover {
    text-decoration: underline;
}

.mail_wrap .mail .mail_sender::before {
    content: '@';
    font-size: 14px;
    color: #23c6c8;
    padding-right: 2px;
    cursor: pointer;
}

.mail_wrap .mail::after {
    content: '';
    display: block;
    clear: both;
}

.mail_wrap .mail .mail_ago {
    float: right;
    font-size: 11px;
    color: #676a6c;
}

.mail_wrap .mail .mail_detail {
    padding-top: 5px;
    line-height: 120%;
}

.mail_wrap .mail .mail_detail .mail_txt {
    font-size: 13px;
    color: #676a6c;
}

.mail_wrap .mail .mail_detail .mail_time0 {
    font-size: 11px;
    color: #888888;
    letter-spacing: 1px;
}

.mail_wrap .mail .mail_detail .mail_time1 {
    font-size: 11px;
    color: #888888;
    letter-spacing: 1px;
}

/*dashboard basic*/
.profile_wrap {
    display: inline-block;
    float: left;
    width: 24.2%;
    height: 388px;
    margin-right: 13.5px;
    margin-bottom: 16px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    background-color: #fff;
    padding: 0 24px;
}

.profile_wrap .profile {
    display: inline-block;
    width: 100%;
    padding-top: 48px;
    margin-bottom: 18px;
}

.profile_wrap .profile::after {
    contnet: "";
    display: block;
    clear: both;
}

.profile_wrap .profile .profile_img {
    display: inline-block;
    float: left;
    width: 98px;
    height: 98px;
    border-radius: 50%;
    margin-right: 24px;
    margin-left: 22px;
}

.profile .profile_img img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
}

.profile_wrap .profile .profile_txt {
    display: inline-block;
    float: left;
    margin-top: 10px;
}

.profile .profile_txt .profile_name {
    display: inline-block;
    width: 100%;
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 4px;
}

.profile .profile_txt .profile_team {
    display: inline-block;
    width: 100%;
    font-size: 14px;
    font-weight: 300;
    color: #666;
    margin-bottom: 16px;
}

.profile .profile_txt .profile_organization button {
    width: 84px;
    height: 28px;
    text-align: center;
    background-color: #143053;
    border-radius: 4px;
    color: #fff;
    font-size: 13px;
    letter-spacing: -1px;
}

.porfile_info0::after {
    content: '';
    display: block;
    clear: both;
}

.profile_wrap .porfile_info0 {
    display: inline-block;
    float: left;
    width: 180px;
    height: 90px;
    /* 	background-color: #F8FAFC; */
    background-color: #F5F9FC;
    border-radius: 8px;
    margin-right: 24px;
    margin-top: 10px;
    padding: 0 10px;
    padding-top: 30px;
    position: relative;
}

.porfile_info0 .profile_info0_title {
    display: inline-block;
    width: 100%;
    padding: 4px 0;
    font-size: 13px;
    /* 	color: #222; */
    /* 	color: #888; */
    color: #666;
    font-weight: 500;
    margin: 10px 0;
    margin-bottom: 5px;
    position: absolute;
    bottom: 73px;
}

.porfile_info0 .profile_info0_text {
    display: inline-block;
    /* 	margin-top: 6px; */
    text-align: center;
    /* 	margin-left:30px; */
}

.porfile_info0 .profile_info0_text .profile_info0_txt {
    font-size: 13px;
    font-weight: 300;
    color: #888;
    /* 	margin-bottom: 12px; */
    margin-bottom: 6px;
}

.porfile_info0 .profile_info0_text .profile_info0_number {
    font-size: 28px;
    font-weight: 500;
    color: #222;
}

.porfile_info0 .profile_info0_text.text0 {
    float: left;
    margin-left: 30px;
}

.porfile_info0 .profile_info0_text.text1 {
    float: right;
    margin-right: 30px;
}

.profile_wrap .porfile_info1 {
    display: inline-block;
    float: left;
    width: 180px;
    height: 90px;
    /* 	background-color: #F8FAFC; */
    background-color: #F5F9FC;
    border-radius: 8px;
    margin-top: 10px;
    padding: 0 10px;
    padding-top: 30px;
    position: relative;
}

.porfile_info1 .profile_info1_title {
    display: inline-block;
    width: 100%;
    padding: 4px 0;
    font-size: 13px;
    /* 	color: #222; */
    color: #666;
    /* 	color: #888; */
    font-weight: 500;
    margin: 10px 0;
    margin-bottom: 5px;
    position: absolute;
    bottom: 73px;
}

.porfile_info1 .profile_info1_text {
    display: inline-block;
    /* 	margin-top: 6px; */
    text-align: center;
    margin-right: 30px;
}

.porfile_info1 .profile_info1_text .profile_info1_txt {
    font-size: 13px;
    font-weight: 300;
    color: #888;
    /* 	margin-bottom: 12px; */
    margin-bottom: 6px;
}

.porfile_info1 .profile_info1_text .profile_info1_number {
    font-size: 28px;
    font-weight: 500;
    color: #222;
}

.porfile_info1 .profile_info1_text .profile_info1_number.red {
    /* 	color: #FF352F; */
    color: #FB6868;
}

.porfile_info1 .profile_info1_text.text0 {
    float: left;
    margin-left: 30px;
}

.porfile_info1 .profile_info1_text.text1 {
    float: right;
    margin-right: 30px;
}

.profile_wrap .porfile_info2 {
    display: inline-block;
    float: left;
    width: 120px;
    height: 80px;
    background-color: #F8FAFC;
    border-radius: 8px;
    margin-right: 10px;
    margin-top: 10px;
    padding: 0 30px;
}

.porfile_info2 .profile_info2_title {
    display: inline-block;
    width: 100%;
    padding: 4px 0;
    font-size: 15px;
    color: #222;
    font-weight: 500;
}

.porfile_info2 .profile_info2_text {
    display: inline-block;
    margin-top: 6px;
    text-align: center;
}

.porfile_info2.profile_info2_text .profile_info2_txt {
    font-size: 13px;
    font-weight: 300;
    color: #888;
    margin-bottom: 12px;
}

.porfile_info2 .profile_info2_text .profile_info2_number {
    font-size: 28px;
    font-weight: 500;
    color: #222;
}

.porfile_info2 .profile_info2_text .profile_info2_number.red {
    color: #FF352F;
}

.porfile_info2 .profile_info2_text.text0 {
    float: left;
}

.porfile_info2 .profile_info2_text.text1 {
    float: right;
}

.mini_board_wrap {
    display: inline-block;
    float: left;
    width: 900.7px;
    height: 388px;
    margin-right: 13.5px;
    margin-bottom: 16px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    background-color: #fff;
    position: relative;
}

.board_time {
    display: inline-block;
    position: absolute;
    top: 56px;
    left: 36px;
}

.board_time .time_title {
    font-size: 15px;
    font-weight: 500;
    color: #222;
    margin-bottom: 18px;
}

.board_time .time_wrap {
    display: inline-block;
}

.board_time .time_wrap .time0 {
    font-size: 16px;
    font-weight: 300;
    color: #444;
    display: inline-block;
}

.board_time .time_wrap .time0 strong {
    font-size: 28px;
    font-weight: 500;
    color: #222;
    padding-right: 2px;
}

.board_time .time_wrap .time1 {
    font-size: 16px;
    font-weight: 300;
    color: #444;
    display: inline-block;
}

.board_time .time_wrap .time1 strong {
    font-size: 28px;
    font-weight: 500;
    color: #222;
    padding-right: 2px;
}

.board_graph {
    display: inline-block;
    width: 372px;
    height: 41px;
    position: relative;
    margin-top: 139px;
    margin-left: 36px;
}

.board_graph .graph {
    display: inline-block;
    width: 100%;
    height: 12px;
    background-color: #E8E8E8;
    border-radius: 6px;
    position: absolute;
    bottom: 0;
    left: 0;
}

.board_graph .graph_inner {
    display: inline-block;
    width: 236px;
    height: 12px;
    border-radius: 6px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: linear-gradient(90deg, #1EACFD 0%, #12EBD1 79.82%), #40A2FC;
}

.board_graph .today {
    display: inline-block;
    width: 44px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    background-color: #1EADFD;
    border-radius: 4px;
    position: absolute;
    top: 0;
    right: 101px;
    color: #fff;
    font-size: 12px;
    font-weight: 500;
}

.board_graph .today .tri0 {
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 5px solid #1EADFD;
    border-bottom: 5px solid transparent;
    border-right: 5px solid transparent;
    border-left: 5px solid transparent;
    position: absolute;
    top: 19px;
    right: 18px;
}

.board_graph .number0 {
    display: inline-block;
    width: 22px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    background-color: #07DDC3;
    border-radius: 4px;
    position: absolute;
    top: 0;
    left: calc(76% - 12px);
    color: #fff;
    font-size: 12px;
    font-weight: 500;
}

.board_graph .number0 .tri1 {
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 5px solid #07DDC3;
    border-bottom: 5px solid transparent;
    border-right: 5px solid transparent;
    border-left: 5px solid transparent;
    position: absolute;
    top: 19px;
    right: 6px;
}

.board_graph .number1 {
    display: inline-block;
    width: 22px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    background-color: #FB6868;
    border-radius: 4px;
    position: absolute;
    top: 0;
    right: -10px;
    color: #fff;
    font-size: 12px;
    font-weight: 500;
}

.board_graph .number1 .tri2 {
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 5px solid #FB6868;
    border-bottom: 5px solid transparent;
    border-right: 5px solid transparent;
    border-left: 5px solid transparent;
    position: absolute;
    top: 19px;
    right: 6px;
}

.board_graph .line {
    display: inline-block;
    width: 2px;
    height: 16px;
    background-color: #07DDC3;
    position: absolute;
    top: 26px;
    left: 76%;
}

.board_annual {
    display: inline-block;
    min-width: 260px;
    /* org : 254px; cjk  */
    height: 148px;
    border-radius: 8px;
    position: absolute;
    top: 32px;
    right: 36px;
    background-color: #F8FAFC;
    padding: 0 20px 20px 20px;
    /* org:20px; cjk */
}

.board_annual .annual_title {
    padding-top: 24px;
    font-size: 15px;
    font-weight: 500;
    color: #222;
    margin-bottom: 30px;
}

.board_annual .annual_text {
    display: inline-block;
    float: left;
    text-align: center;
    margin-right: 47px;
}

.board_annual .annual_text.last {
    margin-right: 0;
}

.board_annual .annual_text .annual_txt {
    font-size: 13px;
    color: #888;
    margin-bottom: 12px;
}

.board_annual .annual_text .annual_number {
    font-size: 28px;
    font-weight: 500;
    color: #222;
}

.board_annual .annual_text .annual_number.blue {
    color: #409EFF;
}

.board_line {
    display: inline-block;
    width: 812px;
    height: 1px;
    background-color: #EEEEEE;
    position: absolute;
    top: 246px;
    left: 36px;
}

.board_line p {
    display: inline-block;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #888888;
    position: absolute;
    top: -2px;
}

.board_line p.dot0 {
    left: 0;
}

.board_line p.dot1 {
    right: 668px;
}

.board_line p.dot2 {
    right: 549px;
}

.board_line p.dot3 {
    right: 430px;
}

.board_line p.dot4 {
    right: 311px;
}

.board_line p.dot5 {
    right: 192px;
}

.board_line p.dot6 {
    right: 73px;
}

.board_week {
    display: inline-block;
    width: 860px;
    height: 42px;
    position: absolute;
    top: 298px;
    left: 36px;
}

.board_week::after {
    content: '';
    display: block;
    clear: both;
}

.board_week .board_day {
    display: inline-block;
    float: left;
    margin-right: 44px;
    min-width: 78px;
}

.board_day .day_date .date0 {
    font-size: 18px;
    font-weight: 500;
    color: #222;
    padding-right: 2px;
}

.board_day .day_date .date1 {
    font-size: 12px;
    font-weight: 500;
    color: #444;
    padding-right: 4px;
}

.board_day .day_date .date2 {
    font-size: 14px;
    font-weight: 500;
}

.board_day .day_date .date2.green {
    color: #10A55D;
}

.board_day .day_date .date2.yellow {
    color: #ED942C
}

.board_day .day_date .date2.red {
    color: #E15252
}

.board_day .day_date .date2.blue {
    color: #569AFF
}

.board_day .day_time {
    margin-top: 6px;
    font-size: 13px;
    font-weight: 400;
    color: #888;
}

.board_day .day_time.blue {
    color: #569AFF;
}

.my_work_wrap {
    display: inline-block;
    float: left;
    /* 	width: 444px; */
    width: 24.2%;
    height: 388px;
    margin-right: 13.5px;
    margin-bottom: 16px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    padding: 28px;
    background-color: #fff;
}

.my_work_wrap .my_work_title {
    display: inline-block;
    font-size: 15px;
    color: #222222;
    font-weight: 500;
}

.my_work_wrap .plus_btn {
    float: right;
    width: 10px;
    height: 10px;
    background-image: url(/resources/images/plus5.png);
    background-size: 10px;
    background-position: center center;
    background-repeat: no-repeat;
}

.my_work_wrap .my_work_list {
    display: inline-block;
    width: 100%;
    height: 204px;
    overflow-x: hidden;
    overflow-y: scroll;
    margin-top: 43px;
}

.my_work_wrap .my_work_list .work {
    display: inline-block;
    width: 100%;
    height: 18px;
    margin-bottom: 17px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.my_work_wrap .my_work_list .work:last-child {
    margin-bottom: 0;
}

.my_work_wrap .my_work_list .work span {
    margin-left: 20px;
    font-size: 14px;
    color: #444444;
}

.dash_board_basic_wrap .notice_wrap {
    display: inline-block;
    float: left;
    /* 	width: 444px; */
    width: 24.2%;
    height: 256px;
    margin-bottom: 16px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    padding: 28px;
    background-color: #fff;
}

.notice_wrap .notice_title {
    display: inline-block;
    font-size: 15px;
    color: #222222;
    font-weight: 500;
}

.notice_wrap .plus_btn {
    float: right;
    width: 10px;
    height: 10px;
    background-image: url(/resources/images/plus5.png);
    background-size: 10px;
    background-position: center center;
    background-repeat: no-repeat;
}

.notice_wrap .notice_list {
    display: inline-block;
    width: 100%;
    height: 204px;
    overflow-x: hidden;
    overflow-y: scroll;
    margin-top: 43px;
}

.notice_wrap .notice_list .notice {
    display: inline-block;
    width: 100%;
    height: 18px;
    margin-bottom: 17px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.notice.new .notice_txt {
    position: relative;
    display: inline-block;
    font-size: 14px;
    color: #444444;
}

.notice.new .notice_txt::after {
    content: '';
    position: absolute;
    top: 5px;
    right: -12px;
    display: block;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #ed1c24;
}

.notice_wrap .notice_list .notice:last-child {
    margin-bottom: 0;
}

.notice_wrap .notice_list .notice::after {
    content: '';
    display: block;
    clear: both;
}

.notice .notice_txt {
    font-size: 14px;
    /*color:#888;*/
}

.notice .notice_date {
    font-size: 13px;
    color: #999999;
    float: right;
    padding-right: 5px;
}

.dash_board_basic_wrap .inbox_wrap {
    display: inline-block;
    float: left;
    /* 	width: 444px; */
    width: 24.2%;
    height: 412px;
    margin-right: 13.5px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    padding: 26px 36px;
    background-color: #fff;
    overflow: hidden;
    /* added cjk */
}

.inbox_wrap .inbox_title {
    display: inline-block;
    font-size: 15px;
    color: #222222;
}

.inbox_wrap .setting_btn {
    float: right;
    width: 16px;
    height: 16px;
    background-image: url(/resources/images/setting_btn.png);
    background-size: 16px;
    background-position: center center;
    background-repeat: no-repeat;
}

.inbox_wrap .inbox_list {
    display: inline-block;
    width: 100%;
    height: 320px;
    /* org : 360px; cjk */
    overflow-x: hidden;
    overflow-y: scroll;
    margin-top: 43px;
}

.inbox_wrap .inbox_list .inbox {
    display: inline-block;
    width: 100%;
    margin-bottom: 23px;
    overflow: hidden;
}

.inbox.new .inbox_department {
    font-size: 14px;
    font-weight: 500;
}

.inbox.new .inbox_department::after {
    content: "/";
}

.inbox.new .inbox_grade {
    font-size: 14px;
    font-weight: 500;
}

.inbox.new .inbox_grade::after {
    content: "/";
}

.inbox.new .inbox_name {
    color: #000;
}

.inbox.new .inbox_title {
    color: #000;
    font-weight: 500;
}

.inbox .inbox_name {
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    color: #888888;
    /* 	padding-right:12px; */
}

.inbox.new .inbox_date {
    position: relative;
}

/* .inbox.new .inbox_date::after{ */
/* 	content:''; */
/* 	position:absolute; */
/* 	top:4px; */
/* 	right:-12px; */
/* 	display:block; */
/* 	width:5px; */
/* 	height:5px; */
/* 	border-radius:50%; */
/* 	background-color:#ed1c24; */
/* } */
.inbox .inbox_date {
    display: inline-block;
    font-size: 12px;
    color: #888888;
}

.inbox .inbox_title {
    display: inline-block;
    width: 100%;
    padding-top: 10px;
    font-size: 13px;
    color: #888888;
    letter-spacing: -1px;
}

.approval_wrap {
    display: inline-block;
    float: left;
    /* 	width: 444px; */
    width: 24.6%;
    height: 412px;
    margin-right: 13.5px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    padding: 26px 36px;
    background-color: #fff;
    position: relative;
    overflow: hidden;
}

.approval_wrap .approval_title {
    display: inline-block;
    font-size: 15px;
    color: #222222;
    font-weight: 500;
}

.approval_wrap .approval_btn {
    position: absolute;
    top: 23px;
    right: 26px;
    display: inline-block;
    width: 139px;
    height: 31px;
    /* 	border-radius:15px; */
    /* 	border:1px solid #dddddd; */
    /* 	background-color:#eaebef; */
}

.approval_wrap .approval_btn::after {
    content: '';
    display: block;
    clear: both;
}

.approval_wrap .approval_btn li {
    display: inline-block;
    width: 50%;
    float: left;
    height: 29px;
    line-height: 29px;
    font-size: 12px;
    text-align: center;
    color: #666666;
    cursor: pointer;
    border-radius: 16px;
}

.approval_wrap .approval_btn li:hover {
    background-color: #E9F6FF;
    color: #569AFF;
}

.approval_wrap .approval_btn li.on {
    /* 	background-color:#fff; */
    /* 	color:#000; */
    /* 	border-radius:15px; */
    background-color: #E9F6FF;
    color: #569AFF;
}

.approval_wrap .approval_list {
    display: inline-block;
    width: 100%;
    height: 320px;
    /* org:300px; cjk  */
    overflow-x: hidden;
    overflow-y: scroll;
    margin-top: 20px;
}

.approval_wrap .approval_list .approval {
    display: inline-block;
    width: 100%;
    height: 18px;
    margin-bottom: 17px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.approval.new .approbal_txt {
    position: relative;
    display: inline-block;
    font-size: 13px;
    color: #444444;
}

.approval .approbal_txt {
    display: inline-block;
    font-size: 13px;
    color: #888888;
}

.approval .approbal_date {
    font-size: 13px;
    color: #999999;
    float: right;
    padding-right: 5px;
}

.absentee_wrap {
    display: inline-block;
    float: left;
    /* 	width: 444px; */
    width: 24.2%;
    height: 412px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    padding: 26px 36px;
    background-color: #fff;
    position: relative;
    margin-right: 13.5px;
    overflow: hidden;
    /* added by cjk */
}

.absentee_wrap .absentee_title {
    display: inline-block;
    font-size: 15px;
    color: #222222;
    font-weight: 500;
}

.absentee_wrap .absentee_btn {
    position: absolute;
    top: 23px;
    right: 26px;
    display: inline-block;
    width: 139px;
    height: 31px;
    /* 	border-radius:15px; */
    /* 	border:1px solid #dddddd; */
    /* 	background-color:#eaebef; */
}

.absentee_wrap .absentee_btn::after {
    content: '';
    display: block;
    clear: both;
}

.absentee_wrap .absentee_btn li {
    display: inline-block;
    width: 50%;
    float: left;
    height: 29px;
    line-height: 29px;
    font-size: 12px;
    text-align: center;
    color: #666666;
    cursor: pointer;
    border-radius: 16px;
}

.absentee_wrap .absentee_btn li:hover {
    background-color: #E9F6FF;
    color: #569AFF;
}

.absentee_wrap .absentee_btn li.on {
    /* 	background-color:#fff; */
    /* 	color:#000; */
    /* 	border-radius:15px; */
    background-color: #E9F6FF;
    color: #569AFF;
}

.absentee_wrap .absentee_list {
    display: inline-block;
    width: 100%;
    height: 300px;
    /* org:360px; cjk */
    overflow-x: hidden;
    overflow-y: scroll;
    margin-top: 43px;
}

.absentee_wrap .absentee_list .absentee {
    display: inline-block;
    width: 100%;
    height: 69px;
    background-color: #f2f4f9;
    border-radius: 3px;
    margin-bottom: 1px;
    padding: 14px;
}

.absentee::after {
    content: '';
    display: block;
    clear: both;
}

.absentee .absentee_img {
    display: inline-block;
    float: left;
    width: 44px;
    height: 45px;
    border-radius: 50%;
    margin-right: 15px;
}

.absentee .absentee_img img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
}

.absentee .absentee_info {
    display: inline-block;
    float: left;
    /* 	width:294px; */
    min-width: 50%;
    max-width: 75%;
    height: 30px;
    oveflow: hidden;
}

.absentee .absentee_info .absentee_info_inner .absentee_department {
    font-size: 13px;
}

.absentee .absentee_info .absentee_info_inner .absentee_department::after {
    content: '/';
}

.absentee .absentee_info .absentee_info_inner .absentee_grade {
    font-size: 13px;
}

.absentee .absentee_info .absentee_info_inner .absentee_grade::after {
    content: '/';
}

.absentee .absentee_info .absentee_info_inner .absentee_name {
    font-size: 14px;
    color: #222222;
    padding-right: 5px;
}

.absentee .absentee_info .absentee_info_inner .absentee_team {
    font-size: 13px;
    color: #888888;
}

.absentee .absentee_txt {
    float: right;
    margin-right: 10px;
    display: inline-block;
    font-size: 14px;
    color: #666666;
}

.absentee .absentee_date {
    display: inline-block;
    float: right;
    margin-right: 10px;
    font-size: 13px;
    color: #444444;
    letter-spacing: -1px;
}

.absentee .absentee_date_l {
    display: inline-block;
    float: left;
    margin-left: 10px;
    font-size: 13px;
    color: #444444;
    letter-spacing: -1px;
}

.absentee .absentee_time {
    display: inline-block;
    float: right;
    margin-right: 10px;
    font-size: 13px;
    color: #444444;
    letter-spacing: -1px;
}

.schedule_list_wrap {
    display: inline-block;
    float: left;
    /* 	width: 444px; */
    width: 24.2%;
    height: 412px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    padding: 26px 36px;
    background-color: #fff;
    position: relative;
    overflow: hidden;
    /* added, cjk */
}

.schedule_list_wrap .schedule_title {
    display: inline-block;
    font-size: 15px;
    color: #222222;
    font-weight: 500;
}

.schedule_list_wrap .schedule_date {
    position: absolute;
    top: 28px;
    left: 162px;
    font-size: 14px;
    color: #888;
    font-weight: 500;
}

.schedule_list_wrap .schedule_list {
    display: inline-block;
    width: 100%;
    height: 360px;
    overflow-x: hidden;
    overflow-y: scroll;
    margin-top: 43px;
}

.schedule_list_wrap .schedule_list::after {
    content: '';
    display: block;
    clear: both;
}

.schedule_list_wrap .schedule_list .schedule_time_wrap {
    float: left;
    display: inline-block;
    width: 54px;
    height: 300px;
    border-right: 1px solid #dcdcdc;
}

.schedule_time_wrap .schedule_time {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 60px;
    text-align: center;
    font-size: 13px;
    color: #888888;
}

.schedule_time_wrap .schedule_time::after {
    content: '';
    position: absolute;
    top: 2px;
    right: -5.5px;
    display: block;
    width: 11px;
    height: 11px;
    border-radius: 50%;
}

.schedule_time_wrap .schedule_time.time0::after {
    background-color: #137cff;
}

.schedule_time_wrap .schedule_time.time1::after {
    background-color: #2abbd3;
}

.schedule_time_wrap .schedule_time.time2::after {
    background-color: #cd7be0;
}

.schedule_time_wrap .schedule_time.time3::after {
    background-color: #fd9214;
}

.schedule_time_wrap .schedule_time.time4::after {
    background-color: #6bbb15;
}

.schedule_time_wrap .schedule_time.time5::after {
    background-color: red;
}

.schedule_time_wrap .schedule_time.time6::after {
    background-color: #8b00ff;
}

.schedule_time_wrap .schedule_time.time7::after {
    background-color: #660099;
}

.schedule_time_wrap .schedule_time.time8::after {
    background-color: #bfff00;
}

.schedule_time_wrap .schedule_time.time9::after {
    background-color: #f7e600;
}

.schedule_list_wrap .schedule_list .schedule_info {
    float: left;
    width: calc(100% - 54px);
    height: 100%;
}

.schedule_info .schedule_box {
    display: inline-block;
    width: 100%;
    height: 60px;
    padding-left: 30px;
}

.schedule_info .schedule_box .schedule_txt {
    display: inline-block;
    width: 100%;
    font-size: 14px;
    color: #222222;
    font-weight: 500;
}

.schedule_info .schedule_box .schedule_team {
    display: inline-block;
    width: 100%;
    font-size: 13px;
    color: #888888;
}

/*dashboard hr*/
.hr_info_text {
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    margin-left: 100px;
    margin-top: 10px;
    letter-spacing: 1px;
    line-height: 150%;
}

.hr_info_text span {
    color: #409EFF;
}

.dash_board_basic_wrap .search_board {
    display: inline-block;
    float: left;
    width: 1309px;
    margin-right: 13.5px;
    margin-bottom: 16px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    background-color: #fff;
    padding: 10px;
}

.dash_board_basic_wrap .search_board::after {
    content: '';
    display: block;
    clear: both;
}

.dash_board_basic_wrap .mini_board2 {
    display: inline-block;
    float: left;
    width: 1309px;
    height: 178px;
    margin-right: 13.5px;
    margin-bottom: 16px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    background-color: #fff;
    padding: 10px;
    position: relative;
}

.mini_board2::after {
    content: '';
    display: block;
    clear: both;
}

.mini_board2 .candidate_btn0 {
    position: absolute;
    top: 10px;
    right: 100px;
}

.mini_board2 .candidate_btn1 {
    position: absolute;
    top: 10px;
    right: 20px;
}

.mini_board2 .candidate_title {
    font-size: 15px;
    color: #222222;
    margin-bottom: 10px;
}

.mini_board2 .candidate_info0 {
    display: inline-block;
    float: left;
    width: 150px;
    height: 140px;
    margin-left: 100px;
    margin-right: 100px;
}

.candidate_info0 .candidate_img {
    display: inline-block;
    width: 100%;
    height: 80px;
    margin-bottom: 10px;
    text-align: center;
}

.candidate_info0 .candidate_img img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
}

.candidate_info0 .candidate_text {
    text-align: center;
    font-size: 12px;
    color: #222;
    font-weight: 500;
}

.candidate_info0 .candidate_text .candidate_name {
    display: inline-block;
    padding-bottom: 5px;
    font-size: 13px;
}

.candidate_info0 .candidate_text .candidate_team {
    font-size: 11px;
    font-weight: normal
}

.candidate_info0 .candidate_text .candidate_member {
    font-size: 11px;
    font-weight: normal
}

.mini_board2 .candidate_progress {
    display: inline-block;
    float: left;
    padding-top: 20px;
}

.candidate_progress .candidate_step {
    display: inline-block;
    float: left;
    margin-right: 40px;
}

.candidate_progress .candidate_step .step {
    text-align: center;
    display: inline-block;
    width: 100%;
    height: 30px;
    line-height: 30px;
    font-size: 14px;
    color: #fff;
    background: #409EFF;
    position: relative;
    padding-left: 20px;
    padding-right: 10px;
    margin-bottom: 10px;
}

.candidate_progress .candidate_step .step.red {
    background: #FB6868;
}

.candidate_progress .candidate_step .step .tri_before {
    height: 0;
    width: 0;
    border-right: 15px solid transparent;
    border-top: 15px solid transparent;
    border-left: 15px solid #fff;
    border-bottom: 15px solid transparent;
    position: absolute;
    top: 0;
    left: 0;
}

.candidate_progress .candidate_step .step .tri_after {
    height: 0;
    width: 0;
    border-right: 15px solid transparent;
    border-top: 15px solid transparent;
    border-left: 15px solid #409EFF;
    border-bottom: 15px solid transparent;
    position: absolute;
    top: 0;
    right: -30px;
}

.candidate_progress .candidate_step .step .tri_after.red {
    height: 0;
    width: 0;
    border-right: 15px solid transparent;
    border-top: 15px solid transparent;
    border-left: 15px solid #FB6868;
    border-bottom: 15px solid transparent;
    position: absolute;
    top: 0;
    right: -30px;
}

.candidate_progress .candidate_step .text0 {
    text-align: center;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 5px;
    padding-left: 10px;
}

.candidate_progress .candidate_step .date0 {
    text-align: center;
    font-size: 12px;
    margin-bottom: 5px;
    padding-left: 10px;
}

.candidate_progress .candidate_step .date1 {
    text-align: center;
    font-size: 12px;
    padding-left: 10px;
}

.mini_board2 .mini_board_top {
    position: relative;
    display: inline-block;
    float: left;
    width: 100%;
    height: 178px;
    border-bottom: 1px solid #dbdbdb;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    background-color: #fff;
}

.mini_board2 .mini_board_top::after {
    content: '';
    display: block;
    clear: both;
}

.sign_wrap2 {
    display: inline-block;
    float: left;
    width: calc(100% - 396px);
    height: 100%;
    padding: 45px 60px;
    padding-left: 0;
}

.sign_wrap2::after {
    content: '';
    display: block;
    clear: both;
}

.sign_wrap2 .sign_title {
    display: inline-block;
    float: left;
    width: 155px;
    height: 22px;
    margin-bottom: 20px;
    line-height: 22px;
    text-align: center;
    font-size: 14px;
    color: #666666;
}

.sign_wrap2 .sign_title.title0 {
    margin-right: 80px;
}

.sign_wrap2 .sign {
    display: inline-block;
    float: left;
    width: 75px;
    height: 100px;
    margin-right: 19px;
    position: relative;
}

.sign_wrap2 .sign:last-child {
    margin-right: 0;
}

.sign_wrap2 .sign .sign_number {
    width: 100%;
    text-align: center;
    font-size: 28px;
    font-weight: 500;
    color: #222222;
    padding-bottom: 5px;
}

.sign_wrap2 .sign .sign_number.red {
    color: #ff352f;
}

.sign_wrap2 .sign .sign_txt {
    width: 100%;
    text-align: center;
    font-size: 14px;
    font-weight: 500;
    color: #666666;
    position: absolute;
    bottom: 0;
    left: 0;
}

.sign_wrap2 .sign .sign_txt_sub0 {
    width: 100%;
    text-align: center;
    font-size: 12px;
    color: #666666;
    position: absolute;
    bottom: 35px;
    left: 0;
}

.sign_wrap2 .sign .sign_txt_sub1 {
    width: 100%;
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    color: #222;
    position: absolute;
    bottom: 53px;
    left: 0;
}

.result_wrap {
    display: inline-block;
    float: right;
    width: 501.5px;
    height: 277px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    padding: 28px;
    background-color: #fff;
}

.result_wrap .result_title {
    display: inline-block;
    font-size: 15px;
    color: #222222;
}

.result_wrap .result_text {
    padding-top: 20px;
    padding-bottom: 20px;
    font-size: 14px;
    color: #222;
    font-weight: 500;
}

.result_wrap .result {
    text-align: left;
    font-size: 14px;
    color: #222;
    font-weight: 500;
}

.result_wrap .result .result_grade {
    display: inline-block;
    font-size: 20px;
    font-weight: 500;
    color: #606060;
}

.result_wrap .result_table {
    display: inline-block;
    width: 100%;
    height: 200px;
    overflow-y: scroll;
}

.result_wrap .result_table {
    -ms-overflow-style: none;
}

.result_wrap .result_table thead tr th {
    padding-bottom: 30px;
    font-size: 14px;
    color: #222;
    text-align: center;
}

.result_wrap .result_table tbody tr td {
    padding: 10px 0;
    font-size: 14px;
    font-weight: 500;
    color: #222;
}

.result_wrap .result_table tbody tr td.center {
    text-align: center;
    color: #ff352f;
}

.appraisal_wrap {
    display: inline-block;
    width: 100%;
    height: 300px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    padding: 28px;
    background-color: #fff;
    overflow-y: scroll;
}

.appraisal_title {
    display: inline-block;
    width: 100%;
    height: 35px;
    font-size: 15px;
    color: #222222;
}

.appraisal_wrap .appraisal_table thead tr th {
    background-color: #eeee;
    padding: 10px 0;
}

.appraisal_wrap .appraisal_table thead tr th.first {
    text-align: left;
    padding-left: 10px;
}

.appraisal_wrap .appraisal_table tbody tr td {
    padding: 30px 0;
    text-align: center;
    font-size: 14px;
    color: #222;
    line-height: 150%;
}

.appraisal_wrap .appraisal_table tbody tr td.first {
    text-align: left;
    padding-left: 10px;
}

.appraisal_wrap .appraisal_table tbody tr td.last {
    width: 170px;
    text-align: left;
}

.capability_wrap {
    display: inline-block;
    width: 100%;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    padding: 28px;
    background-color: #fff;
    overflow-y: scroll;
    margin-top: 10px;
}

.capability_title {
    display: inline-block;
    width: 100%;
    height: 35px;
    font-size: 15px;
    color: #222222;
}

.capability_wrap .capability_table thead tr th {
    background-color: #eeee;
    padding: 10px 0;
}

.capability_wrap .capability_wrap_table thead tr th.first {
    text-align: left;
    padding-left: 10px;
}

.capability_wrap .capability_table tbody tr td {
    padding: 20px 0;
    text-align: left;
    font-size: 14px;
    color: #222;
    line-height: 100%;
}

.capability_wrap .capability_table tbody tr td.first {
    text-align: left;
    padding-left: 10px;
}

.capability_wrap .capability_table tbody tr td.center {
    width: 1100px;
    text-align: left;
}

.capability_wrap .capability_table tbody tr td.gray {
    padding: 10px 0;
    background-color: #eee;
    font-weight: 500;
}

/* 서약관리 대시보드 */
.sign_manage_box {
    display: inline-block;
    float: left;
    position: relative;
    width: 24.25%;
    height: 225px;
    background-color: #fff;
    border-radius: 5px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dbdbdb;
    margin-right: 1%;
    margin-bottom: 17px;
    padding: 10px;
}

.sign_manage_box .manage_box_title {
    font-size: 1.6em;
    padding-bottom: 65px;
}

.manage_box_title .manage_box_date {
    font-size: 0.7em;
    font-weight: 500;
}

.sign_manage_box .manage_box_txt {
    display: inline-block;
    width: 100%;
    text-align: center;
    font-size: 1em;
    padding-bottom: 10px;
}

.sign_manage_box .manage_box_schdule {
    display: inline-block;
    width: 100%;
    text-align: center;
    font-size: 1em;
    letter-spacing: 1px;
}

.sign_manage_box .manage_box_txt.txt0 {
    color: #ed5565;
}

.sign_manage_box .manage_box_txt.txt1 {
    color: #ccc;
}

.sign_manage_box .manage_box_btn {
    width: 100px;
    position: absolute;
    bottom: 10px;
    right: 10px;
}

/*인사평가 대시보드 평가자*/
.dash_board_basic_wrap .distribution_wrap {
    display: inline-block;
    float: left;
    /* 	width: 1109px; */
    width: 1346px;
    /* 	height: 178px; */
    height: 277px;
    margin-right: 13.5px;
    margin-bottom: 16px;
    margin-top: 16px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    background-color: #fff;
    padding: 10px;
}

.distribution_title {
    display: inline-block;
    font-size: 15px;
    color: #222222;
}

.dash_board_basic_wrap .progress_wrap {
    display: inline-block;
    float: right;
    /*     width: 701.5px; */
    width: 464px;
    height: 277px;
    margin-top: 16px;
    margin-bottom: 16px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    padding: 10px;
    background-color: #fff;
}

.progress_title {
    display: inline-block;
    width: 100%;
    font-size: 15px;
    color: #222222;
    margin-bottom: 20px;
}

.progress_graph_wrap {
    display: inline-block;
    position: relative;
    float: left;
}

.progress_graph_wrap .progress_graph {
    display: inline-block;
    position: relative;
    width: 200px;
    height: 200px;
    background: conic-gradient(#2f6d97 25% 80%, #ccc 56% 100%);
    border-radius: 50%;
    margin-left: 100px;
}

.progress_graph_wrap .progress_graph span {
    position: absolute;
    width: 158px;
    height: 158px;
    background-color: #fff;
    border-radius: 50%;
    top: 20px;
    left: 20px;
}

.progress_text_wrap {
    display: inline-block;
}

.progress_percent {
    display: inline-block;
    font-size: 45px;
    font-weight: 500;
    color: #2f6d97;
    position: absolute;
    top: 50px;
    left: 155px;
}

.progress_txt0 {
    display: inline-block;
    width: 100px;
    font-size: 16px;
    font-weight: 500;
    position: absolute;
    top: 105px;
    left: 155px;
}

.progress_txt1 {
    display: inline-block;
    width: 100px;
    font-size: 16px;
    font-weight: 500;
    position: absolute;
    top: 130px;
    left: 160px;
}

.progress_txt1 span {
    color: #ff352f;
}

.progress_text_wrap {
    display: inline-block;
    margin-left: 40px;
    float: left;
}

.progress_text0 {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 1px;
    margin-bottom: 10px;
    line-height: 150%;
}

.progress_text0 span {
    font-size: 18px;
    color: #2abbd3;
}

.progress_text1 {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 1px;
    margin-bottom: 10px;
    line-height: 150%;
}

.progress_text1 span {
    color: #ff352f;
}

.progress_text2 {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 1px;
    margin-bottom: 10px;
    line-height: 150%;
    background-color: #bdd7ee;
    padding: 10px;
}

.appraisal_wrap2 {
    display: inline-block;
    width: 100%;
    height: 520px;
    box-shadow: 0 3px 3px rgba(51, 51, 51, 0.1);
    border: 1px solid #dadada;
    border-radius: 3px;
    background-color: #fff;
    overflow-y: scroll;
}

.appraisal_table2 thead tr th {
    padding: 15px 0;
    border-bottom: 1px solid #ccc;
}

.appraisal_table2 tbody tr td {
    padding: 10px 0;
    text-align: center;
}

.appraisal_table2 tbody tr td img {
    width: 55px;
    height: 55px;
    border-radius: 50%;
}

.appraisal_table2 tbody tr td.left {
    text-align: left;
    padding-left: 10px;
}

.appraisal_table2 tbody tr td.red {
    color: #ff352f;
}

.appraisal_table2 tbody tr td.bold {
    font-weight: 500;
}

.appraisal_table2 tbody tr td.btn span {
    display: inline-block;
    width: 100px;
    height: 25px;
    background: #ccc;
    line-height: 25px;
    font-size: 14px;
}

.btn_red span {
    background: #ff352f !important;
    color: #fff;
    color: #000;
}

/*怨듯넻  multiple selectbox 泥섎━*/
.multi-select-container {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 27px;
    border: none;
    outline: none;
    border: 1px solid #e2e5ec;
    color: #333;
    font-size: 13px;
}

.multi-select-menu {
    position: absolute;
    left: 0;
    top: 0.8em;
    float: left;
    min-width: 100%;
    background: #fff;
    margin: 1em 0;
    padding: 0.4em 0;
    border: 1px solid #aaa;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
    display: none;
}

.multi-select-menu input {
    margin-right: 0.3em;
    vertical-align: 0.1em;
}

.multi-select-button {
    display: inline-block;
    width: 100%;
    height: 100%;
    padding: 0 5px;
    text-align: left;
    line-height: 25px;
    font-size: 13px;
    color: #333;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: -0.5em;
    background-color: #fff;
    border-radius: 4px;
    cursor: default;
    background-image: url(/resources/images/svg/select_off.svg);
    background-repeat: no-repeat;
    background-position: 97% center;
    background-size: 9px;
}

.multi-select-menuitem {
    padding: 0 5px;
    display: inline-block;
    width: 100%;
}

/* .multi-select-button:after { */
/*   content: ""; */
/*   display: inline-block; */
/*   width: 0; */
/*   height: 0; */
/*   border-style: solid; */
/*   border-width: 0.4em 0.4em 0 0.4em; */
/*   border-color: #999 transparent transparent transparent; */
/*   margin-left: 0.4em; */
/*   vertical-align: 0.1em; */
/* } */
.multi-select-container--open .multi-select-menu {
    display: block;
}

/* .multi-select-container--open .multi-select-button:after { */
/*   border-width: 0 0.4em 0.4em 0.4em; */
/*   border-color: transparent transparent #999 transparent; */
/* } */

/* 기안서 */
.approve_pop_btn {
    width: 140px;
    height: 100%;
    float: left;
    text-align: center;
    padding-top: 110px;
    margin-left: 50px;
}

.approve_pop_btn .wide_btn {
    width: 92px !important;
}

.datepicker-dropdown {
    position: absolute !important;
    /* 	width: 303px !important; */
    /* 	height: 313px !important; */
    /* position: absolute; */
    float: none;
    clear: both;
    box-sizing: border-box;
    margin: 0px;
    padding: 20px 25px !important;
    padding-bottom: 0 !important;
    z-index: 3000;
    /* border: 1px solid rgba(50, 50, 50, 0.3); */
    /* box-shadow: rgb(0 0 0 / 50%) 1px 2px 5px; */
    user-select: none;
    left: 598.391px;
    top: 316px;
    position: absolute !important;
    /* 	width:320px !important; */
    /* 	height:380px !important; */
    border: 1px solid #E7E7E7;
    background: #FFFFFF;
    boder-radius: 6px;
    box-shadow: 0px 16px 24px rgba(0, 0, 0, 0.1), 0px 4px 8px rgba(0, 0, 0, 0.04);
}

.datepicker-inline {
    width: unset !important;
    clear: both;
    box-sizing: border-box;
    margin: 0px;
    padding: 20px 25px !important;
    padding-bottom: 0 !important;
    z-index: 3000 !important;
    position: relative;
    user-select: none;
    border: 1px solid #E7E7E7;
    background: #FFFFFF;
    boder-radius: 6px;
    box-shadow: 0px 16px 24px rgba(0, 0, 0, 0.1), 0px 4px 8px rgba(0, 0, 0, 0.04);
}

.datepicker-dropdown table,
.datepicker-inline table {
    border-collapse: unset;
}

.datepicker-days {
    position: relative;
    width: 271px;
    height: 356px;
    padding-top: 4px;
}

.datepicker-days tfoot {
    position: absolute;
    bottom: 24px;
}

.datepicker-months {
    position: relative;
    width: 270px;
    height: 284px;
    padding-top: 4px;
}

.datepicker-months tfoot {
    position: absolute;
    bottom: 24px;
}

.datepicker-years {
    position: relative;
    width: 270px;
    height: 284px;
    padding-top: 4px;
}

.datepicker-years tfoot {
    position: absolute;
    bottom: 24px;
}

.datepicker-dropdown tfoot .today,
.datepicker-inline tfoot .today {
    /* 	display:inline-block !important; */
    width: 272px !important;
    height: 40px !important;
    line-height: 40px;
    text-align: center;
    background-color: #506A8C;
    border: 1px solid #506A8C;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 400;
    color: #fff !important;
}

.datepicker-dropdown tfoot .today:hover,
.datepicker-inline tfoot .today:hover {
    background-color: #506A8C !important;
    border: 1px solid #506A8C !important;
    border-radius: 4px !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    color: #fff !important;
}

.datepicker .datepicker-switch {
    position: relative;
    vertical-align: top;
    height: 16px;
    cursor: default;
    text-align: center;
    font-size: 14px;
    color: #222222;
    font-weight: 500;
}

.datepicker th.dow {
    min-width: 20px;
    text-align: center;
    width: 28px !important;
    height: 48px !important;
    border-spacing: 3px;
    color: #444444;
    font-size: 14px;
    padding-top: 20px;
}

.datepicker td.day {
    /* 	text-decoration: none; */
    /*     display: inline-block; */
    /*     width: 30px; */
    /*     height: 30px; */
    /*     text-align: center; */
    /*     line-height: 30px; */
    cursor: pointer;
    color: #444444;
    font-size: 14px;
    font-weight: 400;
    padding: 7px;
}

/* .datepicker td.day:hover{ */
/* 	border-radius:50% !important; */
/* } */
/* .datepicker td.day.acrtive{ */
/* 	background-color: #6eaaf8 !important; */
/*     border-radius: 50% !important; */
/*     color: #fff !important; */
/* } */
/* .datepicker td.day.acrtive:hover{ */
/* 	background-color: #6eaaf8 !important; */
/*     border-radius: 50% !important; */
/*     color: #fff !important; */
/* } */


#EMP_PICTURE {
    backface-visibility: hidden;
    transform: translateZ(0);
    /*image-rendering: -webkit-optimize-contrast;*/
}

@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-resolution: 192dpi),
only screen and (min-resolution: 2dppx) {
    #EMP_PICTURE {
        display: initial;
    }
}

/*2022-07-11 플랫폼 신규 디자인 적용*/
button.green {
    /*background-color: #14BB94;
	border: 1px solid #119D7D;*/
    background-color: var(--main-color);
    border: 1px solid var(--main-color);
    color: #fff;
    transition: all 0.2s ease;
}

button.green:hover {
    background-color: var(--btn-primary-hover);
    border-color: var(--btn-primary-hover);
}

button.white {
    background-color: #fff;
    border: 1px solid var(--main-color);
    color: var(--main-color);
    transition: all 0.2s ease;
}

button.white:hover {
    background-color: var(--main-color);
    color: #fff;
}

button.navy {
    background-color: #506A8C;
    border: 1px solid #506A8C;
    color: #fff;
    transition: all 0.2s ease;
}

button.navy:hover {
    background-color: #3d5169;
    border-color: #3d5169;
}

button.red {
    background-color: #FF8C8C;
    border: 1px solid #FF8C8C;
    color: #fff;
    transition: all 0.2s ease;
}

button.red:hover {
    background-color: #e67373;
    border-color: #e67373;
}

button.gray {
    background-color: #7f7f7f;
    border-color: #7f7f7f;
    transition: all 0.2s ease;
}

button.gray:hover {
    background-color: #666666;
    border-color: #666666;
}

button.green.grid {
    margin-left: 0 !important;
    width: 44px;
    height: 24px;
    line-height: 24px;
    font-size: 12px;
}

.back_w {
    background-color: #fff !important;
}

.no_back {
    background: unset;
}

.grid_inner_wrap3 {
    display: inline-block;
    width: 100%;
    margin-bottom: 21px;
    box-shadow: rgba(0, 0, 0, 0.04) 0px 4px 8px;
}

.half_header {
    height: auto !important;
}

.contents_header.half_header {
    height: auto !important;
}

/* 팝업 내부 헤더 - 중복 패딩 제거 */
.modal_body .contents_header,
.modal_wrap .contents_header {
    padding: 0 !important;
}

/* 팝업 내부 헤더 그리드 (modal_body 내부만 적용) */
.modal_body .contents_header.half_header .content_header_inner {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 8px;
    align-items: end;
}

.content_schedule_apply {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
    height: calc(100% - 21px) !important;
    margin-left: 0;
    overflow-y: scroll;
    -ms-overflow-style: none;
}

.ea_schedule_header {
    width: 1455px;
}

.ea_schedule_wrap {
    width: 1455px;
    margin-right: 43px;
}

.form_inp1_v2.w190 {
    width: 190px !important;
}

.form_object.w170 {
    width: 170px !important;
}

.select_box.w80 {
    width: 80px !important;
}

.form_object.w105 {
    width: 105px !important;
}

/*.form_object.w210 {
	width: 210px !important;
}*/

.form_object.w420 {
    width: 420px !important;
}

.form_object.w423 {
    width: 423px !important;
}

.form_object.w250 {
    width: 250px !important;
}

.form_object.w204 {
    width: 204px !important;
}


.form_object.w420 {
    width: 420px !important;
}

.form_object.w430 {
    width: 430px !important;
}

.form_object.w137 {
    width: 137px !important;
}

.form_object.w219 {
    width: 219px !important;
}

.form_object.w141_5 {
    width: 141.5px !important;
}

.form_object.w283 {
    /* 	width: 283px !important; */
    width: calc(16.66% - 12.5px) !important;
}

.form_object.w283_f {
    width: 286px !important;
}

.form_object.w352 {
    width: 352px !important;
}

.form_object.w246 {
    width: 246px !important;
}

.form_object.w240 {
    width: 240px !important;
}

.form_object.w508 {
    width: 508px !important;
}

.form_object.w138 {
    width: 138px !important;
}

.form_object.w212 {
    width: 212px !important;
}

.form_object.w639 {
    width: 639px !important;
}

.form_object.w660 {
    width: 660px !important;
}

.form_object.w668 {
    width: 668px !important;
}

.form_object.w134 {
    width: 134px !important;
}

.form_object.w124 {
    width: 124px !important;
}

.form_object.w263 {
    width: 263px !important;
}

.form_object.w275 {
    width: 275px !important;
}

.form_object.w823 {
    width: 823px !important;
}

.form_object.w823.drop_box .drop_box_inp {
    background-position: 98% center;
}

.form_object.w312 {
    width: 312px !important;
}

.form_inp0_v2.w183 {
    width: 183px !important;
}

.form_object.w582 {
    width: 582px !important;
}

.form_object.w582.drop_box .drop_box_inp {
    background-position: 98% center;
}

.form_object.w302 {
    width: 302px !important;
}

.form_object.w442 {
    width: 442px !important;
}

.form_object.w218 {
    width: 218px !important;
}

.form_object.mgb16 {
    margin-bottom: 16px !important;
}

.form_object.mgb19 {
    margin-bottom: 19px !important;
}

.form_object.mgb20 {
    margin-bottom: 20px !important;
}

.form_object.w932 {
    width: 932px !important;
}

.form_object.w932.drop_box .drop_box_inp {
    background-position: 98% center;
}

.form_object.w100.drop_box .drop_box_inp {
    background-position: 98% center;
}

.form_object.w97 {
    width: calc(96% + 16px) !important;
}

.form_object.w97.drop_box .drop_box_inp {
    background-position: 98% center;
}

.form_object.w888 {
    width: 885px !important;
}

.form_object.mgb16 {
    margin-bottom: 16px !important;
}

.ea_header {
    width: calc(100% - 380px);
}

.document_inner {
    display: inline-block;
    width: 100%;
    height: 100%;
    float: left;
}

.form_object.mgl32 {
    margin-left: 32px !important;
}

.approval_step0_wrap {
    display: inline-block;
    width: 100%;
    position: relative;
    padding-top: 20px;
    border-bottom: 1px dashed #D5D5D5;
}

.approval_step0_wrap .sign_step0_title {
    font-size: 16px;
    font-weight: 400;
    color: #444;
    /*padding-left: 10px;*/
    float: left;
}

.approval_step0_wrap .approval_line_btn0 {
    display: inline-block;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 18px;
    right: 38px;
    background-image: url(/resources/images/approval_line_btn0.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 20px;
}

.approval_step0_wrap .approval_line_btn1,
.refer_line_btn {
    display: inline-block;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 18px;
    right: 0;
    background-image: url(/resources/images/approval_line_btn1.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 20px;
}

.approval_step0_list {
    display: inline-block;
    width: 100%;
    /* 	height:366px; */
    padding-top: 10px;
    /* 	margin-bottom:32px; */
    overflow: hidden;
}

/* ============================================================================
   EA Side Panel - 결재라인 사이드 패널 (box 시리즈 공통)
   ============================================================================ */
.ea-side-panel {
    position: fixed !important;
    top: 72px !important;
    right: 0 !important;
    width: 420px !important;
    height: calc(100vh - 72px) !important;
    background: #fff !important;
    border-left: 1px solid #ddd !important;
    box-shadow: -2px 0 6px rgba(0,0,0,.1) !important;
    display: none !important;
    z-index: 9999 !important;
    flex-direction: column !important;
}

.ea-side-panel.active {
    display: flex !important;
}

/* ea-side-close 스타일은 common_v3.css의 '통합 닫기 버튼 스타일'에서 정의됨 */

.ea-side-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 12px !important;
    border-bottom: 1px solid #e5e5e5 !important;
    flex-shrink: 0 !important;
    height: 50px !important;
}

.ea-side-header-title {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #333 !important;
    margin: 0 !important;
    line-height: 1 !important;
}

.ea-side-body {
    padding: 12px !important;
    overflow-y: auto !important;
    flex: 1 !important;
    min-height: 0 !important;
    position: relative !important;
}

.side-panel-title {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #333 !important;
    margin: 0 0 16px 0 !important;
    padding-bottom: 8px !important;
    border-bottom: 3px solid #0BAB8B !important;
    display: inline-block !important;
    width: auto !important;
}

.ea-side-loader {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: #fff var(--loading-image) no-repeat center center;
    z-index: 10;
}

.ea-side-body::-webkit-scrollbar { width: 6px !important; }
.ea-side-body::-webkit-scrollbar-thumb {
    background: rgba(0,0,0,0.3) !important;
    border-radius: 4px !important;
}
.ea-side-body::-webkit-scrollbar-track { background: transparent !important; }

.side-open .rg-vscrollbar { display: none !important; }

/* 읽은 문서 - 그리드 스타일 */
.rg-read-center {
    font-weight: 400 !important;
    color: #888 !important;
    text-align: center !important;
}

.rg-read-left {
    font-weight: 400 !important;
    color: #888 !important;
    text-align: left !important;
}

.rg-read-right {
    font-weight: 400 !important;
    color: #888 !important;
    text-align: right !important;
}

/* 안읽은 문서 - 그리드 스타일 */
.rg-unread-center {
    font-weight: 600 !important;
    color: #333 !important;
    text-align: center !important;
}

.rg-unread-left {
    font-weight: 600 !important;
    color: #333 !important;
    text-align: left !important;
}

.rg-unread-right {
    font-weight: 600 !important;
    color: #333 !important;
    text-align: right !important;
}

/* ============================================================================
   Unified Approver Design - CSS Grid Layout
   좌측: 사진 + 이름/팀, 우측: 상태, 우상단: 날짜
   ============================================================================ */
.approver {
    display: grid;
    grid-template-columns: 44px 1fr auto auto;
    grid-template-rows: auto auto;
    align-items: center;
    gap: 4px 12px;
    min-height: 62px;
    margin-bottom: 8px;
    position: relative;
    padding: 10px 14px 10px 10px;
    text-align: left;
    border-radius: 6px;
    transition: background-color 0.2s ease;
    border: 1px solid transparent;
    /*border: 1px solid var(--grid-border-color, #E7E7E9);*/
    /*background-color: #fff;*/
}

/* Hidden inputs should not affect grid layout */
.approver input[type="hidden"] {
    display: none;
}

.approver.list_wrap {
    display: grid;
    grid-template-columns: 44px 1fr auto;
    grid-template-rows: auto auto;
    align-items: center;
    justify-content: flex-start;
}

.approver .approval_line_close {
    display: none;
    width: 16px;
    height: 16px;
    line-height: 16px;
    text-align: center;
    position: absolute;
    top: 6px;
    right: 6px;
    border-radius: 50%;
    /*background-color: #ffcccc;*/
    cursor: pointer;
}

.approver:hover {
    border: 1px solid #0BAB8B;
    background-color: #f0fdf9;
}

.approver:hover .approval_line_close {
    display: inline-block;
    cusor: pointer;
}

.approver_number {
    display: flex;
    font-size: 11px;
    width: 24px;
    height: 16px;
    background-color: #e2e5ec;
    color: #646c9a;
    align-items: center;
    justify-content: center;
    border-radius: 3px;
    font-weight: 500;
}

.approver .approver_img {
    grid-row: 1 / 3;
    grid-column: 1;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    overflow: hidden;
    border-radius: 50% !important;
    background-color: #e4e6e7;
    flex-shrink: 0;
}

.approver .approver_img.my {
    /* Grid layout handles positioning, no float needed */
    margin-left: 0 !important;
}


.approver .approver_img img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    border-radius: 50%;
}

.approver .approval_info_box {
    max-width: 140px;
}

.approver_user_info {
    display: flex;
    flex-direction: column;
    width: 175px;
}

.approver .approver_info {
    display: contents;
}

.approver .approver_name_box {
    /*height: 18px;*/
    line-height: 18px;
    font-size: 13px;
    font-weight: 400;
    color: #828B97;
    overflow: hidden;
    text-align: left;
}

.approver .approver_name {
    grid-row: 1;
    grid-column: 2;
    display: block;
    max-width: 160px;
    font-size: 14px;
    font-weight: 500;
    color: #333;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: left;
    line-height: 1.4;
    margin: 0;
}

.approver .approver_name.dept_appr {
    max-width: 150px;
    white-space: pre-wrap;
    word-break: keep-all;
}

.approver .approver_position {
    display: inline-block;
    /*width: auto;
	height: 16px;
	line-height: 20px;*/
    /*max-width: 70px;*/
    max-width: clamp(50px, 50%, 80px);
    font-size: 13px;
    font-weight: 400;
    color: #444;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: left;
    vertical-align: top;
}

.approver .approver_team {
    grid-row: 2;
    grid-column: 2;
    display: block;
    font-size: 12px;
    font-weight: 400;
    color: #828B97;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: left;
    line-height: 1.3;
    margin: 0;
    max-width: 160px;
}

.approver .approver_team .team {
    display: inline-block;
    /*max-width: 85px;*/
    max-width: 100px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: top;
}

.approver .approver_team .grade {
    display: inline-block;
    max-width: 55px;
    vertical-align: top;
}

.approver .approval_state_box {
    text-align: right;
    margin-left: auto;
}

.approver .approval_date {
    grid-row: 1;
    grid-column: 3 / 5;
    display: block;
    font-size: 11px;
    font-weight: 400;
    color: #A9ACBD;
    text-align: right;
    white-space: nowrap;
    line-height: 1.4;
}

.approver .approval_state {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    height: 22px;
    line-height: 22px;
    text-align: center;
    font-size: 11px;
    font-weight: 500;
    color: #1F817B;
    border-radius: 6px;
    background-color: #B0E2E0;
    position: absolute;
    bottom: 10px;
    right: 14px;
}

/* approver_state가 있을 때 approval_state 위치 조정 */
.approver .approver_state ~ .approval_state {
    right: auto;
    position: relative;
    bottom: auto;
}

/* 결재, 제출, 승인 */
.approval_state.type0,
.line_choose_wrap .line_choose .line_choose_statu.type0,
.line_choose_wrap .line_choose .line_choose_statu2.type0 {
    color: #1F817B;
    background-color: #B0E2E0;
}

/* 협조, 병렬협조 */
.approver .approval_state.type1,
.line_choose_wrap .line_choose .line_choose_statu.type1,
.line_choose_wrap .line_choose .line_choose_statu2.type1 {
    color: #927613;
    background-color: #F7E8B3;
}

/* 수신 */
.approver .approval_state.type2,
.line_choose_wrap .line_choose .line_choose_statu.type2,
.line_choose_wrap .line_choose .line_choose_statu2.type2 {
    color: #6282BF;
    background-color: #CBDDFF;
}

/* 참조, 대결 */
.approver .approval_state.type3,
.line_choose_wrap .line_choose .line_choose_statu.type3,
.line_choose_wrap .line_choose .line_choose_statu2.type3 {
    color: #C66660;
    background-color: #FFD4CB;
}

/* 배포 */
.approver .approval_state.type4,
.line_choose_wrap .line_choose .line_choose_statu.type4,
.line_choose_wrap .line_choose .line_choose_statu2.type4 {
    color: #C67860;
    background-color: #FFE4CB;
}

/* 부서, 전결 */
.approver .approval_state.type5,
.line_choose_wrap .line_choose .line_choose_statu.type5,
.line_choose_wrap .line_choose .line_choose_statu2.type5 {
    color: #6076C6;
    background-color: #CBECFF;
}

/* 반려 */
.approver .approval_state.type6,
.line_choose_wrap .line_choose .line_choose_statu.type6,
.line_choose_wrap .line_choose .line_choose_statu2.type6 {
    color: #FF5252;
    background-color: #FFDFDF;
}

/* 미결(대기) */
.approver .approval_state.type7,
.line_choose_wrap .line_choose .line_choose_statu.type7,
.line_choose_wrap .line_choose .line_choose_statu2.type7 {
    color: #666666;
    background-color: #E8E8E8;
}

.approver .approver_state {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    height: 22px;
    line-height: 22px;
    text-align: center;
    font-size: 11px;
    font-weight: 500;
    border-radius: 6px;
    position: absolute;
    bottom: 10px;
    right: 14px;
}

/* approver_state와 approval_state가 동시에 있을 때 - approver_state 위치 조정 */
.approver .approver_state:has(~ .approval_state) {
    right: auto;
    position: relative;
    bottom: auto;
    margin-right: 4px;
}

/* 두 배지가 함께 있을 때 그리드에서 우측 하단에 배치 */
.approver .approver_state:has(~ .approval_state) {
    grid-row: 2;
    grid-column: 3;
    justify-self: end;
}

.approver .approver_state ~ .approval_state {
    grid-row: 2;
    grid-column: 4;
    justify-self: end;
}

/* 전자결재 */
.approver_state.type0 {
    color: #1F817B;
    background-color: #B0E2E0;
}

/* 전자결재 */
.approver_state.type1 {
    color: #927613;
    background-color: #F7E8B3;
}

/*전자결재 상태값 수신*/
.approver_state.type2 {
    color: #6282BF;
    background-color: #CBDDFF;
}

/* 전자결재 */
.approver_state.type3 {
    color: #C66660;
    background-color: #FFD4CB;
}

/* 전자결재 */
.approver_state.type4 {
    color: #C67860;
    background-color: #FFE4CB;
}

/* 전자결재 */
.approver_state.type5 {
    color: #6076C6;
    background-color: #CBECFF;
}

/* 전자결재 */
.approver_state.type6 {
    color: #FF5252;
    background-color: #FFDFDF;
}

/*전자결재 상태값 미결(대기)*/
.approver_state.type7 {
    color: #666666;
    background-color: #E8E8E8;
}

.approval_list_btn {
    display: block;
    width: 100%;
    height: 37px;
    line-height: 39px;
    text-align: center;
    font-size: 12px;
    font-weight: 400;
    color: #848484;
    background-image: url(/resources/images/add_btn.png);
    background-repeat: no-repeat;
    background-position: center;
    background-position-x: calc(50% + 30px);
    background-size: 20px;
    margin: 0px !important;
}

.approval_list_btn.on {
    background-image: url(/resources/images/fold_btn.png);
    background-position-x: calc(50% + 40px);
}

.approval_step1_wrap {
    display: inline-block;
    width: 100%;
    padding-top: 28px;
    /* 	padding-left: 11px; */
    /* 	padding-right: 11px; */
    position: relative;
    /* 	padding-bottom:38px; */
    border-bottom: 1px dashed #D5D5D5;
}

.approval_step1_wrap .approval_step1_tab {
    display: inline-block;
    width: 100%;
    height: 28px;
    margin-bottom: 24px;
    padding-top: 20px;
    position: relative;
    padding-bottom: 27px;
}

.approval_step1_tab .step1_tab {
    display: inline-block;
    float: left;
    height: 28px;
    margin-right: 17px;
}

.approval_step1_tab .step1_tab .step1_tab_link {
    display: inline-block;
    width: 100%;
    height: 100%;
    font-size: 15px;
    font-weight: 400;
    color: #828B97;
}

.approval_step1_tab .step1_tab .step1_tab_link.on {
    border-bottom: 4px solid var(--main-color);
    font-size: 16px;
    font-weight: 400;
    color: #444444;
}

/* approval_step1_panel 스타일 */
.approval_step1_panel {
    display: inline-block;
    width: 100%;
    /*padding-top: 10px;*/
    overflow: hidden;
}

.approval_step1_panel.panel1 {
    display: none;
}

.approval_step1_wrap .approval_step1_panel.panel0,
.approval_step1_wrap .approval_step1_panel.panel1 {
    min-height: 60px;
}

/* tab_hidden 클래스 - 숨김 처리 */
.tab_hidden {
    display: none !important;
}

.refer_list_box {
    max-height: 550px;
    overflow-y: auto;
}

.approval_step2_wrap {
    display: inline-block;
    width: 100%;
    padding-top: 20px;
    /*padding-left: 11px;
	padding-right: 11px;*/
    position: relative;
    /*padding-bottom: 54px;*/
    padding-bottom: 27px;
    border-bottom: 1px dashed #D5D5D5;
}

/* 첨부파일 헤더 영역 정리 */
.approval_step2_wrap .approval_step_title {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.approval_step2_wrap .attached_file_info {
    display: block;
    font-size: 12px;
    font-weight: 400;
    color: #FF8989;
    margin-top: 8px;
    padding: 6px 10px;
    background: #FFF5F5;
    border-radius: 4px;
    border-left: 3px solid #FF8989;
}

.approval_step2_wrap .ea_attached_list {
    /*display: inline-block;*/
    /*width: 100%;*/
    margin-top: 15px;
    min-height: 40px;
    padding: 10px 0;
    /* 드래그앤드롭 기능 제거 */
    /*background-image: url(/resources/images/dragDrop.png);*/
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px;
}

.approval_step2_wrap .ea_attached_list .attached_file {
    display: inline-block;
    width: 100%;
    height: 32px;
    line-height: 26px;
    margin: 0;
    padding: 3px 20px 3px 4px;
    position: relative;
    font-size: 13px;
    color: #848484;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    text-align: left;
}

.approval_step2_wrap .ea_attached_list .attached_file .close_icon {
    display: inline-block;
    position: absolute;
    top: 8px;
    right: 0;
    width: 14px;
    height: 14px;
    line-height: 14px;
    text-align: center;
}

.ea_attached_list .attached_file .close_icon img {
    vertical-align: middle;
}

.approval_step3_wrap {
    display: inline-block;
    width: 100%;
    padding-top: 20px;
    /*padding-left: 11px;
	padding-right: 11px;*/
    position: relative;
    padding-bottom: 27px;
    border-bottom: 1px dashed #D5D5D5;
}

.approval_step3_wrap .ea_relation_list {
    display: inline-block;
    width: 100%;
    margin-top: 21px;
}

.approval_step3_wrap .ea_relation_list .relation_file {
    display: inline-block;
    width: 100%;
    height: 32px;
    line-height: 26px;
    padding: 3px 4px;
    margin-bottom: 10px;
    position: relative;
    font-size: 13px;
    color: #848484;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    padding-right: 20px;
    text-align: left;
}

.approval_step3_wrap .ea_relation_list .relation_file .close_icon {
    display: inline-block;
    position: absolute;
    top: 8px;
    right: 0;
    width: 14px;
    height: 14px;
    line-height: 14px;
    text-align: center;
}

.ea_relation_list .relation_file .close_icon img {
    vertical-align: middle;
}

.approval_step_title {
    display: inline-block;
    font-size: 16px;
    font-weight: 400;
    color: #444444;
    /*float: left;*/
    color: #B9BEC5;
    text-align: left;
    /*padding-left: 11px;*/
}

.add_btn {
    display: inline-block;
    width: 20px;
    height: 20px;
    /*position: absolute;
	top: 23px;
	right: 22px;*/
    background-image: url(/resources/images/add_btn.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 20px;
    float: right;
    padding: 0;
}

/* ============================================================================
   EA View Wrap - 결재라인 보기 모드 래퍼
   ============================================================================ */
.ea_view_wrap {
    display: inline-block;
    width: 100%;
    /*background-color: #fff;*/
}

/* jQuery UI 탭 스타일 오버라이드 (ea_view 전용) */
.ea_view_wrap.ui-tabs {
    padding: 0;
    border: none;
    background: none;
}

.ea_view_wrap .ui-tabs-nav,
.ea_view_wrap .ui-widget-header {
    border: none !important;
    background: none !important;
    /*padding: 0 !important;*/
}

.ea_view_wrap .ui-tabs-panel,
.ea_view_wrap .ui-widget-content {
    border: none !important;
    padding: 0 !important;
    /*background: #fff !important;*/
}

.ea_view_wrap .ui-state-default,
.ea_view_wrap .ui-state-active {
    border: none !important;
    background: none !important;
}

.ea_view_tab {
    display: inline-block;
    width: 100%;
    /*height: 39px;*/
}

.ea_view_tab .view_tab {
    display: inline-block;
    max-width: 121px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    /*height: 39px;*/
    line-height: 39px;
    /* 	padding:0 2.5px; */
    float: left;
    margin-right: 44px;
    position: relative;
    padding-top: 28px;
}

.ea_view_tab .view_tab .ea_view_count {
    display: inline-block;
    height: 16px;
    line-height: 4px;
    text-align: center;
    background-color: #FF7571;
    border-radius: 10px;
    font-size: 10px;
    font-weight: 400;
    color: #fff;
    padding: 0 5px;
    position: absolute;
    top: 18px;
    right: 0;
    padding: 7px;
}

.ea_view_tab .view_tab .count {
    display: inline-block;
    width: 16px;
    height: 16px;
    line-height: 16px;
    text-align: center;
    background-color: #FF7571;
    border-radius: 6px;
    position: absolute;
    top: 12px;
    right: -18px;
    font-size: 10px;
    font-weight: 400;
    color: #fff;
}

.ea_view_tab .view_tab .view_tab_link,
.ea_view_tab .view_tab .popup_tab_link {
    display: inline-block;
    width: 100%;
    height: 39px;
    line-height: 39px;
    font-size: 16px;
    font-weight: 400;
    color: #B9BEC5;
    letter-spacing: -1px;
    cursor: pointer;
}

.ea_view_tab .view_tab .view_tab_link.on {
    border-bottom: 4px solid var(--main-color);
    /*font-size: 16px;*/
    /*font-weight: 400;*/
    color: #242A30;
}

.ea_view_tab .view_tab .popup_tab_link:hover {
    /*border-bottom: 4px solid #0BAB8B;*/
    /*font-size: 16px;*/
    /*font-weight: 400;*/
    color: #242A30;
}

.approval_opinion_wrap {
    display: inline-block;
    width: 100%;
    /*height: 780px;*/
    height: 100%;
    /* 	padding-top: 20px; */
    position: relative;
    /*border-bottom: 1px dashed #D5D5D5;*/
}

.approval_opinion_count {
    display: inline-block;
    width: 16px;
    height: 16px;
    line-height: 16px;
    text-align: center;
    background-color: #FF7571;
    margin-left: 4px;
    vertical-align: top;
    border-radius: 6px;
    font-size: 10px;
    font-weight: 400;
    color: #fff;
}

.approval_opinion_wrap .opinion_wrap {
    display: inline-block;
    width: 100%;
    /*height: 600px;*/
    /* 	height: calc(100% - 156px); */
    padding-top: 24px;
    /*height:600px;*/
    height: calc(100% - 140px);
    overflow: scroll;
    /*border-bottom: 1px dashed #D5D5D5;*/
}

.approval_opinion_wrap .opinion_wrap .opinion_list {
    display: inline-block;
    width: 100%;
    /*height: 100%;*/
    /* 	height: 63vh; */
    max-eight: 600px;
    padding-left: 11px;
    padding-right: 11px;
    overflow-y: scroll;
}

.contents_wrap_eapopup .approval_opinion_wrap .opinion_wrap .opinion_list {
    max-height: 60vh;
}

.opinion_list .opinion {
    display: inline-block;
    width: 100%;
    min-height: 90px;
    /* 	position: relative; */
    margin-bottom: 8px;
    position: relative;
}

.opinion_list .opinion.last {
    margin-bottom: 10px;
}

.opinion_list .opinion .approver_img {
    display: inline-block;
    width: 37px;
    height: 37px;
    /* 	position: absolute; */
    /* 	top: 0; */
    /* 	left: 0; */
    margin-right: 12px;
    float: left;
}

.opinion_list .opinion .approver_img.my {
    float: right;
    margin-right: 0;
    margin-left: 12px;
}

.opinion_list .opinion .approver_img img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
}

.opinion_list .opinion .approver_name {
    display: inline-block;
    width: 120px;
    height: 24px;
    line-height: 24px;
    font-size: 13px;
    font-weight: 400;
    color: #444;
    /* 	position: absolute; */
    /* 	top: 0; */
    /* 	left: 61px; */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: left;
    float: left;
    width: 55%;
}

.opinion_list .opinion .approver_name.my {
    float: right;
    text-align: right;
}

.opinion_list .opinion .approver_team {
    display: inline-block;
    width: 120px;
    height: 14px;
    line-height: 14px;
    font-size: 13px;
    font-weight: 500;
    color: #828B97;
    /* 	position: absolute; */
    /* 	top: 24px; */
    /* 	left: 61px; */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: left;
    float: left;
}

.opinion_list .opinion .approver_team.my {
    float: right;
    text-align: right;
}

.opinion_list .opinion .approval_date {
    display: inline-block;
    width: 92px;
    height: 14px;
    line-height: 14px;
    font-size: 12px;
    font-weight: 400;
    color: rgb(169, 172, 189);
    /* 	position: absolute; */
    /* 	top: 20px; */
    /* 	right: 0px */
    float: right;
}

.opinion_list .opinion .approval_date.my {
    float: left;
    text-align: left;
}

.opinion_list .opinion:hover .opinion_delete {
    display: inline-block;
}

.opinion_list .opinion .opinion_delete {
    width: 16px;
    height: 16px;
    position: absolute;
    top: 0;
    right: 0;
    background-image: url(/resources/images/opinion_delete.png);
    background-size: 16px;
    background-position: center center;
    background-repeat: no-repeat;
    cursor: pointer;
}

.opinion_list .opinion .opinion_delete.my {
    left: 0 !important;
}

.opinion_list .opinion .opinion_txt {
    display: inline-block;
    width: 289px;
    padding: 11px 15px;
    line-height: 16px;
    background-color: #fff;
    border: 1px solid #E7E7E9;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 400;
    color: #888;
    /* 	position: absolute; */
    /* 	top: 49px; */
    /* 	left: 54px; */
    text-align: left;
    margin-top: 12px;
    margin-right: 49px;
}

.opinion_list .opinion .opinion_txt.my {
    /*text-align:right;*/
    margin-left: 0;
    float: right;
    margin-right: 0;
    margin-left: 49px;
    /* 	text-align:right; */
}

.approval_opinion_wrap .approval_opinion {
    display: inline-block;
    width: 100%;
    /*height: 132px;*/
    /*position: absolute;
	padding-bottom: 20px;
	padding-left: 11px;
	padding-right: 11px;*/
    /* 	position: sticky; */
    /* 	bottom: 0; */
    /* 	left: 0; */
    padding: 10px 11px;
    border: 1px dashed #D5D5D5;
    border-width: 1px 0 1px 0;
}

.approval_opinion_wrap .approval_opinion .opinion_text_box {
    width: 100%;
    height: 66px;
    border: 1px solid #E7E7E9;
    border-radius: 8px;
    padding: 14px;
    resize: none;
}

.approval_opinion_wrap .approval_opinion .opinion_text_box::placeholder {
    font-size: 13px;
    font-weight: 400;
    color: #C1C1C1;
}

.approval_opinion_wrap .approval_opinion .opinion_btn {
    display: inline-block;
    width: 100%;
    /*height: 34px;*/
    padding-top: 12px;
    text-align: right;
}

.approval_attached_list {
    display: inline-block;
    width: 100%;
    /*padding-bottom: 44px;*/
    padding: 0 11px 44px;
    border-bottom: 1px dashed #D5D5D5;
}

.approval_attached_list_title {
    display: inline-block;
    width: 100%;
    margin-bottom: 20px;
    font-size: 16px;
    font-weight: 400;
    color: #B9BEC5;
    text-align: left;
}

.approval_attached_list .attached_file {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 28px;
    margin-bottom: 4px;
    text-align: left;
}

.approval_attached_list .attached_file a {
    flex: 1;
    min-width: 0;
}

.approval_attached_list .attached_file .attached_file_txt {
    display: block;
    font-size: 13px;
    font-weight: 400;
    color: #848484;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.approval_attached_list .attached_file button {
    flex-shrink: 0;
    margin-left: 8px;
}

/* 전자결재 */
.ea_view_mode_header {
    display: inline-block;
    width: calc(100% - 380px);
    /*min-height: 184px;*/
    float: left;
    margin-right: 20px;
    margin-bottom: 22px;
    background-color: #fff;
    border: 1px solid #E7E7E9;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border-radius: 4px;
    padding: 30px 32px;
    text-align: left;
}

.ea_view_mode_header .ea_view_title {
    display: inline-block;
    width: 100%;
    line-height: 120%;
    font-size: 23px;
    font-weight: 400;
    color: #444;
    margin-bottom: 20px;
}

.ea_view_mode_header .ea_view_writer {
    display: inline-block;
    width: calc(100% - 44px);
    /*margin-bottom: 20px;*/
}

.ea_view_mode_header .ea_view_writer .ea_view_img {
    display: inline-block;
    width: 44px;
    height: 44px;
    margin-right: 17px;
    float: left;
    border-radius: 50%;
    overflow: hidden;
    position: relative;
}

.ea_view_mode_header .ea_view_writer .ea_view_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ea_view_mode_header .ea_view_writer .ea_view_name {
    display: inline-block;
    width: calc(100% - 61px);
    height: 24px;
    line-height: 24px;
    font-size: 15px;
    font-weight: 400;
    color: #444444;
    /*margin-bottom: 2px;*/
    margin-bottom: 3px;
    float: left;
}

.ea_view_mode_header .ea_view_writer .ea_view_team {
    display: inline-block;
    width: calc(100% - 61px);
    height: 14px;
    line-height: 14px;
    font-size: 13px;
    font-weight: 400;
    color: #828B97;
    float: left;
}

.ea_view_mode_header .ea_view_txt {
    display: inline-block;
    width: 100%;
    padding-left: 61px;
}

.ea_view_mode_header .ea_view_txt .ea_view_info:not(:last-of-type) {
    margin-bottom: 5px;
}

.ea_view_mode_header .ea_view_txt .ea_view_number {
    display: inline-block;
    margin-right: 38px;
}

.ea_view_mode_header .ea_view_txt .ea_view_date {
    display: inline-block;
}

.ea_view_mode_header .ea_view_txt .ea_view_number .view_label,
.ea_view_mode_header .ea_view_txt .ea_view_date .view_label,
.ea_view_mode_header .ea_view_txt .ea_view_info .view_label {
    display: inline-block;
    margin-right: 23px;
    font-size: 12px;
    font-weight: 400;
    color: #828B97;
}

.ea_view_mode_header .ea_view_txt .ea_view_number .view_txt,
.ea_view_mode_header .ea_view_txt .ea_view_date .view_txt,
.ea_view_mode_header .ea_view_txt .ea_view_info .view_txt {
    display: inline-block;
    font-size: 13px;
    font-weight: 400;
    color: #444444;
}

/************ 결재라인 팝업 ************/
.approval_line_pop {
    display: inline-block;
    width: 1000px;
    height: 100vh;
    background-color: #fff;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 9999;
}

/* 헤더 */
.approval_line_pop .line_pop_header {
    display: flex;
    justify-content: space-between;
    height: 70px;
    border-bottom: 1px solid #EFEFEF;
    padding: 0 32px;
    text-align: left;
}

.approval_line_pop .line_pop_header .right_header {
    display: flex;
    align-items: center;
}

.approval_line_pop .line_pop_header .line_pop_title {
    display: inline-block;
    height: 70px;
    line-height: 70px;
    font-size: 15px;
    font-weight: 400;
    color: #333333;
}

.approval_line_pop .line_pop_header .line_pop_title.on {
    /*border-bottom: 4px solid #0BAB8B;*/
    border-bottom: 4px solid var(--main-color);
}

.approval_line_pop .line_pop_header .line_pop_close {
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url(/resources/images/line_pop_close.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px;
    margin-top: 21px;
}

/* 바디 */
.line_pop_body {
    display: flex;
    flex-direction: column;
    height: calc(100% - 70px);
    padding: 25px 32px 50px;
    overflow-y: scroll;
}

/* 'approva_line_inner' 타이포도 지원 */
.approval_line_inner,
.approva_line_inner {
    display: flex;
    height: calc(100% - 135px);
    overflow-y: auto;
    column-gap: 20px;
}

.approval_line_pop .left_area {
    display: inline-block;
    width: 469px;
    height: 100%;
    padding: 10px;
    /*padding-left: 32px;
	padding-top: 27px;
	padding-bottom: 34px; */
}

.approval_line_pop .left_area .left_area_top {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    width: 100%;
    align-items: flex-end;
    padding-bottom: 15px;
}

.approval_line_pop .left_area .left_area_top .form_object {
    flex: 0 0 auto;
    margin: 0 !important;
}

.left_area_top .line_pop_search {
    margin: 0 !important;
    height: 36px;
}

.approval_line_pop .line_list_wrap {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    background-color: #F4F4F4;
    border-radius: 4px;
    /*margin-bottom: 20px;*/
    /*padding: 27px 20px;*/
    overflow: scroll;
}

.line_list_wrap_inner {
    height: 100%;
}

.line_list_wrap .line_onedepth {
    display: inline-block;
    width: 100%;
    height: 18px;
    line-height: 18px;
    padding-left: 26px;
    font-size: 13px;
    font-weight: 400;
    color: #828B97;
    background-image: url(/resources/images/arrow-circle-left.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 18px;
}

.line_list_wrap .line_onedepth.on {
    background-image: url(/resources/images/arrow-circle-down.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 18px;
}

.line_list_wrap .line_twodepth_wrap {
    display: inline-block;
    width: 100%;
    margin-top: 18px;
}

.line_list_wrap .line_twodepth_wrap .line_twodepth {
    display: inline-block;
    width: 100%;
    margin-bottom: 12px;
}

.line_list_wrap .line_twodepth_wrap .line_twodepth a {
    display: inline-block;
    width: 100%;
    height: 18px;
    line-height: 18px;
    padding-left: 52px;
    font-size: 13px;
    font-weight: 400;
    color: #828B97;
    background-image: url(/resources/images/arrow-circle-left.png);
    background-repeat: no-repeat;
    background-position: 24px center;
    background-size: 18px;
}

.line_list_wrap .line_twodepth_wrap .line_twodepth a.on {
    background-image: url(/resources/images/arrow-circle-down.png);
    background-repeat: no-repeat;
    background-position: 24px center;
    background-size: 18px;
}

.line_list_wrap .line_threedepth_wrap {
    display: inline-block;
    width: 100%;
    margin-top: 12px;
}

.line_list_wrap .line_threedepth_wrap .line_threedepth {
    display: inline-block;
    width: 100%;
    height: 18px;
    line-height: 18px;
    margin-bottom: 12px;
}

.line_list_wrap .line_threedepth_wrap .line_threedepth a {
    display: inline-block;
    width: 100%;
    height: 18px;
    line-height: 18px;
    padding-left: 78px;
    font-size: 13px;
    font-weight: 400;
    color: #828B97;
    background-image: url(/resources/images/line_threedepth.png);
    background-repeat: no-repeat;
    background-position: 48px center;
    background-size: 18px;
}

.approval_line_pop .center_area {
    display: inline-block;
    /*width: 118px;*/
    /*height: 731px;
	float: left;*/
    /*margin: 0 37px;*/
    padding: 0 15px;
}

.approval_line_pop .center_area .line_btn_top {
    height: 70%;
    padding-top: 150px;
    /*padding-bottom: 61px;*/
}

.approval_line_pop .center_area .line_btn_bottom {
    /*padding-top: 170px;*/
}

.approval_line_pop .center_area .line_pop_btn {
    width: 118px !important;
    margin-bottom: 8px;
}

.approval_line_pop .center_area .line_pop_btn.right {
    text-align: left;
    background-image: url(/resources/images/line_btn_right.png);
    background-repeat: no-repeat;
    background-position: 88px center;
    background-size: 18px;
}

.approval_line_pop .center_area .line_pop_btn.left {
    text-align: right;
    background-image: url(/resources/images/line_btn_left.png);
    background-repeat: no-repeat;
    background-position: 12px center;
    background-size: 18px;
}

.approval_line_pop .right_area {
    width: 463px;
    height: 100%;
    padding: 10px;
}

/*.approval_line_pop .right_area .line_choose_approve,
.approval_line_pop .right_area .line_choose_refer {
	display: flex;
	flex-direction: column;
	height: 100%;
}*/

.approval_line_pop .right_area .right_area_top {
    display: inline-block;
    width: 100%;
    /* 	margin-bottom: 19px; */
}

.approval_line_pop .right_area .line_choose_wrap {
    display: inline-block;
    width: 100%;
    height: 100%;
    background-color: #F4F4F4;
    border-radius: 4px;
    /*margin-bottom: 20px;*/
    padding: 12px;
    overflow-y: auto;
}

/* .approval_line_pop .right_area .line_choose_wrap::-webkit-scrollbar{display:none;} */
.line_choose_wrap .line_choose_inner {
    height: 100%;
}

.line_choose_wrap .line_choose {
    display: inline-block;
    width: 413px;
    height: 58px;
    background-color: #fff;
    border: 1px solid #E7E7E7;
    border-radius: 4px;
    margin-bottom: 8px;
    padding: 7px 8px;
    position: relative;
}

.line_choose_wrap .line_choose.on {
    /*border: 1px solid #14BB94;*/
    border: 1px solid var(--main-color);
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
}

.line_choose_wrap .line_choose .line_choose_img {
    display: inline-block;
    margin-right: 17px;
    float: left;
    position: relative;
    width: 44px;
    height: 44px;
    overflow: hidden;
    border-radius: 50% !important;
    background-color: #fff;
}

.line_choose_wrap .line_choose .line_choose_img img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    border-radius: 50%;
}

.line_choose_wrap .line_choose .line_choose_name {
    display: inline-block;
    height: 24px;
    line-height: 24px;
    font-size: 13px;
    font-weight: 400;
    color: #444444;
    position: absolute;
    top: 7px;
    left: 69px;
}

.line_choose_wrap .line_choose .line_choose_team {
    display: inline-block;
    height: 24px;
    line-height: 24px;
    font-size: 13px;
    font-weight: 400;
    color: #828B97;
    position: absolute;
    top: 26px;
    left: 69px;
}

.line_choose_wrap .line_choose .line_choose_team>span {
    display: inline-block;
    vertical-align: middle;
}

.line_choose_wrap .line_choose .line_choose_team>span[data-id="DEPT_NAME"] {
    max-width: 200px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

.line_choose_wrap .line_choose.empty {
    border: 1px dashed #82D18B;
}

.line_choose_wrap .line_choose .line_choose_statu {
    display: inline-block;
    height: 19px;
    line-height: 19px;
    text-align: center;
    background-color: #B0E2E0;
    color: #1F817B;
    font-size: 12px;
    font-weight: 400;
    border-radius: 6px;
    padding: 0px 8px;
    position: absolute;
    top: 31px;
    right: 11px;
}

/*전자결재 일인 statu 결재*/
.line_choose_statu.statu0 {
    background-color: #B0E2E0;
    color: #1F817B;
}

/*전자결재 일인 statu 협조*/
.line_choose_statu.statu1 {
    background-color: #F7E8B3;
    color: #927613;
}

/*전자결재 일인 statu 수신*/
.line_choose_statu.statu2 {
    background-color: #CBDDFF;
    color: #6282BF;
}

/* 전자결재 */
.line_choose_statu.statu3 {
    background-color: #FFD4CB;
    color: #C66660;
}

/* 전자결재 */
.line_choose_statu.statu4 {
    background-color: #FFE4CB;
    color: #C67860;
}

/*전자결재 일인 statu 전결*/
.line_choose_statu.statu5 {
    background-color: #CBECFF;
    color: #6076C6;
}

/*전자결재 일인 statu 반려*/
.line_choose_statu.statu6 {
    background-color: #FFDFDF;
    color: #FF5252;
}


.line_choose_wrap .line_choose .line_choose_statu2 {
    padding: 0 8px;
    height: 19px;
    line-height: 19px;
    text-align: center;
    font-size: 12px;
    font-weight: 400;
    position: absolute;
    top: 31px;
    right: 55px;
    border-radius: 6px;
}

/*전자결재 일인 statu 결재*/
.line_choose_statu2.statu0 {
    background-color: #B0E2E0;
    color: #1F817B;
}

/*전자결재 일인 statu 협조*/
.line_choose_statu2.statu1 {
    background-color: #F7E8B3;
    color: #927613;
}

/*전자결재 일인 statu 수신*/
.line_choose_statu2.statu2 {
    background-color: #CBDDFF;
    color: #6282BF;
}

/* 전자결재 */
.line_choose_statu2.statu3 {
    background-color: #FFD4CB;
    color: #C66660;
}

/* 전자결재 */
.line_choose_statu2.statu4 {
    background-color: #FFE4CB;
    color: #C67860;
}

/*전자결재 일인 statu 전결*/
.line_choose_statu2.statu5 {
    background-color: #CBECFF;
    color: #6076C6;
}

/*전자결재 일인 statu 반려*/
.line_choose_statu2.statu6 {
    background-color: #FFDFDF;
    color: #FF5252;
}

.line_grid_title {
    display: inline-block;
    width: 100%;
    height: 14px;
    line-height: 14px;
    font-size: 12px;
    font-weight: 400;
    color: #828B97;
    margin-bottom: 12px;
    text-align: left;
}

.line_grid {
    display: inline-block;
    width: 100%;
    height: 184px;
    border: 1px solid #E7E7E9;
}


.approval_line_pop .line_pop_footer {
    display: inline-block;
    width: 100%;
    height: 64px;
    line-height: 64px;
    padding-right: 32px;
    float: left;
    border-top: 1px solid #EFEFEF;
    text-align: right;
}

/* 전자결재 */
.approval_preview_pop {
    display: inline-block;
    width: 1280px;
    height: 1003px;
    border-radius: 8px;
    position: fixed;
    top: 72px;
    right: 320px;
    z-index: 9999;
    border: 1px solid #E7E7E9;
}

.approval_preview_pop .preview_pop_header {
    display: inline-block;
    width: 100%;
    height: 54px;
    line-height: 54px;
    border-bottom: 1px solid #EFEFEF;
    padding: 0 24px;
    background-color: #fff;
}

.approval_preview_pop .preview_pop_header .preview_pop_title {
    font-size: 15px;
    font-weight: 400;
    color: #333;
}

.approval_preview_pop .preview_pop_header .pop_close {
    display: inline-block;
    width: 24px;
    height: 24px;
    float: right;
    margin-top: 15px;
    background-image: url(/resources/images/line_pop_close.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px;
}

.approval_preview_list_wrap {
    display: inline-block;
    width: 100%;
    /* 	height: 113px; */
    height: 75px;
    /* 	padding: 14px 24px; */
    margin-bottom: 24px;
    overflow: scroll;
    background-color: #fff;
}

.approval_preview_list_wrap .approval_preview_list_inner {
    width: 100%;
    overflow-y: auto;
    /*display: inline-block;*/
}

.approval_preview_list_wrap .approval_preview_list_inner .preview {
    display: inline-block;
    width: 75px;
    height: 75px;
    text-align: center;
    /*float: left;*/
    margin-right: 12px;
}

.approval_preview_list_wrap .approval_preview_list_inner .preview .preview_icon {
    display: inline-block;
    width: 100%;
    height: 48px;
    margin-bottom: 7px;
    padding-top: 7px;
}

.approval_preview_list_wrap .approval_preview_list_inner .preview .preview_icon img {
    vertical-align: middle;
}

.approval_preview_list_wrap .approval_preview_list_inner .preview .preview_name {
    display: inline-block;
    width: 100%;
    height: 19px;
    line-height: 19px;
    text-align: center;
    font-size: 13px;
    font-weight: 500;
    color: #333;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.approval_preview_area {
    display: inline-block;
    width: 100%;
    /* 	height: 836px; */
    /*	min-height: 602px;*/
    /*	max-height: 602px;*/
    height: calc(100% - 100px);
    /* 	background: #F5F5F5; */
    background-color: #fff;
}

/* view_panel 기본 스타일 */
.view_panel {
    display: inline-block;
    width: 100%;
    /*background-color: #fff;*/
}

.view_panel.view_panel0 {
    padding-top: 0;
}

.view_panel.view_panel1 {
    padding-top: 0;
}

.view_panel.view_panel2 {
    /*padding-top: 32px;*/
    padding-top: 20px;
}

.approval_attached_list.list1 {
    /* position: relative; - flexbox로 변경됨 */
}

.approval_attached_list.list1 .attached_file button {
    /* flexbox 정렬 사용 */
}

.approval_attached_list.list2 {
    display: inline-block;
    width: 100%;
    padding-top: 20px;
    padding-left: 11px;
    padding-right: 11px;
    border-bottom: 1px dashed #D5D5D5;
}

.approval_attached_list.list2 .list2_title {
    display: inline-block;
    width: 100%;
    margin-bottom: 20px;
    font-size: 16px;
    font-weight: 400;
    color: #B9BEC5;
    text-align: left;
}

.approval_attached_list.list2 .attached_file .attached_file_txt {
    width: 100%;
}

/* 전자결재 */
.approval_my_pop {
    display: inline-block;
    width: 1000px;
    height: 100%;
    background-color: #fff;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 9999;
}

.approval_my_pop .line_pop_header {
    display: inline-block;
    width: 100%;
    height: 70px;
    border-bottom: 1px solid #EFEFEF;
    padding: 0 32px;
}

.approval_my_pop .line_pop_header .line_pop_title {
    display: inline-block;
    height: 70px;
    line-height: 70px;
    border-bottom: 4px solid var(--main-color);
    font-size: 15px;
    font-weight: 400;
    color: #333333;
    float: left;
}

.approval_my_pop .line_pop_header .line_pop_close {
    display: inline-block;
    width: 24px;
    height: 24px;
    float: right;
    background-image: url(/resources/images/line_pop_close.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px;
    margin-top: 23px;
}

.approval_my_pop .approval_grid_area {
    display: inline-block;
    width: 100%;
    height: calc( 100% - 130px );
    padding: 20px 32px;
    border-bottom: 1px solid #EFEFEF;
}

.approval_my_pop .approval_grid_area .approval_grid0 {
    display: inline-block;
    width: 299px;
    height: calc(100% - 20px);
    float: left;
    margin-right: 32px;
}

.approval_my_pop .approval_grid_area .approval_grid1 {
    display: inline-block;
    width: 735px;
    height: 210px;
    float: left;
    margin-bottom: 20px;
}

.approval_my_pop .approval_grid_area .approval_grid2 {
    display: inline-block;
    width: 735px;
    height: 210px;
    float: left;
}

.approval_my_pop .approval_grid_area .approval_grid_title {
    display: inline-block;
    width: 100%;
    height: 14px;
    line-height: 14px;
    font-size: 12px;
    font-weight: 400;
    color: #828B97;
    margin-bottom: 12px;
}

.approval_my_pop .approval_grid_area .approval_grid0 .grid0 {
    width: 100%;
    height: 100%;
}

.approval_my_pop .approval_grid_area .approval_grid1 .grid1 {
    width: 100%;
    height: 100%;
}

.approval_my_pop .approval_grid_area .approval_grid2 .grid2 {
    width: 100%;
    height: 100%;
}

.approval_my_pop .line_pop_footer {
    display: inline-block;
    width: 100%;
    height: 60px;
    padding-top: 15px;
    padding-right: 32px;
    float: left;
    text-align: right;
}



/*전자결재 가이드*/
.ea_guide_wrap {
    display: inline-block;
    width: calc(100% - 380px);
    min-height: 51px;
    background-color: #F1F9F7;
    border: 1px solid #43B8A1;
    border-radius: 4px;
    float: left;
    margin-right: 20px;
    margin-bottom: 22px;
}

.ea_guide_wrap .ea_guide_top {
    display: inline-block;
    width: 100%;
    height: 51px;
    padding-left: 63px;
    background-image: url(/resources/images/mobile_ea_guide_icon.png);
    background-repeat: no-repeat;
    background-position: 18px center;
    background-size: 24px;
    text-align: left;
}

.ea_guide_wrap .ea_guide_top .ea_guide_title {
    display: inline-block;
    height: 51px;
    line-height: 51px;
    font-size: 14px;
    font-weight: 500;
    /*color:#43B8A1;*/
    color: var(--required-label);
}

.ea_guide_wrap .ea_guide_top .ea_guide_btn {
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url(/resources/images/mobile_guider_btn_down.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px;
    float: right;
    margin-right: 14px;
    margin-top: 12px;
}

.ea_guide_wrap .ea_guide_top .ea_guide_btn.on {
    background-image: url(/resources/images/mobile_guider_btn_up.png);
}

.ea_guide_wrap .ea_guide_inner {
    width: 100%;
    line-height: 140%;
    /*padding-left:63px;*/
    font-size: 0.75em;
    color: #555;
    /*padding-bottom:18px;*/
    padding: 0 63px 18px;
    text-align: left;
    font-weight: 500;
    white-space: pre-wrap;
    overflow-x: hidden;
}



/* 메일 드롭박스 */
.mail_drop_box {
    min-height: 58px;
}

.mail_drop_box .drop_mail_list {
    display: block;
    width: 100%;
    max-height: 159px;
    background-color: #fff;
    padding: 5px 6px;
    border: 1px solid #E7E7E7;
    border-radius: 6px;
    box-shadow: 0px 16px 24px rgba(0, 0, 0, 0.1), 0px 4px 8px rgba(0, 0, 0, 0.04);
    position: absolute;
    top: 59px;
    left: 0;
    z-index: 99999;
    overflow: scroll;
}

.mail_drop_box .drop_mail_list .drop_mail_option {
    display: inline-block;
    width: 100%;
    height: 30px;
    line-height: 30px;
    font-size: 12px;
    color: #717A87;
    font-weight: 400;
    padding-left: 14px;
}

.mail_drop_box .drop_mail_list .drop_mail_option:hover {
    background-color: #F7F7F7;
    border-radius: 6px;
}

.mail_drop_box .mail_autocomplete_wrap {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    min-height: 26px;
    border: none;
    outline: none;
    border: 1px solid var(--grid-border-color);
    font-size: 13px;
    text-align: left;
    border-radius: 4px;
    padding: 5px;
    padding-bottom: 0;
}

.mail_autocomplete_wrap .mail_autocomplete_list .mail_drop_box_inp {
    display: inline-block;
    width: 188px;
    height: 26px;
    border: 1px solid #119D7D;
    border-radius: 3px;
    float: left;
}

.mail_drop_box .mail_autocomplete_wrap .mail_autocomplete_list {
    display: inline-block;
    width: 100%;
    /* 	height:26px; */
    /* 	padding:5px; */
}

.mail_autocomplete_list .mail_autocomplete {
    display: inline-block;
    height: 26px;
    line-height: 26px;
    float: left;
    background: #E8F5F3;
    border-radius: 3px;
    margin-right: 4px;
    padding-left: 7px;
    padding-right: 9px;
    text-align: left;
    margin-bottom: 5px;
}

.mail_autocomplete_list .mail_autocomplete .autocomplete_txt {
    display: inline-block;
    height: 13px;
    line-height: 13px;
    margin-right: 17px;
    font-size: 13px;
    font-weight: 400;
    color: rgba(67, 184, 161, 0.5);
    letter-spacing: 1px;
}

.mail_autocomplete_list .mail_autocomplete button.autocomplete_edit {
    display: inline-block;
    width: 10px;
    height: 10px;
    float: right;
    background-image: url(/resources/images/autocomplete_edit.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 10px;
    padding: 0 !important;
    margin: 0 !important;
    margin-right: 7px !important;
    margin-top: 9px !important;
}

.mail_autocomplete_list .mail_autocomplete button.autocomplete_delete {
    display: inline-block;
    width: 10px;
    height: 10px;
    float: right;
    background-image: url(/resources/images/autocomplete_delete.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 10px;
    padding: 0 !important;
    margin: 0 !important;
    margin-right: 6px !important;
    margin-top: 8px !important;
}


/* 조회 폼 공통 */
.drop_box .drop_box_inp {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left;
    display: inline-block;
    width: 100%;
    height: 36px;
    line-height: 36px;
    border: none;
    outline: none;
    border: 1px solid var(--grid-border-color);
    font-size: 13px;
    text-align: left;
    border-radius: 4px;
    margin-left: 0 !important;
    background-image: url(/resources/images/arrow-down.png);
    background-repeat: no-repeat;
    /*background-position: 94% center;*/
    background-position: right 10px center;
    background-size: 12px;
    padding-right: 30px !important;
    padding-left: 12px !important;
    color: #666;
    font-weight: 500;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    cursor: pointer;
}

.drop_box .drop_box_inp.on {
    color: #2AA538;
    border: 1px solid #5CCE75;
    background-image: url(/resources/images/drop_box_search.png);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    padding-right: 30px !important;
    padding-left: 12px !important;
}

/* .drop_box .drop_box_btn{ */
/* 	position: absolute; */
/*     bottom: 12px; */
/*    	right: 12px; */
/* 	display:inline-block; */
/* 	width:12px; */
/* 	height:12px; */
/* 	background-image:url(/resources/images/arrow-down.png); */
/* 	background-repeat: no-repeat; */
/* 	background-position: center center; */
/* 	background-size: 12px; */
/* 	padding:0 !important; */
/* } */
/* .drop_box .drop_box_btn.on{ */
/* 	background-image:url(/resources/images/drop_box_search.png); */
/* } */
.drop_box .drop_check_btn {
    position: absolute;
    bottom: 12px;
    right: 12px;
    display: inline-block;
    width: 12px;
    height: 12px;
    background-image: url(/resources/images/arrow-down.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 12px;
    padding: 0 !important;
}

.drop_box .drop_check_btn.on {
    background-image: url(/resources/images/arrow-up.png);
}

.drop_box .drop_box_inp.fw50 {
    width: 48%;
}

.drop_box .drop_box_list {
    display: none;
    width: 100%;
    max-height: 159px;
    background-color: #fff;
    padding: 5px 6px;
    border: 1px solid #E7E7E7;
    border-radius: 6px;
    box-shadow: 0px 16px 24px rgba(0, 0, 0, 0.1), 0px 4px 8px rgba(0, 0, 0, 0.04);
    position: absolute;
    top: 59px;
    left: 0;
    z-index: 99999;
    overflow: scroll;
}

.drop_box .drop_box_list.w210 {
    width: 210px;
}

.drop_box .drop_box_list .drop_option {
    display: inline-block;
    width: 100%;
    /*height: 30px;*/
    /*line-height: 30px;*/
    line-height: 1.3;
    font-size: 12px;
    color: #717A87;
    font-weight: 500;
    /*padding-left: 14px;*/
    padding: 8px 0 8px 14px;
    min-height: 30px;
    white-space: pre-line;
    word-break: keep-all;
}

.drop_box .drop_box_list .drop_option:hover {
    background-color: #F7F7F7;
    border-radius: 6px;
}

.drop_check_list {
    display: none;
    /*width: 283px;*/
    width: 100%;
    height: 159px;
    background-color: #fff;
    padding: 5px 6px;
    border: 1px solid #E7E7E7;
    border-radius: 6px;
    box-shadow: 0px 16px 24px rgba(0, 0, 0, 0.1), 0px 4px 8px rgba(0, 0, 0, 0.04);
    position: absolute;
    top: 59px;
    left: 0;
    z-index: 9;
}

.drop_check_search {
    display: inline-block;
    width: 100%;
    height: 30px;
    position: relative;
    margin-bottom: 10px;
}

.drop_check_search::after {
    content: "\f002";
    font-family: "FontAwesome";
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #999;
    font-size: 13px;
    pointer-events: none;
    transition: color 0.2s ease;
}

.drop_check_search .check_search_inp {
    display: inline-block;
    width: 100%;
    height: 30px;
    border: 1px solid #E0E0E0;
    border-radius: 6px;
    padding: 8px 30px 8px 10px;
    background-color: #FAFAFA;
    font-size: 12px;
    color: #333;
    transition: all 0.2s ease;
    box-sizing: border-box;
}

.drop_check_search .check_search_inp::placeholder {
    font-size: 12px;
    font-weight: 500;
    color: #999;
}

.drop_check_search .check_search_inp:focus {
    outline: none;
    border: 1px solid var(--focus-outline, #5CCE75);
    background-color: #fff;
    box-shadow: 0 0 0 2px rgba(92, 206, 117, 0.1);
}

.drop_check_search:has(.check_search_inp:focus)::after {
    color: var(--focus-outline, #5CCE75);
}

.drop_check_search .check_search_inp.on {
    border: 1px solid var(--focus-outline);
    background-color: #fff;
    color: #444444;
}

.drop_check_list .check_option_list {
    display: inline-block;
    width: 100%;
    height: 99px;
    overflow: scroll;
}

.check_option_list .drop_check_option {
    display: inline-block;
    width: 100%;
    height: 30px;
    line-height: 30px;
    font-size: 12px;
    color: #717A87;
    font-weight: 500;
    padding-left: 6px;
    margin-bottom: 3px;
}

.check_option_list .drop_check_option.on {
    background-color: #F7F7F7;
    border-radius: 6px;
}

.check_option_list .drop_check_option:hover {
    background-color: #F7F7F7;
    border-radius: 6px;
}

.check_option_list .drop_check_option label {
    display: inline-block;
    width: 100%;
    height: 100%;
    cursor: pointer;
}

.check_option_list .drop_check_option .drop_chekc_box {
    display: inline-block;
    width: 14px;
    height: 14px;
    margin-right: 10px;
    background-color: #fff;
    border: 1px solid var(--grid-border-color);
    border-radius: 3px;
    margin-top: -1px;
}

.check_option_list .drop_check_option .drop_chekc_box:checked {
    background-image: url(/resources/images/checked_small.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 14px;
    border: none;
}

/*hr_employee_master*/
.content_inner_btn {
    display: inline-block;
    width: 100%;
    text-align: center;
}

.content_inner_hidden {
    display: none;
    width: 100%;
    height: auto;
    min-height: 148px;
}

.inner_panel.h320 {
    height: 320px !important;
}

/* 고정 높이 inner_panel 내부 그리드 - 인라인 스타일 덮어쓰기 */
.inner_panel.h200 > [id$="Grid"],
.inner_panel.h250 > [id$="Grid"],
.inner_panel.h280 > [id$="Grid"],
.inner_panel.h300 > [id$="Grid"],
.inner_panel.h320 > [id$="Grid"],
.inner_panel.h350 > [id$="Grid"],
.inner_panel.h400 > [id$="Grid"],
.inner_panel.h450 > [id$="Grid"],
.inner_panel.h500 > [id$="Grid"] {
    height: 100% !important;
    min-height: 0 !important;
}

/* 고정 높이 패널 내 RealGrid 컨테이너도 100% */
.inner_panel.h200 .rg-grid,
.inner_panel.h250 .rg-grid,
.inner_panel.h280 .rg-grid,
.inner_panel.h300 .rg-grid,
.inner_panel.h320 .rg-grid,
.inner_panel.h350 .rg-grid,
.inner_panel.h400 .rg-grid,
.inner_panel.h450 .rg-grid,
.inner_panel.h500 .rg-grid {
    height: 100% !important;
}

.hr_attached_area {
    /*height: 226px;*/
    height: 100%;
    overflow: auto;
    -ms-overflow-style: none;
    position: relative;
    text-align: left;
}

.hr_attached_area .hr_attached_list {
    display: inline-block;
    width: 100%;
}

.attached_file {
    display: inline-block;
    width: 108px;
    height: 67px;
    /*float: left;*/
    text-align: center;
    margin-right: 12px;
    position: relative;
    padding-top: 5px;
}

.attached_file .file_img {
    display: inline-block;
    width: 24px;
    height: 32px;
    background-image: url(/resources/images/attached_file.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px;
}

.attached_file .file_name {
    display: inline-block;
    width: 100%;
    height: 19px;
    line-height: 19px;
    font-size: 13px;
    font-weight: 400;
    color: #333333;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.attached_file .file_delete {
    display: inline-block;
    width: 8px;
    height: 8px;
    background-image: url(/resources/images/sign_step_delete.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 8px;
    position: absolute;
    top: 0;
    right: 10px;
}

.content_fold_btn {
    display: inline-block;
    width: 20px;
    height: 20px;
    background-image: url(/resources/images/add-square.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 20px;
    margin: 0;
    border: none;
    cursor: pointer;
}

.content_fold_btn.active {
    background-image: url(/resources/images/Subtract.png);
}

/* 채용>면접대상자 선택 */
.interviewee_list_wrap {
    display: inline-block;
    width: 100%;
    height: 100%;
}

.interviewee_list_wrap .on {
    border: 1px solid #14BB94 !important;
}

.interviewee_list_wrap .interviewee {
    display: inline-block;
    width: 319px;
    /* 	margin-top : 20px; */
    height: 400px;
    background-color: #fff;
    border: 1px solid #E7E7E9;
    border-radius: 4px;
    float: left;
    margin-right: 28px;
    margin-bottom: 20px;
    text-align: center;
    position: relative;
    cursor: pointer;
}

.interviewee_list_wrap .interviewee .interviewee_img {
    display: inline-block;
    width: 160px;
    height: 160px;
    margin-top: 30px;
    margin-bottom: 20px;
}

.interviewee_list_wrap .interviewee .interviewee_img img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
}


.interviewee_list_wrap .interviewee .interviewee_name {
    display: inline-block;
    width: 100%;
    height: 24px;
    line-height: 24px;
    font-size: 16px;
    font-weight: 400;
    color: #444;
}

.interviewee_list_wrap .interviewee .interviewee_date {
    display: inline-block;
    width: 100%;
    height: 24px;
    line-height: 24px;
    font-size: 12px;
    font-weight: 400;
    color: #1281B0;
    /*margin-bottom: 10px;*/
}

.interviewee_list_wrap .interviewee .interviewee_type {
    display: inline-block;
    width: 100%;
    height: 24px;
    line-height: 24px;
    font-size: 14px;
    font-weight: 400;
    color: #242A30;
    padding: 0 43px;
}

.interviewee_list_wrap .interviewee .interviewee_info {
    display: inline-block;
    width: 100%;
    height: 58px;
    border-top: 1px solid #E7E7E9;
    position: absolute;
    bottom: 0;
    left: 0;
}

.interviewee_list_wrap .interviewee .interviewee_info .interviewee_file {
    display: inline-block;
    width: 105px;
    height: 58px;
    line-height: 58px;
    text-align: center;
    float: left;
    font-size: 13px;
    font-weight: 400;
    color: #828B97;
    margin-left: 0;
}

.interviewee_list_wrap .interviewee .interviewee_info .center {
    border-right: 1px solid #E7E7E9;
    border-left: 1px solid #E7E7E9;
}

/* 채용>채용공고수정요청등록 */
.rm_left_content {
    display: inline-block;
    width: 471px;
    margin-right: 20px;
}

.rm_right_content {
    display: inline-block;
    width: 869px;
    background-color: #fff;
    border: 1px solid #E7E7E9;
    border-radius: 4px;
    padding: 20px 23px;
}

.rm_right_content.h652 {
    height: 652px;
}

.rm_recrurit_notice {
    display: inline-block;
    width: 471px;
    height: 444px;
    background-color: #fff;
    border: 1px solid #E7E7E9;
    border-radius: 4px;
    margin-top: 20px;
    margin-bottom: 0px;
    padding: 23px 5px;
}

.rm_recrurit_notice .notice_title {
    display: inline-block;
    width: 100%;
    height: 24px;
    line-height: 24px;
    font-size: 16px;
    font-weight: 400;
    color: #444;
}

.rm_recrurit_notice .notice_txt {
    display: inline-block;
    width: 100%;
    line-height: 24px;
    font-size: 12px;
    font-weight: 400;
    color: #444;
    margin-bottom: 11px;
}

.rm_recrurit_notice .notice_table {
    width: 100%;
    height: 205px;
    border: 1px solid #E7E7E9;
}

.rm_recrurit_notice .notice_table thead tr th {
    font-size: 12px;
    font-weight: 400;
    color: #828B97;
    text-align: center;
    border-right: 1px solid #E7E7E9;
    border-bottom: 1px solid #E7E7E9;
    background-color: #F8F8F8;
    padding: 13px 0;
}

.rm_recrurit_notice .notice_table tbody tr td {
    height: 55px;
    line-height: 150%;
    font-size: 12px;
    font-weight: 400;
    color: #333333;
    text-align: center;
    border-right: 1px solid #E7E7E9;
    border-bottom: 1px solid #E7E7E9;
}

.from_rm_textarea {
    height: 172px !important;
}

.rm_textarea_inp {
    display: inline-block;
    width: 100%;
    height: 150px;
    border: 1px solid var(--grid-border-color);
    padding: 11px 12px;
    border-radius: 4px;
    resize: none;
    margin: 0;
    position: absolute;
    bottom: 0;
    left: 0;
}

.rm_textarea_inp::placeholder {
    font-size: 13px;
    font-weight: 500;
    color: #828B97;
}

/*梨꾩슜>怨듯넻*/
.rm_contents {
    width: 1360px;
    max-width: 1360px;
    min-width: 1360px;
    height: calc(100% - 41px) !important;
    /* 	overflow-y: scroll; */
    padding: 0;
    padding-top: 30px;
    text-align: center !important;
}

.rm_contents.type2 {
    overflow: unset;
}


.rm_wing_banner_one {
    display: inline-block;
    width: 130px;
    height: 44px;
    background-color: #fff;
    border-radius: 4px;
    position: absolute;
    top: 42%;
    right: 0;
}

.rm_wing_banner_two {
    display: inline-block;
    width: 130px;
    height: 88px;
    background-color: #fff;
    border-radius: 4px;
    position: absolute;
    top: 42%;
    right: 0;
}


.rm_wing_banner_thr {
    display: inline-block;
    width: 130px;
    height: 132px;
    background-color: #fff;
    border-radius: 4px;
    position: absolute;
    top: 42%;
    right: 0;
}

.rm_wing_banner_one .rm_attach {
    display: inline-block;
    width: 100%;
    height: 44px;
    padding: 0 10px;
}

.rm_wing_banner_thr .rm_attach {
    display: inline-block;
    width: 100%;
    height: 44px;
    padding: 0 10px;
}

.rm_wing_banner .rm_calendar {
    display: inline-block;
    width: 100%;
    height: 44px;
    padding: 0 10px;
}

.rm_wing_banner_one .rm_attach .rm_attach_link {
    display: inline-block;
    width: 100%;
    height: 44px;
    line-height: 44px;
    padding-left: 40px;
    border-bottom: 1px solid #F6F6F6;
    font-size: 13px;
    font-weight: 400;
    color: #222222;
    background-image: url('/resources/images/rm_attach.png');
    background-repeat: no-repeat;
    background-position: 3px center;
    background-size: 24px;
}


.rm_wing_banner_thr .rm_attach .rm_attach_link {
    display: inline-block;
    width: 100%;
    height: 44px;
    line-height: 44px;
    padding-left: 40px;
    border-bottom: 1px solid #F6F6F6;
    font-size: 13px;
    font-weight: 400;
    color: #222222;
    background-image: url('/resources/images/rm_attach.png');
    background-repeat: no-repeat;
    background-position: 3px center;
    background-size: 24px;
}

.rm_wing_banner_one .rm_calendar .rm_calendar_link {
    display: inline-block;
    width: 100%;
    height: 44px;
    line-height: 44px;
    padding-left: 40px;
    font-size: 13px;
    font-weight: 400;
    color: #222222;
    background-image: url('/resources/images/rm_calendar.png');
    background-repeat: no-repeat;
    background-position: 3px center;
    background-size: 24px;
}


.rm_wing_banner_thr .rm_calendar .rm_calendar_link {
    display: inline-block;
    width: 100%;
    height: 44px;
    line-height: 44px;
    padding-left: 40px;
    font-size: 13px;
    font-weight: 400;
    color: #222222;
    background-image: url('/resources/images/rm_calendar.png');
    background-repeat: no-repeat;
    background-position: 3px center;
    background-size: 24px;
}

.rm_wing_banner .rm_mail {
    display: inline-block;
    width: 100%;
    height: 44px;
    padding: 0 10px;
}

.rm_wing_banner .rm_software {
    display: inline-block;
    width: 100%;
    height: 44px;
    padding: 0 10px;
}

.rm_wing_banner .rm_mail .rm_mail_link {
    display: inline-block;
    width: 100%;
    height: 44px;
    line-height: 44px;
    padding-left: 40px;
    border-bottom: 1px solid #F6F6F6;
    font-size: 13px;
    font-weight: 400;
    color: #222222;
    background-image: url('/resources/images/mail_icon.png');
    background-repeat: no-repeat;
    background-position: 3px center;
    background-size: 24px;
}

.rm_wing_banner .rm_software .rm_software_link {
    display: inline-block;
    width: 100%;
    height: 44px;
    line-height: 44px;
    padding-left: 40px;
    border-bottom: 1px solid #F6F6F6;
    font-size: 13px;
    font-weight: 400;
    color: #222222;
    background-image: url('/resources/images/gd_icon.jpg');
    background-repeat: no-repeat;
    background-position: 3px center;
    background-size: 24px;
}


.rm_contents_area {
    height: 785px;
}

.rm_content {
    display: inline-block;
    width: 100%;
    height: auto;
    background-color: #fff;
    border: 1px solid #E7E7E9;
    border-radius: 4px;
    padding: 24px 32px;
}

.rm_form_title {
    display: inline-block;
    width: 100%;
    height: 14px;
    margin-bottom: 15px;
    margin-top: 24px;
    text-align: left;
    color: #828B97;
    font-size: 14px;
    font-weight: 500;
}

.rm_form_title .rm_form_info {
    float: right;
    font-size: 12px;
    font-weight: 400;
    color: #FF8989;
;
}

.rm_gird_area {
    display: inline-block;
    width: 100%;
    height: 200px;
    border: 1px solid var(--grid-border-color) !important;
    border-radius: 4px 4px 0px 0px;
    /* 	border: 1px solid #E7E7E9; */
}

.rm_gird_area>div {
    border: 1px solid #fff !important;

}

.rm_textarea {
    display: inline-block;
    width: 100%;
    height: 116px;
    border: 1px solid var(--grid-border-color);
    padding: 11px 12px;
    border-radius: 4px;
    resize: none;
}

.rm_textarea.single {
    height: 36px;
}

.rm_textarea::placeholder {
    font-size: 13px;
    font-weight: 500;
    color: #828B97;
}

.form_object .form_inp0_v2.w203 {
    width: 203px !important;
}

.form_object .form_inp1_v2.w70 {
    width: 70px !important;
}

.form_inner_check {
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
    height: 16px;
    line-height: 16px;
}

.form_inner_check .inner_check_label {
    display: inline-block;
    height: 14px;
    font-size: 12px;
    font-weight: 400;
    color: #828B97;
    margin-right: 10px;
    float: left;
}

.form_inner_check .inner_check_box {
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 1px solid var(--grid-border-color);
    border-radius: 4px;
    vertical-align: top;
    float: left;
}

.form_inner_check .inner_check_box:checked {
    border: 1px solid #43B8A1;
    background-image: url(/resources/images/checked_small.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 20px;
}

.form_info {
    display: inline-block;
    width: 100%;
    height: 24px;
    line-height: 24px;
    font-size: 12px;
    font-weight: 500;
    color: #FF8989;
    margin-bottom: 20px;
}

.inner_panel.h337 {
    height: 337px !important;
}

/* 채용>게시완료안내 */
.rm_complete_pop {
    display: inline-block;
    width: 630px;
    height: 100%;
    background-color: #fff;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 10000;
}

.rm_complete_pop_inner {
    display: inline-block;
    width: 100%;
    height: 839px;
}

.rm_complete_pop .rm_complete_pop_header {
    display: inline-block;
    width: 100%;
    height: 70px;
    border-bottom: 1px solid rgb(239, 239, 239);
    padding: 0px 32px;
    padding-right: 10px;
}

.rm_complete_pop .rm_complete_pop_header .complete_pop_header_title {
    display: inline-block;
    height: 70px;
    line-height: 70px;
    border-bottom: 4px solid rgb(11, 171, 139);
    font-size: 15px;
    font-weight: 400;
    color: rgb(51, 51, 51);
}

.rm_complete_pop .rm_complete_pop_header .rm_pop_close {
    display: inline-block;
    width: 24px;
    height: 24px;
    float: right;
    background-image: url(/resources/images/line_pop_close.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px;
    margin-top: 23px;
}

.rm_complete_pop .rm_complete_pop_body {
    display: inline-block;
    width: 100%;
    padding: 30px 21px;
}

.rm_complete_pop .rm_complete_pop_body .editor_area {
    display: inline-block;
    width: 100%;
    height: 350px;
    border: 1px solid #EFEFEF;
}

.rm_complete_pop .rm_complete_pop_footer {
    display: inline-block;
    width: 100%;
    height: 64px;
    line-height: 64px;
    padding-right: 32px;
    float: left;
    border-top: 1px solid #EFEFEF;
    text-align: right;
}

.rm_date_pop {
    display: inline-block;
    width: 630px;
    height: 448px;
    background: #FFFFFF;
    border: 1px solid #E7E7E9;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border-radius: 8px;
    position: fixed;
    top: 150px;
    right: 800px;
    z-index: 9999;
}

.rm_date_pop .rm_date_pop_header {
    display: inline-block;
    width: 100%;
    height: 54px;
    border-bottom: 1px solid rgb(239, 239, 239);
    padding: 16px 24px;
}

.rm_date_pop .rm_date_pop_header .rm_pop_header_title {
    display: inline-block;
    font-size: 15px;
    font-weight: 400;
    color: #333333;
}

.rm_date_pop .rm_date_pop_header .rm_pop_close {
    display: inline-block;
    width: 24px;
    height: 24px;
    float: right;
    background-image: url(/resources/images/line_pop_close.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px;
}

.rm_date_pop .rm_date_pop_body {
    display: inline-block;
    width: 100%;
}

.rm_date_pop_body .rm_date_calendar_wrap {
    display: inline-block;
    width: 320px;
    height: 321px;
    float: left;
    text-align: center;
}

.rm_date_calendar_wrap .rm_date_calendar_top {
    display: inline-block;
    width: 100%;
    height: 24px;
    position: relative;
    text-align: center;
    margin-top: 24px;
}

.rm_date_calendar_wrap .rm_date_calendar_top .calendar_top_month {
    display: inline-block;
    width: 90px;
    height: 24px;
    line-height: 24px;
    font-size: 16px;
    font-weight: 500;
    color: #444;
    position: absolute;
    top: -6px;
    left: 116px;
}

.rm_date_calendar_wrap .rm_date_calendar_top .calendar_top_prev {
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url(/resources/images/datepicker_prev.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 16px;
    position: absolute;
    top: 0px;
    left: 89px;
    padding: 0;
    margin: 0;
}

.rm_date_calendar_wrap .rm_date_calendar_top .calendar_top_next {
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url(/resources/images/datepicker_next.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 16px;
    position: absolute;
    top: 0px;
    left: 219px;
    padding: 0;
    margin: 0;
}

.rm_date_calendar_wrap .rm_calendar {
    display: inline-block;
    width: 100%;
    height: 100%;
    padding: 20px 41px;
}

.rm_calendar .rm_calnedar_date {
    display: inline-block;
    width: 28px;
    height: 28px;
    float: left;
    margin-right: 7px;
    margin-bottom: 3px;
    text-align: center;
}

.rm_calendar .rm_calnedar_date.last {
    margin-right: 0
}

.rm_calendar .rm_calnedar_date.sun a {
    color: #C63F15;
}

.rm_calendar .rm_calnedar_date.sat a {
    color: #0B5EAB;
}

.rm_calendar .rm_calnedar_date.none a {
    opacity: 0.5;
}

.rm_calendar .rm_calnedar_date a {
    display: inline-block;
    width: 100%;
    height: 100%;
    font-size: 14px;
    font-weight: 500;
    color: #444444;
}

.rm_date_pop_body .rm_date_form_wrap {
    display: inline-block;
    width: 308px;
    height: 321px;
    float: left;
    padding-left: 10px;
    padding-right: 24px;
    padding-top: 39px;
}

.rm_date_pop .rm_date_pop_footer {
    display: inline-block;
    width: 100%;
    height: 73px;
    line-height: 73px;
    padding-right: 21px;
    float: left;
    background: #F9F9F9;
    text-align: right;
}

/* 평가 */
.ev_review_contents {
    width: 1360px;
    max-width: 1360px;
    min-width: 1360px;
    height: calc(100% - 41px) !important;
    padding: 0;
    padding-top: 30px;
}

.ev_review_contents.type1 {
    overflow: hidden;
    height: 100% !important;
}

.ev_review_contents .ev_review_header {
    display: inline-block;
    width: 1360px;
    height: 102px;
    padding: 39px 32px;
    margin-bottom: 28px;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border: 1px solid #E7E7E9;
}

.ev_review_contents .ev_review_header.type1 {
    height: 160px;
    padding: 0
}

.ev_review_content {
    display: inline-block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border: 1px solid #E7E7E9;
}

.ev_review_content.type1 {
    padding: 20px 32px;
}

.ev_review_content.type2 {
    background-color: transparent;
    box-shadow: none;
    border: 0;
}

.ev_left_content {
    display: inline-block;
    width: 359px;
    margin-right: 19px;
}

.ev_right_content {
    display: inline-block;
    width: 978px;
}

.ev_right_content.h842 {
    height: 842px;
}

.ev_right_content.h918 {
    height: 918px;
}

.ev_review_panel {
    padding: 39px 32px;
}

.ev_review_panel_inner {
    display: inline-block;
    width: 100%;
    height: 32px;
    margin-bottom: 20px;
}

/* 평가 */
.ev_dash {
    display: inline-block;
    background-color: #fff;
    border: 1px solid #E7E7E9;
    border-radius: 4px;
    margin-bottom: 20px;
    float: left;
}

.ev_dash.card6 {
    width: 100%;
    height: 238px;
    padding: 24px 32px;
    position: relative;
}

.ev_dash.card6 .ev_dash_info {
    display: inline-block;
    width: 100%;
    position: absolute;
    top: 86px;
    left: 32px;
    font-size: 28px;
    font-weight: 400;
    color: #444;
}

.ev_dash.card6 .ev_dash_info .ev_dash_name {
    font-size: 28px;
    font-weight: 400;
    color: #43B8A1;
}

.ev_dash.card6 .ev_dash_txt {
    display: inline-block;
    width: 100%;
    position: absolute;
    top: 142px;
    left: 32px;
    font-size: 15px;
    font-weight: 400;
    color: #444;
    line-height: 22.2px
}

.ev_dash.card0 {
    width: 100%;
    height: 256px;
    padding: 24px 32px;
    position: relative;
}

.ev_dash.card1 {
    width: 440px;
    height: 384px;
}

.ev_dash.card2 {
    width: 440px;
    height: 384px;
    margin: 0 20px;
}

.ev_dash.card3 {
    width: 440px;
    height: 384px;
}

.ev_dash.card4 {
    width: 900px;
    height: 308px;
    margin-right: 20px;
}

.ev_dash.card5 {
    width: 440px;
    height: 308px;
}

.ev_dash.card7 {
    width: 900px;
    height: 239px;
    margin-right: 20px;
}

.ev_dash.card8 {
    width: 440px;
    height: 239px;
}

.ev_dash .ev_dash_title {
    display: inline-block;
    width: 100%;
    height: 62px;
    line-height: 62px;
    padding: 0 32px;
    font-size: 16px;
    font-weight: 400;
    color: #444;
    border-bottom: 1px solid #E7E7E9;
}

.ev_dash.card0 .title {
    display: inline-block;
    width: 100%;
    height: 24px;
    line-height: 24px;
    font-size: 20px;
    font-weight: 400;
    color: #444;
}

.ev_dash.card0 .ev_dash_info {
    display: inline-block;
    width: 100%;
    position: absolute;
    top: 105px;
    left: 32px;
    font-size: 28px;
    font-weight: 400;
    color: #444;
}

.ev_dash.card0 .ev_dash_info .ev_dash_name {
    font-size: 28px;
    font-weight: 400;
    color: #43B8A1;
}

.ev_dash.card0 .ev_dash_txt {
    display: inline-block;
    width: 100%;
    position: absolute;
    top: 158px;
    left: 32px;
    font-size: 15px;
    font-weight: 400;
    color: #444;
    line-height: 22.2px;
}

.ev_dash_card {
    display: inline-block;
    width: 100%;
    height: 321px;
    position: relative;
}

.ev_dash_card0 {
    display: inline-block;
    width: 100%;
    height: 176px;
    position: relative;
}

.ev_dash_card0 .ev_dash_menu {
    display: inline-block;
    position: absolute;
    text-align: center;
}

.ev_dash_card0 .ev_dash_menu0 {
    width: 71px;
    height: 96px;
    top: 40px;
    left: 93px;
}

.ev_dash_card .ev_dash_menu {
    display: inline-block;
    position: absolute;
    text-align: center;
}

.ev_dash_card .ev_dash_menu.menu0 {
    width: 71px;
    height: 96px;
    top: 112px;
    left: 96px;
}

.ev_dash_card .ev_dash_menu.menu1 {
    width: 67px;
    height: 96px;
    top: 112px;
    right: 96px;
}

.ev_dash_card .ev_dash_menu.menu2 {
    width: 59px;
    height: 84px;
    top: 42px;
    left: 102px;
}

.ev_dash_card .ev_dash_menu.menu3 {
    width: 67px;
    height: 96px;
    top: 42px;
    right: 102px;
}

.ev_dash_card .ev_dash_menu.menu4 {
    width: 67px;
    height: 96px;
    top: 183px;
    left: 102px;
}

.ev_dash_card .ev_dash_menu.menu5 {
    width: 67px;
    height: 96px;
    top: 183px;
    left: 277px;
}

.ev_dash_card0 .ev_dash_menu.menu6 {
    width: 59px;
    height: 96px;
    top: 40px;
    left: 93px;
}

.ev_dash_card0 .ev_dash_menu.menu7 {
    width: 71px;
    height: 96px;
    top: 40px;
    left: 252px;
}

.ev_dash_card0 .ev_dash_menu.menu8 {
    width: 67px;
    height: 96px;
    top: 40px;
    right: 410px;
}

.ev_dash_card0 .ev_dash_menu.menu9 {
    width: 59px;
    height: 96px;
    top: 40px;
    right: 251px;
}

.ev_dash_card0 .ev_dash_menu.menu10 {
    width: 59px;
    height: 96px;
    top: 40px;
    right: 92px;
}

.ev_dash_card0 .ev_dash_menu.menu11 {
    width: 59px;
    height: 94px;
    top: 40px;
    left: 102px;
}

.ev_dash_card0 .ev_dash_menu.menu12 {
    width: 67px;
    height: 94px;
    top: 40px;
    left: 251px;
}

.ev_dash_card0 .ev_dash_menu.menu13 {
    width: 59px;
    height: 94px;
    top: 40px;
    right: 61px;
}

.dash_menu_icon {
    display: inline-block;
}

.dash_menu_icon.icon0 {
    width: 36px;
    height: 36px;
    background-image: url(/resources/images/3d-rotate.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 36px;
}

.dash_menu_icon.icon1 {
    width: 36px;
    height: 36px;
    background-image: url(/resources/images/profile-2user.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 36px;
}

.dash_menu_icon.icon2 {
    width: 36px;
    height: 36px;
    background-image: url(/resources/images/chart.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 36px;
}

.dash_menu_icon.icon3 {
    width: 36px;
    height: 36px;
    background-image: url(/resources/images/award.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 36px;
}

.dash_menu_icon.icon4 {
    width: 36px;
    height: 36px;
    background-image: url(/resources/images/personalcard.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 36px;
}

.dash_menu_icon.icon5 {
    width: 36px;
    height: 36px;
    background-image: url(/resources/images/medal-star.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 36px;
}

.dash_menu_icon.icon6 {
    width: 36px;
    height: 36px;
    background-image: url(/resources/images/presention-chart.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 36px;
}

.dash_menu_icon.icon7 {
    width: 36px;
    height: 36px;
    background-image: url(/resources/images/people.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 36px;
}

.dash_menu_title {
    display: inline-block;
    width: 100%;
    height: 22px;
    line-height: 22px;
    margin-top: 12px;
    margin-bottom: 7px;
    font-size: 14px;
    font-weight: 400;
    color: #444;
}

.dash_menu_statu {
    display: inline-block;
    height: 19px;
    line-height: 19px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 400;
}

.dash_menu_statu.type0 {
    background-color: #FFEEB1;
    color: #E3B513;
    padding: 0 8px;
}

.dash_menu_statu.type1 {
    background-color: #B0E2DF;
    color: #1F807B;
    padding: 0 9px;
}

.dash_menu_link {
    display: inline-block;
    width: 7px;
    height: 10px;
    background-image: url(/resources/images/dash_menu_link.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 7px;
}

.dash_review_wrap {
    display: inline-block;
    width: 100%;
    height: 245px;
    padding: 9px 32px;
    overflow: scroll;
}

.dash_review_wrap .reivew_list {
    display: inline-block;
    width: 100%;
    height: 50px;
    line-height: 50px;
    background-color: #fff;
    border: 2px solid #F1F1F1;
    border-radius: 4px;
    padding: 0 16px;
    margin-bottom: 4px;
    position: relative;
}

.dash_review_wrap .reivew_list .review_title {
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    color: #444444;
    margin-right: 12px;
}

.dash_review_wrap .reivew_list .review_statu {
    display: inline-block;
    width: 47px;
    height: 19px;
    line-height: 19px;
    text-align: center;
    font-size: 12px;
    font-weight: 400;
    color: #E3B613;
    background-color: #FFEEB1;
    border-radius: 4px;
}

.dash_review_wrap .reivew_list .review_icon {
    display: inline-block;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 17px;
    right: 130px;
    background-image: url(/resources/images/review_icon.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 16px;
}

.dash_review_wrap .reivew_list .review_date {
    display: inline-block;
    font-size: 13px;
    font-weight: 500;
    color: #43B8A1;
    float: right;
}

.dash_review_wrap .reivew_list .review_sys_name {
    display: inline-block;
    font-size: 13px;
    font-weight: 500;
    color: #43B8A1;
    float: right;
}

.dash_review_sys {
    display: inline-block;
    width: 100%;
    height: 245px;
    padding-top: 42px;
    padding-bottom: 57px;
    text-align: center;
}

.dash_review_sys .review_sys {
    display: inline-block;
    width: 49%;
    text-align: center;
}

.dash_review_sys .review_sys .review_sys_title {
    display: inline-block;
    font-size: 15px;
    font-weight: 400;
    color: #444;
    margin-bottom: 20px;
}

.dash_review_sys .review_sys .review_sys_img {
    display: inline-block;
    width: 100%;
    height: 60px;
    margin-bottom: 16px;
}

.dash_review_sys .review_sys .review_sys_img img {
    width: 60px;
    height: 100%;
    border-radius: 50%;
}

.dash_review_sys .review_sys .review_sys_name {
    display: inline-block;
    width: 100%;
    font-size: 15px;
    font-weight: 400;
    color: #444;
    margin-bottom: 8px;
}

.dash_review_sys .review_sys .review_sys_info {
    display: inline-block;
    font-size: 13px;
    font-weight: 400;
    color: #828B97;
}

.review_sys_info .review_sys_number {
    padding-right: 12px;
    border-right: 2px solid #E7E7E9;
    margin-right: 12px;
}

/* 평가 */
.evaler_contents {
    width: 1360px;
    max-width: 1360px;
    min-width: 1360px;
    height: calc(100% - 21px) !important;
    overflow-y: scroll;
}

.training_evaler_header {
    display: inline-block;
    width: 1360px;
    height: 102px;
    padding: 39px 32px;
    margin-bottom: 28px;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border: 1px solid #E7E7E9;
}

.evaler_header_title {
    font-size: 24px;
    font-weight: 400;
    color: #444;
}

.evaler_header_title .evaler_order {
    border: none;
    width: 80px;
    padding-left: 0;
}

.evaler_header_title .evaler_order::placeholder {
    font-size: 24px;
    font-weight: 500;
    color: #444;
}

.evaler_header_info {
    display: inline-block;
    float: right;
    height: 24px;
    line-height: 24px;
}

.evaler_header_info .evaler_icon {
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url(/resources/images/evaler_icon.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px;
    margin-right: 8px;
    float: left;
}

.evaler_header_info .evaler_team {
    display: inline-block;
    height: 24px;
    line-height: 24px;
    margin-right: 8px;
    float: left;
    border: none;
    padding: 0;
    font-size: 16px;
    font-weight: 400;
    color: #444;
}

.evaler_header_info .evaler_name {
    display: inline-block;
    height: 24px;
    line-height: 24px;
    float: left;
    border: none;
    padding: 0;
    font-size: 16px;
    font-weight: 500;
    color: #43B8A1;
}

.training_evaler_content {
    display: inline-block;
    width: 1360px;
    max-height: 1600px;
    padding: 32px;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border: 1px solid #E7E7E9;
}

.evaler_form_title {
    display: inline-block;
    width: 100%;
    height: 14px;
    margin-bottom: 15px;
    margin-top: 24px;
    text-align: left;
    color: #828B97;
    font-size: 14px;
    font-weight: 500;
}

.evaler_gird_area {
    display: inline-block;
    width: 100%;
    height: 200px;
    border: 1px solid #E7E7E9;
}

.evaler_textarea {
    display: inline-block;
    width: 100%;
    height: 116px;
    border: 1px solid var(--grid-border-color);
    padding: 11px 12px;
    border-radius: 4px;
    resize: none;
}

.evaler_textarea2 {
    display: inline-block;
    width: 100%;
    height: 500px;
    border: 1px solid var(--grid-border-color);
    padding: 11px 12px;
    border-radius: 4px;
    resize: none;
}

.evaler_textarea::placeholder {
    font-size: 13px;
    font-weight: 500;
    color: #828B97;
}

/* 공통 컨텐츠 작업 */
.just_contents_area {
    height: 785px !important;
    margin-bottom: 41px !important;
}

.wihte_content {
    width: 100%;
    min-height: 304px;
    border: 1px solid #E7E7E9;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    background-color: #fff;
    padding: 20px;
    margin-bottom: 20px;
    border-radius: 4px;
}

/* 수신결재라인 */
.ea_receive_content0 {
    width: calc(25% - 20px);
    height: 100%;
    margin-right: 20px;
    float: left;
}

.ea_receive_content1 {
    width: calc(75% - 20px);
    height: calc(50% - 21px);
    float: right;
    margin-bottom: 21px;
}

.ea_receive_content2 {
    width: calc(75% - 20px);
    height: 50%;
    float: right;
}

/* 팝업 및 콤보관리 */
.popup_grid0 {
    display: inline-block;
    width: calc(60% - 50px);
    height: 321px;
    float: left;
    margin-bottom: 20px;
}

.popup_grid1 {
    display: inline-block;
    width: 50px;
    height: 321px;
    float: left;
    text-align: center;
    margin-bottom: 20px;
}

.popup_grid1 button {
    width: 40px;
    text-align: center;
    padding: 0;
    margin-left: 0;
    margin-top: 143px;
    line-height: 34px;
    background-image: url(/resources/images/line_btn_left.png);
    background-size: 18px;
    background-position: center;
    background-repeat: no-repeat;
}

.popup_grid2 {
    display: inline-block;
    width: 40%;
    height: 321px;
    float: left;
    height: 321px;
    border: 1px solid var(--grid-border-color);
    padding: 11px 12px;
    border-radius: 4px;
    resize: none !important;
    margin: 0;
    margin-bottom: 20px;
}

.popup_grid3 {
    display: inline-block;
    width: 100%;
    height: 321px;
    float: left;
    margin-bottom: 20px;
}

.inner_panel.h260 {
    height: 260px !important;
}

.inner_panel.h262 {
    height: 262px !important;
}

/* 급태 월력등록 - 달 그리드 화면 */
.inner_panel.h604 {
    height: 604px !important;
}

/* 사업소득원천징수영수증 - 달 그리드 화면 */
.inner_panel.h522 {
    height: 522px !important;
}

/*개인 근태스케줄 관리*/
.my_at_work_contents {
    width: 1346px;
    max-width: 1346px;
    min-width: 1346px;
    height: calc(100% - 41px) !important;
    overflow-y: scroll;
    padding: 30px 0 0;
}

.my_at_work_content {
    height: auto;
}

/* 시스템기준세팅 */
.standard_setting_contents {
    width: 1360px;
    /*max-width: 1360px;*/
    /*min-width: 1360px;*/
    height: calc(100% - 41px);
    padding: 30px 0 0;
    text-align: center;
}

.standard_setting_content {
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border: 1px solid #E7E7E9 !important;
    background-color: #fff;
    margin-bottom: 20px;
    padding: 30px 32px;
}

.setting_title {
    display: inline-block;
    width: 100%;
    height: 24px;
    line-height: 24px;
    font-size: 14px;
    font-weight: 400;
    color: #828B97;
    /*padding: 0 32px;*/
    /*margin-top: 20px;*/
    margin-bottom: 25px;
}

.setting_title2 {
    display: inline-block;
    width: 100%;
    height: 14px;
    line-height: 14px;
    font-size: 14px;
    font-weight: 400;
    color: #444444;
    padding: 0 32px;
    margin-top: 20px;
}

.contents_null_message {
    display: inline-block;
    width: 206px;
    height: 38px;
    line-height: 38px;
    text-align: center;
    background-color: #fff;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 400;
    color: #828B97;
    /*margin-left: calc(50% - 103px);*/
    /*margin-top: 186px;*/
}


.pl_sign_contents {
    width: 1360px;
    max-width: 1360px;
    min-width: 1360px;
    height: calc(100% - 41px) !important;
    /* 	overflow-y: scroll; */
    padding: 0;
    padding-top: 30px;
    text-align: center !important;
}

.pl_sign_list {
    display: inline-block;
    width: 100%;
    height: auto;
}

.pl_sign_list .pl_sign {
    background-image: url(/resources/river/images/ic_16.png);
    background-position: 10px 20px;
    background-size: 20px;
    background-repeat: no-repeat;

    display: inline-block;
    width: 433px;
    height: 122px;
    float: left;
    background-color: #fff;
    margin-right: 20px;
    margin-bottom: 20px;
    border: 1px solid #E7E7E9;
    border-radius: 4px;
    position: relative;
    padding-top: 15px;
    padding-left: 40px;
}

.pl_sign_list .pl_sign .pl_sign_title {
    display: inline-block;
    width: 100%;
    height: 30px;
    line-height: 30px;
    margin-bottom: 10px;

    /* 	position: absolute; */
    /* 	top: 20px; */
    /* 	left: 32px; */
    font-size: 16px;
    font-weight: 400;
    color: #242A30;
}

.pl_sign_list .pl_sign .pl_sign_date {
    display: inline-block;
    position: absolute;
    bottom: 15px;
    left: 20px;
    font-size: 12px;
    font-weight: 500;
    color: #828B97;
}

.pl_sign_list .pl_sign .pl_sign_txt {
    display: inline-block;
    position: absolute;
    bottom: 10px;
    right: 10px;
    line-height: 21px;
    font-size: 14px;
    font-weight: 500;
    color: #444444;
}

.pl_sign_list .pl_sign .pl_sign_link {
    display: inline-block;
    position: absolute;
    top: 20px;
    right: 10px;
    width: 20px;
    height: 20px;
    background-image: url(/resources/images/arrow-square-right.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 20px;
}

/*게시판*/
.bbs_contents {
    width: 1360px;
    max-width: 1360px;
    min-width: 1360px;
    height: 100% !important;
    /* 	overflow-y: scroll; */
    padding: 30px 0 49px;
    /*padding-top: 30px;
	padding-bottom:20px;*/
    text-align: center !important;
}

/*.bbs_wrap.left {
	display: inline-block;
	float: left;
	width: 271px;
	height: 806px;
	border: 1px solid #E7E7E9;
	box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
}*/

.bbs_wrap.left {
    display: inline-block;
    float: left;
    width: 271px;
    /* 	height: 806px; */
    border: 1px solid #E7E7E9;
    border-right: none;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    padding: 32px 15px;
    background-color: #fff;
    height: calc(100% - 43px);
}

.bbs_wrap.left .bbs_wrap_inner {
    display: inline-block;
    width: 100%;
    height: 100%;
}

.bbs_wrap.left .bbs_wrap_inner .bbs_list {
    display: inline-block;
    width: 100%;
    height: 58px;
    margin-bottom: 20px;
    padding: 17px 28px;
    cursor: pointer;
}

.bbs_wrap_inner .bbs_list.on {
    background-color: #F1F8F6;
    border-radius: 4px;
}

.bbs_list .bbs_icon {
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url(/resources/images/bbs_icon_off.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px;
    margin-right: 12px;
    float: left;
}

.bbs_wrap_inner .bbs_list.on .bbs_icon {
    background-image: url(/resources/images/bbs_icon.png);
}

.bbs_list .bbs_link {
    display: inline-block;
    height: 24px;
    line-height: 24px;
    font-size: 14px;
    font-weight: 400;
    color: #999999;
    /*float:left;*/
}

.bbs_wrap_inner .bbs_list.on .bbs_link {
    font-size: 14px;
    font-weight: 400;
    color: #333333;
}

.bbs_wrap.right {
    display: inline-block;
    float: left;
    width: 1088px;
    /* 	height: 806px; */
    border: 1px solid #E7E7E9;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    background-color: #fff;
    height: calc(100% - 43px);
}

.bbs_top {
    display: inline-block;
    width: 100%;
    height: 84px;
    border-bottom: 1px solid #E7E7E9;
    padding: 0 32px;
    float: left;
}

.bbs_top .form_check0 {
    float: left;
    margin-top: 32px;
}

.bbs_top .form_object {
    width: 120px;
    float: right;
    min-height: 36px;
    margin-bottom: 0;
    margin-top: 24px;
    margin-right: 16px;
}

.bbs_top .bbs_search_box {
    width: 300px;
    height: 36px;
    border: 1px solid var(--grid-border-color);
    border-radius: 4px;
    float: right;
    background-image: url(/resources/images/bbs_search_icon.png);
    background-repeat: no-repeat;
    background-position: 95% center;
    background-size: 16px;
    margin-top: 24px;
}

.bbs_top .bbs_search_box::placeholder {
    font-size: 13px;
    font-weight: 500;
    color: #AAAAAA;
}

.bbs_bottom {
    display: inline-block;
    width: 100%;
    /*height: 84px;*/
    padding: 0 32px;
}

.bbs_bottom .form_object {
    width: 160px;
    float: left;
    min-height: 36px;
    margin-bottom: 0;
    margin-top: 24px;
}

.bbs_bottom .pagenation_wrap {
    float: right;
    margin-top: 26px;
}

.pagenation_wrap {
    display: inline-block;
    /*min-width:214px;*/
    height: 32px;
    position: relative;
}

.pagenation_wrap .pagenation {
    display: inline-block;
    height: 32px;
}

.pagenation_wrap .pagenation li {
    width: 32px;
    height: 100%;
    vertical-align: top;
}

.pagenation_wrap .pagenation .previous {
    display: inline-block;
    width: 13px;
    /*height:16px;*/
    background-image: url(/resources/images/previous.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 13px;
    /*position:absolute;
	top:8px;
	left:0;*/
}

.pagenation_wrap .pagenation .previous.disabled {
    background-image: url(/resources/images/previous_disabled.png);
    cursor: not-allowed;
}

.pagenation_wrap .pagenation .last {
    display: inline-block;
    width: 13px;
    /*height:16px;*/
    background-image: url(/resources/images/last.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 13px;
    /*position:absolute;
	top:8px;
	right:0;*/
}

.pagenation_wrap .pagenation .last.disabled {
    background-image: url(/resources/images/last_disabled.png);
    cursor: not-allowed;
}

.pagenation_wrap .pagenation .prev {
    display: inline-block;
    width: 20px;
    /*height:20px;*/
    background-image: url(/resources/images/prev.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 20px;
    /*position:absolute;
	top:6px;
	left:18px;*/
}

.pagenation_wrap .pagenation .prev.disabled {
    background-image: url(/resources/images/prev_disabled.png);
    cursor: not-allowed;
}

.pagenation_wrap .pagenation .next {
    display: inline-block;
    width: 20px;
    /*height:20px;*/
    background-image: url(/resources/images/next.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 20px;
    /*position:absolute;
	top:6px;
	right:18px;*/
}

.pagenation_wrap .pagenation .next.disabled {
    background-image: url(/resources/images/next_disabled.png);
    cursor: not-allowed;
}

.pagenation_wrap .page_box {
    display: inline-block;
    height: 32px;
    max-width: 160px;
    overflow: hidden;
    /*position:absolute;
	top:0;
	left:51px;*/
}

.pagenation_wrap .page_box a {
    display: inline-block;
    width: 32px;
    height: 32px;
    line-height: 32px;
    text-align: center;
    /*float:left;*/
    font-size: 15px;
    font-weight: 500;
    color: #828B97;
}

.pagenation_wrap .page_box a.on {
    font-weight: 400;
    color: #fff;
    /*background-color: #43B8A1;*/
    background-color: var(--main-color);
    border-radius: 4px;
}

.bbs_body {
    display: inline-block;
    width: 100%;
    /*height: 625px;*/
    height: calc(100% - 168px);
    float: left;
}

.bbs_body_inner {
    display: inline-block;
    width: 100%;
    height: 100%;
    padding: 32px;
}

.bbs_body_inner .bbs {
    display: inline-block;
    width: 100%;
    height: 20px;
    line-height: 20px;
    margin-bottom: 24px;
}

.bbs_body_inner .bbs .form_check0 {
    float: left;
    margin-right: 48px;
}

.bbs_body_inner .bbs .bbs_link {
    display: inline-block;
    width: calc(100% - 68px);
    float: left;
}

.bbs .bbs_link .bbs_number {
    display: inline-block;
    font-size: 13px;
    font-weight: 500;
    color: #555555;
    float: left;
    margin-right: 48px;
}

.bbs .bbs_link .bbs_type {
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    color: #444444;
    float: left;
    margin-right: 65px;
}

.bbs .bbs_link .bbs_title {
    display: inline-block;
    width: 350px;
    font-size: 14px;
    font-weight: 500;
    color: #444444;
    float: left;
    margin-right: 89px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bbs .bbs_link .bbs_writer {
    display: inline-block;
    width: 100px;
    font-size: 13px;
    font-weight: 400;
    color: #444444;
    float: left;
    margin-right: 51px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bbs .bbs_link .bbs_date {
    display: inline-block;
    font-size: 12px;
    font-weight: 400;
    color: #A9ACBD;
    float: left;
    margin-right: 84px;
}

.bbs .bbs_link .bbs_counter {
    display: inline-block;
    font-size: 12px;
    font-weight: 400;
    color: #828B97;
    float: left;
}

/*인사정보 수정*/
.hr_employee_contents {
    width: 1360px;
    max-width: 1360px;
    min-width: 1360px;
    height: calc(100% - 40px) !important;
    /* 	overflow-y: scroll; */
    padding: 0;
    padding-top: 30px;
    text-align: center !important;
}

.cv_contents {
    width: 1360px;
    max-width: 1392px;
    min-width: 1392px;
    height: calc(100% - 41px) !important;
    padding: 0;
    padding-top: 30px;
}

/* 모바일매칭 등록조회 */
.fi_ar_content_graph {
    display: inline-block;
    width: 100%;
    height: 312px;
}

/* 간략 상각다행 */
.aa_depreciation_form {
    display: inline-block;
    width: 100%;
    height: 172px;
    background: #FFFFFF;
    border: 1px solid #E7E7E9;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border-radius: 4px;
    padding: 20px 32px;
    margin-bottom: 20px;
}

/* 공통 대시>폼 */
.inner_form_title {
    display: inline-block;
    width: 100%;
    height: 24px;
    line-height: 24px;
    font-size: 14px;
    font-weight: 400;
    color: #828B97;
    margin-bottom: 16px;
}

/* 개인설정관리, 인사정보조회 */
.dash_profile_contents {
    width: 1424px;
}

.personal_setting_top {
    height: 190px;
    padding: 20px 50px;
    background: #FFFFFF;
    border: 1px solid #E7E7E9;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border-radius: 4px;
    margin-bottom: 20px;
    position: relative;
}

.personal_setting_top .personal_img {
    display: inline-block;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    overflow: hidden;
    vertical-align: middle;
    margin-right: 30px;
}

.personal_setting_top .personal_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.personal_setting_top .personal_info_box {
    display: inline-block;
    vertical-align: bottom;
    margin-left: 30px;
}

.personal_setting_top .personal_info {
    margin-bottom: 10px;
    line-height: 18px;
    font-size: 12px;
    font-weight: 500;
    color: #333333;
}

.personal_setting_top .personal_info.personal_user {
    margin-bottom: 30px;
}

.personal_user .personal_name {
    font-size: 24px;
    font-weight: 400;
    color: #333333;
    padding-right: 17px;
}

.personal_user .personal_nickname {
    font-size: 24px;
    font-weight: 400;
    color: #828B97;
}

.personal_setting_top .personal_info.personal_number {
    margin-bottom: 20px;
}

.personal_icon {
    vertical-align: top;
}

.personal_icon::before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-right: 5px;
    background-position: center center;
    background-repeat: no-repeat;
    vertical-align: top;
}

.personal_icon.emp_no::before {
    background-image: url(/resources/images/personal_icon0.png);
}

.personal_icon.join_date::before {
    background-image: url(/resources/images/personal_icon1.png);
}

.personal_icon.dept_name::before {
    background-image: url(/resources/images/personal_icon3.png);
}

.personal_icon.rank_mark::before {
    background-image: url(/resources/images/personal_icon2.png);
}

.personal_icon.email::before {
    background-image: url(/resources/images/personal_icon4.png);
}

.personal_icon.mobile::before {
    background-image: url(/resources/images/personal_icon5.png);
}

.personal_icon.birthday::before {
    background-image: url(/resources/images/birthdate_icon.png);
}

/*.personal_icon.icon5 {
	width: 12px;
	height: 15px;
	margin-right: 10px;
	margin-top: 3px;
}*/

.personal_compleation {
    display: inline-block;
    width: 200px;
    height: 30px;
    vertical-align: bottom;
    /*position: absolute;
	top: 134px;
	left: 278px;*/
    margin-left: 20px;
}

.personal_compleation .compleation_title {
    /*display: inline-block;*/
    /*width: 100%;*/
    height: 18px;
    line-height: 18px;
    font-size: 12px;
    font-weight: 500;
    color: #828B97;
    margin-bottom: 6px;
}

.personal_compleation .compleation_bar {
    display: inline-block;
    width: 150px;
    height: 5px;
    background: #D9D9D9;
    border-radius: 100px;
    position: relative;
    float: left;
    margin-right: 11px;
}

.personal_compleation .compleation_bar span {
    display: inline-block;
    /*width:75px;*/
    height: 5px;
    background: #14BB94;
    border-radius: 100px;
    position: absolute;
    top: 0;
    left: 0;
}

.personal_compleation .compleation_percent {
    display: inline-block;
    height: 21px;
    line-height: 21px;
    font-size: 14px;
    font-weight: 400;
    color: #14BB94;
    float: left;
    margin-top: -10.5px;
}

.personal_setting_content {
    display: inline-block;
    width: 100%;
    /*height:806px;*/
    /*	min-height: 520px;*/
    background: #FFFFFF;
    border: 1px solid #E7E7E9;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border-radius: 4px;
    margin-bottom: 40px;
}

.personal_profile {
    display: inline-block;
    width: 294px;
    height: 100%;
    min-height: 195px;
    float: left;
}

.personal_profile .profile_title {
    display: inline-block;
    width: 100%;
    height: 14px;
    line-height: 14px;
    font-weight: 500;
    font-size: 12px;
    color: #828B97;
    margin-top: 20px;
    padding-left: 52px;
}

.personal_profile .profile {
    display: inline-block;
    width: 100%;
    height: 145px;
    margin-top: 23.33px;
    position: relative;
}

.personal_profile .profile .profile_image {
    display: inline-block;
    width: 140px;
    height: 140px;
    position: absolute;
    top: 12px;
    left: 86px;
}

.personal_profile .profile .profile_image img {
    width: 100%;
    height: 100%;
}

.personal_profile .profile button {
    display: inline-block;
    width: 40px;
    height: 40px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 40px;
    position: absolute;
}

.personal_profile .profile button.profile_img_edit {
    background-image: url(/resources/images/profile_img_edit.png);
    top: 3px;
    left: 196px;
}

.personal_profile .profile button.profile_img_delete {
    background-image: url(/resources/images/profile_img_delete.png);
    top: 128px;
    left: 196px;
}

.personal_form_wrap {
    display: inline-block;
    width: 1034px;
    height: 100%;
    float: left;
    padding-top: 20px;
}

.personal_pad {
    /*width:639px;
	height:360px;
	position: absolute;
	bottom: 0;
	left: 0;*/
    margin-top: 22px;
    border: 1px solid var(--grid-border-color);
}

.toggleSwitch {
    width: 45px;
    height: 24px;
    display: block;
    position: relative;
    border-radius: 12px;
    background-color: #DDDDDD;
    cursor: pointer;
}

.toggleSwitch .toggleButton {
    width: 19.5px;
    height: 19.5px;
    position: absolute;
    top: 50%;
    left: 3px;
    transform: translateY(-50%);
    border-radius: 50%;
    background: #FFFFFF;
}

/* 체크박스가 체크되면 변경 이벤트 */
.toggleSwitch.active {
    background: #43B8A1;
}

.toggleSwitch.active .toggleButton {
    left: calc(100% - 24px);
    background: #fff;
}

.toggleSwitch,
.toggleButton {
    transition: all 0.2s ease-in;
}

/* 첨부파일 공통 수정 */
.file_attached_area {
    display: inline-block;
    width: 100%;
    height: calc(100% - 48px);
    padding: 14px;
    position: relative;
    background-image: url(/resources/images/dragDrop.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px;
    text-align: left;
}

/*.file_attached_area::after {
	content: "Drag & Drop";
	display: inline-block;
	width: 84px;
	!*height: 14px;*!
	line-height: 14px;
	font-size: 13px;
	font-weight: 500;
	color: #666;
	position: absolute;
	!* 	top: calc(50% + 36px); *!
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	!*margin-left: -42px;*!
}*/

.file_attached_area_border {
    border: 1px solid var(--grid-border-color) !important;
    border-radius: 4px;
}

.file_attached_inner {
    display: inline-block;
    width: 100%;
    height: 100%;
    border: 1px dashed #82D18B;
}

.dragdrop_text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 13px;
    font-weight: 500;
    color: #666;
}

.file_attached_area .hr_attached_list {
    padding: 10px;
}

/* 과제 첨부파일 추가 */

.file_attached_area_ass {
    display: inline-block;
    width: 100%;
    height: 100%;
    padding: 24px;
    position: relative;
    /* 	background-image: url(/resources/images/file_attached.png); */
    /* 	background-repeat: no-repeat; */
    /* 	background-position: center center; */
    /* 	background-size: 24px; */
}

.file_attached_area_ass::after {
    content: "드래그 앤 드롭";
    display: inline-block;
    width: 84px;
    height: 14px;
    line-height: 14px;
    font-size: 13px;
    font-weight: 500;
    color: #666;
    position: absolute;
    /* 	top: calc(50% + 36px); */
    top: 50%;
    left: 50%;
    margin-left: -42px;
}

.file_attached_area_border_ass {
    border: 1px solid var(--grid-border-color) !important;
    border-radius: 4px;
}

.file_attached_inner_ass {
    display: inline-block;
    width: 100%;
    height: 100%;
    border: 1px dashed #82D18B;
}


/* 패스워드 정책 */
.comm_password_contents {
    width: 1360px;
    max-width: 1360px;
    min-width: 1360px;
    height: calc(100% - 41px) !important;
    /* 	overflow-y: scroll; */
    padding: 0;
    padding-top: 30px;
    text-align: center !important;
}

.password_content.left {
    display: inline-block;
    width: 416px;
    float: left;
    margin-right: 20px;
    background: #FFFFFF;
    border: 1px solid #E7E7E9;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border-radius: 4px;
    padding: 20px 32px;
}

.password_content.right {
    display: inline-block;
    width: 924px;
    float: left;
    background: #FFFFFF;
    border: 1px solid #E7E7E9;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04);
    border-radius: 4px;
}

/* 메인 공지사항 팝업 */
.main_notice_pop {
    display: inline-block;
    width: 600px;
    height: 800px;
    background: #FFFFFF;
    border: 1px solid #EEEEEE;
    border-radius: 8px;
    position: absolute;
    left: 320px;
    top: 444px;
    z-index: 110;
}

/* 인원현황 및 주소록 */
.employee_rank_left {
    display: inline-block;
    width: calc(23% - 20px);
    height: 761px;
    float: left;
    margin-right: 20px;
}

.employee_rank_left .employee_rank_list_check {
    display: inline-block;
    width: 100%;
    height: 20px;
    padding-left: 5px;
    margin-bottom: 8px;
}

.employee_rank_left .employee_rank_list_check span {
    font-size: 13px;
    font-weight: 500;
    color: #444444;
    padding-left: 8px;
}

/* inline-block 공백 제거를 위한 부모 스타일 */
.employee_rank_left > div:first-child {
    font-size: 0;
}

.employee_rank_left .employee_rank_list_check,
.employee_rank_left .work_place {
    font-size: 14px;
}

/* personal_setting_top 내부 info_box 공백 제거 */
.personal_setting_top {
    font-size: 0;
}

.personal_setting_top .info_box {
    font-size: 14px;
}

/* employee_rank_left와 emaployee_rank_right를 가로로 배치 - 더 구체적인 선택자로 우선순위 높임 */
.contents_wrap .contents_area:has(.employee_rank_left):has(.emaployee_rank_right) {
    flex-direction: row !important;
    gap: 0 !important;
}

/* float를 사용한 레이아웃이므로 flex 해제도 고려 가능 */
.contents_wrap .contents_area:has(.employee_rank_left.employee_rank_left):has(.emaployee_rank_right.emaployee_rank_right) {
    display: block !important;
}

/* contents_area > grid_inner_wrap0 - 높이가 지정되지 않은 경우 남은 공간 차지 */
.contents_area > .grid_inner_wrap0:not([style*="height"]) {
    flex: 1 1 auto !important;
    min-height: 200px;
}

.employee_rank_left .employee_rank_list {
    display: inline-block;
    width: 100%;
    height: 733px;
}

.emaployee_rank_right {
    display: inline-block;
    width: 77%;
    height: 761px;
    float: left;
}

.emaployee_rank_right .page_depth_wrap {
    display: inline-block;
    height: 20px;
    line-height: 20px;
    float: left;
    margin-left: 5px;
}

.emaployee_rank_right .page_depth_wrap .depth {
    display: inline-block;
    font-size: 13px;
    font-weight: 500;
    color: #828B97;
    position: relative;
    padding-right: 10px;
}

.emaployee_rank_right .page_depth_wrap .depth::after {
    content: '-';
    color: #828B97;
    position: absolute;
    top: 0;
    right: 0;
}

.emaployee_rank_right .page_depth_wrap .depth.on {
    color: #444444;
}

.emaployee_rank_right .page_depth_wrap .depth.on::after {
    content: none;
}

.emaployee_rank_right .table_total_wrap {
    display: inline-block;
    height: 20px;
    line-height: 20px;
    font-size: 13px;
    font-weight: 500;
    color: #828B97;
    float: right;
    padding-right: 10px;
}

.emaployee_rank_right .employee_rank_detail {
    display: inline-block;
    width: 100%;
    height: 733px;
    margin-top: 6px;
}

/* 인원현황 및 주소록 */
.org_pop_top {
    display: inline-block;
    width: 100%;
    height: 130px;
    border-bottom: 1px solid #E7E7E9;
    position: relative;
    margin-bottom: 22px;
}

.org_pop_top .org_user_img {
    display: inline-block;
    width: 110px;
    height: 110px;
    position: absolute;
    top: 0;
    left: 46px;
}

.org_pop_top .org_user_img img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
}

.org_pop_top .org_user {
    display: inline-block;
    position: absolute;
    top: 20px;
    left: 260px;
}

.org_pop_top .org_user .org_user0 {
    display: inline-block;
    width: 100%;
    height: 44px;
    line-height: 44px;
    margin-bottom: 8px;
}

.org_pop_top .org_user .org_user0 .org_user_name {
    display: inline-block;
    height: 44px;
    line-height: 44px;
    font-size: 30px;
    font-weight: 500;
    color: #333333;
    padding-right: 15px;
    float: left;
}

.org_pop_top .org_user .org_user_nick {
    display: inline-block;
    height: 44px;
    line-height: 44px;
    font-size: 30px;
    font-weight: 500;
    color: #828B97;
    float: left;
}

.org_pop_top .org_user .org_user1 {
    display: inline-block;
    width: 100%;
    height: 24px;
    line-height: 24px;
}

.org_pop_top .org_user .org_user1 .org_user_grade {
    display: inline-block;
    height: 24px;
    line-height: 24px;
    font-size: 16px;
    font-weight: 300;
    color: #333333;
    float: left;
    margin-right: 10px;
}

.org_pop_top .org_user .org_user1 .org_user_team {
    display: inline-block;
    height: 24px;
    line-height: 24px;
    font-size: 16px;
    font-weight: 500;
    color: #333333;
    float: left;
}

.org_pop_left {
    display: inline-block;
    width: 292px;
    height: 100%;
    float: left;
}

.org_pop_left .org_user_info_title {
    display: inline-block;
    width: 100%;
    height: 18px;
    line-height: 18px;
    font-size: 13px;
    color: #333;
    font-weight: 500;
}

.org_pop_left .org_user_info {
    display: inline-block;
    width: 100%;
    padding-top: 5px;
}

.org_pop_left .org_user_info .org_user_info_detail {
    display: inline-block;
    width: 100%;
    height: 18px;
    line-height: 18px;
    margin-bottom: 10px;
}

.org_pop_left .org_user_info .org_user_info_detail .org_user_info_type {
    display: inline-block;
    font-size: 13px;
    font-weight: 500;
    color: #828B97;
    float: left;
    width: 97px;
    text-align: left;
}

.org_pop_left .org_user_info .org_user_info_detail .org_user_info_txt {
    display: inline-block;
    font-size: 13px;
    font-weight: 500;
    color: #444444;
    float: left;
    width: 160px;
    text-align: left;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.org_pop_right {
    display: inline-block;
    width: 924px;
    height: 100%;
    float: left;
}

.org_pop_right .profile_txt2_title {
    display: inline-block;
    width: 100%;
    padding-left: 5px;
    height: 14px;
    line-height: 14px;
    font-size: 13px;
    font-weight: 500;
    color: #444444;
    margin-bottom: 6px;
}

.org_pop_right .admin_profile_txt2 {
    padding: 15px 0;
}


/*==============================怨듯넻===============================*/

.ea_contents_area {
    display: inline-block;
    width: 1346px;
    height: calc(100% - 21px);
    margin-left: 0;
    position: unset;
    text-align: center;
}

@container contents (max-width: 1540px) {

    .modal_contents_wrap div[id$="Grid"] {
        width: 100% !important;
    }

    /*	.grid_inner_wrap0{
		width:1376px !important;
	}*/

    .grid_inner_wrap_fw50 {
        width: 678px !important;
    }


    div[id$="Grid"] {
        /* 		width:1376px !important; */
    }

    /* 	div[id$="Grid"]{ */
    /* 		width:1380px !important; */
    /* 	} */

    .form_object.flexible {
        width: calc(16.6% - 12px) !important;
    }

}

/*그리드 기본 굵기 수정*/
input[vlaue*="j"] {
    font-size: 14px !important;
}

div[text*="i"] {
    font-size: 14px !important;
}


/* 그리드 영역 하단방향 공통처리 */
div[id$="Grid"] {
    background-color: #fff !important;
}

/*타이틀*/
.inner_tab_title {
    display: inline-block;
    width: 100%;
    padding: 0 10px;
    text-align: left;
    color: #222222;
    font-size: 13px;
    font-weight: 500;
    margin-bottom: 6px;
}

.inner_label_title {
    /* 	float: left; */
    display: inline-block;
    width: 100%;
    height: 13px;
    line-height: 13px;
    padding: 0;
    text-align: left;
    font-size: 13px;
    font-weight: 500;
    color: #828B97;
    margin-bottom: 6px;
}

/*float*/
.floatN {
    float: unset !important;
}
/* .floatL, .floatR - common_v3.css에서 관리 */

/*scroll*/
/* .scroll_x, .scroll_y - common_v3.css에서 관리 */
.scroll {
    overflow: scroll;
}

/*position*/
.position_n {
    position: unset !important;
}

.position_r {
    position: relative !important;
}

.position_a {
    position: absolute !important;
}


/*cursor*/
.cursorP {
    cursor: pointer !important;
}


/* align */
/* .clearB, .overH, .floatL, .floatR, .textL, .textC, .textR - common_v3.css에서 관리 */
.overU {
    overflow: unset !important;
}

.overS {
    overflow: scroll;
}


/*width*/
.w5 {
    width: 5% !important;
}

.w7_5 {
    width: 7.5% !important;
}

.w10 {
    width: 10% !important;
}

.w15 {
    width: 15% !important;
}

.w19 {
    width: 19% !important;
}

.w20 {
    width: 20% !important;
}

.w24 {
    width: 24% !important;
}

.w25 {
    width: 25% !important;
}

.w28 {
    width: 28% !important;
}

.w29 {
    width: 29% !important;
}

.w30 {
    width: 30% !important;
}

.w31 {
    width: 31% !important;
}

.w32 {
    width: 32% !important;
}

.w33 {
    width: 33% !important;
}

.w35 {
    width: 35% !important;
}

.w39 {
    width: 39% !important;
}

.w40 {
    width: 40% !important;
}

.w45 {
    width: 45% !important;
}

.w48 {
    width: 48% !important;
}

.w49 {
    width: 49% !important;
}

.w49_5 {
    width: 49.5% !important;
}

.w50 {
    width: 50% !important;
}

.w55 {
    width: 55% !important;
}

.w59 {
    width: 59% !important;
}

.w60 {
    width: 60% !important;
}

.w63 {
    width: 63% !important;
}

.w64 {
    width: 64% !important;
}

.w65 {
    width: 65% !important;
}

.w66 {
    width: calc(66% + 10px) !important;
}

.w67 {
    width: 67% !important;
}

.w68 {
    width: 68% !important;
}

.w70 {
    width: 70% !important;
}

.w70_10 {
    width: calc(70% + 10px) !important;
}

.w75 {
    width: 75% !important;
}

.w76 {
    width: 76% !important;
}

.w78 {
    width: 78% !important;
}

.w79 {
    width: 79% !important;
}

.w80 {
    width: 80% !important;
}

.w84 {
    width: 84% !important;
}

.w85 {
    width: 85% !important;
}

.w90 {
    width: 90% !important;
}

.w91 {
    width: 91% !important;
}

.w92 {
    width: 92% !important;
}

.w95 {
    width: 95% !important;
}

.w100 {
    width: 100% !important;
}

.w1360 {
    width: 1360px !important;
}



/* 검색 결과 없을 경우 */
.data_empty {
    color: #828B97;
    font-size: 14px;
    font-weight: 500;
    color: #828B97;
    font-size: 14px;
    font-weight: 500;
    display: inline-block;
    /*width: 100%;
	height: 100%;*/
    text-align: center;
    /*float: left;*/
    /*margin-top: -16px;*/
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


.content_loader {
    display: inline-block;
    width: 100%;
    height: 100%;
    min-height: 100%;
    background: var(--loading-image) no-repeat center center;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999999999;
}

/* iframe 탭 로딩 오버레이 */
.iframe_loading {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #F5F5F5 var(--loading-image) no-repeat center center;
    z-index: 100;
}

/* 팝업 iframe 로딩 오버레이 */
.popup_iframe_loading {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #F5F5F5 var(--loading-image) no-repeat center center;
    z-index: 100;
}

.ui-dialog-content {
    /*max-height: calc(100vh - 200px) !important;*/
    max-height: 80vh !important;
    background: #fff;
    overflow: hidden !important;
    position: relative;
    padding: 0 !important;
    box-sizing: border-box;
}

/* 중첩 팝업: nested-dialog 클래스가 있는 다이얼로그는 더 작은 높이로 제한 */
.nested-dialog .ui-dialog-content {
    max-height: 70vh !important;
}

/* 모달 버튼 영역(푸터) 기본 스타일 - 타이틀바(54px)와 동일 */
.ui-dialog .ui-dialog-buttonpane {
    height: 54px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    border-top: 1px solid #E7E7E9 !important;
    background: #fff;
    box-sizing: border-box;
}

.ui-dialog .ui-dialog-buttonpane::before,
.ui-dialog .ui-dialog-buttonpane::after {
    display: none !important;
    content: none !important;
}

.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    width: 100%;
    height: 54px !important;
    line-height: 54px;
    padding: 0 20px !important;
    margin: 0 !important;
    border: none !important;
    background: none;
    box-sizing: border-box;
    float: none;
}

.ui-dialog .ui-dialog-buttonpane button {
    margin: 0 !important;
}

/* 중첩 팝업: 버튼 영역(푸터) - 일반 푸터와 동일 */
.nested-dialog .ui-dialog-buttonpane {
    height: 54px !important;
}

.nested-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
    height: 54px !important;
    line-height: 54px;
}

body.fixed {
    overflow: hidden;
}

/*************************************
*  			통합결재함
 *************************************/
/* 문서이미지 */
/* 통합결재함 문서 이미지 */

.contents_detail_iframe.loading {
    position: relative;
    background: #f5f5f5 var(--loading-image) no-repeat center center;
    z-index: 1;
}

/* 로딩 중일 때 기존 컨텐츠 숨김 */
.contents_detail_iframe.loading > * {
    visibility: hidden;
}

.contents_detail_iframe .default_view {
    background-color: #f5f5f5;
}

.contents_detail_iframe .default_view .empty_msg::before {
    content: '';
    display: block;
    width: 70px;
    height: 70px;
    margin: 0 auto;
    background-image: url("/resources/images/navigation_icon6.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}


/*************************************
*  		전자결재 헤더(프로젝트 추가)
* 		& 그리드 layout
*************************************/
.ea_header_edit_form,
form.grid_layout,
.content_header_inner:has(> .form_object) {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-column-gap: 15px;
    grid-row-gap: 16px;
}


/* form/content_header_inner 직접 하위 form_object는 자동 grid 참여 */
form.grid_layout > .form_object,
.content_header_inner:has(> .form_object)>.form_object {
    width: 100% !important;
    float: unset;
    margin: 0;
    grid-column: span 2;
    align-self: start;
    align-content: end;
}

.grid_layout {
    display: grid;
    width: 100%;
    grid-column-gap: 15px;
    grid-row-gap: 20px;
    grid-template-columns: repeat(12, 1fr);
}

.grid_layout.narrow_gap {
    grid-column-gap: 10px;
    grid-row-gap: 15px;
}

.grid_layout.narrow_row_gap {
    grid-row-gap: 15px;
}

/* EA 본문 - 컨테이너 쿼리용 */
.ea_left_scroll_wrap {
    container-type: inline-size;
    container-name: ea-form;
}

/* EA 본문 기본 12칸 (grid_* 클래스가 없는 경우만) */
.ea_left_scroll_wrap .grid_layout:not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12) {
    grid-template-columns: repeat(12, 1fr);
}

/* 컨테이너 너비에 따른 반응형 그리드 (grid_* 클래스가 없는 경우만) */
@container ea-form (max-width: 900px) {
    .grid_layout:not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12) {
        grid-template-columns: repeat(8, 1fr) !important;
    }
    .grid_layout > .form_object {
        grid-column: span 2 !important;
    }
    .grid_layout > .form_object.x1_5 {
        grid-column: span 2 !important;
    }
    .grid_layout > .form_object.x2 {
        grid-column: span 4 !important;
    }
    .grid_layout > .form_object.x_full {
        grid-column: 1 / -1 !important;
    }
}

@container ea-form (max-width: 650px) {
    .grid_layout {
        grid-template-columns: repeat(4, 1fr) !important;
    }
    .grid_layout > .form_object,
    .grid_layout > .form_object.x1_5 {
        grid-column: span 2 !important;
    }
    .grid_layout > .form_object.x2 {
        grid-column: span 4 !important;
    }
    .grid_layout > .form_object.x_full {
        grid-column: 1 / -1 !important;
    }
}

/* 검색조건 영역 */
.content_header_inner.grid_layout,
.grid_layout.colTemp12 {
    grid-template-columns: repeat(12, 1fr);
}

.grid_layout.colTemp10 {
    grid-template-columns: repeat(10, 1fr);
}

.grid_layout.colTemp8 {
    grid-template-columns: repeat(8, 1fr);
}

.grid_layout.colTemp6 {
    grid-template-columns: repeat(6, 1fr);
}

form:has(> .form_object)>.form_object.ea_form,
.grid_layout>.form_object {
    width: 100%;
    float: unset;
    margin: 0;
    grid-column: span 2;
    align-self: start;
    align-content: end;
}

.grid_layout>.form_object.ea_form_half,
form:has(> .form_object)>.form_object.ea_form.x0_5,
.grid_layout>.form_object.x0_5 {
    grid-column: span 1;
}

form:has(> .form_object)>.form_object.ea_form.x1,
.grid_layout>.form_object.x1 {
    grid-column: span 2;
}

form:has(> .form_object)>.form_object.ea_form.x1_5,
.grid_layout>.form_object.x1_5 {
    grid-column: span 3;
}

.grid_layout>.form_object.ea_form_double,
form:has(> .form_object)>.form_object.ea_form.x2,
.grid_layout>.form_object.x2 {
    grid-column: span 4;
}

form:has(> .form_object)>.form_object.ea_form.x2_5,
.grid_layout>.form_object.x2_5 {
    grid-column: span 5;
}

form:has(> .form_object)>.form_object.ea_form.x3,
.grid_layout>.form_object.x3 {
    grid-column: span 6;
}

form:has(> .form_object)>.form_object.ea_form.x3_5,
.grid_layout>.form_object.x3_5 {
    grid-column: span 7;
}

form:has(> .form_object)>.form_object.ea_form.x4,
.grid_layout>.form_object.x4 {
    grid-column: span 8;
}

.grid_layout>.x_full,
.grid_layout>.form_object.x_full {
    grid-column: 1 / -1;
}

.grid_layout>.form_object.at1 {
    grid-column: 1 / span 2;
}

.grid_layout>.form_object.at3 {
    grid-column: 3 / span 2;
}

.grid_layout>.ea_form_half.at1,
.grid_layout>.form_object.at1.x0_5 {
    grid-column: 1 / span 1;
}

.grid_layout>.ea_form_double.at1,
.grid_layout>.form_object.at1.x2 {
    grid-column: 1 / span 4;
}

/* 추가 grid span 클래스 */
.grid_layout>.form_object.x4_5,
.grid_layout>.x4_5 {
    grid-column: span 9;
}

.grid_layout>.form_object.x5,
.grid_layout>.x5 {
    grid-column: span 10;
}

.grid_layout>.form_object.x5_5,
.grid_layout>.x5_5 {
    grid-column: span 11;
}

.grid_layout>.form_object.x6,
.grid_layout>.x6 {
    grid-column: span 12;
}

/* grid gap 유틸리티 */
.grid_layout.gap-5 {
    grid-gap: 5px;
}

.grid_layout.gap-10 {
    grid-gap: 10px;
}

.grid_layout.gap-15 {
    grid-gap: 15px;
}

.grid_layout.gap-20 {
    grid-gap: 20px;
}

.grid_layout.col-gap-5 {
    grid-column-gap: 5px;
}

.grid_layout.col-gap-10 {
    grid-column-gap: 10px;
}

.grid_layout.col-gap-20 {
    grid-column-gap: 20px;
}

.grid_layout.row-gap-5 {
    grid-row-gap: 5px;
}

.grid_layout.row-gap-10 {
    grid-row-gap: 10px;
}

.grid_layout.row-gap-15 {
    grid-row-gap: 15px;
}

/* grid_layout 줄바꿈 유틸리티 - 해당 요소부터 새 행에서 시작 */
.grid_layout > .x_start,
.grid_layout > .form_object.x_start {
    grid-column-start: 1 !important;
}

/* ============================================================================
   범용 유틸리티 클래스
   ============================================================================ */

/* split-row gap 유틸리티 */
.split-row.gap-5 { gap: 5px; }
.split-row.gap-10 { gap: 10px; }
.split-row.gap-15 { gap: 15px; }
.split-row.gap-20 { gap: 20px; }

/* 형제 split-row 간 row-gap (부모에 gap 없을 때만) - 보이는 split-row 끼리만 적용 */
.split-row:has(> :not([style*="display: none"])) + .split-row:has(> :not([style*="display: none"])) { margin-top: 10px; }
.split-row.gap-5:has(> :not([style*="display: none"])) + .split-row:has(> :not([style*="display: none"])) { margin-top: 5px; }
.split-row.gap-10:has(> :not([style*="display: none"])) + .split-row:has(> :not([style*="display: none"])) { margin-top: 10px; }
.split-row.gap-15:has(> :not([style*="display: none"])) + .split-row:has(> :not([style*="display: none"])) { margin-top: 15px; }
.split-row.gap-20:has(> :not([style*="display: none"])) + .split-row:has(> :not([style*="display: none"])) { margin-top: 20px; }

/* 부모에 gap이 있으면 margin 제거 (중복 방지) */
.contents_area[class*="gap-"] > .split-row + .split-row,
[class*="gap-"]:not(.split-row) > .split-row + .split-row,
.split-row[class*="gap-"] > .split-row + .split-row {
    margin-top: 0 !important;
}

/* 범용 gap 유틸리티 */
.gap-0 { gap: 0 !important; }
.gap-5 { gap: 5px !important; }
.gap-10 { gap: 10px !important; }
.gap-15 { gap: 15px !important; }
.gap-20 { gap: 20px !important; }

/* flex-* 클래스에 gap이 있고 직접 자식으로 레이아웃 요소를 가지면 flex container로 만들기 */
[class^="flex-"][class*="gap-"]:has(> .split-row, > .grid-header, > [class*="grid_inner_wrap"]),
[class*=" flex-"][class*="gap-"]:has(> .split-row, > .grid-header, > [class*="grid_inner_wrap"]) {
    display: flex;
    flex-direction: column;
}

/* flex container 안의 split-row는 내용에 맞춰 (flex-auto 요소만 남은 공간 차지) */
[class^="flex-"][class*="gap-"] > .split-row,
[class*=" flex-"][class*="gap-"] > .split-row {
    flex: 0 0 auto;
    height: auto;
}

/* min-height 유틸리티 */
.min-height-100 { min-height: 100px !important; }
.min-height-200 { min-height: 200px !important; }
.min-height-300 { min-height: 300px !important; }
.min-height-400 { min-height: 400px !important; }
.min-height-500 { min-height: 500px !important; }
.min-height-600 { min-height: 600px !important; }
.min-height-700 { min-height: 700px !important; }
.min-height-800 { min-height: 800px !important; }
.min-height-900 { min-height: 900px !important; }
.min-height-1000 { min-height: 1000px !important; }
.min-height-1200 { min-height: 1200px !important; }
.min-height-1500 { min-height: 1500px !important; }

/* height 유틸리티 */
.height-100 { height: 100px !important; }
.height-200 { height: 200px !important; }
.height-300 { height: 300px !important; }
.height-400 { height: 400px !important; }
.height-500 { height: 500px !important; }
.height-600 { height: 600px !important; }
.height-800 { height: 800px !important; }
.height-1000 { height: 1000px !important; }

/* 스크롤 유틸리티 */
.overflow-auto { overflow: auto !important; }
.overflow-y-auto { overflow-y: auto !important; overflow-x: hidden !important; }
.overflow-x-auto { overflow-x: auto !important; overflow-y: hidden !important; }
.overflow-hidden { overflow: hidden !important; }

/* 고정 높이 + 스크롤 조합 */
.min-height-300.overflow-y-auto,
.min-height-400.overflow-y-auto,
.min-height-500.overflow-y-auto,
.min-height-600.overflow-y-auto,
.min-height-800.overflow-y-auto,
.min-height-1000.overflow-y-auto,
.min-height-1200.overflow-y-auto,
.min-height-1500.overflow-y-auto {
    max-height: 100%;
}

/* timepicker 스크롤 */
.ui-timepicker-viewport {
    overflow: scroll;
}

/* ========================================
   Grid Layout 명시적 적용
   - .grid_layout 클래스 추가 시에만 grid 적용
   - 기본은 기존 float 레이아웃 유지
   ======================================== */

/* .grid_layout 클래스가 있을 때만 grid 적용 */
.content_header_inner.grid_layout,
.content_inner_v2.grid_layout,
.inner_panel.grid_layout {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-column-gap: 15px;
    grid-row-gap: 10px;
}

/* inner_panel.grid_layout 전용 - 패딩 및 overflow 처리 */
.inner_panel.grid_layout {
    padding: 20px 24px;
    box-sizing: border-box;
    overflow-y: auto;
    overflow-x: hidden;
}

/* form, fieldset을 통해 중첩된 경우도 지원: 투명하게 만들어 자식이 grid에 참여 */
.content_header_inner.grid_layout > form,
.content_inner_v2.grid_layout > form,
.inner_panel.grid_layout > form,
.grid_layout > form,
.grid_layout > form > fieldset,
.grid_layout form > fieldset {
    display: contents;
}

/* grid_layout 다음에 오는 grid_inner_wrap 요소들과의 간격 */
.grid_layout + .grid_inner_wrap0,
.grid_layout + .grid_inner_wrap1,
.grid_layout + .grid_inner_wrap2,
.grid_layout + [class*="grid_inner_wrap"] {
    margin-top: 10px;
}

/* grid_layout 내부 버튼 스타일 - form_object와 동일한 높이/정렬 */
.grid_layout > button,
.grid_layout > form > button,
.grid_layout > .btn_wrap {
    align-self: end;
    height: 36px;
    min-width: 80px;
    white-space: nowrap;
    float: none;
}

/* floatR 버튼은 오른쪽 정렬 */
.grid_layout > button.floatR,
.grid_layout > form > button.floatR {
    justify-self: end;
    margin-left: auto;
}

/* content_inner_hidden, content_inner_btn - 전체 너비 차지 */
.grid_layout .content_inner_hidden,
.grid_layout .content_inner_btn {
    grid-column: 1 / -1;
    width: 100%;
    padding: 5px;
}

/* content_inner_hidden이 보일 때 내부 grid 적용 (grid-template-columns는 미디어 쿼리에서 처리) */
.grid_layout .content_inner_hidden[style*="display: block"],
.grid_layout .content_inner_hidden[style*="display:block"],
.grid_layout .content_inner_hidden:not([style*="display: none"]):not([style*="display:none"]),
.grid_layout .content_inner_hidden.on {
    display: grid !important;
    padding: 0;
    grid-row-gap: 12px;
}

/* content_inner_hidden 내부 form_object 그리드 지원 */
.grid_layout .content_inner_hidden .form_object {
    grid-column: span 2;
    width: 100%;
    float: unset;
    margin: 0;
}

/* inner_panel 내 익명 div만 투명 처리 (content_inner_hidden, content_inner_btn 제외) */
.grid_layout .inner_panel>div:not([id]):not(.content_inner_hidden):not(.content_inner_btn) {
    display: contents;
}

/* 이미지 영역 - 3행 2칸, 정사각형 비율 유지 */
.grid_layout .form_object_img {
    grid-row: span 3;
    grid-column: span 2;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    margin-top: 17px !important;
    float: none !important;
    aspect-ratio: 1 / 1;
    max-width: 200px;
}

.grid_layout .form_object_img .img_section,
.grid_layout .form_object_img .profile_img_section {
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: 1 / 1;
    background-size: 40px;
    background-position: center center;
}

.grid_layout .form_object_img .img_section img,
.grid_layout .form_object_img .profile_img_section img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.grid_layout .form_object_img .form_img {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    margin: 0;
}

.grid_layout .form_object_img .form_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* form_object 기본 span (2칸 = 12컬럼 중 2칸) */
.content_header_inner.grid_layout .form_object:not(.hide),
.content_inner_v2.grid_layout .form_object:not(.hide),
.inner_panel.grid_layout .form_object:not(.hide) {
    grid-column: span 2 !important;
    width: auto !important;
    float: none !important;
    margin: 0 !important;
    position: relative !important;
}

/* hide 클래스가 있으면 그리드에서 제외 */
.grid_layout .form_object.hide {
    display: none !important;
}


/* span 클래스 - grid_layout 하위에서만 적용 (특이성 맞춤) */
.content_header_inner.grid_layout .form_object.x0_5,
.content_inner_v2.grid_layout .form_object.x0_5,
.inner_panel.grid_layout .form_object.x0_5,
.grid_layout .form_object.x0_5 {
    grid-column: span 1 !important;
}

.content_header_inner.grid_layout .form_object.x1,
.content_inner_v2.grid_layout .form_object.x1,
.inner_panel.grid_layout .form_object.x1,
.grid_layout .form_object.x1 {
    grid-column: span 2 !important;
}

.content_header_inner.grid_layout .form_object.x1_5,
.content_inner_v2.grid_layout .form_object.x1_5,
.inner_panel.grid_layout .form_object.x1_5,
.grid_layout .form_object.x1_5 {
    grid-column: span 3 !important;
}

.content_header_inner.grid_layout .form_object.x2,
.content_inner_v2.grid_layout .form_object.x2,
.inner_panel.grid_layout .form_object.x2,
.grid_layout .form_object.x2 {
    grid-column: span 4 !important;
}

.content_header_inner.grid_layout .form_object.x2_5,
.content_inner_v2.grid_layout .form_object.x2_5,
.inner_panel.grid_layout .form_object.x2_5,
.grid_layout .form_object.x2_5 {
    grid-column: span 5 !important;
}

.content_header_inner.grid_layout .form_object.x3,
.content_inner_v2.grid_layout .form_object.x3,
.inner_panel.grid_layout .form_object.x3,
.grid_layout .form_object.x3 {
    grid-column: span 6 !important;
}

.content_header_inner.grid_layout .form_object.x3_5,
.content_inner_v2.grid_layout .form_object.x3_5,
.inner_panel.grid_layout .form_object.x3_5,
.grid_layout .form_object.x3_5 {
    grid-column: span 7 !important;
}

.content_header_inner.grid_layout .form_object.x4,
.content_inner_v2.grid_layout .form_object.x4,
.inner_panel.grid_layout .form_object.x4,
.grid_layout .form_object.x4 {
    grid-column: span 8 !important;
}

.content_header_inner.grid_layout .form_object.x4_5,
.content_inner_v2.grid_layout .form_object.x4_5,
.inner_panel.grid_layout .form_object.x4_5,
.grid_layout .form_object.x4_5 {
    grid-column: span 9 !important;
}

.content_header_inner.grid_layout .form_object.x5,
.content_inner_v2.grid_layout .form_object.x5,
.inner_panel.grid_layout .form_object.x5,
.grid_layout .form_object.x5 {
    grid-column: span 10 !important;
}

.content_header_inner.grid_layout .form_object.x5_5,
.content_inner_v2.grid_layout .form_object.x5_5,
.inner_panel.grid_layout .form_object.x5_5,
.grid_layout .form_object.x5_5 {
    grid-column: span 11 !important;
}

.content_header_inner.grid_layout .form_object.x6,
.content_inner_v2.grid_layout .form_object.x6,
.inner_panel.grid_layout .form_object.x6,
.grid_layout .form_object.x6,
.content_header_inner.grid_layout .form_object.x_full,
.content_inner_v2.grid_layout .form_object.x_full,
.inner_panel.grid_layout .form_object.x_full,
.grid_layout .form_object.x_full {
    grid-column: 1 / -1 !important;
}

/* x_full 명시적 규칙 추가 */
.content_header_inner.grid_layout .form_object.x_full,
.content_inner_v2.grid_layout .form_object.x_full,
.inner_panel.grid_layout .form_object.x_full {
    grid-column: 1 / -1 !important;
}

/* 숨김 클래스 */
.form_object.hide,
.form_object.hidden {
    display: none !important;
}

/* ============================================================================
   Grid Layout 반응형 시스템
   - 컨테이너 너비에 따라 그리드 컬럼 수 자동 조절
   - 기본 12칸 → 8칸 → 6칸 → 4칸 → 2칸
   ============================================================================ */

/* 1200px 이하: 12칸 → 8칸 */
@container contents (max-width: 1200px) {
    .content_header_inner.grid_layout,
    .content_inner_v2.grid_layout,
    .inner_panel.grid_layout,
    .grid_layout,
    .grid_layout .content_inner_hidden {
        grid-template-columns: repeat(8, 1fr) !important;
    }

    /* span 비율 유지하도록 조정 */
    .grid_layout .form_object {
        grid-column: span 2 !important;
    }
    .grid_layout .form_object.x0_5 {
        grid-column: span 1 !important;
    }
    .grid_layout .form_object.x1 {
        grid-column: span 1 !important;
    }
    .grid_layout .form_object.x1_5 {
        grid-column: span 2 !important;
    }
    .grid_layout .form_object.x2 {
        grid-column: span 3 !important;
    }
    .grid_layout .form_object.x2_5 {
        grid-column: span 3 !important;
    }
    .grid_layout .form_object.x3 {
        grid-column: span 4 !important;
    }
    .grid_layout .form_object.x3_5 {
        grid-column: span 5 !important;
    }
    .grid_layout .form_object.x4 {
        grid-column: span 5 !important;
    }
    .grid_layout .form_object.x4_5 {
        grid-column: span 6 !important;
    }
    .grid_layout .form_object.x5 {
        grid-column: span 7 !important;
    }
    .grid_layout .form_object.x5_5,
    .grid_layout .form_object.x6,
    .grid_layout .form_object.x_full {
        grid-column: 1 / -1 !important;
    }
    /* fw50 날짜 2개 있는 datepicker는 4칸 유지 */
    .grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50) {
        grid-column: span 4 !important;
    }
}

/* 1000px 이하: 8칸 → 6칸 */
@container contents (max-width: 900px) {
    .content_header_inner.grid_layout,
    .content_inner_v2.grid_layout,
    .inner_panel.grid_layout,
    .grid_layout,
    .grid_layout .content_inner_hidden {
        grid-template-columns: repeat(6, 1fr) !important;
    }

    .grid_layout .form_object {
        grid-column: span 2 !important;
    }
    .grid_layout .form_object.x0_5 {
        grid-column: span 1 !important;
    }
    .grid_layout .form_object.x1 {
        grid-column: span 1 !important;
    }
    .grid_layout .form_object.x1_5,
    .grid_layout .form_object.x2 {
        grid-column: span 2 !important;
    }
    .grid_layout .form_object.x2_5,
    .grid_layout .form_object.x3 {
        grid-column: span 3 !important;
    }
    .grid_layout .form_object.x3_5,
    .grid_layout .form_object.x4 {
        grid-column: span 4 !important;
    }
    .grid_layout .form_object.x4_5,
    .grid_layout .form_object.x5 {
        grid-column: span 5 !important;
    }
    .grid_layout .form_object.x5_5,
    .grid_layout .form_object.x6,
    .grid_layout .form_object.x_full {
        grid-column: 1 / -1 !important;
    }
    /* fw50 날짜 2개 있는 datepicker는 4칸 유지 */
    .grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50) {
        grid-column: span 4 !important;
    }
}

/* 800px 이하: 6칸 → 4칸 */
@container contents (max-width: 800px) {
    .content_header_inner.grid_layout,
    .content_inner_v2.grid_layout,
    .inner_panel.grid_layout,
    .grid_layout,
    .grid_layout .content_inner_hidden {
        grid-template-columns: repeat(4, 1fr) !important;
        grid-column-gap: 10px !important;
    }

    .grid_layout .form_object {
        grid-column: span 2 !important;
    }
    .grid_layout .form_object.x0_5 {
        grid-column: span 1 !important;
    }
    .grid_layout .form_object.x1 {
        grid-column: span 1 !important;
    }
    .grid_layout .form_object.x1_5,
    .grid_layout .form_object.x2,
    .grid_layout .form_object.x2_5 {
        grid-column: span 2 !important;
    }
    .grid_layout .form_object.x3,
    .grid_layout .form_object.x3_5 {
        grid-column: span 3 !important;
    }
    .grid_layout .form_object.x4,
    .grid_layout .form_object.x4_5,
    .grid_layout .form_object.x5,
    .grid_layout .form_object.x5_5,
    .grid_layout .form_object.x6,
    .grid_layout .form_object.x_full {
        grid-column: 1 / -1 !important;
    }

    /* form_object 내에 fw50 요소가 있을 때 flex로 가로 배치 (모바일에서도 50/50 유지) */
    .form_object:has(.fw50) {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: flex-end !important;
    }
    .form_object:has(.fw50) > .fw50,
    .form_object:has(.fw50) > input.fw50,
    .form_object:has(.fw50) > select.fw50 {
        flex: 0 0 48% !important;
        width: 48% !important;
    }
    .form_object:has(.fw50) > .form_check2,
    .form_object:has(.fw50) > .label_checkbox3_v2 {
        flex: 0 0 auto !important;
    }

    /* form_object 내에 fw50 날짜가 2개 있을 때 flex로 가로 배치 */
    .content_header_inner.grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50),
    .content_inner_v2.grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50),
    .inner_panel.grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50),
    .modal_wrap.grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50),
    .grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50) {
        display: flex !important;
        flex-wrap: wrap;
        align-items: flex-end;
        padding: 0 !important;
    }
    .grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50) .form_date0_v2.fw50,
    .grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50) .form_date1_v2.fw50 {
        position: relative !important;
        bottom: auto !important;
        left: auto !important;
        right: auto !important;
        flex: 1 1 0 !important;
        width: auto !important;
        min-width: 0 !important;
    }
    .grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50) .form_date0_v2.fw50 {
        margin-right: 10px !important;
    }
    .grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50) .label_inp0_v2 {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        flex: 0 0 100% !important;
        width: 100% !important;
        order: -1;
        margin-bottom: 0 !important;
    }

    /* ========================================
	   split-row 반응형: 좌우 → 위아래 전환
	   ======================================== */
    .split-row {
        flex-direction: column !important;
        height: auto !important;
        overflow: visible !important;
    }

    /* resizable 핸들 숨김 */
    .resize-handle-h {
        display: none !important;
    }

    /* resizable 패널: 인라인 스타일 무시하고 100% */
    .split-row.resizable > [class*="flex-"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    /* 모든 flex 자식: 세로 배치시 */
    .split-row > [class*="flex-"] {
        width: 100% !important;
        height: auto !important;
        min-height: 150px !important;
        flex: 0 0 auto !important;
        overflow: visible !important;
    }

    /* inner_tab_wrap2: 최소 높이 400px (모든 경로) */
    .split-row > [class*="flex-"] .inner_tab_wrap2,
    .split-row > [class*="flex-"] > .inner_tab_wrap2,
    .split-row > [class*="flex-"] > form > .inner_tab_wrap2,
    .split-row > [class*="flex-"] form > .inner_tab_wrap2 {
        min-height: 400px !important;
        height: auto !important;
        display: block !important;
        overflow: visible !important;
    }

    /* grid_wrap: 최소 높이 400px */
    .split-row > [class*="flex-"] .inner_tab_wrap2 > .grid_wrap,
    .split-row > [class*="flex-"] > form > .inner_tab_wrap2 > .grid_wrap,
    .split-row > [class*="flex-"] form > .inner_tab_wrap2 > .grid_wrap {
        min-height: 400px !important;
        height: auto !important;
        display: block !important;
    }

    /* inner_panel: 최소 높이 400px */
    .split-row > [class*="flex-"] .inner_panel,
    .split-row > [class*="flex-"] .inner_tab_wrap2 .inner_panel,
    .split-row > [class*="flex-"] form .inner_panel {
        min-height: 400px !important;
        height: auto !important;
    }

    /* 그리드: 높이 400px 고정 */
    .split-row > [class*="flex-"] [id$="Grid"],
    .split-row > [class*="flex-"] .inner_panel [id$="Grid"],
    .split-row > [class*="flex-"] form [id$="Grid"] {
        height: 400px !important;
        min-height: 400px !important;
    }

    /* flex 자체가 그리드 컨테이너인 경우 */
    .split-row > [class*="flex-"][id$="Grid"] {
        min-height: 300px !important;
    }

}

/* 600px 이하: 4칸 → 2칸 (모바일) */
@container contents (max-width: 600px) {
    .content_header_inner.grid_layout,
    .content_inner_v2.grid_layout,
    .inner_panel.grid_layout,
    .grid_layout,
    .grid_layout .content_inner_hidden {
        grid-template-columns: repeat(2, 1fr) !important;
        grid-column-gap: 8px !important;
        grid-row-gap: 12px !important;
    }

    /* 모바일: 이미지 영역 - 전체 너비, 1행, 중앙 정렬 */
    .grid_layout .form_object_img {
        grid-column: 1 / -1 !important;
        grid-row: span 1 !important;
        max-width: 150px !important;
        margin: 0 auto !important;
    }

    /* 모바일에서는 모든 form_object가 전체 너비 */
    .grid_layout .form_object,
    .grid_layout .form_object.x0_5,
    .grid_layout .form_object.x1,
    .grid_layout .form_object.x1_5,
    .grid_layout .form_object.x2,
    .grid_layout .form_object.x2_5,
    .grid_layout .form_object.x3,
    .grid_layout .form_object.x3_5,
    .grid_layout .form_object.x4,
    .grid_layout .form_object.x4_5,
    .grid_layout .form_object.x5,
    .grid_layout .form_object.x5_5,
    .grid_layout .form_object.x6,
    .grid_layout .form_object.x_full,
    .grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50) {
        grid-column: 1 / -1 !important;
    }

    /* 모바일: fw50 요소는 48% 유지 (50/50 레이아웃 보존) */
    .grid_layout .form_object:has(.fw50) {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: flex-end !important;
    }
    .grid_layout .form_object .fw50,
    .grid_layout .form_object .form_inp0_v2.fw50,
    .grid_layout .form_object .form_inp1_v2.fw50,
    .grid_layout .form_object .form_select0_v2.fw50,
    .grid_layout .form_object .form_select1_v2.fw50,
    .grid_layout .form_object .form_pop1_v2.fw50,
    .grid_layout .form_object .form_pop4_v2.fw50 {
        width: 48% !important;
        flex: 0 0 48% !important;
    }

    /* 모바일: 두번째 라벨 위치 조정 */
    .grid_layout .form_object .label_inp2_v2 {
        position: relative !important;
        left: auto !important;
        top: auto !important;
        margin-top: 8px !important;
    }

    /* 모바일: 두번째 입력창(form_inp1_v2)도 전체 너비 */
    .grid_layout .form_object .form_inp1_v2.fw50 {
        position: relative !important;
        left: auto !important;
    }

    /* 모바일: 팝업 버튼 위치 - 전체 너비일 때는 오른쪽 끝으로 */
    .grid_layout .form_object .form_popup_btn2_v2,
    .grid_layout .form_object .form_popup_btn2_v2R {
        right: 10px !important;
    }
}

/* ============================================================================
   Layout Overrides & Integration
   - 사용자 요청에 따라 layout_custom.css에서 통합된 레이아웃 보정 스타일
   - Flex 높이 100% 보장 및 min-width/height 제약 해제
   ============================================================================ */

/* 1. 최상위 랩퍼를 Flex Column으로 변경하여 높이 100% 확보 */
.contents_wrap {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    /*max-width: 1920px !important;*/
    height: 100vh;
    /* 상단 탭바 43px 제외 */
    margin: 0 auto !important;
    padding: 10px 10px 10px !important;
    box-sizing: border-box !important;
}

/* 2. 헤더는 고정 높이(내용물만큼), 수축 방지 및 최소 크기 제한 해제 */
.contents_header {
    flex: 0 0 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin-bottom: 15px !important;
}

.contents_header_top {
    min-width: 0 !important;
}

/* 3. 컨텐츠 영역은 남은 공간 모두 차지 (Flex Grow) 및 오버플로우 방지 */
.contents_area {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    border: none !important;
    overflow: visible !important;
}

/* 전자결재 폼 - 부모 컨테이너 높이 자동 확장 */
.contents_wrap:has(.content_document),
.contents_wrap:has(.ea_bt_wrap) {
    height: auto !important;
    min-height: 100vh !important;
}

/* 전자결재 폼 1360px 제한 + 중앙정렬 */
.contents_area.content_document,
.contents_area:has(> .content.ea_bt_wrap) {
    width: 100% !important;
    max-width: 1360px !important;
    align-self: center !important;
}

/* 좌우 분할 레이아웃 override */
.contents_area.half_h_contents:has(> .grid_inner_wrap_left),
.contents_area.half_h_contents:has(> [class*="flex-"]) {
    flex-direction: row !important;
    gap: 10px;
}

/* 팝업에서 탭 구조를 포함할 때 - 전체 높이 채우기 */
body.popup-mode .contents_area:has(.grid_wrap .tab-nav-wrapper),
body.popup-mode .contents_area:has(.grid_wrap .inner_tabs) {
    height: 100% !important;
}

/* 4. 컨텐츠 영역 내부의 Form도 100% 높이 확보 */
.contents_area>form {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    height: 100% !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
}

/* 5. Form 내부의 Tab Wrap 또는 메인 컨테이너도 자연 확장 */
.contents_area>form>.inner_tab_wrap2,
.contents_area>form>.content_inner_v2 {
    flex: 0 0 auto !important;
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    min-height: 0 !important;
}

/* 팝업: .content > .inner_tab_wrap2 */
body.popup-mode .content > .inner_tab_wrap2 {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    min-height: 0 !important;
}

/* 6. Flex 내부 요소들 (split-row children) */
.split-row>.flex-auto>.inner_tab_wrap2 {
    flex: 0 0 auto !important;
    min-height: 0 !important;
    overflow: visible !important;
}

/* flex-auto 내 inner_tab_wrap2가 탭 구조를 포함할 때 - 부모 높이 채우기 */
.split-row>.flex-auto>.inner_tab_wrap2:has(.grid_wrap .tab-nav-wrapper),
.split-row>.flex-auto>.inner_tab_wrap2:has(.grid_wrap .inner_tabs) {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

.split-row>[class*="flex-"]>form {
    flex: 0 0 auto !important;
}

/* form이 탭 구조를 포함할 때 - 부모 높이 채우기 */
.split-row>[class*="flex-"]>form:has(.grid_wrap .tab-nav-wrapper),
.split-row>[class*="flex-"]>form:has(.grid_wrap .inner_tabs) {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
}

.split-row>[class*="flex-"] form>.content_inner_v2 {
    flex: 0 0 auto !important;
}

.split-row>[class*="flex-"] form>.inner_tab_wrap2 {
    flex: 0 0 auto !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* inner_tab_wrap2가 탭 구조를 포함할 때 - 부모 높이 채우기 */
.split-row>[class*="flex-"] form>.inner_tab_wrap2:has(.grid_wrap .tab-nav-wrapper),
.split-row>[class*="flex-"] form>.inner_tab_wrap2:has(.grid_wrap .inner_tabs) {
    flex: 1 !important;
}

.split-row>[class*="flex-"] form>.inner_tab_wrap2>.grid_wrap {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
}

.split-row>[class*="flex-"] form>.inner_tab_wrap2>.grid_wrap>.inner_tabs {
    flex: 0 0 auto !important;
}

.split-row>[class*="flex-"] form>.inner_tab_wrap2>.grid_wrap>.inner_panel {
    flex: 1 1 auto !important;
    min-height: 0 !important;
}

.split-row>[class*="flex-"] form>.inner_tab_wrap2>.grid_wrap>.inner_panel>[id$="Grid"] {
    height: 100% !important;
}

.split-row>.flex-auto>.inner_tab_wrap2>.grid_wrap {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

.split-row>.flex-auto>.inner_tab_wrap2>.grid_wrap>.tab-nav-wrapper {
    flex: 0 0 auto !important;
    min-height: 0 !important;
}

.split-row>.flex-auto>.inner_tab_wrap2>.grid_wrap>.inner_panel {
    flex: 1 1 auto !important;
}

/* ============================================================================
   Tab Navigation & Arrows (Direct on .inner_tabs)
   ============================================================================ */
/* .inner_tabs 자체에 화살표 기능 적용 (wrapper 불필요) */
.inner_tabs {
    position: relative;
}

/* 탭 화살표 버튼 - .inner_tabs의 직접 자식으로 */
.inner_tabs>.tab-nav-arrow {
    position: absolute;
    top: 0;
    width: 30px;
    height: 100%;
    background: #fff;
    border-bottom: 1px solid var(--grid-border-color);
    cursor: pointer;
    display: none;
    /* 기본적으로 숨김, JS에서 필요시 표시 */
    align-items: center;
    justify-content: center;
    z-index: 10;
    transition: background 0.15s ease;
}

.inner_tabs>.tab-nav-arrow:hover {
    background: #f5f5f5;
}

.inner_tabs>.tab-nav-arrow span {
    display: block;
    width: 8px;
    height: 8px;
    border-style: solid;
    border-color: #666;
    border-width: 0 1.5px 1.5px 0;
}

.inner_tabs>.tab-nav-arrow-left {
    left: 0;
    border-right: 1px solid var(--grid-border-color);
}

.inner_tabs>.tab-nav-arrow-left span {
    transform: rotate(135deg);
    margin-left: 3px;
}

.inner_tabs>.tab-nav-arrow-right {
    right: 0;
    border-left: 1px solid var(--grid-border-color);
}

.inner_tabs>.tab-nav-arrow-right span {
    transform: rotate(-45deg);
    margin-right: 3px;
}

/* 화살표가 있을 때 탭 영역에 패딩 추가 */
.inner_tabs.has-arrows {
    padding-left: 30px;
    padding-right: 30px;
}

.inner_tabs.has-arrows>.tab-nav-arrow {
    display: flex;
}


/* ============================================================================
   Grid Header & Toolbar (Integrated from layout_custom.css)
   ============================================================================ */
.grid-header {
    display: flex !important;
    align-items: center;
    flex: 0 0 auto !important;
    height: 44px;
    padding: 0;
    border: 1px solid var(--grid-border-color);
    background-color: #f8f9fa;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

/* Grid Header 다음에 Grid Layout이 오는 경우 - split-row 내부 flex-* 컨테이너에서만 적용 */
.split-row [class^="flex-"] > .grid-header + .grid_layout {
    background-color: #fff;
    border-left: 1px solid var(--grid-border-color);
    border-right: 1px solid var(--grid-border-color);
    border-bottom: 1px solid var(--grid-border-color);
    margin-bottom: 10px;
}

/* 마지막 요소일 때 마진 제거 */
.split-row [class^="flex-"] > .grid-header + .grid_layout:last-child {
    margin-bottom: 0;
}

/* Grid Header Form - 탭 내 검색/필터 폼 영역 */
.grid-header-form {
    flex: 0 0 auto !important;
    padding: 20px;
    background-color: #fff;
    border: 1px solid var(--grid-border-color);
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    container-type: inline-size;
    container-name: form-wrapper;
}

/* Grid Form - border 없는 버전 */
.grid-form {
    flex: 0 0 auto !important;
    padding: 20px;
    background-color: #fff;
    container-type: inline-size;
    container-name: form-wrapper;
}

/* form-wrapper 기반 반응형 (grid-header-form, grid-form 공통) */
@container form-wrapper (max-width: 700px) {
    form.grid_layout {
        grid-template-columns: repeat(8, 1fr) !important;
    }
    form.grid_layout > .form_object {
        grid-column: span 2 !important;
    }
    form.grid_layout > .form_object.x1_5 {
        grid-column: span 2 !important;
    }
    form.grid_layout > .form_object.x2 {
        grid-column: span 4 !important;
    }
    form.grid_layout > .form_object.x_full {
        grid-column: 1 / -1 !important;
    }
}

@container form-wrapper (max-width: 500px) {
    form.grid_layout {
        grid-template-columns: repeat(4, 1fr) !important;
    }
    form.grid_layout > .form_object,
    form.grid_layout > .form_object.x1_5 {
        grid-column: span 2 !important;
    }
    form.grid_layout > .form_object.x2 {
        grid-column: span 4 !important;
    }
    form.grid_layout > .form_object.x_full {
        grid-column: 1 / -1 !important;
    }
}

.grid-header .grid-title {
    flex: 0 10 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 13px;
    font-weight: 600;
    line-height: 25px;
    color: #333;
    white-space: nowrap;
    margin-left: 10px;
}

.grid-header .grid-toolbar {
    display: flex;
    gap: 4px;
    align-items: center;
    margin-left: auto;
    margin-right: 10px !important;
}

.grid-header .grid-toolbar .btn_comm,
.grid-header .grid-toolbar button {
    height: 30px;
    line-height: 30px;
    padding: 0 12px;
    font-size: 12px;
}

.grid-header .grid-toolbar .grid-label {
    flex: 0 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 12px;
    font-weight: 500;
    line-height: 25px;
    color: #555;
    margin-left: 10px;
}

.grid-header .grid-toolbar .grid-label:first-child {
    margin-left: 0;
}

.grid-header .grid-toolbar .grid-input {
    height: 30px;
    line-height: 28px;
    padding: 0 8px;
    font-size: 12px;
    border: 1px solid #ddd;
    border-radius: 3px;
    box-sizing: border-box;
}

.grid-header .grid-toolbar select.grid-input {
    height: 30px;
    line-height: 28px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding: 0 18px 0 8px;
    text-align: center;
    text-align-last: center;
    cursor: pointer;
    background-color: #fff;
    background-image: url(/resources/images/arrow-down.png);
    background-repeat: no-repeat;
    background-position: right 5px center;
    background-size: 8px auto;
}

.grid-header .grid-toolbar select.grid-input:hover {
    border-color: #bbb;
    background-color: #fafafa;
}

.grid-header .grid-toolbar select.grid-input:focus {
    outline: none;
    border-color: #999;
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.05);
}

/* ============================================================================
   Tab Navigation Interop (Integrated)
   ============================================================================ */
/* 탭 아래 inner_panel 내 그리드 보더 제거 */
body:not(.popup-mode) .tab-nav-wrapper~.inner_panel>div:only-of-type:not(:has(.grid-header)) .rg-grid {
    border: none !important;
}

/* inner_panel 내 split-row - 그리드 한 몸 처리 */
.inner_panel>.split-row {
    padding: 0;
}

.inner_panel>.split-row .rg-root,
.inner_panel>.split-row .rg-grid,
.inner_panel>.split-row .grid-header {
    border-radius: 0 !important;
}

.inner_panel>.split-row .grid-header {
    border-top: none !important;
}
/* ============================================================================
   평가기준관리 - 그리드 행 배경 스타일 및 버튼
   ============================================================================ */
.background_red {
    background-color: rgba(255, 100, 100, 0.15) !important;
}

.background_yellow {
    background-color: rgba(255, 235, 59, 0.15) !important;
}

.background_green {
    background-color: rgba(76, 175, 80, 0.1) !important;
}

.background_orange {
    background-color: rgba(255, 152, 0, 0.12) !important;
}

/* 역량체계관리 - 역량유형 노드 스타일 (파란색 볼드) */
.rg-treenode-type {
    color: #2980b9 !important;
    font-weight: bold !important;
}

/* 역량체계관리 - 신규 항목 배경색 (저장 전) */
.rg-row-created {
    background-color: #FFF9C4 !important;
}

/* 평가기준관리 - 미사용 데이터 정리 버튼 */
.btn_yellow {
    background-color: #FDD835 !important;
    color: #333 !important;
    border: 1px solid #FBC02D !important;
}

.btn_yellow:hover {
    background-color: #FBC02D !important;
    border: 1px solid #F9A825 !important;
}

/* 평가기준관리 - 미사용 데이터 정리 버튼 (주황색 아웃라인) */
.btn_orange_outline {
    background-color: #fff !important;
    color: #FF9800 !important;
    border: 1px solid #FF9800 !important;
}

.btn_orange_outline:hover {
    background-color: #FFF3E0 !important;
    color: #F57C00 !important;
    border: 1px solid #F57C00 !important;
}

/* wheel 이벤트 차단 방식으로 변경하여 비활성화 (2026-01-21)
.popup-parent-scroll-lock {
    overflow: hidden;
    padding-right: var(--scrollbar-width, 0px);
}
*/
/* ============================================================================
   탭 네비게이션 화살표 스타일
   - 탭이 많을 때 좌우 화살표로 스크롤
   - JS에서 .tab-nav-wrapper 클래스 추가 시 활성화
   ============================================================================ */

/* tab-nav-wrapper가 있는 grid_wrap - flex 컨테이너 */
.grid_wrap:has(.tab-nav-wrapper) {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    min-height: 0 !important;
}

/* 탭 네비게이션 래퍼 */
.tab-nav-wrapper {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
    background: #fff;
    border: 1px solid var(--tab-border-color, #E7E7E9) !important;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    display: flex !important;
    align-items: stretch;
    flex-shrink: 0 !important;
    box-sizing: border-box !important;
}

/* tab-nav-wrapper 다음 inner_panel - 나머지 공간 채우기 */
.tab-nav-wrapper ~ .inner_panel,
.tab-nav-wrapper + .inner_panel {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border-top: none !important;
}

/* tab-nav-wrapper 다음 inner_panel 내부 그리드 100% 높이 */
.tab-nav-wrapper ~ .inner_panel > [id$="Grid"],
.tab-nav-wrapper + .inner_panel > [id$="Grid"],
.tab-nav-wrapper ~ .inner_panel [id$="Grid"],
.tab-nav-wrapper + .inner_panel [id$="Grid"] {
    height: 100% !important;
}

/* tab-nav-wrapper 다음 inner_panel 내부 그리드 상단 보더 제거 */
.tab-nav-wrapper ~ .inner_panel [id$="Grid"],
.tab-nav-wrapper ~ .inner_panel .rg-grid {
    border-top: none !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

/* 탭 아래 inner_panel 내 그리드 보더 제거 - 혼자 꽉 채우는 경우 */
.tab-nav-wrapper ~ .inner_panel > div:only-of-type:not(:has(.grid-header)) .rg-grid {
    border: none !important;
}

/* 팝업 내 inner_panel + 그리드 보더 중복 제거 */
.grid_wrap:has(.tab-nav-wrapper) > .inner_panel .rg-grid {
    border-top: none !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

/* inner_panel 내 split-row - 그리드 한 몸 처리 */
.inner_panel > .split-row {
    padding: 0;
}

/* 모든 그리드 + 헤더 radius 제거 (이너탭 안쪽) */
.inner_panel > .split-row .rg-root,
.inner_panel > .split-row .rg-grid,
.inner_panel > .split-row .grid-header {
    border-radius: 0 !important;
}

/* 탭 다음 split-row 헤더 상단 border 제거 */
.inner_panel > .split-row .grid-header {
    border-top: none !important;
}


/* gap 있을 때 - 그리드 외곽 border 제거 (탭과 닿는 부분만) */
.inner_panel > .split-row[class*="gap-"] .rg-root,
.inner_panel > .split-row[class*="gap-"] .rg-grid {
    border-top: none !important;
    border-bottom: none !important;
}
.inner_panel > .split-row[class*="gap-"] > [class*="flex-"]:first-child .rg-root,
.inner_panel > .split-row[class*="gap-"] > [class*="flex-"]:first-child .rg-grid {
    border-left: none !important;
}
.inner_panel > .split-row[class*="gap-"] > [class*="flex-"]:last-child .rg-root,
.inner_panel > .split-row[class*="gap-"] > [class*="flex-"]:last-child .rg-grid {
    border-right: none !important;
}

/* gap 있을 때 - 그리드 헤더: 외곽만 제거, 하단선 유지 */
.inner_panel > .split-row[class*="gap-"] .grid-header {
    border: 1px solid var(--grid-border-color) !important;
    border-bottom: 1px solid var(--grid-border-color) !important;
    border-top: none !important;
}
.inner_panel > .split-row[class*="gap-"] > [class*="flex-"]:first-child .grid-header {
    border-left: none !important;
}
.inner_panel > .split-row[class*="gap-"] > [class*="flex-"]:last-child .grid-header {
    border-right: none !important;
}


/* inner_panel 내 grid-header + 그리드 한 몸 처리 */
.tab-nav-wrapper ~ .inner_panel:has(> .grid-header:first-child) {
    display: flex;
    flex-direction: column;
}
.tab-nav-wrapper ~ .inner_panel > .grid-header:first-child {
    border: 1px solid var(--grid-border-color) !important;
    border-top: none !important;
    border-radius: 0 !important;
    flex-shrink: 0;
}
.tab-nav-wrapper ~ .inner_panel > .grid-header:first-child + div {
    flex: 1;
    min-height: 0;
}
.tab-nav-wrapper ~ .inner_panel > .grid-header:first-child + div .rg-grid {
    border-top: none !important;
    border-radius: 0 !important;
    height: 100% !important;
}

/* tab-nav-wrapper 안 inner_panel 내 grid-header + 그리드 한 몸 처리 */
.tab-nav-wrapper .inner_panel:not(.grid_layout):has(> .grid-header:first-child) {
    display: flex;
    flex-direction: column;
}
.tab-nav-wrapper .inner_panel:not(.grid_layout) > .grid-header:first-child {
    border: 1px solid var(--grid-border-color) !important;
    border-top: none !important;
    border-radius: 0 !important;
}

/* 탭 내부 inner_panel은 border-radius 제거 */
.inner_tab_wrap2 > .inner_panel,
.inner_tab_wrap3 > .inner_panel,
.ui-tabs-panel.inner_panel {
    border-radius: 0 !important;
}

/* 탭 내 grid_wrap 안의 inner_panel 내부 grid-header, rg-grid, rg-root는 외곽 border 제거 (gap이나 resizable이 없을 때만) */
#inner_tab_wrap > .grid_wrap > .inner_panel:not(:has([class*="gap-"])):not(:has(.resizable)) .grid-header {
    border-left: none !important;
    border-right: none !important;
    border-top: none !important;
    border-radius: 0 !important;
}
#inner_tab_wrap > .grid_wrap > .inner_panel:not(:has([class*="gap-"])):not(:has(.resizable)) .rg-grid,
#inner_tab_wrap > .grid_wrap > .inner_panel:not(:has([class*="gap-"])):not(:has(.resizable)) .rg-root {
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
}

/* 그리드가 연속으로 쌓일 때 위쪽 그리드 바닥에 border */
#inner_tab_wrap > .grid_wrap > .inner_panel > .grid_wrap:has(+ .grid_wrap) .rg-grid,
#inner_tab_wrap > .grid_wrap > .inner_panel > .grid_wrap:has(+ .grid_wrap) .rg-root {
    border-bottom: 1px solid var(--grid-border-color) !important;
}

/* inner_panel 내 grid-header-form + 그리드 한 몸 처리 */
.inner_panel:has(> .grid-header-form:first-child) {
    display: flex;
    flex-direction: column;
}
.inner_panel > .grid-header-form:first-child {
    border: none !important;
    border-bottom: 1px solid var(--grid-border-color) !important;
    border-radius: 0 !important;
    flex-shrink: 0;
}
.inner_panel > .grid-header-form:first-child + div {
    flex: 1;
    min-height: 0;
}
.inner_panel > .grid-header-form:first-child + div .rg-grid {
    border: none !important;
    border-radius: 0 !important;
    height: 100% !important;
}

/* inner_panel 내 grid-form 처리 (border 없는 버전) */
.grid-form {
    flex-shrink: 0;
}
/* grid-form 앞에 그리드/grid-header가 있으면 상단 보더 */
.w100:has(.grid-header) + .grid-form,
.w100:has(.rg-grid) + .grid-form,
.w100:has(.rg-root) + .grid-form,
div:has(> .grid-header) + .grid-form,
div:has(> .rg-grid) + .grid-form,
div:has(> .rg-root) + .grid-form {
    border-top: 1px solid var(--grid-border-color) !important;
}
/* grid-form 뒤에 그리드/grid-header가 있으면 하단 보더 */
.grid-form + .w100:has(.grid-header),
.grid-form + .w100:has(.rg-grid),
.grid-form + .w100:has(.rg-root),
.grid-form + div:has(> .grid-header),
.grid-form + div:has(> .rg-grid),
.grid-form + div:has(> .rg-root) {
    border-top: 1px solid var(--grid-border-color) !important;
}
.grid-form:has(+ .w100 .grid-header),
.grid-form:has(+ .w100 .rg-grid),
.grid-form:has(+ .w100 .rg-root),
.grid-form:has(+ div .grid-header),
.grid-form:has(+ div .rg-grid),
.grid-form:has(+ div .rg-root) {
    border-bottom: 1px solid var(--grid-border-color) !important;
}

/* grid-header 앞에 그리드가 있으면 grid-header 상단 보더 */
.w100:has(.rg-grid) + .w100 > .grid-header,
.w100:has(.rg-root) + .w100 > .grid-header,
div:has(> .rg-grid) + div > .grid-header,
div:has(> .rg-root) + div > .grid-header {
    border-top: 1px solid var(--grid-border-color) !important;
}

/* 탭 내 모든 grid-header 상단 radius 제거 */
.tab-nav-wrapper ~ .inner_panel .grid-header,
.tab-nav-wrapper .inner_panel .grid-header,
.ui-tabs-panel .grid-header,
#inner_tab_wrap .grid-header {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

/* ============================================================================
   탭 내 다중 grid-header + 그리드 보더 처리 (한 몸 연결형)
   - gap이 없을 때만 적용
   - 첫 번째 grid-header: 상단 보더 없음 (탭과 연결)
   - 그리드 다음 grid-header: 상단 보더 1px (구분선)
   - grid-header 다음 그리드: 상단 보더 없음 (헤더와 연결)
   ============================================================================ */

/* 탭 패널 내 첫 번째 grid-header - 상단 보더 없음 (gap 없을 때) */
.ui-tabs-panel:not([class*="gap-"]) > .grid-header:first-child,
.tab-nav-wrapper ~ .inner_panel:not([class*="gap-"]) > .grid-header:first-child,
#inner_tab_wrap > .inner_panel:not([class*="gap-"]) > .grid-header:first-child {
    border-top: none !important;
}

/* 그리드 다음에 오는 grid-header - 상단 보더로 구분 (gap 없을 때) */
.ui-tabs-panel:not([class*="gap-"]) > div[id$="Grid"] + .grid-header,
.ui-tabs-panel:not([class*="gap-"]) > .rg-root + .grid-header,
.tab-nav-wrapper ~ .inner_panel:not([class*="gap-"]) > div[id$="Grid"] + .grid-header,
.tab-nav-wrapper ~ .inner_panel:not([class*="gap-"]) > .rg-root + .grid-header,
#inner_tab_wrap > .inner_panel:not([class*="gap-"]) > div[id$="Grid"] + .grid-header,
#inner_tab_wrap > .inner_panel:not([class*="gap-"]) > .rg-root + .grid-header {
    border-top: 1px solid var(--grid-border-color, #E7E7E9) !important;
    margin-top: 0 !important;
}

/* grid-header 다음에 오는 그리드 - 상단 보더 없음 (gap 없을 때) */
.ui-tabs-panel:not([class*="gap-"]) > .grid-header + div[id$="Grid"],
.ui-tabs-panel:not([class*="gap-"]) > .grid-header + .rg-root,
.tab-nav-wrapper ~ .inner_panel:not([class*="gap-"]) > .grid-header + div[id$="Grid"],
.tab-nav-wrapper ~ .inner_panel:not([class*="gap-"]) > .grid-header + .rg-root,
#inner_tab_wrap > .inner_panel:not([class*="gap-"]) > .grid-header + div[id$="Grid"],
#inner_tab_wrap > .inner_panel:not([class*="gap-"]) > .grid-header + .rg-root {
    border-top: none !important;
}

/* grid-header 다음 그리드의 내부 rg-grid도 상단 보더 없음 (gap 없을 때) */
.ui-tabs-panel:not([class*="gap-"]) > .grid-header + div[id$="Grid"] .rg-grid,
.tab-nav-wrapper ~ .inner_panel:not([class*="gap-"]) > .grid-header + div[id$="Grid"] .rg-grid,
#inner_tab_wrap > .inner_panel:not([class*="gap-"]) > .grid-header + div[id$="Grid"] .rg-grid {
    border-top: none !important;
}

/* 모든 그리드 radius 제거 (탭 내에서 한 몸 처리, gap 없을 때) */
.ui-tabs-panel:not([class*="gap-"]) > div[id$="Grid"],
.ui-tabs-panel:not([class*="gap-"]) > div[id$="Grid"] .rg-grid,
.tab-nav-wrapper ~ .inner_panel:not([class*="gap-"]) > div[id$="Grid"],
.tab-nav-wrapper ~ .inner_panel:not([class*="gap-"]) > div[id$="Grid"] .rg-grid,
#inner_tab_wrap > .inner_panel:not([class*="gap-"]) > div[id$="Grid"],
#inner_tab_wrap > .inner_panel:not([class*="gap-"]) > div[id$="Grid"] .rg-grid {
    border-radius: 0 !important;
}

/* 마지막 그리드만 하단 radius 적용 (gap 없을 때) */
.ui-tabs-panel:not([class*="gap-"]) > div[id$="Grid"]:last-child,
.ui-tabs-panel:not([class*="gap-"]) > div[id$="Grid"]:last-child .rg-grid,
.tab-nav-wrapper ~ .inner_panel:not([class*="gap-"]) > div[id$="Grid"]:last-child,
.tab-nav-wrapper ~ .inner_panel:not([class*="gap-"]) > div[id$="Grid"]:last-child .rg-grid,
#inner_tab_wrap > .inner_panel:not([class*="gap-"]) > div[id$="Grid"]:last-child,
#inner_tab_wrap > .inner_panel:not([class*="gap-"]) > div[id$="Grid"]:last-child .rg-grid {
    border-bottom-left-radius: 4px !important;
    border-bottom-right-radius: 4px !important;
}
.tab-nav-wrapper .inner_panel:not(.grid_layout) > .grid-header:first-child + div {
    flex: 1;
    min-height: 0;
}
.tab-nav-wrapper .inner_panel:not(.grid_layout) > .grid-header:first-child + div .rg-grid {
    border-top: none !important;
    border-radius: 0 !important;
    height: 100% !important;
}

/* ============================================================================
   grid-header + grid_inner_wrap 보더 처리
   - grid-header 하단 보더로 구분선 역할
   - grid_inner_wrap 내 그리드는 상단 보더 없음
   ============================================================================ */

/* grid-header 다음 grid_inner_wrap - 헤더에 하단 보더 */
.grid-header + .grid_inner_wrap,
.grid-header + .grid_inner_wrap0,
.grid-header + [class*="grid_inner_wrap"] {
    /* grid_inner_wrap은 그대로 */
}

.grid-header:has(+ .grid_inner_wrap),
.grid-header:has(+ .grid_inner_wrap0),
.grid-header:has(+ [class*="grid_inner_wrap"]) {
    border-bottom: 1px solid var(--grid-border-color, #E7E7E9) !important;
}

/* grid_inner_wrap 내 그리드 - 상단 보더 없음 (헤더와 연결) */
.grid-header + .grid_inner_wrap .rg-grid,
.grid-header + .grid_inner_wrap0 .rg-grid,
.grid-header + [class*="grid_inner_wrap"] .rg-grid,
.grid-header + .grid_inner_wrap [id$="Grid"],
.grid-header + .grid_inner_wrap0 [id$="Grid"],
.grid-header + [class*="grid_inner_wrap"] [id$="Grid"] {
    border-top: none !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

/* 탭 내에서도 동일 적용 */
.tab-nav-wrapper ~ .inner_panel .grid-header:has(+ .grid_inner_wrap),
.tab-nav-wrapper ~ .inner_panel .grid-header:has(+ .grid_inner_wrap0),
.tab-nav-wrapper ~ .inner_panel .grid-header:has(+ [class*="grid_inner_wrap"]),
#inner_tab_wrap .grid-header:has(+ .grid_inner_wrap),
#inner_tab_wrap .grid-header:has(+ .grid_inner_wrap0),
#inner_tab_wrap .grid-header:has(+ [class*="grid_inner_wrap"]) {
    border-bottom: 1px solid var(--grid-border-color, #E7E7E9) !important;
}

/* ============================================================================
   탭 내 grid_wrap 이중 보더 방지
   - inner_panel이 이미 보더를 가지고 있으므로 내부 요소 외곽 보더 제거
   - grid_wrap이 mt-* 등 마진이 있으면 독립 보더 유지
   ============================================================================ */

/* 탭 내 grid_wrap (마진 없음) - 외곽 보더 제거 */
.tab-nav-wrapper ~ .inner_panel > .grid_wrap:not([class*="mt-"]):not([class*="mb-"]) .grid-header,
.ui-tabs-panel > .grid_wrap:not([class*="mt-"]):not([class*="mb-"]) .grid-header,
#inner_tab_wrap .inner_panel > .grid_wrap:not([class*="mt-"]):not([class*="mb-"]) .grid-header {
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-radius: 0 !important;
}

.tab-nav-wrapper ~ .inner_panel > .grid_wrap:not([class*="mt-"]):not([class*="mb-"]) .rg-grid,
.ui-tabs-panel > .grid_wrap:not([class*="mt-"]):not([class*="mb-"]) .rg-grid,
#inner_tab_wrap .inner_panel > .grid_wrap:not([class*="mt-"]):not([class*="mb-"]) .rg-grid {
    border-left: none !important;
    border-right: none !important;
    border-radius: 0 !important;
}

/* 탭 내 마지막 grid_wrap - 하단 보더도 제거 */
.tab-nav-wrapper ~ .inner_panel > .grid_wrap:not([class*="mt-"]):not([class*="mb-"]):last-child .rg-grid,
.ui-tabs-panel > .grid_wrap:not([class*="mt-"]):not([class*="mb-"]):last-child .rg-grid,
#inner_tab_wrap .inner_panel > .grid_wrap:not([class*="mt-"]):not([class*="mb-"]):last-child .rg-grid {
    border-bottom: none !important;
}

/* 탭 내 grid_wrap이 mt-* 마진 있을 때 - 독립 보더 유지 (분리된 영역) */
.tab-nav-wrapper ~ .inner_panel .grid_wrap[class*="mt-"] .grid-header,
.ui-tabs-panel .grid_wrap[class*="mt-"] .grid-header,
#inner_tab_wrap .inner_panel .grid_wrap[class*="mt-"] .grid-header {
    border: 1px solid var(--grid-border-color, #E7E7E9) !important;
    border-top-left-radius: 4px !important;
    border-top-right-radius: 4px !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

.tab-nav-wrapper ~ .inner_panel .grid_wrap[class*="mt-"] .rg-grid,
.ui-tabs-panel .grid_wrap[class*="mt-"] .rg-grid,
#inner_tab_wrap .inner_panel .grid_wrap[class*="mt-"] .rg-grid {
    border: 1px solid var(--grid-border-color, #E7E7E9) !important;
    border-top: none !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    border-bottom-left-radius: 4px !important;
    border-bottom-right-radius: 4px !important;
}

/* inner_panel 내 에디터 보더 제거 */
.inner_panel [id^="dext_frame_holder"],
.inner_panel [id^="dext_frame_holder"] iframe,
.inner_panel [id*="Editor"],
.inner_panel [id*="Editor"] iframe,
.inner_panel .form_object[style*="height: 100%"],
.inner_panel .form_object[style*="height: 100%"] > div,
.inner_panel .form_object[style*="height: 100%"] iframe {
    border: none !important;
    outline: none !important;
}

/* 탭 스크롤 영역 */
.tab-nav-wrapper .inner_tabs,
.tab-nav-wrapper .inner_tabs.ui-tabs-nav,
.tab-nav-wrapper .inner_tabs.none_p_b {
    flex: 1 1 auto;
    min-width: 0;
    height: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
    line-height: 56px;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-behavior: smooth;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    padding: 0 32px !important; /* 화살표 공간 확보 */
    border: none !important;
    border-width: 0 !important;
    border-style: none !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: none !important;
    background: transparent !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}
/* 탭 링크 패딩 */
.tab-nav-wrapper .inner_tabs .inner_tab .tab_link {
    padding: 0 14px;
}

/* 탭 화살표 버튼 - wrapper 내 absolute 배치 */
.tab-nav-wrapper > .tab-nav-arrow {
    position: absolute;
    top: 0;
    flex: 0 0 28px;
    width: 28px;
    height: 56px;
    background: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    transition: background 0.15s ease, opacity 0.15s ease;
    user-select: none;
}

.tab-nav-arrow:hover {
    background: #f5f5f5;
}

/* 스크롤 끝에 도달했을 때 숨김 (JS에서 추가) */
.tab-nav-arrow.at-end {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

/* 화살표 아이콘 */
.tab-nav-arrow span {
    display: block;
    width: 6px;
    height: 6px;
    border-style: solid;
    border-color: #999;
    border-width: 0 1.5px 1.5px 0;
    transition: border-color 0.15s ease;
}

.tab-nav-arrow:hover span {
    border-color: #333;
}

/* 좌측 화살표 */
.tab-nav-wrapper > .tab-nav-arrow-left {
    left: 0;
    border-right: 1px solid var(--tab-border-color, #E7E7E9) !important;
    border-top-left-radius: 4px;
}

.tab-nav-arrow-left span {
    transform: rotate(135deg);
    margin-left: 2px;
}

/* 우측 화살표 */
.tab-nav-wrapper > .tab-nav-arrow-right {
    right: 0;
    border-left: 1px solid var(--tab-border-color, #E7E7E9) !important;
    border-top-right-radius: 4px;
}

.tab-nav-arrow-right span {
    transform: rotate(-45deg);
    margin-right: 2px;
}


/* ============================================================================
   inner_panel with grid-header - 그리드 높이 100% 확보
   ============================================================================ */
/* inner_panel 내부에 grid-header가 직접 있는 경우 flex container로 */
/* tab-nav-wrapper 밑 inner_panel은 !important 없이 */
.tab-nav-wrapper ~ .inner_panel:has(> .grid-header) {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.tab-nav-wrapper ~ .inner_panel > .grid-header {
    flex: 0 0 auto;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

.tab-nav-wrapper ~ .inner_panel > .grid-header + div,
.tab-nav-wrapper ~ .inner_panel > .grid-header + [id$="Grid"] {
    flex: 1 1 auto;
    min-height: 0;
    height: 100%;
}

/* 일반 inner_panel (탭 외부) */
.inner_panel:not(.ui-tabs-panel):has(> .grid-header) {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

.inner_panel:not(.ui-tabs-panel) > .grid-header {
    flex: 0 0 auto !important;
}

.inner_panel:not(.ui-tabs-panel) > .grid-header + div,
.inner_panel:not(.ui-tabs-panel) > .grid-header + [id$="Grid"] {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: 100% !important;
}

/* 그리드 자체도 100% */
.inner_panel > div[id$="Grid"],
.inner_panel > [id$="Grid"] {
    height: 100% !important;
}

.inner_panel > div[id$="Grid"] .rg-grid,
.inner_panel > [id$="Grid"] .rg-grid {
    height: 100% !important;
}

/* ============================================================================
   inner_tabs + inner_panel 보더 통합 처리
   ============================================================================ */
/* none_p_b 클래스가 있는 탭은 하단 보더 제거하고 radius 추가 */
.inner_tabs.none_p_b {
    border: 1px solid var(--grid-border-color) !important;
    border-bottom: none !important;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

/* 탭 바로 다음 inner_panel은 상단 보더 제거하고 radius 제거 */
.inner_tabs.none_p_b + .inner_panel {
    border-top: none !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

/* inner_panel.none_p - 패딩 제거 */
.inner_panel.none_p {
    padding: 0 !important;
}

/* inner_panel 안에 grid-header 여러 개 있고, style에 height 없고, 활성 탭일 때만 균등 분배 */
.inner_panel:not([style*="height"]):not([aria-hidden="true"]):has(.grid-header ~ .grid-header) {
    display: flex !important;
    flex-direction: column !important;
}

.inner_panel:not([style*="height"]):not([aria-hidden="true"]):has(.grid-header ~ .grid-header) > .grid-header {
    flex-shrink: 0;
}

.inner_panel:not([style*="height"]):not([aria-hidden="true"]):has(.grid-header ~ .grid-header) > [id$="Grid"] {
    flex: 1 1 auto;
}

/* 탭 + 패널 내부 그리드도 상단 보더 및 radius 제거 */
.inner_tabs + .inner_panel > [id$="Grid"],
.inner_tabs + .inner_panel > div > [id$="Grid"] {
    border-top: none !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

.inner_tabs + .inner_panel .rg-grid {
    border-top: none !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}


/* ============================================================================
   그리드 높이 강제 적용 - RealGrid 인라인 스타일 덮어쓰기
   ============================================================================ */
/* 활성 패널 내 모든 그리드 (직접 자식이 아니어도) */
.inner_panel.on [id$="Grid"],
.inner_panel[aria-hidden="false"] [id$="Grid"] {
    height: 100% !important;
    min-height: 0 !important;
}

/* grid_wrap 내 그리드 */
.grid_wrap [id$="Grid"] {
    height: 100% !important;
}

/* RealGrid 컨테이너 강제 높이 */
.inner_panel.on .rg-grid,
.inner_panel[aria-hidden="false"] .rg-grid,
.grid_wrap .rg-grid {
    height: 100% !important;
}

/* ============================================================================
   반응형 그리드 시스템 - 미디어쿼리
   ============================================================================ */

/*
 * 기본 12열 그리드 → 화면 크기에 따라 열 수 조절
 * - 1600px+: 12열 (기본)
 * - 1400px 이하: 10열
 * - 1200px 이하: 8열
 * - 992px 이하: 6열
 * - 768px 이하: 4열
 * - 576px 이하: 2열
 */

/* 명시적 그리드 칸 수 고정 (모든 화면 크기에서 적용) */
.grid_layout.grid_6,
.ea_header_edit_form.grid_6,
form.grid_6:has(> .form_object),
.content_header_inner.grid_6:has(> .form_object) {
    grid-template-columns: repeat(6, 1fr) !important;
}

.grid_layout.grid_8,
.ea_header_edit_form.grid_8,
form.grid_8:has(> .form_object),
.content_header_inner.grid_8:has(> .form_object) {
    grid-template-columns: repeat(8, 1fr) !important;
}

.grid_layout.grid_10,
.ea_header_edit_form.grid_10,
form.grid_10:has(> .form_object),
.content_header_inner.grid_10:has(> .form_object) {
    grid-template-columns: repeat(10, 1fr) !important;
}

.grid_layout.grid_12,
.ea_header_edit_form.grid_12,
form.grid_12:has(> .form_object),
.content_header_inner.grid_12:has(> .form_object) {
    grid-template-columns: repeat(12, 1fr) !important;
}

/* 1280px 이하: 10열 (grid_* 클래스가 없는 경우만) */
@container contents (max-width: 1280px) {
    .grid_layout:not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    .ea_header_edit_form:not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    form:has(> .form_object):not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    .content_header_inner:has(> .form_object):not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12) {
        grid-template-columns: repeat(10, 1fr);
    }

    /* x6 이상은 전체 너비로 */
    .content_header_inner.grid_layout .form_object.x6,
    .content_inner_v2.grid_layout .form_object.x6,
    .inner_panel.grid_layout .form_object.x6,
    .grid_layout > .form_object.x6,
    .grid_layout > .x6,
    form:has(> .form_object) > .form_object.ea_form.x6,
    .content_header_inner:has(> .form_object) > .form_object.x6 {
        grid-column: 1 / -1 !important;
    }
}

/* 1024px 이하: 8열 (grid_* 클래스가 없는 경우만) */
@container contents (max-width: 1024px) {
    .grid_layout:not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    .ea_header_edit_form:not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    form:has(> .form_object):not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    .content_header_inner:has(> .form_object):not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12) {
        grid-template-columns: repeat(8, 1fr);
    }

    /* 기본 form_object (span 2) 유지 → 4개 배치 */

    /* x3 (span 6) → span 4로 조절 (2개 배치) */
    .content_header_inner.grid_layout .form_object.x3,
    .content_inner_v2.grid_layout .form_object.x3,
    .inner_panel.grid_layout .form_object.x3,
    form:has(> .form_object) > .form_object.ea_form.x3,
    .content_header_inner:has(> .form_object) > .form_object.x3,
    .grid_layout > .form_object.x3 {
        grid-column: span 4 !important;
    }

    /* x4 이상은 전체 너비로 */
    .content_header_inner.grid_layout .form_object.x4,
    .content_inner_v2.grid_layout .form_object.x4,
    .inner_panel.grid_layout .form_object.x4,
    form:has(> .form_object) > .form_object.ea_form.x4,
    .content_header_inner:has(> .form_object) > .form_object.x4,
    .grid_layout > .form_object.x4,
    .grid_layout > .x4 {
        grid-column: 1 / -1 !important;
    }
}


/* 992px 이하: 6열 (grid_* 클래스가 없는 경우만) */
@container contents (max-width: 992px) {
    .grid_layout:not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    .ea_header_edit_form:not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    form:has(> .form_object):not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    .content_header_inner:has(> .form_object):not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12) {
        grid-template-columns: repeat(6, 1fr);
    }

    /* 기본 form_object (span 2) 유지 → 3개 배치 */

    /* x2 (span 4) → span 3으로 조절 (2개 배치) */
    .content_header_inner.grid_layout .form_object.ea_form_double,
    .content_inner_v2.grid_layout .form_object.ea_form_double,
    .inner_panel.grid_layout .form_object.ea_form_double,
    .grid_layout > .form_object.ea_form_double,
    form:has(> .form_object) > .form_object.ea_form.x2,
    .content_header_inner:has(> .form_object) > .form_object.x2,
    .content_header_inner.grid_layout .form_object.x2,
    .content_inner_v2.grid_layout .form_object.x2,
    .inner_panel.grid_layout .form_object.x2,
    .grid_layout > .form_object.x2 {
        grid-column: span 3 !important;
    }

    /* x3 이상은 전체 너비로 */
    .content_header_inner.grid_layout .form_object.x3,
    .content_inner_v2.grid_layout .form_object.x3,
    .inner_panel.grid_layout .form_object.x3,
    form:has(> .form_object) > .form_object.ea_form.x3,
    .content_header_inner:has(> .form_object) > .form_object.x3,
    .grid_layout > .form_object.x3,
    .grid_layout > .x3 {
        grid-column: 1 / -1 !important;
    }
}

/* 768px 이하: 4열 (grid_* 클래스가 없는 경우만) */
@container contents (max-width: 768px) {
    .grid_layout:not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    .ea_header_edit_form:not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    form:has(> .form_object):not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    .content_header_inner:has(> .form_object):not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12) {
        grid-template-columns: repeat(4, 1fr);
    }

    /* 기본 form_object (span 2) 유지 → 2개 배치 */

    /* x2 이상은 전체 너비로 */
    .content_header_inner.grid_layout .form_object.ea_form_double,
    .content_inner_v2.grid_layout .form_object.ea_form_double,
    .inner_panel.grid_layout .form_object.ea_form_double,
    .grid_layout > .form_object.ea_form_double,
    form:has(> .form_object) > .form_object.ea_form.x2,
    .content_header_inner:has(> .form_object) > .form_object.x2,
    .content_header_inner.grid_layout .form_object.x2,
    .content_inner_v2.grid_layout .form_object.x2,
    .inner_panel.grid_layout .form_object.x2,
    .grid_layout > .form_object.x2,
    .grid_layout > .x2 {
        grid-column: 1 / -1 !important;
    }

    /* gap 축소 */
    .grid_layout,
    .ea_header_edit_form,
    form:has(> .form_object),
    .content_header_inner:has(> .form_object) {
        grid-column-gap: 10px;
        grid-row-gap: 12px;
    }
}

/* 576px 이하: 2열 (모바일, grid_* 클래스가 없는 경우만) */
@container contents (max-width: 576px) {
    .grid_layout:not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    .ea_header_edit_form:not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    form:has(> .form_object):not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12),
    .content_header_inner:has(> .form_object):not(.grid_6):not(.grid_8):not(.grid_10):not(.grid_12) {
        grid-template-columns: repeat(2, 1fr);
        grid-column-gap: 8px;
        grid-row-gap: 10px;
    }

    /* 모든 form_object 전체 너비 */
    .content_header_inner.grid_layout .form_object,
    .content_inner_v2.grid_layout .form_object,
    .inner_panel.grid_layout .form_object,
    form:has(> .form_object) > .form_object,
    .content_header_inner:has(> .form_object) > .form_object,
    .grid_layout > .form_object {
        grid-column: 1 / -1 !important;
    }

    /* x0_5만 반너비 유지 */
    .content_header_inner.grid_layout .form_object.x0_5,
    .content_inner_v2.grid_layout .form_object.x0_5,
    .inner_panel.grid_layout .form_object.x0_5,
    form:has(> .form_object) > .form_object.ea_form.x0_5,
    .content_header_inner:has(> .form_object) > .form_object.x0_5,
    .grid_layout > .form_object.x0_5 {
        grid-column: span 1 !important;
    }
}

/* ============================================================================
   콘텐츠 영역 반응형 조절
   ============================================================================ */

/* 1200px 이하: 패딩 축소 */
@container contents (max-width: 1200px) {
    .contents_wrap {
        padding: 12px !important;
    }
}

/* 992px 이하: 패딩 더 축소 */
@container contents (max-width: 992px) {
    .contents_wrap {
        padding: 10px !important;
    }

    /* 탭 폰트 사이즈 축소 */
    .inner_tabs li a,
    .tab-nav-wrapper .inner_tabs li a {
        font-size: 12px;
        padding: 0 12px;
    }
}

/* ============================================================================
   대시보드 반응형 그리드 시스템
   ============================================================================ */

/* 대시보드 카드 그리드 레이아웃 */
.dash_board_wrap .card_wrap {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
    padding: 20px;
    overflow-y: auto;
}

.dash_board_wrap .card_wrap::after {
    display: none;
}

/* card_section을 그리드 아이템으로 */
.dash_board_wrap .card_wrap .card_section {
    display: contents;
    float: none;
    margin: 0;
}

.dash_board_wrap .card_wrap .card_section::after {
    display: none;
}

/* 카드 기본 스타일 조정 */
.dash_board_wrap .card_wrap .card {
    float: none;
    margin: 0;
    width: 100% !important;
    min-width: 0;
    height: auto;
    min-height: 245px;
}

/* 카드 너비 클래스 - grid-column span으로 변환 */
.dash_board_wrap .card_wrap .card_section .card.w1,
.dash_board_wrap .card_wrap .card.w1 {
    grid-column: span 1;
}

.dash_board_wrap .card_wrap .card_section .card.w2,
.dash_board_wrap .card_wrap .card.w2 {
    grid-column: span 2;
}

.dash_board_wrap .card_wrap .card_section .card.w3,
.dash_board_wrap .card_wrap .card.w3 {
    grid-column: span 3;
}

.dash_board_wrap .card_wrap .card_section .card.w4,
.dash_board_wrap .card_wrap .card_section .card.w5,
.dash_board_wrap .card_wrap .card.w4,
.dash_board_wrap .card_wrap .card.w5 {
    grid-column: span 4;
}

/* 카드 높이 클래스 유지 */
.dash_board_wrap .card_wrap .card.h1 { min-height: 245px; }
.dash_board_wrap .card_wrap .card.h2 { min-height: 500px; }
.dash_board_wrap .card_wrap .card.h3 { min-height: 570px; }
.dash_board_wrap .card_wrap .card.h4 { min-height: 830px; }

/* 1400px 이하: 3열 */
@container contents (max-width: 1400px) {
    .dash_board_wrap .card_wrap {
        grid-template-columns: repeat(3, 1fr);
    }

    .dash_board_wrap .card_wrap .card_section .card.w3,
    .dash_board_wrap .card_wrap .card.w3,
    .dash_board_wrap .card_wrap .card_section .card.w4,
    .dash_board_wrap .card_wrap .card_section .card.w5,
    .dash_board_wrap .card_wrap .card.w4,
    .dash_board_wrap .card_wrap .card.w5 {
        grid-column: span 3;
    }

    .dash_board_wrap .card_wrap .card_section .card.w2,
    .dash_board_wrap .card_wrap .card.w2 {
        grid-column: span 2;
    }
}

/* 1000px 이하: 2열 */
@container contents (max-width: 900px) {
    .dash_board_wrap .card_wrap {
        grid-template-columns: repeat(2, 1fr);
        padding: 15px;
    }

    .dash_board_wrap .card_wrap .card_section .card.w2,
    .dash_board_wrap .card_wrap .card_section .card.w3,
    .dash_board_wrap .card_wrap .card_section .card.w4,
    .dash_board_wrap .card_wrap .card_section .card.w5,
    .dash_board_wrap .card_wrap .card.w2,
    .dash_board_wrap .card_wrap .card.w3,
    .dash_board_wrap .card_wrap .card.w4,
    .dash_board_wrap .card_wrap .card.w5 {
        grid-column: span 2;
    }

    .dash_board_wrap .card_wrap .card_section .card.w1,
    .dash_board_wrap .card_wrap .card.w1 {
        grid-column: span 1;
    }
}

/* 700px 이하: 1열 */
@container contents (max-width: 700px) {
    .dash_board_wrap .card_wrap {
        grid-template-columns: 1fr;
        padding: 10px;
        gap: 10px;
    }

    .dash_board_wrap .card_wrap .card,
    .dash_board_wrap .card_wrap .card_section .card {
        grid-column: span 1 !important;
    }

    /* 모바일에서 높이 축소 */
    .dash_board_wrap .card_wrap .card.h2 { min-height: 400px; }
    .dash_board_wrap .card_wrap .card.h3 { min-height: 450px; }
    .dash_board_wrap .card_wrap .card.h4 { min-height: 600px; }
}

/* ============================================================================
   분할 레이아웃 유틸리티 클래스 (layout_v2에서 이동)
   - 좌우 그리드 분할에 사용
   - 사용법: <div class="split-row"><div class="flex-30">...</div><div class="flex-70">...</div></div>
   ============================================================================ */

/* split-row 부모를 flex 컨테이너로 (활성 탭에만 적용) */
.inner_panel.on:has(.split-row),
.inner_panel[aria-hidden="false"]:has(.split-row),
.grid_wrap:has(.split-row) {
    display: flex !important;
    flex-direction: column !important;
}

/* inner_panel 내 split-row - 전체 높이 채우기 */
.inner_panel.on > .split-row,
.inner_panel[aria-hidden="false"] > .split-row {
    flex: 1 !important;
    height: 100% !important;
}

/* 분할 컨테이너 */
/* Flex 유틸리티 */
.split-row {
    display: flex;
    flex-direction: row;
    width: 100%;
    height: 100%;
    gap: 10px;
}

/* 자동 채움 (내용물 크기 존중 + 남은 공간) */
.flex-auto {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

/* 균등 분할 (무조건 1/N) */
.flex-even {
    flex: 1 1 0% !important;
    min-width: 0 !important;
    min-height: 0 !important;
}

/* 기본: 좌우 배치 */
@container contents (min-width: 801px) {
    .split-row {
        flex-direction: row !important;
    }

    /* fw50 날짜 2개 있는 datepicker는 4칸 차지 */
    .content_header_inner.grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50):not(.hide),
    .content_inner_v2.grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50):not(.hide),
    .inner_panel.grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50):not(.hide),
    .grid_layout .form_object.datepicker:has(.form_date0_v2.fw50):has(.form_date1_v2.fw50):not(.hide) {
        grid-column: span 4 !important;
    }
    /* datepicker 내부 fw50 너비 50%로 */
    .grid_layout .form_object.datepicker .form_date0_v2.fw50,
    .grid_layout .form_object.datepicker .form_date1_v2.fw50 {
        width: calc(50% - 5px) !important;
    }
}

/* 탭 구조를 포함한 split-row - 부모 높이 채우기 */
.split-row:has(.grid_wrap .tab-nav-wrapper),
.split-row:has(.grid_wrap .inner_tabs) {
    flex: 1 !important;
    height: 100% !important;
}

/* split-row 고정 너비 클래스 */
.split-row[class*="fixed-"] {
    width: auto !important;
    height: auto !important;
    flex: 0 0 auto !important;
}
.split-row[class*="fixed-"] > [class*="flex-"] {
    height: auto !important;
    flex: 0 0 auto !important;
}
.split-row.fixed-1000 {
    min-width: 1000px !important;
    max-width: 1000px !important;
}
.split-row.fixed-1200 {
    min-width: 1200px !important;
    max-width: 1200px !important;
}
.split-row.fixed-1400 {
    min-width: 1400px !important;
    max-width: 1400px !important;
}
.split-row.fixed-1600 {
    min-width: 1600px !important;
    max-width: 1600px !important;
}
.split-row.fixed-1800 {
    min-width: 1800px !important;
    max-width: 1800px !important;
}

/* split-row 최대 너비 클래스 */
.split-row[class*="max-"] {
    height: auto !important;
    flex: 0 0 auto !important;
}
.split-row[class*="max-"] > [class*="flex-"] {
    height: auto !important;
    flex: 0 0 auto !important;
}
.split-row.max-1000 {
    max-width: 1000px !important;
}
.split-row.max-1200 {
    max-width: 1200px !important;
}
.split-row.max-1400 {
    max-width: 1400px !important;
}
.split-row.max-1600 {
    max-width: 1600px !important;
}
.split-row.max-1800 {
    max-width: 1800px !important;
}

/* split-row 고정 높이 클래스 */
.split-row[class*="height-"] {
    flex: 0 0 auto !important;
    overflow: visible !important;
}
.split-row.height-400 {
    min-height: 400px !important;
    height: 400px !important;
}
.split-row.height-500 {
    min-height: 500px !important;
    height: 500px !important;
}
.split-row.height-600 {
    min-height: 600px !important;
    height: 600px !important;
}
.split-row.height-700 {
    min-height: 700px !important;
    height: 700px !important;
}
.split-row.height-800 {
    min-height: 800px !important;
    height: 800px !important;
}
.split-row.height-900 {
    min-height: 900px !important;
    height: 900px !important;
}
.split-row.height-1000 {
    min-height: 1000px !important;
    height: 1000px !important;
}
.split-row.height-1200 {
    min-height: 1200px !important;
    height: 1200px !important;
}

/* split-row 최소 높이 클래스 */
.split-row.min-height-100 { min-height: 100px !important; }
.split-row.min-height-200 { min-height: 200px !important; }
.split-row.min-height-300 { min-height: 300px !important; }
.split-row.min-height-400 { min-height: 400px !important; }
.split-row.min-height-500 { min-height: 500px !important; }
.split-row.min-height-600 { min-height: 600px !important; }
.split-row.min-height-700 { min-height: 700px !important; }
.split-row.min-height-800 { min-height: 800px !important; }
.split-row.min-height-900 { min-height: 900px !important; }
.split-row.min-height-1000 { min-height: 1000px !important; }
.split-row.min-height-1100 { min-height: 1100px !important; }
.split-row.min-height-1200 { min-height: 1200px !important; }
.split-row.min-height-1300 { min-height: 1300px !important; }
.split-row.min-height-1400 { min-height: 1400px !important; }
.split-row.min-height-1500 { min-height: 1500px !important; }

/* 고정 높이 split-row 하단 여백 */
.split-row[class*="min-height-"] {
    padding-bottom: 32px;
}

/* split-row 높이 고정 시 내부 그리드 자동 확장 */
.split-row[class*="height-"] > [class*="flex-"] > [id$="Grid"],
.split-row[class*="height-"] > [class*="flex-"] > [class*="Grid"],
.split-row[class*="height-"] > [class*="flex-"] > div:last-child,
.split-row[class*="height-"] > [class*="flex-"] > div[id$="Grid"],
.split-row[class*="height-"] > [class*="flex-"] > div[class*="h3"],
.split-row[class*="height-"] > [class*="flex-"] > div[class*="h4"],
.split-row[class*="height-"] > [class*="flex-"] > div[class*="h5"] {
    flex: 1 1 auto !important;
    height: 100% !important;
}

/* 그리드 기본 배경색 - split-row 내부 그리드만 */
.split-row > [class*="flex-"] > div[id$="Grid"] {
    background-color: transparent !important;
}

/* 분할 컬럼 공통 */
.split-row > [class*="flex-"] {
    display: flex !important;
    flex-direction: column !important;
    height: 100%;
    min-width: 0;
    min-height: 0;
    overflow: visible;
    box-sizing: border-box !important;
}

/* 분할 컬럼 내부 그리드 */
.split-row > [class*="flex-"] > [id$="Grid"] {
    flex: 1 1 auto !important;
    height: 100% !important;
    min-height: 0 !important;
}

/* split-row > flex-XX > grid_inner_wrap0 - 부모 높이 채우기 */
.split-row > [class*="flex-"] > .grid_inner_wrap0 {
    flex: 1 1 auto !important;
    height: 100% !important;
    min-height: 0 !important;
}
/* flex-XX.grid_inner_wrap0 - 지정된 flex 비율 유지, 높이만 채움 */
.split-row > [class*="flex-"].grid_inner_wrap0 {
    height: 100% !important;
    min-height: 0 !important;
}

/* 분할 비율 - flex-grow 방식 (2개, 3개 등 자유 조합 가능)
   사용예:
   - 2분할: flex-35 + flex-65 = 100
   - 3분할: flex-25 + flex-50 + flex-25 = 100
   - 3분할: flex-33 + flex-33 + flex-34 = 100
*/
.flex-1  { flex: 0 0 1% !important; }
.flex-2  { flex: 0 0 2% !important; }
.flex-3  { flex: 0 0 3% !important; }
.flex-4  { flex: 0 0 4% !important; }
.flex-5  { flex: 0 0 5% !important; }
.flex-6  { flex: 0 0 6% !important; }
.flex-7  { flex: 0 0 7% !important; }
.flex-8  { flex: 0 0 8% !important; }
.flex-9  { flex: 0 0 9% !important; }
.flex-10 { flex: 0 0 10% !important; }
.flex-11 { flex: 0 0 11% !important; }
.flex-12 { flex: 0 0 12% !important; }
.flex-13 { flex: 0 0 13% !important; }
.flex-14 { flex: 0 0 14% !important; }
.flex-15 { flex: 0 0 15% !important; }
.flex-16 { flex: 0 0 16% !important; }
.flex-17 { flex: 0 0 17% !important; }
.flex-18 { flex: 0 0 18% !important; }
.flex-19 { flex: 0 0 19% !important; }
.flex-20 { flex: 0 0 20% !important; }
.flex-21 { flex: 0 0 21% !important; }
.flex-22 { flex: 0 0 22% !important; }
.flex-23 { flex: 0 0 23% !important; }
.flex-24 { flex: 0 0 24% !important; }
.flex-25 { flex: 0 0 25% !important; }
.flex-26 { flex: 0 0 26% !important; }
.flex-27 { flex: 0 0 27% !important; }
.flex-28 { flex: 0 0 28% !important; }
.flex-29 { flex: 0 0 29% !important; }
.flex-30 { flex: 0 0 30% !important; }
.flex-31 { flex: 0 0 31% !important; }
.flex-32 { flex: 0 0 32% !important; }
.flex-33 { flex: 0 0 33% !important; }
.flex-34 { flex: 0 0 34% !important; }
.flex-35 { flex: 0 0 35% !important; }
.flex-36 { flex: 0 0 36% !important; }
.flex-37 { flex: 0 0 37% !important; }
.flex-38 { flex: 0 0 38% !important; }
.flex-39 { flex: 0 0 39% !important; }
.flex-40 { flex: 0 0 40% !important; }
.flex-41 { flex: 0 0 41% !important; }
.flex-42 { flex: 0 0 42% !important; }
.flex-43 { flex: 0 0 43% !important; }
.flex-44 { flex: 0 0 44% !important; }
.flex-45 { flex: 0 0 45% !important; }
.flex-46 { flex: 0 0 46% !important; }
.flex-47 { flex: 0 0 47% !important; }
.flex-48 { flex: 0 0 48% !important; }
.flex-49 { flex: 0 0 49% !important; }
.flex-50 { flex: 0 0 50% !important; }
.flex-51 { flex: 0 0 51% !important; }
.flex-52 { flex: 0 0 52% !important; }
.flex-53 { flex: 0 0 53% !important; }
.flex-54 { flex: 0 0 54% !important; }
.flex-55 { flex: 0 0 55% !important; }
.flex-56 { flex: 0 0 56% !important; }
.flex-57 { flex: 0 0 57% !important; }
.flex-58 { flex: 0 0 58% !important; }
.flex-59 { flex: 0 0 59% !important; }
.flex-60 { flex: 0 0 60% !important; }
.flex-61 { flex: 0 0 61% !important; }
.flex-62 { flex: 0 0 62% !important; }
.flex-63 { flex: 0 0 63% !important; }
.flex-64 { flex: 0 0 64% !important; }
.flex-65 { flex: 0 0 65% !important; }
.flex-66 { flex: 0 0 66% !important; }
.flex-67 { flex: 0 0 67% !important; }
.flex-68 { flex: 0 0 68% !important; }
.flex-69 { flex: 0 0 69% !important; }
.flex-70 { flex: 0 0 70% !important; }
.flex-71 { flex: 0 0 71% !important; }
.flex-72 { flex: 0 0 72% !important; }
.flex-73 { flex: 0 0 73% !important; }
.flex-74 { flex: 0 0 74% !important; }
.flex-75 { flex: 0 0 75% !important; }
.flex-76 { flex: 0 0 76% !important; }
.flex-77 { flex: 0 0 77% !important; }
.flex-78 { flex: 0 0 78% !important; }
.flex-79 { flex: 0 0 79% !important; }
.flex-80 { flex: 0 0 80% !important; }
.flex-81 { flex: 0 0 81% !important; }
.flex-82 { flex: 0 0 82% !important; }
.flex-83 { flex: 0 0 83% !important; }
.flex-84 { flex: 0 0 84% !important; }
.flex-85 { flex: 0 0 85% !important; }
.flex-86 { flex: 0 0 86% !important; }
.flex-87 { flex: 0 0 87% !important; }
.flex-88 { flex: 0 0 88% !important; }
.flex-89 { flex: 0 0 89% !important; }
.flex-90 { flex: 0 0 90% !important; }
.flex-91 { flex: 0 0 91% !important; }
.flex-92 { flex: 0 0 92% !important; }
.flex-93 { flex: 0 0 93% !important; }
.flex-94 { flex: 0 0 94% !important; }
.flex-95 { flex: 0 0 95% !important; }
.flex-96 { flex: 0 0 96% !important; }
.flex-97 { flex: 0 0 97% !important; }
.flex-98 { flex: 0 0 98% !important; }
.flex-99 { flex: 0 0 99% !important; }
.flex-100 { flex: 0 0 100% !important; }

/* 남은 공간을 채우는 flex-auto */
.flex-auto { flex: 1 1 auto !important; min-width: 0 !important; }

/* 고정 크기 유지 (명시된 height 또는 컨텐츠 크기) */
.flex-fixed { flex: 0 0 auto !important; }

/* flex-XX 클래스와 함께 사용 시 width: 100% 무효화 - flex-basis 우선 적용 */
[class*="flex-"].grid_inner_wrap0,
[class*="flex-"].grid_inner_wrap,
[class*="flex-"].grid_inner_wrap_left,
[class*="flex-"].background_f {
    width: auto !important;
}

/* flex-XX.grid_layout - 6칸 그리드 (작은 컨테이너용) */
[class*="flex-"].grid_layout,
[class*="flex-"] > .grid_layout {
    display: grid !important;
    grid-column-gap: 15px !important;
    grid-row-gap: 16px !important;
    padding: 20px 24px !important;
    box-sizing: border-box !important;
    align-content: start !important;
}

[class*="flex-"] > .grid_layout.none_p {
    padding: 0px!important;
}

/* flex-XX.grid_layout 내 form_object - 6칸 기준 */
[class*="flex-"].grid_layout .form_object,
[class*="flex-"] > .grid_layout .form_object {
    grid-column: span 2 !important; /* 1/3 너비 */
}
[class*="flex-"].grid_layout .form_object.x2,
[class*="flex-"] > .grid_layout .form_object.x2 {
    grid-column: span 4 !important; /* 2/3 너비 */
}
[class*="flex-"].grid_layout .form_object.x3,
[class*="flex-"].grid_layout .form_object.x_full,
[class*="flex-"] > .grid_layout .form_object.x3,
[class*="flex-"] > .grid_layout .form_object.x_full {
    grid-column: 1 / -1 !important; /* 전체 너비 */
}

/* flex-XX.grid_layout > form 투명화 */
[class*="flex-"].grid_layout > form,
[class*="flex-"] > .grid_layout > form {
    display: contents !important;
}

/* flex-XX.grid_layout 모바일 반응형 */
@container contents (max-width: 600px) {
    [class*="flex-"].grid_layout,
    [class*="flex-"] > .grid_layout {
        grid-template-columns: repeat(2, 1fr) !important;
        grid-column-gap: 8px !important;
        grid-row-gap: 12px !important;
        padding: 15px 12px !important;
    }

    /* 모바일: form_object 전체 너비 */
    [class*="flex-"].grid_layout .form_object,
    [class*="flex-"] > .grid_layout .form_object {
        grid-column: span 2 !important; /* 전체 너비 */
    }

    /* 넓은 flex도 모바일에서는 2칸 */
    .flex-80.grid_layout, .flex-80 > .grid_layout,
    .flex-85.grid_layout, .flex-85 > .grid_layout,
    .flex-90.grid_layout, .flex-90 > .grid_layout,
    .flex-95.grid_layout, .flex-95 > .grid_layout,
    .flex-100.grid_layout, .flex-100 > .grid_layout,
    .flex-auto.grid_layout, .flex-auto > .grid_layout {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* gap 크기 조절 추가 */
.split-row.gap-25 { gap: 25px !important; }
.split-row.gap-30 { gap: 30px !important; }

/* gap 있을 때 flex-shrink 허용 (gap만큼 축소) */
.split-row[class*="gap-"] {
    display: flex !important;
}

.split-row[class*="gap-"] > [class*="flex-"] {
    flex-shrink: 1 !important;
}

/* flex-XX.gap-XX 내부 form - 기본: 100% 채우기 (폼만 있을 때) */
[class*="flex-"][class*="gap-"] > form {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    height: 100%;
    min-height: 0;
}

/* flex-XX.gap-XX 내부 form - 형제가 있을 때: 내용만큼만 */
[class*="flex-"][class*="gap-"] > form:not(:only-child) {
    flex: 0 0 auto;
    height: auto;
}

[class*="flex-"].gap-5 > form { gap: 5px; }
[class*="flex-"].gap-10 > form { gap: 10px; }
[class*="flex-"].gap-15 > form { gap: 15px; }
[class*="flex-"].gap-20 > form { gap: 20px; }

/* flex-XX.gap-XX 내부 inner_tab_wrap2 - 나머지 공간 채우기 */
[class*="flex-"][class*="gap-"] > .inner_tab_wrap2 {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
}

/* split-row.gap-XX > flex-auto/flex-XX - 세로 방향 flex + gap 상속 */
.split-row[class*="gap-"] > .flex-auto,
.split-row[class*="gap-"] > [class*="flex-"]:not([class*="gap-"]) {
    display: flex;
    flex-direction: column;
}
/* grid_header 있으면 gap 제거 (자체 gap 클래스 없는 경우에만) */
.split-row[class*="gap-"] > .flex-auto:not([class*="gap-"]):has(.grid-header),
.split-row[class*="gap-"] > [class*="flex-"]:not([class*="gap-"]):has(.grid-header) { gap: 0 !important; }
/* grid_header 없으면 gap 적용 */
.split-row.gap-5 > .flex-auto,
.split-row.gap-5 > [class*="flex-"]:not([class*="gap-"]) { gap: 5px; }
.split-row.gap-10 > .flex-auto,
.split-row.gap-10 > [class*="flex-"]:not([class*="gap-"]) { gap: 10px; }
.split-row.gap-15 > .flex-auto,
.split-row.gap-15 > [class*="flex-"]:not([class*="gap-"]) { gap: 15px; }
.split-row.gap-20 > .flex-auto,
.split-row.gap-20 > [class*="flex-"]:not([class*="gap-"]) { gap: 20px; }

/* OZ Report Viewer 배경색 */
.ozReportViewer {
    background-color: #fff;
}

/* 주간 근무 시간 그래프 */
.week_time_graph {
    border-radius: 8px;
    overflow: hidden;
}

/* ============================================================================
   split-row.resizable - 리사이즈 핸들
   - 핸들 너비는 gap-* 클래스 사이즈를 따름
   - 핸들이 gap 역할을 대신하므로 resizable에서는 gap을 0으로 설정
   ============================================================================ */
.split-row.resizable {
    position: relative;
    gap: 0 !important; /* 핸들이 gap 역할을 대신함 */
}

/* resizable 내 flex-* 요소: 핸들 너비만큼 축소 허용 (flex-auto 제외) */
.split-row.resizable > [class*="flex-"]:not(.flex-auto) {
    flex-shrink: 1 !important;
}

.resize-handle,
.resize-handle-h {
    position: relative;
    flex: 0 0 auto;
    width: 10px; /* 기본 너비 (gap 클래스 없을 때) */
    height: auto;
    align-self: stretch;
    cursor: col-resize;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    transition: background-color 0.15s ease;
    /* border는 인접 요소에 그리드가 없을 때만 적용 (아래 조건부 스타일 참조) */
    box-sizing: border-box;
}

/* 조건부 border: 인접 요소에 그리드가 없을 때만 적용 */
/* 왼쪽 요소에 그리드가 없으면 left border */
[class*="flex-"]:not(:has(.rg-root)):not(:has(.rg-grid)) + .resize-handle,
[class*="flex-"]:not(:has(.rg-root)):not(:has(.rg-grid)) + .resize-handle-h {
    border-left: 1px solid var(--grid-border-color, #E7E7E9);
}

/* 오른쪽 요소에 그리드가 없으면 right border */
.resize-handle:has(+ [class*="flex-"]:not(:has(.rg-root)):not(:has(.rg-grid))),
.resize-handle-h:has(+ [class*="flex-"]:not(:has(.rg-root)):not(:has(.rg-grid))) {
    border-right: 1px solid var(--grid-border-color, #E7E7E9);
}

/* gap-* 클래스에 따른 핸들 너비 */
.split-row.resizable.gap-5 > .resize-handle,
.split-row.resizable.gap-5 > .resize-handle-h { width: 5px; }
.split-row.resizable.gap-10 > .resize-handle,
.split-row.resizable.gap-10 > .resize-handle-h { width: 10px; }
.split-row.resizable.gap-15 > .resize-handle,
.split-row.resizable.gap-15 > .resize-handle-h { width: 15px; }
.split-row.resizable.gap-20 > .resize-handle,
.split-row.resizable.gap-20 > .resize-handle-h { width: 20px; }
.split-row.resizable.gap-25 > .resize-handle,
.split-row.resizable.gap-25 > .resize-handle-h { width: 25px; }
.split-row.resizable.gap-30 > .resize-handle,
.split-row.resizable.gap-30 > .resize-handle-h { width: 30px; }

/* 핸들 호버/드래그 시 배경색 */
.resize-handle:hover,
.resize-handle.active,
.resize-handle-h:hover,
.resize-handle-h.active {
    background-color: rgba(11, 171, 139, 0.08);
}

/* 핸들 내부 드래그 바 */
.resize-handle::before,
.resize-handle-h::before {
    content: '';
    width: 4px;
    height: 40px;
    max-height: 50%;
    min-height: 30px;
    background-color: #d0d0d0;
    border-radius: 2px;
    transition: background-color 0.15s ease, height 0.15s ease;
}

.resize-handle:hover::before,
.resize-handle.active::before,
.resize-handle-h:hover::before,
.resize-handle-h.active::before {
    background-color: var(--main-color, #0BAB8B);
    height: 60px;
}

/* 드래그 중 body 스타일 */
body.resizing {
    cursor: col-resize !important;
}
body.resizing * {
    cursor: col-resize !important;
}
body.resizing-col {
    cursor: row-resize !important;
}
body.resizing-col * {
    cursor: row-resize !important;
}

/* 800px 이하에서 핸들 숨김 및 두번째 그리드 헤더 보더 추가 */
@container contents (max-width: 800px) {
    .resize-handle,
    .resize-handle-h {
        display: none !important;
    }

    /* 두번째 패널(핸들 다음) 그리드 헤더에 상단 보더 추가 */
    .split-row.resizable > .resize-handle + [class*="flex-"] .grid-header,
    .split-row.resizable > .resize-handle + .grid_inner_wrap0 .grid-header {
        border-top: 1px solid var(--grid-border-line, #D3D3D3) !important;
    }
}

/* ============================================================================
   split-col.resizable - 상하 리사이즈 핸들
   - 핸들 높이는 gap-* 클래스 사이즈를 따름
   ============================================================================ */
.split-col.resizable {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 0 !important; /* 핸들이 gap 역할을 대신함 */
}

.resize-handle-v {
    position: relative;
    flex: 0 0 auto;
    width: 100%;
    height: 10px; /* 기본 높이 (gap 클래스 없을 때) */
    cursor: row-resize;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    transition: background-color 0.15s ease;
}

/* gap-* 클래스에 따른 핸들 높이 */
.split-col.resizable.gap-5 > .resize-handle-v { height: 5px; }
.split-col.resizable.gap-10 > .resize-handle-v { height: 10px; }
.split-col.resizable.gap-15 > .resize-handle-v { height: 15px; }
.split-col.resizable.gap-20 > .resize-handle-v { height: 20px; }
.split-col.resizable.gap-25 > .resize-handle-v { height: 25px; }
.split-col.resizable.gap-30 > .resize-handle-v { height: 30px; }

/* 핸들 호버/드래그 시 배경색 */
.resize-handle-v:hover,
.resize-handle-v.active {
    background-color: rgba(11, 171, 139, 0.08);
}

/* 핸들 내부 드래그 바 (가로 방향) */
.resize-handle-v::before {
    content: '';
    width: 40px;
    height: 4px;
    max-width: 50%;
    min-width: 30px;
    background-color: #d0d0d0;
    border-radius: 2px;
    transition: background-color 0.15s ease, width 0.15s ease;
}

.resize-handle-v:hover::before,
.resize-handle-v.active::before {
    background-color: var(--main-color, #0BAB8B);
    width: 60px;
}

/* 800px 이하에서 핸들 숨김 */
@container contents (max-width: 800px) {
    .resize-handle-v {
        display: none !important;
    }
}


/* ============================================================================
   half_h_contents + split-row 구조 - 높이 채우기 (Flex)
   ============================================================================ */
.contents_area.half_h_contents > .split-row,
.contents_area.half_h_contents > .split-row.gap-10,
.contents_area.half_h_contents > .split-row[class*="gap-"] {
    flex: 1 1 auto !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
}

/* half_h_contents 내 split-row: flex-auto만 있고 비율 클래스(flex-숫자) 없을 때 세로 배치 */
.contents_area.half_h_contents > .split-row:not([style*="height"]):has(> .flex-auto):not(:has(> [class*="flex-"]:not(.flex-auto):not(.flex-fixed))) {
    flex-direction: column !important;
}

.contents_area.half_h_contents > .split-row > [class*="flex-"],
.contents_area.half_h_contents > .split-row > .grid_inner_wrap0 {
    height: 100% !important;
    min-height: 0 !important;
}

.contents_area.half_h_contents > .grid_inner_wrap0 {
    flex: 1 1 auto !important;
    height: 100% !important;
    min-height: 0 !important;
}

/* split-row 내부 flex 컨테이너 - 자식 위아래 균등 배치 */
.split-row > [class*="flex-"][class*="gap-"] {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

.split-row > [class*="flex-"][class*="gap-"] > .flex-auto,
.split-row > [class*="flex-"][class*="gap-"] > .grid_inner_wrap0 {
    flex: 1 1 0 !important;
    height: auto !important;
    min-height: 0 !important;
}

/* 800px 이하 반응형 - 고정 높이 적용 */
@container contents (max-width: 800px) {
    .split-row > [class*="flex-"][class*="gap-"] > .flex-auto,
    .split-row > [class*="flex-"][class*="gap-"] > .grid_inner_wrap0 {
        flex: 0 0 auto !important;
        height: 300px !important;
    }
}

/* ============================================================================
   모바일 반응형 - split-row 세로 스택
   ============================================================================ */

/* 768px 이하: split-row 세로 스택 */
@container contents (max-width: 768px) {
    /* split-row를 세로로 */
    .split-row {
        flex-direction: column !important;
    }

    /* flex-XX 너비 100%로 */
    .split-row > [class*="flex-"] {
        width: 100% !important;
        flex: none !important;
    }

    /* 그리드 높이 자동/고정 */
    .split-row > [class*="flex-"] [id$="Grid"],
    .split-row > [class*="flex-"] .grid_inner_wrap0 {
        height: 350px !important;
        min-height: 350px !important;
    }

    /* contents_area도 세로 */
    .contents_area.half_h_contents:has(> .split-row),
    .contents_area.half_h_contents:has(> [class*="flex-"]) {
        flex-direction: column !important;
    }

    /* contents_wrap 패딩 축소 */
    .contents_wrap {
        padding: 10px !important;
        max-width: 100% !important;
    }

    /* 헤더 영역 패딩 축소 */
    .contents_header .content_header_inner.grid_layout {
        padding: 15px 12px !important;
    }
}

/* 576px 이하: 더 작은 모바일 */
@container contents (max-width: 576px) {
    .contents_wrap {
        padding: 8px !important;
    }

    .contents_header .content_header_inner.grid_layout {
        padding: 12px 10px !important;
    }

    /* 그리드 높이 더 축소 */
    .split-row > [class*="flex-"] [id$="Grid"],
    .split-row > [class*="flex-"] .grid_inner_wrap0 {
        height: 300px !important;
        min-height: 300px !important;
    }

    /* 타이틀 폰트 축소 */
    .contents_header_top .list_title {
        font-size: 16px !important;
    }
}

/* ============================================================================
   전역 스크롤바 스타일 - common_v3.css에서 CSS 변수로 관리
   (--scrollbar-width, --scrollbar-thumb, --scrollbar-track 등)
   ============================================================================ */

/* 폼 필드 disabled 스타일 */
.form_inp0_v2:disabled,
.form_inp0_v2.disabled,
.form_date0_v2:disabled,
.form_date0_v2.disabled,
input:disabled,
input.disabled {
    background-color: #f5f5f5 !important;
    color: #999 !important;
    cursor: not-allowed !important;
    opacity: 0.7 !important;
}

#approveArea1 > li > span.close_icon.approval_line_close > img {
    vertical-align: middle;
}


/* split-row 하위 flex 요소의 display: none 우선순위 강제 (grid_layout 영향 방지) */
.split-row > [class*="flex-"][style*="display: none"],
.split-row > [class*="flex-"][style*="display:none"] {
    display: none !important;
}

/* split-row의 모든 자식이 display: none이면 split-row 자체도 숨김 */
.split-row:not(:has(> :not([style*="display: none"]))) {
    display: none !important;
}

/* header_btn_wrap - 버튼들을 좌우 정렬 */
.header_btn_wrap {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
}
.header_btn_wrap .header_text {
    margin-right: auto; /* 텍스트를 좌측에 고정하고 버튼은 우측에 */
}

/* grid_inner_wrap0 내부 pagenation_wrap 좌우하단 보더 */
.grid_inner_wrap0 > .pagenation_wrap {
    height: 70px;
    border-left: 1px solid #e6e6e6;
    border-right: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
    background-color: #fff;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    box-sizing: border-box;
}
.grid_inner_wrap0 > .pagenation_wrap .pagenation {
    margin-top: 0px !important;
}

.emp_img_wrap > .emp_img{
    height: 100%!important;
}