@import url("common.css");
@import url("kp_public_popup.css");

/* Font Style - font-weight 

font-family: 'GmarketSansLight';
font-family: 'GmarketSansMedium';
font-family: 'GmarketSansBold';

100 NotoSans-Thin
300 NotoSans-Light 
350 NotoSans-DemiLight
400 NotoSans-Regular
500 NotoSans-Medium
700 NotoSans-Bold
900 NotoSans-Black
*/


/* layout */
#wrap {
    position:relative;
    z-index:1;
    width:100%;
    min-height:100vh;
    display:flex;
    flex-direction:column;
    background:#fff;
}

#header,
#container,
#footer {width:100%;}

#header {
    position:relative;
    background:transparent;
}

/* 상단 바: 슬라이드 배경 위에 뜸 (absolute) */
#header .top {
    position:absolute;
    top:0;
    left:0;
    right:0;
    z-index:2;
    width:100%;
    height:110px;
    box-sizing:border-box;
    background:#fff;
    display:flex;
    align-items:center;
	border-bottom:1px solid #dfdfdf;
    overflow:visible;
}
/* 서브메뉴 전체폭 배경 — .gnb 너비가 아닌 상단바(.top) 100% 기준 */
#header .top::after {
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:100%;
    width:100%;
    height:210px;
    background:rgba(9, 15, 27, 0.58);
    border-top:1px solid rgba(255, 255, 255, 0.1);
    opacity:0;
    visibility:hidden;
    transition:opacity 0.18s ease;
    pointer-events:none;
    z-index:14;
}
#header .top:has(.gnb:hover)::after,
#header .top:has(.gnb:focus-within)::after {
    opacity:1;
    visibility:visible;
}
#header .top .header_m_nav_wrap .gnb::after {
    display:none;
}
#header .top_inner {
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    width:100%;
    height:100%;
    gap:24px;
}
#header .top .header_m_nav_wrap {
    flex:1;
    display:flex;
    flex-direction:row;
    align-items:center;
    min-width:0;
    position:relative;
    height:100%;
}
#header .top .logo {
    margin:0;
    flex-shrink:0;
    line-height:0;
}
#header .top .logo a {display:block; line-height:0;}
#header .top .logo img {
    display:block;
    max-height:72px;
    width:auto;
    height:auto;
}
#header .top .header_m_nav_wrap .gnb {
    order:1;
    flex:1;
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
    position:relative;
    height:100%;
}
#header .top .header_m_nav_wrap .gnb > ul {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:0;
    height:100%;
}
#header .top .header_m_nav_wrap .gnb > ul > li {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:150px;
    height:100%;
}
#header .top .header_m_nav_wrap .gnb > ul > li > a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    width:100%;
    color:#2c2c2c;
    font-size:20px;
    font-weight:500;
    letter-spacing:-0.02em;
    white-space:nowrap;
}
#header .top .header_m_nav_wrap .gnb > ul > li > a:hover {opacity:0.85;}
#header .top .header_m_nav_wrap .gnb .submenu {
    position:absolute;
    left:50%;
    top:100%;
    transform:translate(-50%, 4px);
    min-width:230px;
    padding:10px 8px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity 0.18s ease, transform 0.18s ease;
    z-index:21;
}
#header .top .header_m_nav_wrap .gnb .submenu li {
    width:100%;
}
#header .top .header_m_nav_wrap .gnb .submenu li + li {
    margin-top:4px;
}
#header .top .header_m_nav_wrap .gnb .submenu a {
    display:block;
    padding:8px 14px;
    color:#fff;
    font-size:14px;
    font-weight:400;
    letter-spacing:-0.01em;
    white-space:normal;
    line-height:1.35;
    text-align:center;
}
#header .top .header_m_nav_wrap .gnb .submenu a:hover {
    color:#9dc6ff;
}
#header .top .header_m_nav_wrap .gnb:hover .submenu,
#header .top .header_m_nav_wrap .gnb:focus-within .submenu {
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translate(-50%, 0);
}
#header .top .header_m_nav_wrap .header_right {
    order:2;
    flex-shrink:0;
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    justify-content:center;
    gap:10px;
}
#header .top .login_info {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-end;
    gap:6px 14px;
}
#header .top .login_info a {
    color:#2c2c2c;
    font-size:12px;
    letter-spacing:-0.02em;
    white-space:nowrap;
    padding:4px 12px;
    border-radius:999px;
    background:transparent;
    transition:background-color 0.2s ease;
}
#header .top .login_info a:hover,
#header .top .login_info a:focus {
    background:rgba(255, 255, 255, 0.18);
}
#header .top .btn_menu {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    box-sizing:border-box;
    height:38px;
    margin:0;
    padding:0 18px 0 20px;
    border:0;
    border-radius:999px;
    background:#1e6fd9;
    color:#fff;
    font-size:14px;
    font-weight:500;
    letter-spacing:-0.02em;
    line-height:1;
    text-decoration:none;
    cursor:pointer;
    appearance:none;
}
#header .top a.btn_menu {
    color:#fff;
}
#header .top .btn_menu img {
    display:block;
    width:auto;
    height:18px;
    vertical-align:middle;
}
#header .top .btn_menu:hover,
#header .top .btn_menu:focus {
    background:#185bb5;
    color:#fff;
}
#header .top .btn_ham {
    display:none;
    width:34px;
    height:34px;
    border-radius:6px;
    background:transparent;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
}
#header .top .btn_ham span {
    display:block;
    width:20px;
    height:2px;
    background:#2c2c2c;
}

@media all and (max-width:1210px) {
    #header .top_inner {
        padding-left:0;
        box-sizing:border-box;
    }
    #header .top .logo {
        margin-left:20px;
    }
    #header .top .header_m_nav_wrap .gnb > ul > li {
        min-width:148px;
    }
    #header .top .header_m_nav_wrap .gnb .submenu {
        min-width:148px;
    }
    #header .top .logo img {
        height:30px;
        max-height:none;
        width:auto;
    }
}

@media all and (max-width:1100px) {
    #header .top {
        height:88px;
    }
    #header .top_inner {
        justify-content:space-between;
        padding-left:0;
        padding-right:12px;
        gap:12px;
    }
    #header .top .logo {
        margin-left:30px;
    }
    #header .top .logo img {
        height:30px;
        width:auto;
    }
    #header .top .header_m_nav_wrap {
        position:absolute;
        left:0;
        right:0;
        top:100%;
        display:none;
        flex-direction:column;
        align-items:stretch;
        width:100%;
        box-sizing:border-box;
        height:auto;
        padding:0;
        background:rgba(9, 15, 27, 0.9);
        border-top:1px solid rgba(255, 255, 255, 0.1);
        z-index:25;
    }
    #header .top.is_menu_open .header_m_nav_wrap {
        display:flex;
    }
    #header .top .header_m_nav_wrap .header_right {
        order:0;
        flex-shrink:0;
        display:flex;
        flex-direction:column;
        align-items:stretch;
        padding:14px 20px 12px;
        border-bottom:1px solid rgba(255, 255, 255, 0.1);
        gap:12px;
    }
    #header .top .header_m_nav_wrap .login_info {
        justify-content:flex-start;
    }
    #header .top .header_m_nav_wrap .btn_menu {
        align-self:center;
    }
    #header .top .header_m_nav_wrap .gnb {
        position:static;
        left:auto;
        right:auto;
        top:auto;
        display:block;
        flex:none;
        width:100%;
        height:auto;
        padding:10px 0 18px;
        background:transparent;
        border-top:0;
        order:1;
    }
    #header .top .header_m_nav_wrap .gnb > ul {
        width:calc(100% - 24px);
        max-width:520px;
        margin:0 auto;
        display:flex;
        flex-direction:column;
        flex-wrap:nowrap;
        align-items:stretch;
        justify-content:flex-start;
        gap:20px;
        height:auto;
    }
    #header .top .header_m_nav_wrap .gnb > ul > li {
        display:block;
        min-width:0;
        width:100%;
        height:auto;
        text-align:left;
    }
    #header .top .header_m_nav_wrap .gnb > ul > li > a {
        display:block;
        width:100%;
        min-height:0;
        padding:8px 10px;
        font-size:17px;
        text-align:left;
        white-space:normal;
    }
    #header .top .header_m_nav_wrap .gnb .submenu {
        position:static;
        left:auto;
        top:auto;
        transform:none;
        opacity:1;
        visibility:visible;
        pointer-events:auto;
        min-width:0;
        width:100%;
        padding:4px 0 0;
        text-align:left;
    }
    #header .top .header_m_nav_wrap .gnb .submenu li + li {
        margin-top:0;
    }
    #header .top .header_m_nav_wrap .gnb .submenu a {
        text-align:left;
        padding:6px 10px;
        font-size:14px;
        line-height:1.35;
        color:rgba(255, 255, 255, 0.82);
    }
    #header .top .header_m_nav_wrap .gnb:hover .submenu,
    #header .top .header_m_nav_wrap .gnb:focus-within .submenu {
        transform:none;
    }
    #header .top .header_m_nav_wrap .gnb::after {
        display:none;
    }
    #header .top::after {
        display:none;
    }
    #header .top .btn_ham {
        display:flex;
        flex-shrink:0;
        margin-left:auto;
        position:relative;
        z-index:30;
    }
    #header .top .header_m_nav_wrap .gnb > ul > li > a {
        color:#fff;
    }
    #header .top .header_m_nav_wrap .login_info a {
        color:#fff;
    }
    #header .top .header_m_nav_wrap .login_info a:hover,
    #header .top .header_m_nav_wrap .login_info a:focus {
        background:rgba(255, 255, 255, 0.12);
    }
}

@media all and (max-width:768px) {
    #container .main_visual .slide_track .slide {padding-top:clamp(88px, 12vw, 120px);}
    #header .top {height:78px; min-height:0; padding:0;}
    #header .top_inner {
        flex-wrap:nowrap;
        justify-content:space-between;
        gap:12px;
        padding-left:20px;
        padding-right:12px;
    }
    #header .top .logo {
        margin-left:10px;
    }
    #header .top .logo img {
        height:25px;
    }
    #header .top .header_m_nav_wrap .gnb > ul {
        gap:16px;
        width:calc(100% - 20px);
        max-width:none;
    }
    #header .top .header_m_nav_wrap .gnb > ul > li > a {
        font-size:16px;
    }
    #header .top .header_m_nav_wrap .header_right {align-items:center;}
    #header .top .header_m_nav_wrap .login_info {justify-content:center;}
}

.header_inner,
.container_inner,
.f_inner {
    width:calc(100% - 40px);
    max-width:1200px;
    margin:0 auto;
}

#footer {
    position:relative;
    background:#1f2433;
    color:#7f8594;
}
#footer .f_inner {
    position:relative;
    padding:0;
}
#footer .footer_top {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:70px;
}
#footer .footer_top::after {
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:100%;
    border-bottom:1px solid rgba(255, 255, 255, 0.12);
    transform:none;
}
#footer .footer_links {
    display:flex;
    align-items:center;
    gap:32px;
}
#footer .footer_links li,
#footer .footer_links a {
    font-size:18px;
    font-family:'Noto Sans Korean', sans-serif;
    letter-spacing:-0.02em;
    color:#7f8594;
}
#footer .footer_links a:hover {
    color:#c8cfde;
}
/* 우측 하단 플로팅 — 문의하기(세로) + 맨 위로 */
.kp_float_actions {
    position:fixed;
    right:24px;
    bottom:24px;
    z-index:1200;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:10px;
}
.kp_float_qna {
    display:inline-flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:10px;
    box-sizing:border-box;
    width:52px;
    padding:16px 8px 14px;
    margin:0;
    border:0;
    border-radius:26px;
    background:#1e6fd9;
    color:#fff;
    font-size:14px;
    font-weight:500;
    font-family:'Noto Sans Korean', sans-serif;
    letter-spacing:0.12em;
    line-height:1.15;
    text-decoration:none;
    cursor:pointer;
    appearance:none;
    box-shadow:0 6px 20px rgba(30, 111, 217, 0.35);
    transition:background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.kp_float_qna:hover,
.kp_float_qna:focus {
    background:#185bb5;
    color:#fff;
    box-shadow:0 8px 24px rgba(30, 111, 217, 0.42);
    transform:translateY(-1px);
}
.kp_float_qna_txt {
    writing-mode:vertical-rl;
    text-orientation:upright;
    white-space:nowrap;
}
.kp_float_qna_ico {
    display:flex;
    align-items:center;
    justify-content:center;
    width:28px;
    height:28px;
    border-radius:50%;
    background:rgba(255, 255, 255, 0.22);
    flex-shrink:0;
}
.kp_float_qna_ico img {
    display:block;
    width:auto;
    height:16px;
}
.kp_float_btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    border-radius:50%;
    background:#fff;
    box-shadow:0 4px 14px rgba(0, 0, 0, 0.12);
    transition:box-shadow 0.2s ease, transform 0.2s ease;
}
.kp_float_btn:hover,
.kp_float_btn:focus {
    box-shadow:0 6px 18px rgba(0, 0, 0, 0.16);
    transform:translateY(-1px);
}
.kp_float_btn img {
    display:block;
    width:42px;
    height:42px;
}
@media (max-width: 1100px) {
    .kp_float_actions {
        display:none !important;
    }
}
#footer .footer_bottom {
    display:flex;
    align-items:flex-start;
    gap:48px;
    padding:44px 0 52px;
}
#footer .footer_logo {
    display:block;
    width:auto;
    height:auto;
    flex-shrink:0;
}
#footer .footer_info {
    display:flex;
    flex-direction:column;
    gap:4px;
    padding-top:4px;
}
#footer .footer_info p {
    margin:0;
    font-size:16px;
    font-family:'Noto Sans Korean', sans-serif;
    line-height:1.6;
    letter-spacing:-0.02em;
    color:#7f8594;
}
#footer .footer_info .copyright {
    margin-top:14px;
    font-size:13px;
    color:#666d7c;
}


@media all and (max-width:768px) {
    #footer .footer_top {
        min-height:72px;
        padding:10px 0;
        justify-content:center;
    }
    #footer .footer_links {
        justify-content:center;
        gap:10px;
        flex-direction:column;
        flex-wrap:nowrap;
    }
    #footer .footer_links li,
    #footer .footer_links a {
        font-size:16px;
        line-height:1.35;
        white-space:nowrap;
    }
    #footer .footer_bottom {
        flex-direction:column;
        align-items:center;
        gap:16px;
        padding:26px 0 32px;
        text-align:center;
    }
    #footer .footer_logo {
        margin:0 auto;
        height:35px;
    }   
    #footer .footer_info {
        align-items:center;
        text-align:center;
    }
    #footer .footer_info p {
        font-size:14px;
        line-height:1.5;
    }
    #footer .footer_info .copyright {
        margin-top:10px;
        font-size:12px;
    }

    .header_inner,
    .container_inner,
    .f_inner {
        width:calc(100% - 24px);
    }
}








#container {
    width:100%;
    min-height:800px;
    flex:1 0 auto;
    padding-top:150px;
    padding-bottom:100px;
}
#container .contents {width:1200px; margin:0 auto; font-size:14px; padding:20px 0;}

/* 회원가입 */
#container .contents h1 {font-size:34px; padding:40px 0;}
#container .contents h2 {font-size:24px; padding:20px 0;}
#container .contents .line {width:100%; height:1px; background:#ccc; margin:30px 0;}
#container .contents p {padding:10px 0; font-size:18px; height:50px; line-height:50px; display:flex; align-items:center;}
#container .contents p input {margin:0 10px;}
#container .contents p span {line-height:50px; color:#818181; display:block; width:250px; float:left;} 
#container .contents p span.ck {color:#0277c8; width:50px;}
#container .contents p span.ck2 {color:#818181; width:50px;}
#container .contents p a {float:right;}

#container .contents .btn_area {width:100%;  display:grid; place-items:center;}



/* login */
#container .login_wrap {position:relative; width:100%; height:800px; background:#e9e9e9;  display:grid; place-items: center;}
#container .login_wrap .login_box { width:580px; height:510px; text-align: center; background:#fff; border:1px #ddd solid;}
#container .login_wrap .login_box h1 {height:85px; line-height:100px; font-size:35px; font-family:'GmarketSansMedium'; color:#2c2c2c; letter-spacing:-2px; margin-top:90px;}
#container .login_wrap .login_box h1 span {color:#666565;}
#container .login_wrap .login_box input { width:340px; height:50px; margin:8px auto; font-size:16px; font-weight:700;}
#container .login_wrap .login_box button { width:362px; height:50px; margin:8px auto; color:#fff; font-size:20px; font-weight: 700; background:#003eb8; text-align:center;}

/* 아이디 찾기 — 조회 전/후 */
#container .login_wrap .login_box.login_box--find_id_result { min-height: 380px; height: auto; padding-bottom: 40px; }
#container .login_wrap .login_box.login_box--find_id_result h1 { margin-top: 56px; height: auto; line-height: 1.2; padding-bottom: 8px; }
#container .login_wrap .login_box .find_id_action_block { margin: 0 auto 8px; }
#container .login_wrap .login_box .find_id_auth_row { margin: 0 auto 16px; text-align: center; }
#container .login_wrap .login_box .find_id_auto_form { display: none; }
#container .login_wrap .login_box .find_id_result_only { margin: 28px 40px 0; padding: 28px 24px; background: #f4f7fc; border: 1px solid #d0ddee; border-radius: 8px; text-align: center; }
#container .login_wrap .login_box .find_id_result_label { margin: 0 0 12px; font-size: 15px; font-weight: 700; color: #555; }
#container .login_wrap .login_box .find_id_result_ids { margin: 0; font-size: 22px; font-weight: 700; color: #003eb8; letter-spacing: 0.02em; word-break: break-all; }
#container .login_wrap .login_box .find_id_result_again { margin: 20px 0 0; font-size: 14px; }
#container .login_wrap .login_box .find_id_result_again a { color: #666; text-decoration: underline; }
#container .login_wrap .login_box.login_box--find_pw_form { min-height: 480px; height: auto; padding-bottom: 40px; }
#container .login_wrap .login_box.login_box--find_pw_form h1 { margin-top: 56px; height: auto; line-height: 1.2; padding-bottom: 8px; }
#container .login_wrap .login_box .find_pw_reset_block { margin: 8px auto 0; max-width: 380px; }
#container .login_wrap .login_box .find_pw_form_err { margin: 16px 24px 0; font-size: 14px; line-height: 1.5; color: #a52a2a; }
#container .login_wrap .login_box .find_id_fail_msg { margin: 24px 32px 12px; font-size: 15px; line-height: 1.5; color: #555; }
#container .login_wrap .login_box .find_id_fail_login { margin: 0 0 24px; font-size: 15px; }
#container .login_wrap .login_box .find_id_fail_login a { color: #003eb8; text-decoration: underline; }




/* 탭메뉴 */
#container .contents .tab_menu {width:100%; height:150px; margin:0;}
#container .contents .tab_menu ul {width:100%; height:100%; display:flex; align-items:center; justify-content:center;}
#container .contents .tab_menu ul li {width:100%; height:100%; display:flex; align-items:center; justify-content:center;}
#container .contents .tab_menu ul li a {width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:18px; color:#656565; background:#f8f8f8; border:1px #d5d5d5 solid; border-radius:5px; margin:0 2px;}
#container .contents .tab_menu ul li a:hover {color:#003eb8; background:#e9e9e9; border:1px #003eb8 solid;}
#container .contents .tab_menu ul li a.on {color:#003eb8; background:#e9e9e9; border:1px #003eb8 solid;}

#container .contents .tab_menu_sub {width:100%; height:70px; margin:50px 0 80px;}
#container .contents .tab_menu_sub ul {width:100%; height:100%; display:flex; align-items:center; justify-content:center;}
#container .contents .tab_menu_sub ul li {width:100%; height:100%; display:flex; align-items:center; justify-content:center;}
#container .contents .tab_menu_sub ul li a {width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:16px; color:#656565; margin:0 2px;}
#container .contents .tab_menu_sub ul li a:hover {color:#003eb8; border-bottom:2px #003eb8 solid;}
#container .contents .tab_menu_sub ul li a.on {color:#003eb8; border-bottom:2px #003eb8 solid;}

/* 탭(.tab_menu a margin 0 2px)과 좌우 라인 정렬 */
#container .contents .list_area {width:100%; min-height:500px; margin:0 2px; padding:0; box-sizing:border-box;}
#container .contents .list_area h3 {margin:50px 0; padding:0; font-size:24px; font-weight:500; color:#2c2c2c; text-align:left;}

.search_box {padding:15px 0;}
.search_box span {font-size:16px; font-weight:700; color:#1f56e0; padding-right:80px; height:40px; line-height:40px;}
.search_box input {width:485px; height:38px; border:1px #1f56e0 solid; border-radius:5px; font-size:15px; font-weight:700;}
.search_box button {width:120px; height:40px; font-size:16px; font-weight:500; background:#1f56e0; color:#fff; border-radius:5px;}


.table-scroll table {margin:0 auto 10px; border-collapse:separate; border-spacing:0; border-top:1px #0d7cc1 solid;}
.table-scroll th {font-weight:700; height:45px; font-size:14px; color:#343434; white-space:nowrap;}
.table-scroll td {font-weight:300; height:45px; font-size:13px; color:#343434; white-space:nowrap; letter-spacing:0.1px;}


.table_content {width:100%; border-top:1px #ececec solid; border-right:1px #ececec solid; border-spacing:0;}
.table_content th {width:10%; font-size:13px; height:45px; background:#fafafb; border-left:1px #ececec solid; border-bottom:1px #ececec solid;}
.table_content td {font-size:13px; background:#fff; border-left:1px #ececec solid; border-bottom:1px #ececec solid; padding:0 10px; letter-spacing:0.1px;}
.table_content td.l {text-align:left;}
.table_content td.r {text-align:right;}
.table_content td.c {text-align:center;}
.table_content td.p10 {padding:10px;}

.table_st {width:100%; margin:0 auto 20px; overflow-x: scroll;}
.table_st tr:hover {cursor: pointer; background:#fafafa;}
.table_st th {height:45px; font-size:16px; color:#343434; font-weight:700; text-align:center; border-bottom:2px #0d7cc1 solid; background:#f8f8f8;}
.table_st td {height:45px; font-size:15px; color:#343434; font-weight:300; text-align:center; border-bottom:1px #eeecec solid; border-right:1px #eeecec solid; padding:0 10px; letter-spacing:0.1px; background:#fff;}
.table_st td.r {text-align:right;}
.table_st td.l {text-align:left;}

.btn_area {position:relative; width:96%; height:60px; margin:0 auto;}
.btn_area h4 {position:absolute; top:30px; left:0; font-size:16px; font-weight:900;}
.btn_area h4 span {color:#f14713; font-weight:700;}



.form_row {clear:both; height:50px; line-height:50px; text-align:center;}
.btn_blue2 {min-width:120px; height:30px; border:1px #06af93 solid; background:#06af93; color:#fff; font-size:13px; font-weight:500; border-radius:5px; padding:0 20px;}
.btn_blue {min-width:120px; height:30px; border:1px #029dc4 solid; background:#029dc4; color:#fff; font-size:13px; font-weight:500; border-radius:5px; padding:0 20px;}
.btn_blue_line {min-width:120px; height:30px; border:1px #029dc4 solid; background:#fff; color:#029dc4; font-size:13px; font-weight:500; border-radius:5px; padding:0 20px;}

.btn_red {min-width:120px; height:30px; border:1px #c4021c solid; background:#c4021c; color:#fff; font-size:13px; font-weight:500; border-radius:5px; padding:0 20px;}
.btn_red2 {min-width:120px; height:30px; border:1px #f33b3b solid; background:#f33b3b; color:#fff; font-size:13px; font-weight:500; border-radius:5px; padding:0 20px;}
.btn_org {min-width:120px; height:30px; border:1px #f36f3b solid; background:#f36f3b; color:#fff; font-size:13px; font-weight:500; border-radius:5px; padding:0 20px;}

.btn_w {min-width:120px; height:30px; border:1px #d5d5d5 solid; background:#fff; color:#545454; font-size:13px; font-weight:500; border-radius:5px; padding:0 20px;}
.btn_ws {min-width:30px; height:20px; border:1px #d5d5d5 solid; background:#fff; color:#545454; font-size:12px; font-weight:500; border-radius:5px; padding:0 20px;}
.btn_ws:hover {border:1px #029dc4 solid; background:#fff; color:#029dc4; font-weight: 700;}

.btn_w2 {min-width:120px; height:30px; border:1px #d5d5d5 solid; background:#fff; color:#545454; font-size:13px; font-weight:500; border-radius:5px; padding:0 20px;}
.btn_w2:hover {border:1px #029dc4 solid; background:#fff; color:#029dc4; font-weight: 700;}
.btn_w3 {min-width:120px; height:30px; border:1px #d5d5d5 solid; background:#fff; color:#545454; font-size:13px; font-weight:500; border-radius:5px; padding:0 20px;}
.btn_w3:hover {border:1px #06af93 solid; background:#fff; color:#06af93; font-weight: 700;}
.btn_w4 {min-width:120px; height:30px; border:1px #d5d5d5 solid; background:#fff; color:#545454; font-size:13px; font-weight:500; border-radius:5px; padding:0 20px;}
.btn_w4:hover {border:1px #c4021c solid; background:#fff; color:#c4021c; font-weight: 700;}

/* 포인트 충전하기 - payment_point */
.point_charge_list {margin:0; padding:0; list-style:none; display:flex; flex-wrap:wrap; gap:35px; align-items:stretch;}
.point_charge_list li {margin:0; padding:0; flex:0 0 30%; min-width:250px; box-sizing:border-box;}
.point_charge_card {display:flex; flex-direction:column; min-height:150px; height:100%; padding:16px 18px; background:#fff; border:1px solid #d5d5d5; border-radius:8px; box-sizing:border-box;}
.point_charge_card:hover {background:#fafafa; border-color:#bfbfbf;}
.point_charge_amt {font-size:16px; font-weight:500; color:#2c2c2c; line-height:1.4;}
.point_charge_foot {margin-top:auto; padding-top:16px; display:flex; justify-content:flex-end; align-items:flex-end;}
.point_charge_btn {display:inline-flex; align-items:center; justify-content:center; min-width:96px; height:36px; padding:0 18px; font-size:14px; font-weight:600; color:#fff; text-decoration:none; background:#003eb8; border:1px solid #003eb8; border-radius:6px; box-sizing:border-box;}
.point_charge_btn:hover {background:#003399; border-color:#003399; color:#fff;}
.point_charge_lead {margin:0 0 18px; padding:0; font-size:14px; line-height:1.55; color:#666;}
.point_charge_section_title {margin:36px 0 16px; padding:0; font-size:17px; font-weight:700; color:#2c2c2c;}

.code_list .code_item_charge_form {margin-top:14px; padding-top:14px; border-top:1px solid #ececec; width:100%; max-width:320px; text-align:left;}
.code_list .code_item_charge_row {display:flex; flex-wrap:wrap; align-items:center; gap:10px 14px; margin-bottom:10px;}
.code_list .code_item_charge_label {font-size:13px; font-weight:600; color:#444; white-space:nowrap;}
.code_list .code_item_charge_qty {width:88px; height:36px; padding:0 10px; font-size:14px; border:1px solid #d5d5d5; border-radius:6px; box-sizing:border-box;}
.code_list .code_item_charge_sum {font-size:13px; color:#555;}
.code_list .code_item_charge_sum strong {font-weight:700; color:#003eb8;}
.code_list .btn_point_charge_by_product {display:inline-flex; align-items:center; justify-content:center; width:100%; min-height:40px; padding:0 16px; font-size:14px; font-weight:600; color:#fff; background:#003eb8; border:1px solid #003eb8; border-radius:8px; cursor:pointer; box-sizing:border-box;}
.code_list .btn_point_charge_by_product:hover {background:#003399; border-color:#003399;}
.code_list .code_item_charge_disabled {margin:12px 0 0; padding:10px 12px; font-size:13px; color:#888; background:#fafafa; border-radius:6px; line-height:1.45;}

/* payment_point 화면: 좌측 회색박스와 우측 버튼 라인 맞추기 */
.board_area--payment_point .payment_point_code_item .code_item_charge_form{
	margin-top:0;
	padding-top:0;
	border-top:0;
}

/* payment_point: 충전 수량(1행) + 충전 금액(2행) 줄바꿈 통일 */
.board_area--payment_point .code_item_charge_row{
	display:grid;
	grid-template-columns:auto auto;
	grid-template-rows:auto auto;
	align-items:center;
	column-gap:14px;
	row-gap:10px;
	flex-wrap:nowrap;
}
.board_area--payment_point .code_item_charge_row .code_item_charge_label{grid-column:1;grid-row:1;}
.board_area--payment_point .code_item_charge_row .code_item_charge_qty{grid-column:2;grid-row:1;}
.board_area--payment_point .code_item_charge_row .code_item_charge_sum{grid-column:1 / -1;grid-row:2;}

/* 응시자 검색 폼 - mypage_applicant */
.applicant_search {margin:0 0 20px;}
.applicant_search_box {background:#f3f3f7; border-radius:28px; padding:20px 22px;}
.applicant_search_row {display:grid; grid-template-columns:1.15fr 1fr; column-gap:28px; align-items:start;}
.applicant_search_col {min-width:0;}
.applicant_search_col_left {grid-column:1;}
.applicant_search_col_right {grid-column:2;}
.applicant_search_field {display:flex; align-items:center; gap:12px; margin-bottom:10px;}
.applicant_search_label {flex:0 0 72px; font-size:16px; font-weight:500; color:#2f2f2f; white-space:nowrap;}
.applicant_search_input {width:100%; height:48px; padding:0 14px; border:1px solid #d9d9d9; border-radius:10px; background:#fff; font-size:16px; color:#333; box-sizing:border-box;}
.applicant_search_input::placeholder {color:#b2b2b2;}
.applicant_search_field_dates {grid-column:1; display:flex; align-items:center; gap:12px; flex-wrap:nowrap; margin-bottom:10px;}
.applicant_date_top {display:flex; align-items:center; gap:10px; flex-wrap:nowrap; white-space:nowrap;}
.applicant_search_date {width:170px; flex:0 0 170px;}
.applicant_search_dash {font-size:18px; color:#7f7f7f; flex:0 0 auto;}
.applicant_date_quick_row {display:flex; align-items:center; gap:10px; padding-left:0; flex-wrap:nowrap; white-space:nowrap; flex:1 1 auto;}
.applicant_search_quick {display:flex; align-items:center; flex:0 0 auto; min-width:0; border:1px solid #d6d6d6; border-radius:10px; overflow:hidden; background:#fff;}
.applicant_quick_btn {flex:0 0 auto; min-width:84px; height:48px; border:0; border-right:1px solid #d6d6d6; background:#fff; font-size:14px; color:#616161;}
.applicant_quick_btn:last-child {border-right:0;}
.applicant_reset_btn {border:0; background:transparent; color:#666; font-size:16px; font-weight:600; white-space:nowrap; padding:0 6px;}
.applicant_search_inline {display:flex; align-items:center; gap:12px; flex-wrap:nowrap;}
.applicant_filter_link {font-size:16px; color:#666; text-decoration:none; white-space:nowrap;}
.applicant_filter_link.on {color:#1c4f9b; font-weight:700;}
.applicant_filter_sep {color:#bbb; font-size:16px;}
.applicant_search_select {width:280px; max-width:100%; height:48px; padding:0 14px; border:1px solid #d9d9d9; border-radius:10px; background:#fff; font-size:16px; color:#666;}
.applicant_group_link {font-size:16px; color:#6b6b6b; text-decoration:none; line-height:1.2; white-space:nowrap;}
.applicant_group_link:hover {color:#1c4f9b;}
.applicant_btn {display:flex; justify-content:center; margin:20px 0 26px;}
.applicant_search_btn {min-width:110px; height:36px; border:1px solid #163e84; border-radius:12px; background:#00358d; color:#fff; font-size:18px; font-weight:700;}


.applicant_item {display:flex; align-items:flex-start; gap:14px; padding:25px 16px; border-bottom:1px solid #e6e6e6;}
.applicant_check {margin-top:34px; width:18px; height:18px;}
.applicant_bulk_actions {display:flex; align-items:center; justify-content:flex-end; gap:8px; flex-wrap:wrap; padding-top:2px; width:100%;}
.applicant_bulk_btn {height:50px; padding:0 22px; font-size:16px; font-weight:500; color:#5f5f5f; border:1px solid #cfcfcf; border-radius:12px; background:#fff;}
.applicant_main {flex:1; min-width:0;}
.applicant_top {display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:6px;}
.applicant_name {font-size:20px; font-weight:700; color:#1f2b3a; line-height:1.2;}
.applicant_info_wrap {position:relative; display:inline-flex; align-items:center;}
.applicant_info_icon {display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; border-radius:50%; background:#f0f0f0; color:#666; font-size:13px; font-weight:700;}
.applicant_info_tooltip {display:none; position:absolute; left:50%; top:34px; transform:translateX(-50%); min-width:260px; max-width:320px; padding:12px 14px; background:rgba(34,34,34,0.96); color:#fff; border-radius:12px; font-size:14px; line-height:1.45; white-space:nowrap; z-index:20; box-shadow:0 6px 20px rgba(0,0,0,0.25);}
.applicant_info_tooltip:before {content:""; position:absolute; top:-9px; left:50%; transform:translateX(-50%); width:0; height:0; border-left:10px solid transparent; border-right:10px solid transparent; border-bottom:10px solid rgba(34,34,34,0.96);}
.applicant_info_tooltip strong {display:block; margin-bottom:6px; font-size:16px; font-weight:700; color:#fff;}
.applicant_info_wrap:hover .applicant_info_tooltip {display:block;}
.applicant_status {font-size:18px; font-weight:300; color:#666;}
.applicant_exam_line {margin-top:12px; font-size:18px; color:#2e2e2e; font-weight:500;}
.applicant_exam_meta {color:#7b7b7b; font-weight:400;}
.applicant_meta_line {margin-top:12px; font-size:16px; color:#4d4d4d; font-weight:400;}
.applicant_sep {margin:0 8px; color:#b5b5b5; font-weight:400;}
.applicant_actions {display:flex; flex-direction:column; gap:12px; min-width:250px;}
.applicant_resend_btn {height:42px; padding:0 20px; font-size:16px; border:1px solid #2c4f8f; color:#fff; background:#2c4f8f; border-radius:10px;}

/* 온라인코드 발송 결과 - mypage_code_ing */
.mypage_code_ing_result {padding:4px 0 0;}
#container .contents .mypage_code_ing .mypage_code_ing_result p {display:block; align-items:initial; height:auto; line-height:1.65; margin:0; padding:6px 0; font-size:16px; color:#2c2c2c;}


/* 온라인코드 보유현황 - code_list */
.code_list {width:100%;}
.code_list .code_list_empty {margin:0; padding:28px 20px; text-align:center; font-size:15px; color:#888; background:#fff; border:1px solid #e8e8e8; border-radius:8px;}
.code_list .code_item {display:flex; align-items:center; justify-content:space-between; width:100%; min-height:90px; margin-bottom:12px; padding:20px 24px; background:#fff; border:1px solid #e8e8e8; border-radius:8px; box-shadow:0 1px 3px rgba(0,0,0,0.06);}
.code_list .code_item_left {flex:1; min-width:0; margin-right:24px;}
.code_list .code_item_title_row {display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:10px;}
.code_list .code_item_name {margin:0; padding:0; font-size:16px; font-weight:700; color:#2c2c2c; line-height:1.4;}
.code_list .btn_download {flex-shrink:0; height:32px; padding:0 14px; font-size:13px; font-weight:500; color:#fff; background:#5a5a5a; border:none; border-radius:6px; cursor:pointer;}
.code_list .btn_download:hover {background:#454545;}
.code_list .code_item_meta {display:flex; align-items:center; flex-wrap:wrap; gap:6px 4px; font-size:13px; color:#656565;}
.code_list .code_item_meta strong {font-weight:700; color:#2c2c2c;}
.code_list .code_ico {display:inline-flex; align-items:center; justify-content:center; vertical-align:middle;}
.code_list .code_ico svg {flex-shrink:0;}
.code_list .link_return {display:inline-flex; align-items:center; gap:4px; font-size:13px; color:#656565; text-decoration:none;}
.code_list .link_return:hover {color:#003eb8;}
.code_list .code_item_actions {display:flex; align-items:center; gap:10px; flex-shrink:0;}
.code_list .btn_remote {display:inline-flex; align-items:center; justify-content:center; gap:6px; height:40px; padding:0 18px; font-size:14px; font-weight:500; color:#2c2c2c; background:#f0f0f0; border:1px solid #d5d5d5; border-radius:6px; cursor:pointer;}
.code_list .btn_remote:hover {background:#e5e5e5; border-color:#ccc;}
.code_list .btn_conduct {display:inline-flex; align-items:center; justify-content:center; gap:6px; height:40px; padding:0 18px; font-size:14px; font-weight:500; color:#fff; background:#003eb8; border:none; border-radius:6px; cursor:pointer;}
.code_list .btn_conduct:hover {background:#003399;}

/* 온라인코드 카드 v2 (헤더형 레이아웃) */
.code_list .code_item_v2 {align-items:center; min-height:0; padding:22px 24px;}
.code_list .code_item_v2 .code_item_left {display:flex; flex-direction:column; gap:0;}
.code_list .code_item_category {margin:0 0 6px; padding:0; font-size:12px; font-weight:400; color:#999; line-height:1.3;}
.code_list .code_item_title_row_v2 {display:flex; align-items:baseline; flex-wrap:wrap; gap:6px 10px; margin:0 0 14px;}
.code_list .code_item_title_row_v2 .code_item_name {font-size:18px; font-weight:700; color:#000; line-height:1.35;}
.code_list .code_item_spec {color:#d0d0d0; font-size:14px; font-weight:300; user-select:none;}
.code_list .code_item_spec_txt {font-size:14px; font-weight:400; color:#999;}
.code_list .code_item_status_bar {display:flex; align-items:center; flex-wrap:wrap; row-gap:8px; column-gap:0; padding:12px 22px; background:#f5f5f5; border-radius:999px; font-size:13px; font-weight:400; color:#555;}
.code_list .code_item_status_bar .code_item_stat:not(:first-child) {border-left:1px solid #d0d0d0; padding-left:20px; margin-left:20px;}
.code_list .code_item_status_bar .code_item_stat strong {font-weight:700; color:#333;}
.code_list .code_item_actions_single {flex-direction:column; align-items:stretch;}
.code_list .btn_send_outline {height:auto; min-height:42px; padding:10px 20px; font-size:14px; font-weight:500; color:#444; background:#fff; border:1px solid #ccc; border-radius:8px; box-shadow:none;}
.code_list .btn_send_outline:hover {background:#fafafa; border-color:#bfbfbf;}
.code_list .btn_send_outline .code_ico {color:#888;}

/* 페이징 */
.pagination_wrap {display:flex; align-items:center; justify-content:center; gap:8px; margin:48px 0 56px; padding:0;}
.pagination_wrap .pagination_btn {display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; background:#fff; border:1px solid #003eb8; border-radius:6px; color:#003eb8; text-decoration:none;}
.pagination_wrap .pagination_btn:hover {background:#f0f6ff;}
.pagination_wrap .pagination_btn.prev .pagination_ico {margin:0;}
.pagination_wrap .pagination_btn.next .pagination_ico {margin:0;}
.pagination_wrap .pagination_ico {display:inline-flex; align-items:center; justify-content:center;}
.pagination_wrap .pagination_num {display:flex; align-items:center; gap:8px;}
.pagination_wrap .pagination_num a {display:inline-flex; align-items:center; justify-content:center; min-width:36px; height:36px; padding:0 10px; font-size:14px; font-weight:500; color:#656565; background:#fff; border:1px solid #d5d5d5; border-radius:6px; text-decoration:none;}
.pagination_wrap .pagination_num a:hover {border-color:#003eb8; color:#003eb8;}
.pagination_wrap .pagination_num a.on {color:#fff; background:#003eb8; border-color:#003eb8;}
.pagination_wrap .pagination_num a.on:hover {color:#fff; background:#003399; border-color:#003399;}

/* 레이어 팝업 - 온라인 검사코드 발송 (mypage_code_layer) */
.layer_overlay {position:fixed; inset:0; z-index:9999; display:none; align-items:center; justify-content:center; padding:20px; background:rgba(0,0,0,0.5);}
.layer_overlay.on {display:flex;}
.layer_modal {position:relative; display:flex; flex-direction:column; width:100%; max-width:920px; height:90vh; max-height:90vh; background:#fff; border-radius:12px; box-shadow:0 4px 24px rgba(0,0,0,0.2); overflow:hidden;}
.layer_modal_header {flex-shrink:0;}
.layer_modal_body_wrap {flex:1 1 0%; min-height:0; overflow-y:auto; scrollbar-width:none; -ms-overflow-style:none;}
.layer_modal_body_wrap::-webkit-scrollbar {display:none;}
.layer_modal_title {margin:0; padding:24px 0 16px; font-size:20px; font-weight:700; color:#2c2c2c; text-align:center;}
.layer_modal_banner {display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:16px 24px; background:#003eb8; color:#fff;}
.layer_modal_banner_txt {display:flex; flex-direction:column; gap:4px;}
.layer_modal_banner_txt strong {font-size:15px;}
.layer_modal_banner_txt span {font-size:13px; opacity:0.95;}
.layer_modal_banner_badge {padding:6px 14px; font-size:13px; font-weight:500; background:rgba(255,255,255,0.2); border-radius:6px;}
.layer_modal_body {display:flex; align-items:stretch; gap:24px; padding:24px; flex-wrap:wrap;}
.layer_modal_col {flex:1; min-width:280px; min-height:0;}
.layer_modal_col_form {display:flex; flex-direction:column; min-height:0; height:50vh;}
.layer_modal_col_send {padding-left:24px;}
.layer_modal_col_list {display:flex; flex-direction:column; min-height:0; height:50vh;}
.layer_modal_col_list .layer_examinee_list_wrap {min-height:0; overflow-y:auto; overflow-x:hidden; border:1px solid #e8e8e8; border-radius:8px; }
.div_public_popup_inner .pop_code_send .layer_modal_col_list {height:auto !important; max-height:none; min-height:0;}
.div_public_popup_inner .pop_code_send .layer_modal_col_list .layer_examinee_list_wrap {flex:none; min-height:140px; max-height:min(42vh,360px); height:auto;}
.layer_modal_sec_tit {margin:0 0 14px; font-size:15px; font-weight:700; color:#2c2c2c;}
.layer_modal_count {font-size:13px; font-weight:400; color:#656565;}
.layer_form .layer_form_row {margin-bottom:14px;}
.layer_form_label {display:block; margin-bottom:6px; font-size:13px; color:#333;}
.layer_form_label em {color:#c00;}
.layer_form_txt {width:100%; max-width:280px; height:36px; padding:0 10px; font-size:14px; border:1px solid #d5d5d5; border-radius:6px;}
.layer_form_select {min-width:140px; max-width:280px; height:36px; padding:0 10px; font-size:14px; border:1px solid #d5d5d5; border-radius:6px; background:#fff; margin-left:0px;}
.layer_form_inputs {display:flex; align-items:center; flex-wrap:wrap; gap:12px;}
.layer_form_inputs label {display:inline-flex; align-items:center; gap:6px; font-size:14px; cursor:pointer;}
.layer_form_help {margin:-6px 0 14px; font-size:12px; color:#888;}
#layer_code_send .excel_input_wrap[hidden] {display:none !important;}
.btn_layer {height:34px; padding:0 14px; font-size:13px; color:#333; background:#f0f0f0; border:1px solid #d5d5d5; border-radius:6px; cursor:pointer;}
.btn_layer_link {font-size:13px; color:#003eb8; text-decoration:none;}
.btn_layer_link:hover {text-decoration:underline;}
.layer_form_toggle_row .layer_form_inputs {align-items:center;}
.toggle_switch {display:inline-block; width:44px; height:24px; background:#d5d5d5; border-radius:12px; cursor:pointer; transition:background 0.2s;}
.toggle_switch .toggle_thumb {display:block; width:20px; height:20px; margin:2px; background:#fff; border-radius:50%; box-shadow:0 1px 3px rgba(0,0,0,0.2); transition:transform 0.2s;}
.toggle_switch.on {background:#003eb8;}
.toggle_switch.on .toggle_thumb {transform:translateX(20px);}
.toggle_txt {font-size:13px; color:#656565;}
.layer_form_datetime {display:flex; flex-wrap:wrap; align-items:center; gap:6px 8px;}
.layer_form_date, .layer_form_time {width:100px; height:34px; padding:0 8px; font-size:13px; border:1px solid #d5d5d5; border-radius:6px;}
.layer_form_time {cursor:pointer;}
.layer_form_ico {display:inline-block; width:18px; height:18px; background:#ddd; border-radius:4px; vertical-align:middle;}
.layer_form_ico.calendar_ico {cursor:pointer;}
.layer_form_unit {font-size:13px; color:#666;}
.layer_list_head {display:flex; align-items:center; justify-content:space-between; margin-bottom:10px;}
.layer_list_check {display:inline-flex; align-items:center; gap:6px; font-size:13px; color:#656565; cursor:pointer;}
.layer_examinee_list {margin:0; padding:0;}
.layer_examinee_item {display:flex; gap:12px; padding:12px 14px; border-bottom:1px solid #eee;}
.div_public_popup_inner .pop_code_list .layer_examinee_item {display:block; padding:0; border-bottom:none;}
.layer_examinee_item:last-child {border-bottom:none;}
.layer_examinee_info {display:flex; flex-direction:column; gap:4px;}
.layer_examinee_name {font-size:14px; font-weight:600; color:#2c2c2c;}
.layer_examinee_detail {font-size:12px; color:#656565;}
.layer_examinee_list_empty {margin:0; padding:24px 16px; font-size:14px; color:#888; text-align:center;}
.layer_modal_add_btn_wrap {display:flex; align-items:center; justify-content:center; padding:16px 24px;}
.layer_modal_add_btn_wrap .btn_layer_add {display:inline-flex; align-items:center; justify-content:center; min-width:120px; height:38px; padding:0 20px; font-size:14px; font-weight:600; color:#fff; background:#3f93ec; border:none; border-radius:8px; cursor:pointer;}
.layer_modal_add_btn_wrap .btn_layer_add:hover {background:#3585db;}
/* 메세지 미리보기 */
.message_preview_box {width:98%; margin:16px auto; padding:0; background:#fff; border:1px solid #e0e0e0; border-radius:8px; box-shadow:0 1px 4px rgba(0,0,0,0.06); overflow:hidden;}
.message_preview_header {display:flex; align-items:center; justify-content:space-between; padding:12px 16px; border-bottom:1px solid #eee; background:#fafafa;}
.message_preview_title {margin:0; font-size:14px; font-weight:700; color:#2c2c2c;}
.message_preview_toggle {padding:4px 8px; font-size:14px; color:#666; background:transparent; border:none; cursor:pointer;}
.message_preview_toggle:hover {color:#003eb8;}
.message_preview_caret {display:inline-block; transition:transform 0.2s;}
.message_preview_box.collapsed .message_preview_caret {transform:rotate(-180deg);}
.message_preview_box.collapsed .message_preview_content {display:none;}
.message_preview_content {padding:16px; font-size:13px; line-height:1.7; color:#333;}
.message_preview_content p {margin:0 0 8px;}
.message_preview_content p:last-child {margin-bottom:0;}
.message_preview_footer {margin-top:12px; font-size:12px; color:#888;}
.layer_modal_footer {flex-shrink:0; display:flex; align-items:center; justify-content:center; gap:12px; padding:20px 24px; border-top:1px solid #eee;}
.btn_layer_close {display:inline-flex; align-items:center; gap:6px; height:40px; padding:0 20px; font-size:14px; color:#656565; background:#f0f0f0; border:1px solid #d5d5d5; border-radius:6px; cursor:pointer;}
.btn_layer_send {display:inline-flex; align-items:center; gap:8px; height:40px; padding:0 24px; font-size:14px; font-weight:600; color:#fff; background:#003eb8; border:none; border-radius:6px; cursor:pointer;}

/* 응시자 정보 수정 레이어 (피검자 추가 폼 일부만, 단일 컬럼·컴팩트) */
#layer_applicant_edit.applicant_edit_layer .layer_modal.applicant_edit_layer_modal {
	max-width:600px;
	width:calc(100% - 32px);
	height:auto;
	min-height:0;
	max-height:90vh;
}
#layer_applicant_edit .layer_modal_body_wrap {
	flex:0 1 auto;
	min-height:0;
	overflow:visible;
}
#layer_applicant_edit .layer_modal_title {padding:16px 16px 10px; font-size:18px;}
#layer_applicant_edit .applicant_edit_layer_body {
	flex-direction:column;
	flex-wrap:nowrap;
	min-height:0;
	padding:12px 18px 6px;
}
#layer_applicant_edit .layer_modal_sec_tit {margin:0 0 10px;}
#layer_applicant_edit .layer_form .layer_form_row {display:flex; align-items:flex-start; flex-wrap:nowrap; gap:10px; margin-bottom:10px;}
#layer_applicant_edit .layer_form .layer_form_row > .layer_form_label {flex:0 0 92px; width:92px; margin-bottom:0; padding-top:7px; font-size:12px;}
#layer_applicant_edit .layer_form .layer_form_row > .layer_form_txt,
#layer_applicant_edit .layer_form .layer_form_row > .layer_form_datetime,
#layer_applicant_edit .layer_form .layer_form_row > .layer_form_inputs {flex:1 1 0%; min-width:0; max-width:none;}
#layer_applicant_edit .layer_form_txt {max-width:none; width:100%;}
#layer_applicant_edit .layer_form_select {max-width:none; flex:1 1 auto; min-width:0;}
#layer_applicant_edit .layer_modal_footer {padding:12px 16px 16px; border-top:1px solid #eee;}
#layer_applicant_edit .layer_form_toggle_row .toggle_txt {font-size:12px; line-height:1.45;}
/* flex면 <br>가 줄바꿈으로 안 먹음 — 시작일시~부터 / 종료일시~까지 두 줄 */
#layer_applicant_edit .layer_form_datetime {
	display:block;
	width:100%;
	line-height:1.5;
}
#layer_applicant_edit .layer_form_datetime br {
	display:block;
	margin-top:8px;
}
#layer_applicant_edit .layer_form_datetime .layer_form_date,
#layer_applicant_edit .layer_form_datetime .layer_form_time,
#layer_applicant_edit .layer_form_datetime .layer_form_unit {
	display:inline-block;
	vertical-align:middle;
}
#layer_applicant_edit .layer_form_datetime .layer_form_date {width:112px; margin-right:8px;}
#layer_applicant_edit .layer_form_datetime .layer_form_time {width:108px; margin-right:8px;}
#layer_applicant_edit .layer_form_datetime .layer_form_unit {white-space:nowrap; margin-right:0;}

/* 그룹 생성/관리 내부 레이어 (현재 레이어 범위 안, 가로·세로 중앙) */
.layer_inner_overlay {position:absolute; inset:0; z-index:100; display:none; align-items:center; justify-content:center; padding:20px; background:rgba(0,0,0,0.4); border-radius:12px;}
.layer_inner_overlay.on {display:flex;}
/* 응시자 현황 등: 코드 발송 레이어 밖에서 그룹 관리만 띄울 때 전체 화면 고정 */
#container .contents #layer_group_manage.layer_group_manage_standalone {position:fixed; inset:0; z-index:10000; border-radius:0; background:rgba(0,0,0,0.5);}
.layer_inner_modal {position:relative; display:flex; flex-direction:column; width:100%; max-width:420px; background:#fff; border-radius:10px; box-shadow:0 4px 20px rgba(0,0,0,0.2); padding:24px;}
.layer_inner_title {margin:0 0 20px; font-size:18px; font-weight:700; color:#2c2c2c; text-align:center;}
/* #container .contents p / p span 전역(높이 50px·span 250px·float)과 충돌 방지 — 그룹명·메모 등 내부 레이어 폼 */
#container .contents .layer_inner_modal p {height:auto; min-height:0; line-height:1.5; padding:0; font-size:14px; display:block; align-items:initial;}
#container .contents .layer_inner_modal p.layer_form_row {display:flex; align-items:flex-start; gap:12px; flex-wrap:nowrap;}
#container .contents .layer_inner_modal p.layer_form_row > span.layer_form_label {float:none; width:70px; max-width:none; line-height:1.35; color:#333; flex-shrink:0; padding-top:10px;}
#container .contents .layer_inner_modal p.layer_form_row > span.layer_form_inputs {float:none; width:auto; flex:1; min-width:0; line-height:normal; color:inherit;}
#container .contents .layer_inner_modal p.layer_form_row > span.layer_form_inputs input,
#container .contents .layer_inner_modal p.layer_form_row > span.layer_form_inputs textarea {margin:0; max-width:100%; box-sizing:border-box;}
.layer_inner_modal .layer_form_row {margin-bottom:14px;}
.layer_inner_modal .layer_form_datetime {display:flex; flex-wrap:wrap; align-items:center; gap:6px 8px;}
.layer_inner_modal .layer_form_date {width:110px; height:36px; padding:0 10px; font-size:13px; border:1px solid #d5d5d5; border-radius:6px;}
.layer_inner_modal .layer_form_time {width:80px; height:36px; padding:0 8px; font-size:13px; border:1px solid #d5d5d5; border-radius:6px;}
.layer_inner_modal .layer_form_unit {font-size:13px; color:#656565;}
.layer_inner_btn_row {margin-top:20px;}
.layer_inner_modal .btn_layer_confirm {height:40px; padding:0 24px; font-size:14px; font-weight:600; color:#fff; background:#003eb8; border:none; border-radius:6px; cursor:pointer;}
.layer_inner_modal .btn_layer_confirm:hover {background:#003399;}
#layer_reserved_send .layer_form_date {width:77px;}
#layer_reserved_send .layer_form_time {width:104px;}
.layer_inner_footer {margin-top:20px; padding-top:16px; border-top:1px solid #eee; text-align:center;}
.layer_inner_footer .layer_inner_close {margin:0;}
/* 그룹 생성/관리 전용 (탭, 새 그룹 폼, 그룹 관리) */
.layer_inner_modal_group {max-width:480px;}
.layer_inner_modal_group .layer_inner_title {margin-bottom:16px;}
.layer_inner_tabs {display:flex; gap:0; margin-bottom:20px; border-bottom:1px solid #e0e0e0;}
.layer_inner_tab {flex:1; padding:10px 16px; font-size:14px; font-weight:500; color:#656565; background:transparent; border:none; border-bottom:3px solid transparent; cursor:pointer;}
.layer_inner_tab:hover {color:#2c2c2c;}
.layer_inner_tab.on {color:#003eb8; font-weight:600; border-bottom-color:#003eb8;}
.layer_inner_tabpanels {min-height:0;}
.layer_inner_tabpanel {display:none;}
.layer_inner_tabpanel.on {display:block;}
.layer_inner_sec_tit {margin:0 0 8px; font-size:16px; font-weight:700; color:#2c2c2c;}
.layer_inner_desc {margin:0 0 16px; font-size:13px; color:#656565;}
.layer_inner_form_card {padding:20px; margin-bottom:20px; background:#fff; border:1px solid #e8e8e8; border-radius:8px; box-shadow:0 1px 4px rgba(0,0,0,0.06);}
.layer_inner_form_card .layer_form_row {display:flex; align-items:flex-start; gap:12px; margin-bottom:14px;}
.layer_inner_form_card .layer_form_row:last-child {margin-bottom:0;}
.layer_inner_form_card .layer_form_label {flex-shrink:0; width:70px; padding-top:10px; font-size:13px; color:#333;}
.layer_inner_form_card .layer_form_inputs {flex:1; min-width:0;}
.layer_inner_form_card .layer_form_text {width:100%; height:40px; padding:0 12px; font-size:14px; border:1px solid #d5d5d5; border-radius:6px;}
.layer_inner_form_card .layer_form_memo {width:100%; padding:10px 12px; font-size:14px; border:1px solid #d5d5d5; border-radius:6px; resize:vertical;}
.layer_inner_footer_btns {display:flex; align-items:center; justify-content:center; gap:12px;}
.layer_inner_footer_btns .btn_layer_confirm {margin:0;}
.layer_inner_search_wrap {display:flex; gap:8px; margin-bottom:14px;}
.layer_inner_search_input {flex:1; height:40px; padding:0 12px; font-size:14px; border:1px solid #d5d5d5; border-radius:6px;}
.btn_layer_search {flex-shrink:0; height:40px; padding:0 20px; font-size:14px; color:#656565; background:#f0f0f0; border:1px solid #d5d5d5; border-radius:6px; cursor:pointer;}
.btn_layer_search:hover {background:#e8e8e8;}
.layer_inner_list_head {display:flex; align-items:center; justify-content:space-between; margin-bottom:10px;}
.layer_inner_list_head .layer_list_check {font-size:13px; color:#333;}
.layer_inner_list_head .btn_layer_link {font-size:13px;}
.layer_inner_list_wrap {min-height:120px; padding:24px; border:1px solid #e8e8e8; border-radius:8px; background:#fafafa;}
.layer_inner_list_wrap .group_list {margin:0; padding:0; list-style:none;}
.layer_inner_list_wrap .group_item {display:flex; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid #e8e8e8;}
.layer_inner_list_wrap .group_item:last-child {border-bottom:none;}
.layer_inner_list_wrap .group_check {margin:0; flex-shrink:0;}
.layer_inner_list_wrap .group_name {flex:1; margin:0; font-size:14px; color:#2c2c2c; min-width:0;}
.layer_inner_list_wrap .group_name_text {display:inline-block; cursor:pointer;}
.layer_inner_list_wrap .group_name_text:hover {text-decoration:underline;}
.layer_inner_list_wrap .group_name.group_editing .group_name_text {display:none;}
.layer_inner_list_wrap .group_name_edit {display:none; align-items:center; gap:8px; flex:1; min-width:0;}
.layer_inner_list_wrap .group_name.group_editing .group_name_edit {display:flex;}
.layer_inner_list_wrap .group_name_edit .group_name_input {flex:1; min-width:0; height:32px; padding:0 10px; font-size:14px; border:1px solid #d5d5d5; border-radius:6px;}
.layer_inner_list_wrap .group_name_edit .btn_group_name_save {flex-shrink:0; height:32px; padding:0 14px; font-size:13px; font-weight:500; color:#fff; background:#003eb8; border:none; border-radius:6px; cursor:pointer;}
.layer_inner_list_wrap .group_name_edit .btn_group_name_save:hover {background:#003399;}
.layer_inner_empty {margin:0; font-size:14px; color:#888; text-align:center;}
.btn_layer_send_ico {width:18px; height:18px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23fff' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M22 2L11 13'/%3E%3Cpath d='M22 2L15 22 11 13 2 9 22 2z'/%3E%3C/svg%3E") no-repeat center; background-size:contain;}

/* jQuery UI Datepicker - 달력 스타일 */
#ui-datepicker-div,
.ui-datepicker {width:280px; padding:12px; font-size:14px; font-family:inherit; background:#fff; border:1px solid #d5d5d5; border-radius:8px; box-shadow:0 4px 12px rgba(0,0,0,0.15);}
.ui-datepicker-header {display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 0 12px; margin-bottom:8px; border-bottom:1px solid #eee;}
.ui-datepicker-prev, .ui-datepicker-next {flex-shrink:0; display:flex; align-items:center; justify-content:center; min-width:32px; height:32px; padding:0 6px; font-size:12px; line-height:1; color:#333; background:transparent; border:none; border-radius:6px; cursor:pointer; transition:background 0.2s;}
.ui-datepicker-prev:hover, .ui-datepicker-next:hover {background:#f0f0f0;}
.ui-datepicker-prev span, .ui-datepicker-next span {display:inline-block; font-size:12px; white-space:nowrap;}
.ui-datepicker-prev span:empty, .ui-datepicker-next span:empty {width:0; height:0; margin:0; padding:0; border:5px solid transparent; font-size:0;}
.ui-datepicker-prev span:empty {border-right-color:#333; border-left:none;}
.ui-datepicker-next span:empty {border-left-color:#333; border-right:none;}
.ui-datepicker-title {flex:1; display:flex; align-items:center; justify-content:center; flex-wrap:nowrap; gap:4px; min-width:0; font-weight:600; color:#2c2c2c;}
.ui-datepicker-title select {flex-shrink:0; margin:0; padding:4px 6px; font-size:13px; line-height:1.4; border:1px solid #d5d5d5; border-radius:4px; background:#fff;}
.ui-datepicker-title .ui-datepicker-month {min-width:4em;}
.ui-datepicker-title .ui-datepicker-year {min-width:3.5em;}
.ui-datepicker-title span {flex-shrink:0; margin-left:1px;}
.ui-datepicker-calendar {width:100%; border-collapse:collapse;}
.ui-datepicker-calendar th {padding:6px 0; font-size:12px; font-weight:600; color:#656565; text-align:center;}
.ui-datepicker-calendar td {padding:2px; text-align:center;}
.ui-datepicker-calendar td a, .ui-datepicker-calendar td span {display:block; padding:6px; font-size:13px; text-decoration:none; color:#333; border-radius:6px;}
.ui-datepicker-calendar td a:hover {background:#e8f0fe; color:#003eb8;}
.ui-datepicker-calendar .ui-state-active, .ui-datepicker-calendar .ui-state-active:hover {background:#003eb8; color:#fff;}
.ui-datepicker-calendar .ui-datepicker-today a {background:#f0f0f0; font-weight:600;}
.ui-datepicker-calendar .ui-datepicker-other-month span {color:#bbb;}
.ui-datepicker-calendar .ui-state-disabled span {color:#ccc; cursor:default;}
.ui-datepicker-buttonpane {margin-top:10px; padding-top:10px; border-top:1px solid #eee; text-align:right;}
.ui-datepicker-buttonpane button {padding:4px 12px; font-size:13px; color:#003eb8; background:transparent; border:1px solid #003eb8; border-radius:6px; cursor:pointer;}
.ui-datepicker-buttonpane button:hover {background:#003eb8; color:#fff;}
.ui-datepicker-current {margin-right:4px;}

/* 마이페이지 메인 대시보드 */
.list_area > .mp_dash { margin-top: 12px; }
.mp_dash {
	display: flex;
	align-items: stretch;
	gap: 0;
	width: 100%;
	max-width: 100%;
	min-height: 320px;
	background: #fff;
	border: 1px solid #e0e0e0;
	border-radius: 4px;
	overflow: hidden;
	box-sizing: border-box;
}
.mp_dash_panel {
	background: #fff;
	border-right: 1px solid #e0e0e0;
	padding: 22px 24px 24px;
	box-sizing: border-box;
}
.mp_dash_panel:last-child { border-right: 0; }
.mp_dash_panel_main {
	flex: 2.1 1 0;
	min-width: 0;
}
.mp_dash_panel_chart {
	flex: 1 1 0;
	min-width: 200px;
	max-width: 320px;
	display: flex;
	flex-direction: column;
}
.mp_dash_dots {
	display: flex;
	gap: 8px;
	margin-bottom: 14px;
}
.mp_dash_dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	border: 1px solid #b8c0cc;
	background: #fff;
	box-sizing: border-box;
}
.mp_dash_dot.is_on {
	background: #1e6fd9;
	border-color: #1e6fd9;
}
.mp_dash_cat {
	margin: 0 0 6px;
	font-size: 13px;
	color: #8a8a8a;
	font-weight: 400;
}
.mp_dash_title_row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 8px 12px;
	margin-bottom: 18px;
}
.mp_dash_title {
	margin: 0;
	font-size: 22px;
	font-weight: 700;
	color: #1a1a1a;
	line-height: 1.35;
	letter-spacing: -0.5px;
}
.mp_dash_spec {
	font-size: 14px;
	color: #9a9a9a;
	font-weight: 400;
	white-space: nowrap;
}
.mp_dash_stats_bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 0;
	min-height: 44px;
	padding: 10px 16px;
	background: #f3f3f5;
	border-radius: 8px;
	font-size: 14px;
	color: #4a4a4a;
	margin-bottom: 22px;
}
.mp_dash_stats_bar strong { font-weight: 700; color: #222; }
.mp_dash_stats_sep {
	display: inline-block;
	width: 1px;
	height: 14px;
	margin: 0 14px;
	background: #c8c8c8;
	vertical-align: middle;
}
.mp_dash_btns {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}
.mp_dash_btn_send {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 48px;
	padding: 0 22px;
	font-size: 15px;
	font-weight: 600;
	color: #3a3a3a;
	background: #fff;
	border: 1px solid #c8c8c8;
	border-radius: 6px;
	cursor: pointer;
}
.mp_dash_btn_send:hover { border-color: #003eb8; color: #003eb8; }
.mp_dash_btn_send_ico {
	width: 22px;
	height: 22px;
	flex-shrink: 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24'%3E%3Cpath stroke='%23555' stroke-width='1.5' d='M4 6h16v12H4z'/%3E%3Cpath stroke='%23555' stroke-width='1.5' d='M4 7l8 5 8-5'/%3E%3Cpath fill='%23555' d='M18 16l2 3h-3l-1-3z'/%3E%3C/svg%3E") no-repeat center;
	background-size: contain;
}
.mp_dash_btn_result {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 28px;
	font-size: 15px;
	font-weight: 700;
	color: #fff;
	background: #003eb8;
	border: 1px solid #003eb8;
	border-radius: 6px;
	cursor: pointer;
}
.mp_dash_btn_result:hover { background: #003399; border-color: #003399; }
.mp_dash_chart_title {
	margin: 0 0 16px;
	font-size: 15px;
	font-weight: 700;
	color: #222;
}
.mp_dash_chart_title_red { color: #d32f2f; }
.mp_donut_wrap {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 140px;
}
.mp_donut {
	position: relative;
	width: 132px;
	height: 132px;
	border-radius: 50%;
	--mp-pct: 80;
	background: conic-gradient(
		#2eb8a6 0 calc(var(--mp-pct) * 3.6deg),
		#d8d8d8 calc(var(--mp-pct) * 3.6deg) 360deg
	);
	display: flex;
	align-items: center;
	justify-content: center;
}
.mp_donut::after {
	content: "";
	position: absolute;
	inset: 18%;
	background: #fff;
	border-radius: 50%;
}
.mp_donut_pct {
	position: relative;
	z-index: 1;
	font-size: 22px;
	font-weight: 800;
	color: #1a1a1a;
	letter-spacing: -0.5px;
}
.mp_donut_legend {
	list-style: none;
	margin: 12px 0 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 12px 18px;
	font-size: 13px;
	color: #555;
}
.mp_donut_legend li { display: inline-flex; align-items: center; gap: 6px; }
.mp_leg_sw {
	display: inline-block;
	width: 12px;
	height: 12px;
	border-radius: 2px;
}
.mp_leg_done { background: #2eb8a6; }
.mp_leg_wait { background: #d8d8d8; }
.mp_bars {
	flex: 1;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 10px;
	min-height: 180px;
	padding-top: 8px;
}
.mp_bar_col {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	min-width: 0;
}
.mp_bar_val {
	font-size: 14px;
	font-weight: 700;
	color: #333;
	margin-bottom: 6px;
}
.mp_bar_track {
	width: 100%;
	max-width: 48px;
	height: 120px;
	margin: 0 auto;
	background-color: #fafafa;
	background-image: repeating-linear-gradient(
		to bottom,
		transparent,
		transparent 23px,
		#ececec 23px,
		#ececec 24px
	);
	border-radius: 4px 4px 0 0;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	overflow: hidden;
}
.mp_bar_fill {
	display: block;
	width: 70%;
	min-height: 4px;
	border-radius: 3px 3px 0 0;
}
.mp_bar_total { background: #9e9e9e; }
.mp_bar_prog { background: #7eb8e8; }
.mp_bar_done { background: #1e6fd9; }
.mp_bar_nt { background: #e53935; }
.mp_bar_lbl {
	margin-top: 10px;
	font-size: 12px;
	color: #666;
	text-align: center;
	white-space: nowrap;
}

/* 마이페이지 — 공지사항 · 포인트 카드 */
.mp_cards {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 24px;
	margin-top: 32px;
	width: 100%;
	box-sizing: border-box;
}
.mp_card {
	flex: 1 1 340px;
	min-width: 280px;
	max-width: 100%;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 2px 14px rgba(0, 0, 0, 0.08);
	border: 1px solid #eee;
	padding: 22px 24px 8px;
	box-sizing: border-box;
}
.mp_card_hd {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 6px;
	padding-bottom: 14px;
	border-bottom: 1px solid #ececec;
}
.mp_card_ttl {
	margin: 0;
	font-size: 18px;
	font-weight: 700;
	color: #1a1a1a;
	letter-spacing: -0.3px;
}
.mp_card_more {
	font-size: 13px;
	color: #888;
	text-decoration: none;
	white-space: nowrap;
}
.mp_card_more:hover { color: #003eb8; }
.mp_notice_list,
.mp_point_list {
	list-style: none;
	margin: 0;
	padding: 0;
}
.mp_notice_item {
	border-bottom: 1px solid #ececec;
}
.mp_notice_item:last-child { border-bottom: 0; }
.mp_notice_empty {
	border: 0;
	padding: 28px 8px;
	text-align: center;
	font-size: 14px;
	color: #888;
}
.mp_notice_link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 14px 4px;
	text-decoration: none;
	color: inherit;
}
.mp_notice_link:hover .mp_notice_subj { color: #003eb8; text-decoration: underline; }
.mp_notice_subj {
	flex: 1;
	min-width: 0;
	font-size: 14px;
	color: #222;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.mp_notice_date {
	flex-shrink: 0;
	font-size: 13px;
	color: #888;
}
.mp_point_item {
	padding: 18px 4px;
	border-bottom: 1px solid #ececec;
}
.mp_point_item:last-child { border-bottom: 0; }
.mp_point_empty {
	border: 0;
	padding: 28px 8px;
	text-align: center;
	font-size: 14px;
	color: #888;
}
.mp_point_top {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 10px;
	margin-bottom: 10px;
}
.mp_pt_badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 3px 10px;
	font-size: 12px;
	font-weight: 700;
	border-radius: 4px;
	line-height: 1.2;
}
.mp_pt_badge.is_use {
	color: #c62828;
	background: #ffebee;
}
.mp_pt_badge.is_add {
	color: #003eb8;
	background: #e8f0fc;
}
.mp_point_meta {
	font-size: 13px;
	color: #777;
}
.mp_point_mid {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 14px;
	margin-bottom: 8px;
}
.mp_point_title {
	flex: 1;
	min-width: 0;
	font-size: 14px;
	font-weight: 700;
	color: #1a1a1a;
	line-height: 1.45;
}
.mp_point_amt {
	flex-shrink: 0;
	font-size: 15px;
	font-weight: 800;
	letter-spacing: -0.3px;
}
.mp_point_amt.is_use { color: #c62828; }
.mp_point_amt.is_add { color: #003eb8; }
.mp_point_ref {
	font-size: 12px;
	color: #aaa;
	line-height: 1.4;
}




.btn_st1 {width:100px; height:30px; font-size:14px; color:#656565; background:#f8f8f8; border:1px #d5d5d5 solid; border-radius:5px; margin:0 10px;}
.btn_black {width:350px; height:60px; border-radius:30px; color:#fff; background:#3b3b3b; font-size:22px;}

/* 마이페이지 header.php — GNB 없음, 호버 시 빈 드롭다운 배경 제거 */
#header.kp-header--no-gnb .top::after {
	display: none !important;
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

#header.kp-header--no-gnb .top:has(.gnb:hover)::after,
#header.kp-header--no-gnb .top:has(.gnb:focus-within)::after {
	display: none !important;
}

#header.kp-header--no-gnb .gnb {
	display: none !important;
}

#header.kp-header--no-gnb .btn_ham {
	display: none !important;
}

#header.kp-header--no-gnb .header_m_nav_wrap {
	justify-content: flex-end;
}

/* 관리자 강제 로그인 안내 — 눈에 띄는 붉은 바 */
.kp-biz-impersonate-bar {
	display: flex !important;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px 20px;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 12px 20px;
	border: 0;
	border-bottom: 3px solid #7f0000;
	background: #d50000 !important;
	color: #fff !important;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.45;
	position: sticky;
	top: 0;
	z-index: 10000;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}

.kp-biz-impersonate-bar strong {
	color: #fff !important;
	font-size: 15px;
	font-weight: 800;
	letter-spacing: -0.02em;
}

.kp-biz-impersonate-bar_txt {
	color: #fff !important;
}

.kp-biz-impersonate-bar_txt em {
	font-style: normal;
	font-weight: 800;
	color: #ffeb3b !important;
	text-decoration: underline;
}

.kp-biz-impersonate-bar_exit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 0 18px;
	border: 2px solid #fff !important;
	border-radius: 6px;
	background: #fff !important;
	color: #d50000 !important;
	font-size: 14px;
	font-weight: 800;
	text-decoration: none !important;
	white-space: nowrap;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
}

.kp-biz-impersonate-bar_exit:hover {
	background: #ffebee !important;
	color: #b71c1c !important;
	border-color: #fff !important;
}



/* Font Style - font-weight 

font-family: 'GmarketSansLight';
font-family: 'GmarketSansMedium';
font-family: 'GmarketSansBold';

100 NotoSans-Thin
300 NotoSans-Light 
350 NotoSans-DemiLight
400 NotoSans-Regular
500 NotoSans-Medium
700 NotoSans-Bold
900 NotoSans-Black
*/


