/**
 * dep2_skins/in_3 스킨 스타일
 * in_6 기반 - 가운데 정렬 + HOME 없음 + 하단 언더라인 모션
 *
 * ★ 차이점 (vs in_6):
 * - HOME 영역 없음
 * - 메뉴 가운데 정렬 (justify-content: center)
 * - active/hover 라인: 하단 (bottom: 0) + 애니메이션
 */

/* ========================================
   PC: 전체 너비 100% BG
   ======================================== */
@media only all and (min-width:768px) {
    .sub1d_tit_area_new.has-in3-overlay {
        overflow: hidden !important;
    }
    .sub_top_select_area.has-in3-overlay {
        overflow: hidden !important;
    }

    /* 메뉴 영역: 전체 100% */
    .sub2d_menu_area.in3_overlay {
        width: 100% !important;
        float: left;
        position: relative;
        background-color: transparent !important;
    }
    /* ★ 전체 너비 배경색+투명도 (::before) */
    .sub2d_menu_area.in3_overlay:before {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        background-color: var(--dep2-bg-base-color, #000) !important;
        opacity: var(--dep2-bg-opacity, 1) !important;
        z-index: 0 !important;
        pointer-events: none !important;
    }

    .sub2d_menu_area.in3_overlay .contents-container {
        position: relative;
        z-index: 1;
    }

    /* titgrid: 단일 칼럼 (가운데 정렬) */
    .sub2d_menu_area.in3_overlay .titgrid {
        width: 100% !important;
        height: var(--dep2-height, clamp(60px, 5vw, 80px)) !important;
        display: flex !important;
        justify-content: center !important;
        align-items: stretch !important;
        position: relative;
        background-color: transparent !important;
    }
    .sub2d_menu_area.in3_overlay .titgrid:before,
    .sub2d_menu_area.in3_overlay .titgrid:after {
        display: none !important;
        content: none !important;
    }

    /* ★ HOME 숨김 */
    .sub2d_menu_area.in3_overlay .home {
        display: none !important;
    }

    /* 셀렉트 토글: PC 숨김 */
    .sub2d_menu_area.in3_overlay .in3_select_toggle {
        display: none !important;
    }

    /* 스크롤러 영역 */
    .sub2d_menu_area.in3_overlay .Sub2d_scroller {
        position: relative;
        background-color: transparent !important;
        height: 100% !important;
        display: flex !important;
        align-items: stretch !important;
    }
    .sub2d_menu_area.in3_overlay .Sub2d_scroller:before,
    .sub2d_menu_area.in3_overlay .Sub2d_scroller:after {
        display: none !important;
        content: none !important;
    }
    .sub2d_menu_area.in3_overlay .Sub2d_viewport {
        height: 100% !important;
        display: flex !important;
        align-items: stretch !important;
    }

    /* ★ 메뉴 리스트: 가운데 정렬 */
    .sub2d_menu_area.in3_overlay ul.Sub2d_gnb {
        list-style: none !important;
        display: flex !important;
        flex-direction: row !important;
        justify-content: center !important;
        align-items: stretch !important;
        padding: 0 !important;
        background-color: transparent !important;
        height: 100% !important;
        gap: 0 !important;
        margin: 0 !important;
    }
    .sub2d_menu_area.in3_overlay ul.Sub2d_gnb li {
        height: 100% !important;
        display: flex !important;
        justify-content: center;
        align-items: stretch !important;
        position: relative;
        padding: 0 !important;
    }
    .sub2d_menu_area.in3_overlay ul.Sub2d_gnb li a {
        padding: 0 25px !important;
        font-weight: 500 !important;
        position: relative;
        font-size: var(--dep2-font-size, clamp(14px, 1.1vw, 16px)) !important;
        font-weight: var(--dep2-font-weight, 500) !important;
        letter-spacing: var(--dep2-letter-spacing, normal) !important;
        color: rgba(255,255,255,0.70) !important;
        height: 100% !important;
        display: flex !important;
        justify-content: center;
        align-items: center;
        white-space: nowrap;
        text-decoration: none;
        transition: color 0.3s ease;
    }
    .sub2d_menu_area.in3_overlay ul.Sub2d_gnb li a:hover {
        color: rgba(255,255,255,1) !important;
    }

    /* ★ hover 하단 언더라인 모션 (3번 고유) */
    .sub2d_menu_area.in3_overlay ul.Sub2d_gnb li a::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 0;
        height: 3px;
        background: var(--dep2-active-bar-color, var(--dep2-active-color, var(--dynamic-point-color, #fff)));
        transition: width 0.3s ease;
    }
    .sub2d_menu_area.in3_overlay ul.Sub2d_gnb li a:hover::after {
        width: 100%;
    }
}

/* ========================================
   현재 선택된 메뉴 (active) - ★ 하단 라인 + 모션
   ======================================== */
.sub2d_menu_area.in3_overlay ul.Sub2d_gnb li.active a {
    color: var(--dep2-active-color, var(--dynamic-point-color, #fff)) !important;
    font-weight: 600 !important;
    z-index: 99;
    position: relative;
}
.sub2d_menu_area.in3_overlay ul.Sub2d_gnb li.active a::after {
    width: 100% !important;
    height: 3px !important;
    background: var(--dep2-active-bar-color, var(--dep2-active-color, var(--dynamic-point-color, #fff))) !important;
    position: absolute;
    bottom: 0 !important;
    left: 0 !important;
    content: "" !important;
    border-radius: 2px 2px 0 0 !important;
    animation: in3_menu_line 0.5s forwards;
}

@keyframes in3_menu_line {
    0% { width: 0; }
    100% { width: 100%; }
}

/* ========================================
   PC: sub_top_select_area 위치 (부모 기반 → sticky 호환)
   ======================================== */
@media only all and (min-width:768px) {
    .sub1d_tit_area_new.has-in3-overlay .sub_top_select_area {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 20;
    }
}

/* ========================================
   모바일: 셀렉트 드롭다운
   ======================================== */
@media only all and (max-width:767px) {
    .sub2d_menu_area.in3_overlay {
        width: 100% !important;
        float: left;
        position: relative;
        background-color: transparent !important;
        overflow: visible !important;
    }
    /* ★ 배경색+투명도 */
    .sub2d_menu_area.in3_overlay:before {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        background-color: var(--dep2-bg-base-color, #000) !important;
        opacity: var(--dep2-bg-opacity, 1) !important;
        z-index: 0 !important;
        pointer-events: none !important;
    }

    .sub2d_menu_area.in3_overlay .contents-container {
        padding: 0 !important;
        max-width: none !important;
        width: 100% !important;
        position: relative;
        z-index: 1;
    }

    /* titgrid */
    .sub2d_menu_area.in3_overlay .titgrid {
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
        position: relative;
        min-height: var(--dep2-height-mo, 50px);
    }
    .sub2d_menu_area.in3_overlay .titgrid:before,
    .sub2d_menu_area.in3_overlay .titgrid:after {
        display: none !important;
        content: none !important;
    }

    /* HOME 숨김 */
    .sub2d_menu_area.in3_overlay .home {
        display: none !important;
    }

    /* ★ 셀렉트박스 토글 (가운데 배치) */
    .sub2d_menu_area.in3_overlay .in3_select_toggle {
        display: flex !important;
        align-items: center;
        justify-content: center;
        gap: 6px;
        width: 100% !important;
        padding: 0 18px !important;
        background: transparent !important;
        border: none !important;
        cursor: pointer;
        position: relative;
        z-index: 2;
    }
    .sub2d_menu_area.in3_overlay .in3_select_toggle .in3_select_label {
        color: #fff;
        font-size: var(--dep2-font-size-mo, 14px);
        font-weight: 600;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .sub2d_menu_area.in3_overlay .in3_select_toggle .in3_select_arrow {
        color: rgba(255, 255, 255, 0.6);
        font-size: 16px;
        transition: transform 0.3s ease;
        flex-shrink: 0;
    }
    .sub2d_menu_area.in3_overlay .in3_select_toggle.is-open .in3_select_arrow {
        transform: rotate(180deg);
    }

    /* ★ 드롭다운: 하단 펼침 */
    .sub2d_menu_area.in3_overlay .Sub2d_scroller {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        z-index: 100;
        max-height: 0 !important;
        overflow: hidden !important;
        transition: max-height 0.3s ease;
        background: transparent !important;
        backdrop-filter: blur(var(--dep2-bg-blur, 0px)) !important;
        -webkit-backdrop-filter: blur(var(--dep2-bg-blur, 0px)) !important;
    }
    .sub2d_menu_area.in3_overlay .Sub2d_scroller:before {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        background-color: var(--dep2-bg-base-color, #000) !important;
        opacity: min(calc(var(--dep2-bg-opacity, 1) + 0.15), 1) !important;
        z-index: 0 !important;
        pointer-events: none !important;
    }
    .sub2d_menu_area.in3_overlay .Sub2d_scroller:after {
        display: none !important;
        content: none !important;
    }
    .sub2d_menu_area.in3_overlay .Sub2d_scroller.is-open {
        max-height: 400px !important;
        overflow-y: auto !important;
    }

    /* 뷰포트 */
    .sub2d_menu_area.in3_overlay .Sub2d_viewport {
        overflow: visible !important;
        padding: 0 !important;
        position: relative;
        z-index: 1;
    }

    /* 메뉴 리스트: 세로 배치 */
    .sub2d_menu_area.in3_overlay ul.Sub2d_gnb {
        list-style: none !important;
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        padding: 0 0 8px 0 !important;
        margin: 0 !important;
        background-color: transparent !important;
        gap: 0 !important;
    }
    .sub2d_menu_area.in3_overlay ul.Sub2d_gnb li {
        width: 100% !important;
        padding: 0 !important;
        position: relative;
    }
    .sub2d_menu_area.in3_overlay ul.Sub2d_gnb li a {
        padding: 12px 18px !important;
        font-weight: 400 !important;
        position: relative;
        font-size: var(--dep2-font-size-mo, 14px) !important;
        font-weight: var(--dep2-font-weight, 400) !important;
        letter-spacing: var(--dep2-letter-spacing, normal) !important;
        color: rgba(255, 255, 255, 0.7) !important;
        display: block !important;
        text-align: center;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
    }
    /* ★ 모바일 active */
    .sub2d_menu_area.in3_overlay ul.Sub2d_gnb li.active a {
        color: #fff !important;
        font-weight: 600 !important;
        background-color: var(--dep2-active-color, var(--dynamic-point-color, rgba(255,255,255,0.15))) !important;
    }
    .sub2d_menu_area.in3_overlay ul.Sub2d_gnb li.active a:after {
        display: none !important;
    }

    /* 네비 화살표: 드롭다운에서 숨김 */
    .sub2d_menu_area.in3_overlay .Sub2d_nav {
        display: none !important;
    }

    /* sub_top_select_area 위치 */
    .sub1d_tit_area_new.has-in3-overlay .sub_top_select_area {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 20;
    }
    .sub1d_tit_area_new.has-in3-overlay .sub_top_select_area .contents-container {
        padding: 0 !important;
    }
    .sub1d_tit_area_new.has-in3-overlay {
        position: relative;
        overflow: visible !important;
    }
}

/* ========================================
   다크 오버레이 배경색 기본값
   ======================================== */
.sub2d_menu_area.in3_overlay {
    --dep2-bg-base-color: rgba(0, 0, 0, 1);
}
