@charset "utf-8";

.font-orange {
    color: #FF6A00 !important;
}

.font-red {
    color: #EB5353 !important;
}

.font-light {
    color: #8C8C8C;
}

.font-gray {
    color: #C0C0C0;
}

.font-over {
    text-overflow: ellipsis;
    width: 100%;
}

.fs-13 {
    font-size: 13px !important;
}

.fs-14 {
    font-size: 14px !important;
}

.fs-15 {
    font-size: 15px !important;
}

.fs-18 {
    font-size: 18px !important;
}

.fs-22 {
    font-size: 22px !important;
}

.fs-24 {
    font-size: 24px !important;
}

.fs-35 {
    font-size: 35px !important;
}

.fs-48 {
    font-size: 48px !important;
}

.font-bold {
    font-weight: bold;
}

.bold600 {
    font-weight: 600;
}

.line-16 {
    line-height: 160%
}

.line-18 {
    line-height: 180%
}

.line-22 {
    line-height: 220%
}

.text-center {
    text-align: center;
}

.text-left {
    text-align: left;
}

/*마진*/
.mt-0 {
    margin-top: 0px !important;
}

.mt-1 {
    margin-top: 1rem;
}

.mt-2 {
    margin-top: 2rem;
}

.mt-3 {
    margin-top: 3rem !important;
}

.mb-0 {
    margin-bottom: 0px !important;
}

.mb-1 {
    margin-bottom: 1rem !important;
}

.mb-2 {
    margin-bottom: 2rem;
}


.mx-1 {
    margin: 0 1rem;
}

.m-05 {
    margin: 0.5rem
}

.m-1 {
    margin: 1rem
}

.my-1 {
    margin: 1rem 0;
}

.my-2 {
    margin: 2rem 0;
}

.mx-auto {
    margin: 10px auto;
}

.p-0 {
    padding: 0 !important;
}

.p-05 {
    padding: 0.5rem !important;
}

.p-1 {
    padding: 0.7rem !important;
}

.p-12 {
    padding: 1.2rem !important;
}

.p-2 {
    padding: 2rem !important;
}

.p-3 {
    padding: 3rem !important;
}

.py-03 {
    padding: 0.3rem 0 !important;
}

.py-1 {
    padding: 0.5rem 0 !important;
}

.py-15 {
    padding: 1rem 0 !important;
}

.py-2 {
    padding: 2rem 0 !important;
}

.px-0 {
    padding-left: 0px !important;
    padding-right: 0px !important;
}

.px-03 {
    padding: 0 0.3rem !important;
}

.px-1 {
    padding: 0 1rem !important;
}

.px-2 {
    padding: 0 2rem !important;
}

.px-3 {
    padding: 0 3rem !important;
}

.pb-03 {
    padding-bottom: 0.3rem !important;
}

.pb-05 {
    padding-bottom: 0.5rem !important;
}

.pb-1 {
    padding-bottom: 1rem !important;
}

.pb50 {
    padding-bottom: 50px !important;
}

/*모달-푸터 있는 경우 추가*/
.pb90 {
    padding-bottom: 90px !important;
}

/*모달-푸터 있는 경우 추가*/


.pt80-pc {
    padding-top: 80px;
}

@media (max-width: 1280px) {
    .pt80-pc {
        padding-top: 30px;
    }
}

.d-flex {
    display: flex;
}

.flx-1 {
    flex: 1
}

.flex-between {
    justify-content: space-between !important;
}

.flex-center {
    justify-content: center !important;
}

.flex-end {
    justify-content: flex-end !important;
}

.align-center {
    align-content: center !important;
}

.flex-gap8 {
    gap: 8px;
}

.flex-wrap {
    flex-wrap: wrap
}

.grid-gap45 {
    gap: 45px !important
}

.flex-col2 {
    flex-direction: column;
}

.d-inline {
    display: inline-block !important;
}

.p_relat {
    position: relative !important;
}

.p-absolute {
    position: absolute;
}

.pa-left {
    left: 5px
}

.pa-right {
    right: 5px
}

.w-100 {
    width: 100%
}

.wrap1470 {
    max-width: 1470px !important;
    margin: 0 auto;
    padding: 110px 20px 50px 20px
}

.align_middle {
    vertical-align: middle !important;
}

.d_fixed_bc {
    position: fixed;
    bottom: 50px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1234567;
    padding: 0 20px;
}

.inline_layer {
    min-width: 100px;
    min-height: 60px;
    position: absolute;
    border-radius: 4px;
    bottom: -67px;
    right: 50px;
    background: #fff;
    border: 1px solid #F4F4F4;
    box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.2);
    flex-direction: column;
    z-index: 1234567;
}

.inline_layer li {
    padding: 8px 10px;
    border-bottom: 1px solid #ddd;
    list-style: none;
}

.inline_layer p {
    padding: 8px 10px;
    height: 45px;
}

#chat_inline_layer {
    position: inherit;
}


.inline_modal {
    min-width: 100px;
    min-height: 60px;
    position: absolute;
    border-radius: 12px;
    top: 5px;
    left: 5px;
    background: #fff;
    border: 1px solid #F4F4F4;
    box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.2);
    display: flex;
    flex-direction: column;
    z-index: 1234567;
    padding: 15px;
}

.inline_modal > ul {
    list-style: none !important;
}

.inline_modal > ul > li {
    list-style: none !important;
    height: 30px;
}

.inline_modal > ul > li a {
    text-align: left;
    padding: 10px 0;
}

/*인풋스타일*/

textarea.default {
    min-height: 98px;
    padding: 12px 16px;
    border-radius: 8px;
    border: 1px solid #D5D7DB;
    background: #FFF;
    flex: 1;
}

input[type=search].default,
input[type=text].default,
input[type=password].default {
    min-width: 150px;
    width: 100%;
    height: 48px;
    padding: 5px 10px;
    border-radius: 8px;
    border: 1px solid #D5D7DB;
    background: #FFF;
    flex: 1;
}

.ipt-gray-sm {
    min-width: 150px;
    width: 100%;
    height: 38px;
    padding: 5px 10px;
    border-radius: 6px;
    border: 1px solid #F4F4F4;
    background: #F4F4F4;
}

/* 기본 input 숨기기 */
.file-hidden {
    display: none;
}

/* 파일 업로드 라벨 디자인 */
#uploadLabel {
    display: inline-block;
    min-width: 150px;
    width: 100%;
    height: 48px;
    padding: 5px 10px;
    border-radius: 8px;
    border: 1px solid #D5D7DB;
    background: #FFF;
    flex: 1;
    color: #8C8C8C;
    line-height: 35px;
}

.sel_default {
    min-width: 160px;
    width: fit-content;
    padding: 0 34px 0 16px;
    height: 40px;
    border-radius: 8px;
    color: #171717;
    font-size: 16px;
    font-weight: 400;
    position: relative;
    background: #fff url(/assets/images/sel_down.svg) no-repeat right 16px center;
    border: 1px solid #D5D7DB;
    color: #5B5B5B;
    letter-spacing: 0.2px;
    flex: 1;
}

.sel_default option {
    background: #fff;
    color: #5B5B5B;
    padding: 9px 40px 9px 16px;
}

.sel_default option:disabled {
    color: #BDBDBD;
}


/*검색창 - 모달 내 100% X버튼*/
.input-search-s100 {
    padding: 0 40px 0 48px;
    width: 100%;
    height: 48px;
    color: #171717;
    border-radius: 8px;
    border: 1px solid #D6D8DC;
}

.wsbm {
    position: relative;
    max-width: 100%;
}

.chkbox1 {
    display: inline-flex; /* 요소 수직 정렬 */
    align-items: center; /* 중앙 정렬 */
    gap: 6px; /* 간격 조절 */
    cursor: pointer;
}


.chkbox1 input[type="checkbox"] {
    display: none;
    appearance: none; /* 브라우저 기본 스타일 제거 */
    width: 20px;
    height: 20px;
    background: #F2F4F7;
    border: 1px solid #D5D7DB;
    border-radius: 4px;
    vertical-align: middle;
    position: relative;
}


.chkbox1 input[type="checkbox"]:checked + i {
    background: url(/assets/images/checked3.svg) no-repeat center center/24px auto;
}

.chkbox1 input[type="checkbox"][readonly] + i {
    background: url(/assets/images/checked_readonly.svg) no-repeat center center/24px auto;
}

/* 체크박스 */
.chkbox1 span {
    line-height: 1;
    vertical-align: middle;
}

.chkbox1 i {
    font-size: 14px;
    line-height: 1;
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: url(/assets/images/checked2.svg) no-repeat center center/24px auto;
    display: inline-block;
    flex: 0 0 20px;
}


.radio-group {
    display: flex;
    gap: 24px;
    align-items: center;
    margin: 15px 0;
}

.radiobox1 {
    display: flex !important;
    align-items: center;
    cursor: pointer;
    user-select: none;
    gap: 6px;
}

.radiobox1 input[type="radio"] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.radio-new {
    display: none;
}

.radio-new + i {
    display: inline-block;
    width: 24px;
    height: 24px;
    background: url(/assets/images/radio_uncheck.svg) no-repeat center center;
    margin-top: 0px;
}

.radio-new:checked + i {
    display: inline-block;
    width: 24px;
    height: 24px;
    background: url(/assets/images/radio_checked.svg) no-repeat center center;
    margin-top: 0px;
}

.radiobox1 input[type="radio"]:checked + .radio-custom::after {
    opacity: 1;
}

.radio-text {
    color: #171717;
    font-size: 17px;
    font-weight: 400;
    letter-spacing: 0.2px;
}

.radiobox1 input[type="radio"]:focus + .radio-custom {
    box-shadow: 0 0 0 2px rgba(255, 106, 0, 0.2);
}


/*그리드폼3*/
.gridform3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 9px;
    padding: 12px 0 0;
}


/*보더*/
.border-top {
    border-top: 1px solid #E9EBEE;
}

.border-bottom {
    border-bottom: 1px solid #E9EBEE;
}


/* 헤드보더 */
.head-border {
    margin: 24px 0 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid #E9EBEE;
    width: 100%;
}


/* 리스트보더 */
.list-boarder {
}

.list-boarder dt {
    border-top: 1px solid #E9EBEE;
    border-bottom: 1px solid #E9EBEE;
}

.list-boarder dt ul {
    padding: 17px 5px;
    display: flex;
    color: #5B5B5B;
    font-size: 16px;
}

.list-boarder dd {
    border-bottom: 1px solid #E9EBEE;
}

.list-boarder dd.noborder {
    border-bottom: 0px;
}

.list-boarder dd ul {
    padding: 13px 5px;
    display: flex;
}


.list-board.m4 li:nth-of-type(1) {
    width: 45px;
    flex: 0 0 45px;
    justify-content: start;
}

.list-board.m4 li:nth-of-type(2) {
    width: auto;
    flex: 1 1 auto;
    justify-content: start;
}

.list-board.m4 li:nth-of-type(3) {
    width: 130px;
    flex: 0 0 120px;
}

.list-board.m4 li:nth-of-type(4) {
    width: 130px;
    flex: 0 0 120px;
}

.list-board.m4 li.auto {
    width: auto;
    flex: 1 1 auto;
}


/* 학술대회 - 일정안내 리스트 */
.list-boarder.m0 li:nth-of-type(1) {
    width: 100px;
    flex: 0 0 100px;
    text-align: center;
}

.list-boarder.m0 li:nth-of-type(2) {
    width: 120px;
    flex: 0 0 120px;
    text-align: center;
}

.list-boarder.m0 li:nth-of-type(3) {
    width: 120px;
    flex: 0 0 120px;
    text-align: center;
}

.list-boarder.m0 li:nth-of-type(4) {
    width: 120px;
    flex: 0 0 120px;
    text-align: center;
}

.list-boarder.m0 li:nth-of-type(5) {
    width: auto;
    flex: auto;
    text-align: center;
}

.list-boarder.m0 li:nth-of-type(6) {
    width: 170px;
    flex: 0 0 170px;
    text-align: center;
}


.list-image.grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.list-image.grid .thumb {
    position: relative;
    overflow: hidden;
    border-radius: 4px;
    height: 148px;
    background: #E7E7E7;
}

.list-image.grid .thumb img {
    width: 100%;
    height: 148px;
    border-radius: 4px;
    object-fit: cover;
    display: block;
}

/*---- 리스트 섬네일 이미지 선택 라디오버튼 ----*/
.thumb input[type="radio"] {
    display: none;
}

/* 라벨로 라디오 버튼 UI 만들기 */
.thumb label {
    display: block;
    width: 100%;
    cursor: pointer;
    position: relative;
}

/* 체크 아이콘 숨김 상태 */
.thumb label::before {
    content: "";
    position: absolute;
    top: 8px;
    right: 8px;
    width: 20px;
    height: 20px;
    background: none;
    border: 2px solid transparent;
    border-radius: 50%;
    box-shadow: none;
    transition: all 0.2s ease;
    opacity: 0;
}

.thumb input[type="radio"]:checked + label {
    outline: 2px solid #FF6A00;
}

/* 선택된 상태에만 보이게! */
.thumb input[type="radio"]:checked + label::before {
    opacity: 1;
    background-color: #FF6A00;
    background: url(/assets/images/radio_checked_2.svg) no-repeat center center;
    background-size: 24px;
    text-align: center;
    width: 24px;
    height: 24px;
}


/*-------------------------*/


.data {
    padding: 0 12px 0 32px;
    color: #8E8E8E;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.2px;
    background: url(/assets/images/icon_person.svg) no-repeat center left 12px;
    display: flex;
    align-items: center;
}


/* width 셀렉트+인풋+버튼 균일 정렬 */
.form-row {
    display: flex;
    gap: 12px; /* 요소 간 간격 */
    width: 100%;
    height: 40px;
}

.form-row label,
.form-row input {
    flex: 1; /* 자동으로 같은 비율로 채움 */
}

.form-row button {
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 0 0 120px; /* 고정 너비 */
    background: #fff;
    color: #000;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-weight: 600;
    font-size: 14px;
    cursor: pointer;
    height: 40px;
}

.form-row button.flx1, .wrap-board-head .btn-init.flx1 {
    flex: 1;
}

.form-row button img, .wrap-board-head.btn-init img {
    height: 20px;
}

.form-row span {
    flex: none; /* 고정 크기 */
    font-size: 16px;
    color: #555;
    line-height: 40px;
}


/* 버튼 */
.btn-bookmark {
    flex: 0 0 56px;
    height: 30px;
    background-color: transparent;
    border: 0px;
    background: url(/assets/images/icon_heart.svg) no-repeat center left/24px 24px;
    padding: 0 0 0 30px;
}

.btn-bookmark.on {
    background: url(/assets/images/icon_heart_on.svg) no-repeat center left/24px 24px;
}

.btn-bookmark2 {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border: 1px solid #D5D7DB;
    border-radius: 8px;
    background: url(/assets/images/icon_heart.svg) no-repeat center center;
}


.btn-bookmark2.on, .btn-bookmark2.active {
    background: url(/assets/images/icon_heart_on.svg) no-repeat center center;
}

.btn-outline-orange {
    flex: 0 0 60px;
    border-radius: 8px;
    border: 1px solid #F57F20;
    color: #F57F20;
}

.btn-outline-orange2 {
    margin: 0 auto;
    display: flex;
    gap: 8px;
    justify-content: center;
    border-radius: 8px;
    border: 1px solid #F57F20;
    color: #F57F20;
}

.btn-outline-orange2 > img {
    width: 20px !important;
    margin: 0px !important
}

.btn-orange2 {
    margin: 0 auto;
    display: flex;
    gap: 8px;
    justify-content: center;
    border-radius: 8px;
    border: 1px solid #F57F20;
    background: #F57F20;
    color: #fff;
    align-content: center;
    align-items: center;
}

.btn-orange2 > img {
    width: 20px !important;
    margin: 0px !important
}


.btn-outline-light {
    flex: 0 0 60px;
    border-radius: 8px;
    border: 1px solid #D5D7DB;
    padding: 5px 15px;
    color: #000;
}

.box-round-20 {
    border-radius: 20px;
    border: 1px solid #D5D7DB;
    padding: 15px;
    overflow-y: auto;
}


.box-round-8 {
    border-radius: 8px;
    border: 1px solid #D5D7DB;
    padding: 15px;
    overflow-y: auto;
}

.emgc2 {

    padding: 3px 12px;
    border-radius: 4px;
    color: #F4361E;
    font-size: 14px;
    font-weight: 700;
    border: 1px solid #F4361E;
    letter-spacing: 0.2px;
}

.wrap-gridboard-cs1 .title_new {
    margin: 5px 0;
    font-size: 18px;
    font-weight: 600;
    height: 30px;
    color: #171717;
    letter-spacing: 0.2px;
}


.wrap-gridboard-cs1 .sm0 {
    color: var(--Text-Tertiary, #8E8E8E);
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0.2px;

}

.wrap-gridboard-cs1 .sm0 span {
    padding-right: 3px;
}

.a-class-list {
    height: 20px;
    font-size: 14px !important;
    text-overflow: ellipsis;
    overflow: hidden;
}

.color-9 {
    background: #D6D6D6;
    color: #000;
}

.ft-color-9 {
    color: #D6D6D6
}

.color-8 {
    background: #3262A6;
    color: #fff;
}

.ft-color-8 {
    color: #3262A6
}


.color-7 {
    background: #39A5C7;
    color: #fff !important;
}

.color-7 a {
    color: #fff !important;
    text-overflow: ellipsis;
}

.ft-color-7 {
    color: #39A5C7
}

.color-6 {
    background: #7580E3;
    color: #fff !important;
}

.color-6 a {
    color: #fff !important;
    text-overflow: ellipsis;
}

.ft-color-6 {
    color: #7580E3
}

.color-5 {
    background: #A376EB;
    color: #fff !important;
}

.color-5 a {
    color: #fff !important;
    text-overflow: ellipsis;
}

.ft-color-5 {
    color: #A376EB
}

.color-4 {
    background: #EC63E6;
    color: #fff !important;
}

.color-4 a {
    color: #fff !important;
    text-overflow: ellipsis;
}

.ft-color-4 {
    color: #EC63E6
}

.color-3 {
    background: #F88787;
    color: #fff !important;
}

.color-3 a {
    color: #fff !important;
    text-overflow: ellipsis;
}

.ft-color-3 {
    color: #F88787
}

.color-2 {
    background: #F4C05C;
    color: #fff !important;
}

.color-2 a {
    color: #fff !important;
    text-overflow: ellipsis;
}

.ft-color-2 {
    color: #F4C05C
}

.color-1 {
    background: #E5DD1D;
    color: #fff;
}

.color-1 a {
    color: #fff !important;
    text-overflow: ellipsis;
}

.ft-color-1 {
    color: #E5DD1D
}

.ft-color-0 {
    color: #C4C4C4
}


/* 라운드 박스 텍스트 - 참여중 등 */
.istatus-s {
    border-radius: 30px;
    height: 24px;
    font-size: 14px;
    padding: 0 15px;
    line-height: 23px;
}

.radius4 {
    border-radius: 4px !important;
}

.istatus4 {
    display: flex;
    padding: 3px 8px;
    height: 28px;
    align-items: center;
    border-radius: 100px;
    background: #DDF5DE;
    color: #24B129;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    flex: 0 0 fit-content;
    width: fit-content;
    letter-spacing: 0.2px;
}

.istatus5 {
    display: flex;
    padding: 3px 8px;
    height: 28px;
    align-items: center;
    border-radius: 100px;
    background: #E4F1FF;
    color: #0077FF;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    flex: 0 0 fit-content;
    width: fit-content;
    letter-spacing: 0.2px;
}

.istatus6 {
    display: flex;
    padding: 3px 8px;
    height: 28px;
    align-items: center;
    border-radius: 100px;
    background: #EBEBEB;
    color: #595959;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    flex: 0 0 fit-content;
    width: fit-content;
    letter-spacing: 0.2px;
}

.istatus7 {
    display: flex;
    padding: 3px 8px;
    height: 28px;
    align-items: center;
    border-radius: 100px;
    background: #FFEAD9;
    color: #F57F20;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    flex: 0 0 fit-content;
    width: fit-content;
    letter-spacing: 0.2px;
}

.swch_modify {
    align-items: flex-start !important;
}

.swch_modify input[type="checkbox"] {
    min-width: 44px;
    margin-top: 3px;
}


.btn-light-gray {
    height: 40px;
    padding: 0 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
    color: #171717;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    letter-spacing: 0.2px;
    border: 1px solid #F0F0F0;
    background: #F0F0F0;
    margin-right: 5px;
}

.btn-light-gray:disabled {
    color: #C0C0C0 !important;
    background: #fff !important;
}

.btn-ssm {
    height: 32px;
    padding: 0 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
    border: 1px solid #D5D7DB;
    color: #171717;
    font-size: 14px;
    font-weight: normal;
    letter-spacing: 0.2px;
}

.btn-ssm img {
    width: 20px;
}

.btn-sm {
    height: 40px;
    padding: 0 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
    border: 1px solid #D5D7DB;
    color: #171717;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    letter-spacing: 0.2px;
}

.btn-sm-h38 {
    height: 38px;
    padding: 0 15px;
    border-radius: 8px;
    border: 0px;
    font-size: 15px;
    font-weight: normal;
    letter-spacing: 0.2px;
}


.nb {
    border: 0px !important;
}

.btn-md {
    height: 48px;
    padding: 0 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
    border: 1px solid #D5D7DB;
    color: #171717;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    letter-spacing: 0.2px;
}

.btn-lg {
    height: 52px;
    padding: 0 35px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
    border: 1px solid #D5D7DB;
    color: #171717;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    letter-spacing: 0.2px;
}


.btn-orange {
    border: 1px solid #FF6A00 !important;
    color: #fff !important;
    background: #FF6A00 !important;
}

.btn-dark {
    border: 1px solid #5B5B5B;
    color: #fff;
    background: #5B5B5B;
}

.btn-inline {
    position: absolute;
    bottom: 0;
    right: 0;
    border-radius: 8px 0 8px 0;
    background: rgba(0, 0, 0, 0.5); /* Green background with 30% opacity */
    color: #fff;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;

}

.btn-inline > img {
    width: 26px !important;
    object-fit: contain !important;
}


.btn-trans {
    background-color: transparent;
    color: #000;
}

.login_txt {
    color: #595959;
    font-size: 16px;
    font-weight: 400;
    text-align: center;
}

.btnlogin_new {
    margin-top: 12px;
    display: flex;
    width: 100%;
    height: 56px;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
    background: #F57F20;
    color: #FFF;
    font-size: 18px;
    font-weight: 500;
    white-space: nowrap;
}

.btnlogin_new strong {
    font-size: 20px;
    font-weight: 700;
}

/* 학술대회 테이블 */

.table-cssympo {
    margin: 24px 0;
    border: 1px solid #E9EBEE;
    border-style: hidden;
    box-shadow: 0 0 0 1px #E9EBEE;
    overflow: hidden;
}

.table-cssympo tr {
    border: 1px solid #E9EBEE;
}

.table-cssympo th {
    border-left: 1px solid #E9EBEE;
    background: #F7F7F7;
    padding: 12px 22px;
    text-align: center;
    color: #8E8E8E;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    letter-spacing: 0.2px;
}

.table-cssympo td {
    border-left: 1px solid #E9EBEE;
    padding: 10px;
    text-align: left;
    color: var(--Text-Secondary, #5B5B5B);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: 0.2px;
}

/* 팝업 */

.modal_layer {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    min-width: 510px;
    border-radius: 12px;
    box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.1), 0 4px 20px 0 rgba(0, 0, 0, 0.08);
    background-color: #ffffff;
    z-index: 1234567890;
    min-height: 400px;
}

.modal_layer > button {
    min-width: 170px;
    line-height: 28px
}

.modal_layer_sm {
    position: absolute;
    top: 35%;
    left: 50%;
    transform: translate(-50%, -35%);
    min-width: 300px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.1), 0 4px 20px 0 rgba(0, 0, 0, 0.08);
    background-color: #ffffff;
    z-index: 1234567890;
    min-height: 200px;
}

.modal_layer_sm > button {
    min-width: 170px;
    line-height: 28px
}

.modal_tit {
    width: 100%;
    position: relative;
    padding: 25px 25px 15px 25px;
    border-bottom: 1px solid #E8E8E8;
}

.modal_tit.noborder {
    width: 100%;
    position: relative;
    padding: 30px 25px 0 25px;
    border-bottom: 0px;
}

.modal_titimg .btn_close,
.modal_tit .btn_close {
    position: absolute;
    top: 20px;
    right: 15px;
    z-index: 12345;
    height: 33px;
}

.modal_titimg .btn_close button img,
.modal_tit .btn_close button img {
    width: 40px;
    height: 40px;
}

.modal_body {
    padding: 15px 15px 25px 15px;
    max-height: 860px;
    overflow-y: auto;
}

.modal_body.short {
    padding: 15px 15px 25px 15px;
    max-height: 760px;
    overflow-y: auto;
}

.modal_body.short2 {
    padding: 15px 15px 25px 15px;
    max-height: 370px;
    overflow-y: auto;
}

.modal_titimg {
    width: 610px;
    height: 313px;
    border-radius: 12px 12px 0px 0px;
    background: #e9e9e9;
    position: relative;
}

.modal_titimg img {
    width: 610px;
    height: 313px;
    border-radius: 12px 12px 0px 0px;
    position: relative;
}

.modal_boxtxt {
    padding: 25px 25px 10px 25px;
    position: relative;
}

.box_hash {
    margin: 5px 0;
    font-size: 18px;
    font-weight: normal;
    height: 30px;
    color: #949494;
    letter-spacing: 0.2px;
}

.box_title {
    margin: 10px 0;
    font-size: 24px;
    font-weight: 600;
    height: 30px;
    color: #171717;
    letter-spacing: 0.2px;
}

.master_imgbox img {
    border-radius: 50px;
    width: 54px;
    height: 54px;
    border: 1px solid #000;
    object-fit: cover;
}

.master_txt {

}

.master_txt .master {
    padding: 0 15px;
    color: #000;
    font-size: 16px;
}

.master_txt .data {
    padding: 0 12px 0 32px;
    color: #8E8E8E;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.2px;
    background: url(/assets/images/icon_person.svg) no-repeat center left 12px;
    display: flex;
    align-items: center;
}


.modal_footer {
    position: absolute;
    bottom: 0px;
    width: 100%;
    text-align: center;
    padding: 20px;
    display: flex;
    justify-content: space-between;
    background: #fff;
    min-height: 45px;
    border-radius: 0 0 15px 15px;
}

.modal_footer_sm {
    position: absolute;
    bottom: 0px;
    width: 100%;
    text-align: center;
    padding: 10px 20px;;
    display: flex;
    justify-content: space-between;
    background: #fff;
    min-height: 25px;
    border-radius: 0 0 15px 15px;
    border-top: 1px solid #E8E8E8;
}

.modal_footer_sm.noborder {
    border-top: 0px;
}


.pop_bak {
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.6);
    width: 100%;
    height: 100%;
    z-index: 1234;
    overflow: hidden;
    display: none;
}


.chat_member {
    padding: 0 12px 0 36px;
    color: #8E8E8E;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0.2px;
    background: url(/assets/images/icon_person.svg) no-repeat center left 14px;
    display: flex;
    align-items: center;
    height: 100%;
}

/* 오픈채팅 */

#open_chat {
    position: absolute;
    top: 30%;
    left: 50%;
    transform: translate(-50%, -30%);
    width: 610px;
    background: #fff;
    border-radius: 3px;
    box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.04), 0 4px 20px 0 rgba(0, 0, 0, 0.08);
    background-color: #ffffff;
    z-index: 123456;
    height: 890px;
    overflow: hidden;
}

#btnchatmin {
    display: none;
}

#open_chat .wrap_chat {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch;
    position: relative;
}

#open_chat .top_bar {
    background: #F8F9FA;
    height: 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #CCCCCC;
    width: 100%;
    z-index: 12345678;
}

#open_chat .top_bar h8 {
    font-size: 12px;
    font-weight: bold;
    padding-left: 28px;
    position: relative;
}

#open_chat .top_bar h8::after {
    content: '';
    background: url(/assets/images/icon_mds_chat.svg) no-repeat left center;
    width: 20px;
    height: 10px;
    position: absolute;
    left: 4px;
    top: 0;
}

#open_chat .top_bar ul {
    display: flex;
}

#open_chat .top_bar ul li button {
    width: 44px;
    height: 32px;
    padding: 0px;

}


#open_chat .chat_header {
    background: #fff;
    flex: 0 0 fit-content;
    border-bottom: 1px solid #E8E8E8;
    border-right: 1px solid #BABABA;
    border-left: 1px solid #BABABA;
    position: relative;
}

#open_chat .chat_header .notice {
    position: absolute;
    width: 94%;
    min-height: 50px;
    top: 80px;
    left: 50%;
    transform: translateX(-50%);
    background: #fff;
    border-radius: 8px;
    box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.2);
    display: flex;
    z-index: 1234567890;
    padding: 0px;
}

#open_chat .chat_header .notice .text {
    background: url(../images/openchat/volume_up.svg) no-repeat 0px 3px;
    padding-left: 30px;
    margin: 15px;
    position: relative;
    width: 90%;
}

#open_chat .chat_header .notice .text.pb-50 {
    padding-bottom: 50px;
}

#open_chat .chat_header .notice .updown {
    position: absolute;
    top: 15px;
    right: 18px;

}

#open_chat .chat_header .notice .btm {
    position: absolute;
    bottom: 0px;
    width: 100%;
    height: 45px;
    display: flex;
    justify-content: center;
    border-top: 1px solid #ddd;

}

#open_chat .chat_header .ht {
    height: 62px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#open_chat .chat_header h3 {
    font-size: 24px;
    font-weight: bold;
    padding-left: 12px;
    position: relative;
}

#open_chat .chat_header .ht ul {
    flex: 0 0 fit-content;
    display: flex;
}

#open_chat .chat_header .url {
    height: 36px;
    color: #CCC;
    font-size: 14px;
    line-height: 36px;
    white-space: nowrap;
    overflow: hidden;
    padding: 0 12px;
    background: #282828;
}

.notice .updown button img {
    margin-left: auto;
    transition: transform 0.3s;
}

.notice.open {
    flex-direction: column;
}

.notice.open .updown button img {
    transform: rotate(180deg);
}

.notice .notice-body, .notice .btm {
    display: none !important;
}

.notice.open .notice-body {
    display: block !important;
    padding-left: 30px;
    margin: 15px;

    width: 80%;
    position: relative;
}

.open_chat_menu {
    width: 180px;
    position: absolute;
    top: 55px;
    right: -16px;
    background: #fff;
    border: 1px solid #ddd;
    display: flex;
    flex-direction: column;
    z-index: 123456789012;
    margin-right: 18px;
}

.open_chat_menu li a {
    padding: 10px 20px;
    display: flex;
    font-size: 15px;
}

.open_chat_menu li a i {
    padding: 0 10px 0 0;
    align-content: center;
}

.open_chat_menu li a i img {
    width: 18px;
}

.open_chat_menu li a i img.resize {
    width: 20px;
}

.open_chat_menu .icon1.active {
    background: url(/assets/images/openchat/notifications.svg) no-repeat;
    width: 28px;
}

.open_chat_menu .icon1 {
    background: url(/assets/images/openchat/notifications_off.svg) no-repeat;
    width: 28px;
}

#open_chat .chat_body {
    flex: 1;
    position: relative;
    border-left: 1px solid #BABABA;
    border-right: 1px solid #BABABA;
}

#open_chat .chat_body .chat_scroll {
    padding: 0 24px;
    margin-right: 2px;
    overflow-y: auto;
    overflow-x: hidden;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow-anchor: auto !important;
}

#open_chat .chat_body ul.chat_content {
    padding: 28px 0;
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: stretch;
    gap: 20px;
}


#open_chat .chat_body .date {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px; /* 좌우 여백 */
    width: 100%;
    margin: 5px 0;
}

#open_chat .chat_body .date .line {
    flex: 1;
    height: 1px;
    background-color: #ddd;
    opacity: 0.6;
}

#open_chat .chat_body .date .date-text {
    font-size: 14px;
    color: #A5A5A5;
    font-weight: 500;
    white-space: nowrap;
}


#open_chat .chat_body .in_out {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

#open_chat .chat_body .in_out span {
    width: 80%;
    display: flex;
    padding: 3px 16px;
    justify-content: center;
    align-items: center;
    height: 32px;
    border-radius: 8px;
    background: #F0F0F0;
    color: #909090;
    font-size: 14px;
    font-weight: 500;
}


#open_chat .chat_body .mds {
    padding-right: 90px;
    display: flex;
    justify-content: left;
    width: 100%;
    min-height: 28px;
    position: relative;
    margin-bottom: 10px;
}

#open_chat .chat_body .mds > div {
    flex: 0 0 fit-content;
}

#open_chat .chat_body .mds .user_thum {
    width: 54px;
    height: 54px;
    border-radius: 50px;
    border: 1px solid #ddd;
}

#open_chat .chat_body .mds .user_thum img {
    width: 54px;
    height: 54px;
    border-radius: 50px;
    object-fit: cover;

}

#open_chat .chat_body .mds .user_id {
    margin: 0px 8px 0 8px;
    color: #888;
    font-size: 14px !important;
}

#open_chat .chat_body .mds .chat {
    flex: 0 1 auto;
    margin: 0px 8px 0 8px;
    border-radius: 8px;
    background: #F0F0F0;
    padding: 5px 8px;
    position: relative;
    font-size: 14px;
    line-height: 130%;
    max-width: 360px;
    margin-bottom: 10px;
}

#open_chat .chat_body .mds .chat:last-child {
    margin-bottom: 0px;
}

#open_chat .chat_body .mds .chat .emoji_box {
    position: absolute;
    bottom: -40px;
    left: 0px;
    width: 150px;
    height: 32px;
    box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.3);
    background-color: #ffffff;
    border-radius: 4px;
    display: flex;
    justify-content: center;
    z-index: 1234567;
}

#open_chat .chat_body .mds .chat .emoji_box p {
    padding: 5px 4px;
}


#open_chat .chat_body .mds .chat .re_menu {
    width: 100px;
    position: absolute;
    bottom: -60px;
    right: 15px;
    background: #fff;
    border: 1px solid #ddd;
    display: none;
    flex-direction: column;
    z-index: 1234567;
}

#open_chat .chat_body .mds .chat .re_menu li a {
    padding: 7px 15px;
    display: flex;
    font-size: 15px;
}

#open_chat .chat-remenu {
    width: 100px;
    position: absolute;
    right: 15px;
    background: #fff;
    border: 1px solid #ddd;
    flex-direction: column;
    z-index: 1234567;
}

#open_chat .chat-remenu li a {
    padding: 7px 15px;
    display: flex;
    font-size: 15px;
}

#open_chat .chat_body .mds .chat .radio_box {
    position: absolute;
    top: 6px;
    right: -100px;
}

#open_chat .chat_body .mds .chat .radio_box.active {
    display: block !important;
}

#open_chat .chat_body .mds .chat .btn_box {
    position: absolute;
    bottom: 0px;
    right: -70px;
    width: 65px;
    height: 32px;
    border: 1px solid #ddd;
    background-color: #ffffff;
    border-radius: 4px;
    display: flex;
    padding: 3px;
    justify-content: center;
    z-index: 1234567;
}

#open_chat .chat_body .mds .chat .btn_box li:first-child {
    border-right: 1px solid #ddd;
    padding: 5px 5px 0 0;
}

#open_chat .chat_body .mds .chat .btn_box li:last-child {
    padding-left: 5px;
}

#open_chat .chat_body .mds .time > div {
    height: 100%;
    display: flex;
    flex-wrap: nowrap;
    align-items: end;
}

#open_chat .chat_body .time span {
    white-space: nowrap;
    color: #8C8C8C;
    font-size: 12px;
    font-weight: 500;
}

#open_chat .chat_body .cust {
    padding-left: 52px;
    display: flex;
    justify-content: right;
    align-items: stretch;
    width: 100%;
}

#open_chat .chat_body .cust > div {
    flex: 1 0 auto;
}

#open_chat .chat_body .cust .time > div {
    height: 100%;
    display: flex;
    flex-wrap: nowrap;
    align-items: end;
    justify-content: right;
    gap: 12px;
}

#open_chat .chat_body .cust .chat {
    flex: 0 1 auto;
    margin: 0 7px 0 8px;
    border-radius: 8px;
    background: #0072FF;
    padding: 5px 8px;
    position: relative;
    color: #fff;
    font-size: 14px;
    font-weight: 400;
    line-height: 140%;
}


#open_chat .chat_body .cust .chat .re_menu {
    width: 100px;
    position: absolute;
    bottom: -107px;
    right: -6px;
    background: #fff;
    border: 1px solid #ddd;
    display: flex;
    flex-direction: column;
    z-index: 1234567;
}

#open_chat .chat_body .cust .chat .re_menu li a {
    padding: 7px 15px;
    display: flex;
    font-size: 15px;
    color: #000;
}


#open_chat .chat_body .cust .boximg {
    flex: 0 1 auto;
    margin: 0 7px 0 8px;
    position: relative;
}

#open_chat .chat_body .cust .boximg img {
    width: 100%;
    height: auto;
    max-width: 479px;
    max-height: 320px;
    border-radius: 8px;
    object-fit: cover;
    position: relative;
}

#open_chat .chat_body .cust .boxfile {
    flex: 0 1 auto;
    margin: 0 7px 0 8px;
    text-align: right;
}

#open_chat .chat_body .cust .boxfile img {
    width: 30px;
    display: inline-block;
}

#open_chat .chat_body .btn_down {
    position: absolute;
    right: 15px;
    bottom: 15px;
    z-index: 1234567890;
}

#open_chat .chat_body .btn_down button {
    width: 40px;
    height: 40px;
    border-radius: 30px;
    text-align: center;
    padding: 5px;
    background: #fff;
    box-shadow: 0px 5px 12px 0px rgba(0, 0, 0, 0.2);
}

#open_chat .chat_body .btn_down button img {
    height: 35px;
    object-fit: cover;
}

#open_chat .chat_footer {
    flex: 0 0 fit-content;
    background: #fff;
    position: relative;
    border-left: 1px solid #BABABA;
    border-right: 1px solid #BABABA;
    border-bottom: 1px solid #BABABA;
    height: 330px;
    /* overflow: hidden; */
}

#open_chat .chat_footer .search {
    padding: 20px 24px;
    border-radius: 12px 12px 0px 0px;
    border-top: 1px solid #E9EBED;
    background: #fff;
    box-shadow: 0px -2px 12px 0px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

#open_chat .chat_footer .search ul {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

#open_chat .chat_footer .search li a {
    color: #595959;
    display: block;
}

#open_chat .chat_footer .search li a strong {
    color: #171717;
    font-weight: 700;
}

#open_chat .chat_footer ul.message {
    padding: 10px 15px;
    width: 100%;
    height: 90px;
    border-top: 1px solid #E9EBED;
}

#open_chat .chat_footer ul.report_message {
    display: none;
    padding: 10px 15px;
    width: 100%;
    border-top: 1px solid #E9EBED;
}

#open_chat .chat_footer ul.message textarea {
    width: calc(100% - 0px);
    height: 80px;
    border: 0;
    padding: 10px;
    border-radius: 8px;
    font-size: 14.5px;
    background: #fff;
    border: 1px solid #CFCFCF;
}

#open_chat .chat_footer .banner img {
    border-radius: 8px;
}


/* 잠금상태 비밀번호 입력 */
.password-container {
    background-color: #f5f7fa;
    border-radius: 10px;
    padding: 20px 35px;
    width: 100%;
    max-width: 400px;
    display: flex;
    justify-content: space-between;
    margin: 50px auto;
}

.digit-input {
    width: 50px;
    text-align: center;
    border: none;
    border-bottom: 2px solid #aaa;
    background: transparent;
    font-size: 24px;
    margin: 0 10px;
    outline: none;
    padding: 5px;
}

.digit-input:focus {
    border-bottom-color: #555;
}

/* 숫자 입력 화살표 숨기기 */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance: textfield;
}

/* 잠금상태 비밀번호 입력 끝 */


.massage_btn_area, .report_massage_btn_area {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0 0 0;
    gap: 12px;
    width: 100%;
    height: 48px;
}

massage_btn_area li:first-of-type, #popup_chat .chat_footer ul.input li:last-of-type {
    flex: 0 0 fit-content;
}

massage_btn_area li:nth-of-type(2) {
    display: flex;
    align-items: center;
    justify-content: start;
    flex: 1;
}

#open_chat_file {
    display: none;
}

.wrap_chat_file {
    position: absolute;
    display: flex;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: rgba(0, 0, 0, 0.5);
    justify-content: center;
    align-items: center;
}

#open_chat_file .boxchatfile {
    width: 440px;
    border-radius: 12px;
    background: #FFF;
}

#open_chat_file h3 {
    padding: 16px 13px 24px 16px;
    position: relative;
}

#open_chat_file h3 span {
    font-size: 20px;
    font-weight: 600;
}

#open_chat_file h3 button {
    position: absolute;
    right: 13px;
    top: 16px;
}

#open_chat_file .wrap-listfile {
    padding: 0 16px 16px;
}

#open_chat_file .listfile {
    width: 100%;
    height: fit-content;
    max-height: 290px;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 12px 0 16px;
    /* border: 1px solid #E9EBEE; */
}

#open_chat_file .listfile li {
    padding-bottom: 12px;
    display: flex;
    position: relative;
    gap: 16px;
}

#open_chat_file .listfile li .boximg {
    width: 56px;
    height: 56px;
    flex: 0 0 56px;
}

#open_chat_file .listfile li .boxtxt {
    flex: 1 1 auto;
    overflow: hidden;
}

#open_chat_file .listfile li .boxtxt p {
    line-height: 28px;
    padding-right: 25px;
}

#open_chat_file .listfile li .boxtxt span {
    line-height: 28px;
    color: #909090;
}

#open_chat_file .listfile li .boxtxt button {
    position: absolute;
    right: 0;
    top: 14px;
    width: 20px;
    height: 20px;
}

#open_chat_file .boxbtn {
    padding: 0 16px 16px;
}

#open_chat_file .boxbtn button {
    display: flex;
    width: 100%;
    height: 48px;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
    border: 1px solid #DFDFDF;
    background: #FFF;
}

d-flex flex-between mb-1 {
    margin: 24px 0 24px;
}
