:root{
    font-family: Pretendard, -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', Roboto, 'Noto Sans KR', 'Segoe UI', 'Malgun Gothic', sans-serif !important;
}

html {
    scroll-behavior: smooth !important;
    font-family: Pretendard, -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', Roboto, 'Noto Sans KR', 'Segoe UI', 'Malgun Gothic', sans-serif !important;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body{
    font-family: Pretendard, -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', Roboto, 'Noto Sans KR', 'Segoe UI', 'Malgun Gothic', sans-serif !important;
}

.g-bg-e1ebff8c{
    background-color: #e1edff !important;
}
.g-bg-b9d0ff{
    background-color: #b9d0ff !important;
}

.g-bg-cde0ff8c{
    background-color: #cde0ff8c !important;
}

.g-bg-cde0ff8c--hover:hover{
    background-color: #cde0ff8c !important;
}
.g-brd-a8ccff--hover:hover{
    border: 2px solid #a8ccff !important;
}

.mouse-cursor{
    cursor: pointer;
}

/* modal css */
.modal-open .modal {
    overflow-x: hidden;
    overflow-y: auto;
    
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1060;
    display: none;
    width: 100%;
    height: 100%;
    overflow: hidden;
    outline: 0;
    background-color : rgba(0,0,0,0.8);
}

.modal-dialog {
    position: relative;
    width: auto;
    margin: 20px;
    pointer-events: none;
}

.modal.fade .modal-dialog {
    transition: transform 0.28s cubic-bezier(0, 0.4, 0.01, 1.22);
    transition: transform 0.28s cubic-bezier(0.04, -0.35, 0.13, 1.3);
    transform: translate(0, -86%);
}


@keyframes shake {

    0%,
    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }

    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        transform: translateX(-10px);
    }

    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translateX(10px);
        -ms-transform: translateX(10px);
        transform: translateX(10px);
    }
}

.modal.shake .modal-dialog {
    -webkit-animation-name: shake;
    animation-name: shake;
    transition: transform 0.3s ease-out;
    transform: translate(0, -50px);
}


@media (prefers-reduced-motion: reduce) {
    .modal.fade .modal-dialog {
        transition: none;
    }
}

.modal.show .modal-dialog {
    transform: none;
}

.modal.modal-static .modal-dialog {
    transform: scale(1.02);
}

.modal-dialog-scrollable {
    height: calc(100% - 1rem);
}

.modal-dialog-scrollable .modal-content {
    max-height: 100%;
    overflow: hidden;
}

.modal-dialog-scrollable .modal-body {
    overflow-y: auto;
}

.modal-dialog-centered {
    display: flex;
    align-items: center;
    min-height: 100%
}

.modal-content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    pointer-events: auto;
    background-color: #fff;
    background-clip: padding-box;
    /* border-radius: .5rem; */
    outline: 0;
}

.modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1050;
    width: 100vw;
    height: 100vh;
    background-color: #000;
    background-color: rgb(0 0 0 / 0%);
    /* backdrop-filter: blur(54px) saturate(120%) brightness(105%) hue-rotate(10deg); */
    backdrop-filter: blur(3px) saturate(100%) brightness(30%) hue-rotate(0deg);
    -webkit-backdrop-filter: blur(2px) saturate(100%) brightness(30%) hue-rotate(0deg);

    transition: ease-in-out .16s;
}

.modal-backdrop.fade {
    opacity: 0;
}

.modal-backdrop.show {
    opacity: 1;
}

.modal-header {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: space-between;
    padding: 1.5rem;
    padding-bottom: 1rem;
    border-top-left-radius: calc(0.3rem - 1px);
    border-top-right-radius: calc(0.3rem - 1px);
    border-bottom: none;
}

.modal-header .btn-close {
    padding: 0.5rem 0.5rem;
    margin: 0rem 0 0rem auto;
}

.btn-close-left {
    padding: .5rem .5rem;
    margin: calc(28px - 0.25rem);
    margin-bottom: 0rem;
}

.modal-title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 0;
    line-height: 1.5;
    word-break: keep-all;
    color: #1d1d1f;
}

.modal-body {
    position: relative;
    flex: 1 1 auto;
    padding: 0 1.5rem 1.5rem;
    font-weight: 500;
    font-size: 14px;
    color: #333333;
    scroll-behavior: smooth !important;
}
.modal-student {
    background-color: #efefef;
}

.modal-footer {
    display: flex;
    flex-wrap: wrap;
    flex-shrink: 0;
    align-items: center;
    justify-content: space-between;
    padding: 1.2rem 1.5rem;
    border-bottom-right-radius: calc(0.3rem - 1px);
    border-bottom-left-radius: calc(0.3rem - 1px);
    border-top: none;
    /* box-shadow: 0px -20px 20px 0px rgb(255 255 255); */
    z-index: 10;
}

.modal-footer>* {
    margin: 0.25rem;
}

.modal-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll;
}

@media (min-width: 576px) {
    .modal-dialog {
        max-width: 480px;
        margin: 1.75rem auto;
    }

    .modal-dialog_1 {
        max-width: 950px;
        margin: 1.75rem auto;
    }

    .modal-dialog-scrollable {
        height: calc(100% - 3.5rem);
    }

    .modal-dialog-centered {
        min-height: calc(100% - 3.5rem);
    }

    .modal-dialog.typemodal {
        max-width: 520px;
        /* margin: 0 auto; */
    }

    .modal-dialog.resumedomodal {
        max-width: 860px;
    }

    .modal-sm {
        max-width: 300px;
    }
}

@media (min-width: 992px) {

    .modal-lg,
    .modal-xl {
        max-width: 800px;
    }
}

@media (min-width: 1200px) {
    .modal-xl {
        max-width: 1140px;
    }
}

.modal-fullscreen {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
}

.modal-fullscreen .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
}

.modal-fullscreen .modal-header {
    border-radius: 0;
}

.modal-fullscreen .modal-body {
    overflow-y: auto;
}

.modal-fullscreen .modal-footer {
    border-radius: 0;
}

@media (max-width: 575.98px) {
    .modal-fullscreen-sm-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

    .modal-fullscreen-sm-down .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0;
    }

    .modal-fullscreen-sm-down .modal-header {
        border-radius: 0;
    }

    .modal-fullscreen-sm-down .modal-body {
        overflow-y: auto;
    }

    .modal-fullscreen-sm-down .modal-footer {
        border-radius: 0;
    }

    .modal-one-button-100x{
        width: 100% !important;
    }
}

@media (max-width: 767.98px) {
    .modal-fullscreen-md-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

    .modal-fullscreen-md-down .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0;
    }

    .modal-fullscreen-md-down .modal-header {
        border-radius: 0;
    }

    .modal-fullscreen-md-down .modal-body {
        overflow-y: auto;
        overflow-y: hidden;
    }

    .modal-dialog-scrollable .modal-body {
        overflow-y: auto;
    }

    .modal-fullscreen-md-down .modal-footer {
        border-radius: 0;
    }
}

@media (max-width: 991.98px) {
    .modal-fullscreen-lg-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

    .modal-fullscreen-lg-down .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0;
    }

    .modal-fullscreen-lg-down .modal-header {
        border-radius: 0;
    }

    .modal-fullscreen-lg-down .modal-body {
        overflow-y: auto;
    }

    .modal-fullscreen-lg-down .modal-footer {
        border-radius: 0;
    }
}

@media (max-width: 1199.98px) {
    .modal-fullscreen-xl-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

    .modal-fullscreen-xl-down .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0;
    }

    .modal-fullscreen-xl-down .modal-header {
        border-radius: 0;
    }

    .modal-fullscreen-xl-down .modal-body {
        overflow-y: auto;
    }

    .modal-fullscreen-xl-down .modal-footer {
        border-radius: 0;
    }
}

@media (max-width: 1399.98px) {
    .modal-fullscreen-xxl-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

    .modal-fullscreen-xxl-down .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0;
    }

    .modal-fullscreen-xxl-down .modal-header {
        border-radius: 0;
    }

    .modal-fullscreen-xxl-down .modal-body {
        overflow-y: auto;
    }

    .modal-fullscreen-xxl-down .modal-footer {
        border-radius: 0;
    }
}

.btn.disabled,
.btn:disabled {
    opacity: .6;
    cursor: not-allowed;
}

.slide_btn_wrap .btn.disabled:hover,
.slide_btn_wrap .btn:disabled:hover {
    background-color: #ffad31 !important;
    border-color: #ffad31 !important;
    opacity: .6 !important;
}


.modal_btn {
    padding: 1rem 0;
    margin: 0;
    width: calc(1/2*100% - (1 - 1/2)*14px);
    background: #f8f9f9;
    /* border-radius: .5rem; */
    font-size: 16px;
    font-weight: bold;
    /* line-height: 1; */
}

.modal_btn.modal_btn_main {
    background: #FFAD31;
    color: #fff;
}

.modal_btn.modal_btn_main:hover {
    background: #ff9e0d;
}

.modal_btn.modal_btn_main:disabled:hover {
    background: #FFAD31;
    opacity: .6;
}

.modal_btn_full {
    width: 100%;
    background: #FFAD31;
    color: #fff;
}

.btn-close {
    box-sizing: content-box;
    width: 1em;
    height: 1em;
    padding: 0.25em 0.25em;
    color: #000;
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
    border: 0;
    border-radius: 0.25rem;
    opacity: 0.5;
    outline: none;
}

.btn-close:hover {
    color: #000;
    text-decoration: none;
    opacity: 0.75;
}

.btn-close:focus {
    outline: 0;
    /* box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); */
    opacity: 1;
}

.btn-close:disabled,
.btn-close.disabled {
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    opacity: 0.25;
}

.btn-close-white {
    filter: invert(1) grayscale(100%) brightness(200%);
}

/* //modal css */

.backgoundcolor {
    border-radius: 4px;
    background-color: rgba(0, 0, 0, .5);
    box-shadow: 0 0 1px rgba(255, 255, 255, .5);
    -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, .5);
  }
  
  .mypage_side_menu a {
    padding: 8px 0 !important;
    color: #333333 !important;
  }
  
  .mypage_sec_tit {
    margin-bottom: 1rem;
    font-size: 20px;
    font-weight: bold !important;
    color: #1d1d1f;
  }
  
  @media(max-width: 991px){
    .g-mt-10--mobile{
        margin-top: 10px !important;
    }
    .g-mt-15--mobile{
        margin-top: 15px !important;
    }
    .g-pa-20--web{
        padding: 0 !important;
    }
    .g-mb-50--mobile{
        margin-bottom: 0 !important;
    }
  
    .g-px-0--mobile{
        padding-right: 0;
        padding-left: 0;
    }
  
    .g-px-10--mobile{
        padding-right: 10px !important;
        padding-left: 10px !important;
    }
  
    .g-px-15--mobile-2{
        padding-right: 15px !important;
        padding-left: 15px !important;
    }
  
    .g-mb-15--mobile{
        margin-bottom: 15px !important;
    }
  
    .g-mb-30--mobile{
        margin-bottom: 30px !important;
    }
  
    .g-pa-0--mobile{
        padding: 0 0 !important;
    }
  
    .g-py-10--mobile{
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }
  
    .g-py-20--mobile{
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }
  
    .g-py-0--mobile{
        padding-top: 0px !important;
        padding-bottom: 0px !important;
    }
  
    .d-none-web--block-mobile{
        display: block !important;
    }
  
    .g-width-100x--mobile{
        width: 100% !important;
    }
  
    .d-flex-column--mobile{
        flex-direction: column !important;
    }
  
    .d-none-991{
        display: none !important;
    }
  
    .white_menu--mobile{
        border: none !important;
        box-shadow: none !important;
        text-align: left!important;
        background-color: #fff6ea !important;
    }
  
    .main-menu--mobile{
        background-color: #f4f4f21a !important;
        margin-top: 0px !important;
        border-radius: 5px !important;
        box-shadow: none;
        text-align: left !important;
        backdrop-filter: blur(5px);
        border: 1px solid #ffffff0f !important;
    }
  
    .g-color-white--991{
        color: white !important;
    }
    
    .g-pt-55--991{
        padding-top: 55px !important;
    }
  
    .g-pt-0--991{
        padding-top: 0px !important;
    }
  
    .g-mt-30--991{
        margin-top: 30px;
    }
  }
  
  @media(max-width: 992px){
    .sidebar{
        position: static;
    }
  
    .mobile_none{
        display: none;
    }
  
    .resume_baseinfo{
        padding: 0;
        padding-bottom: 10px;
        border: none;
        border-bottom: 1px solid #dee2e6;
        border-radius: 0;
    }
  
    .mobile_option{
        display: block;
    }
  
    .mobile_nomargin{
        padding-left: 0;
        padding-right: 0;
        border-radius: 0 !important;
        border-color: transparent !important;
    }
  
    .mobile_nomargin > .g-brd-around,
    #cover_view .g-brd-around,
    .mobile_nobrd,
    .mobile_nomargin .sidebar .g-brd-around{
        border-color: transparent !important;
    }
  
    .mobile_nomargin > .rounded {
        border-radius: 0 !important;
    }
  
    .mobile_nomargin > div,
    .mobile_nomargin > aside{
        border-radius: 0 !important;
        border-color: transparent !important;
    }
  
    .mobile_nomargin_alt{
        margin-left: -15px;
        margin-right: -15px;
        border-color: transparent !important;
        border-radius: 0 !important;
    }
  
    .mobile_noradius{
        border-radius: 0px !important;
    }
  
    .mobile_noborder{
        border: 0px !important;
    }
    
  }
  
  .g-brd-gray-light-v4_2 {
    border-right: none !important;
    border-top: none !important;
    border-bottom: none !important;
  }
  
  .g-brd-around.g-brd-gray-light-v4.g-pa-30.g-mb-30 {
    border: none;
  }
  
  .g-bg-white-backdrop{
    background-color: #ffffff1a !important;
    border: 0.1px solid #ffffff1c;
    color: white;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px) !important;
  }
  
  .g-bg-white-backdrop-video{
    background-color: #ffffff33 !important;
    border: 0.1px solid #ffffff24;
    color: white;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px) !important;
  }
  
  .g-bg-white-backdrop-video:hover{
    background-color: #ffffff41 !important;
  }
  
  .u-icon-v2.u-icon-size--sm.g-color-primary.rounded-circle {
    padding: 3px;
  }
  
  .rounded {
    border-radius: .5rem !important;
  }

  .sticky > div, aside{
    position: sticky;
    top: 0px;
}

.navbar-vertical .navbar-nav .nav .nav-link{
    padding-top: .8rem;
    padding-bottom: .8rem;
    font-size: 1rem;
}

.navbar-vertical .navbar-nav .nav-link svg path,
.navbar-vertical .navbar-nav .nav-link svg polyline,
.navbar-vertical .navbar-nav .nav-link svg line,
.navbar-vertical .navbar-nav .nav-link svg polygon{
    stroke: #1e2e50 !important;
    stroke: #F8FAFC !important;
}

.navbar-vertical .navbar-nav .nav-link.active,
.navbar-vertical .navbar-nav .nav-link.active svg path,
.navbar-vertical .navbar-nav .nav-link.active svg polyline,
.navbar-vertical .navbar-nav .nav-link.active svg line,
.navbar-vertical .navbar-nav .nav-link.active svg polygon{
    color: #ffad31;
    stroke: #ffad31 !important;
}

.navbar-vertical .navbar-nav .nav-link.active:before{
    background: #ffad31;
}

.table_header_search .input-group{
    flex-wrap: nowrap;
}

.table_header_search .input-group .form-select{
    width: auto;
    min-width: 150px;
    border-radius: .25rem !important;
}

.table_header_search .input-group .form-control{
    width: inherit;
}

.topic_type{
    display: inline-block;
    margin-right: .25rem;
    padding: .5rem .8rem;
    font-size: 12px;
    border: 2px solid #dee2e6;
    border-radius: 100px;
    line-height: 1;
}

.table thead th{
    font-size: .85rem;
}

.total_result_txt{
    padding: 14px;
    text-align: right;
}

.excel_export_btn{
    display: flex;
    margin-top: 1.5rem;
}

.excel_export_btn a{
    margin-left: auto;
}

.card-footer .nav-pagination li{
    padding: 0 !important;
}

.card-footer .nav-pagination li a{
    display: block;
    padding: 16px;
}

.card-footer .nav-pagination li a.g-color-gray-dark-v3{
    position: relative;
    color: #ffad31 !important;
}

.card-footer .nav-pagination li a.g-color-gray-dark-v3::after{
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: #ffad31;
}

.filter_chip_wrap{
    display: none;
    padding: 1.2rem;
    margin-top: .5rem;
    background: #fff;
    border: 1px solid #eeeeee;
    border-radius: calc(.25rem - 1px);
}

.filter_chip_wrap .form-group + .form-group{
    margin-top: .8rem;
}

.filter_chip_wrap .form-group label{
    font-size: 1rem !important;
    font-weight: 500;
}

.filter_chip_wrap li label span{
    font-size: .9rem !important;
    border-width: 1px !important;
    color: #606267 !important;
}

.search_func_wrap{
    display: flex;
    align-items: flex-end;
}

.filter_chip_btn{
    margin-right: .5rem;
    min-height: 30.36px;
    background: #fff;
    cursor: pointer;
}

.chart-legend-item{
    display: flex;
}

.chart-legend-item+.chart-legend-item{
    margin-left: 0;
}

.chart_card .card-body{
    display: flex;
}

.chart_card .card-body .chart{
    width: 65%;
}

.chart_card .card-body .chart-legend{
    width: 35%;
    justify-content: flex-start;
}

.container_popup{
    margin: 0 auto;
    width: 980px;
}

.admin_infocenter{
    padding: 1.2rem;
    margin-bottom: 1rem;
    background: #f6f9fc;
    background: #0F172A;
    border: 1px solid #eee;
    border: 1px solid #334155;
    border-radius: .25rem;
}

.admin_infocenter .admin_infocenter_tit{
    margin-bottom: 1rem;
    font-size: 16px;
    color: #F8FAFC !important;
}

.admin_infocenter *{
    color: #F8FAFC;
}

.manage_notice_list li{
    border-bottom: 1px solid #eee;
}

.manage_notice_list li:last-child{
    border-bottom: 0;
}

.manage_notice_list li a{
    display: flex;
    justify-content: space-between;
    padding: .6rem;
    color: #1e2e50;
}

.manage_notice_tit{
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.manage_notice_list li a:hover{
    background: #f8f9f9;
}

.manage_notice_date{
    padding-left: 1rem;
    opacity: .8;
}

/* 사이드바 색 변경 */

.manage_sidebar{
    background: #1E293B !important;
}

.manage_sidebar .navbar-brand,
.manage_sidebar .nav-link,
.manage_sidebar .nav-link svg,
.manage_sidebar .nav-link svg polygon{
    color: #F8FAFC !important;
    stroke: #F8FAFC !important;
}