
    /* 📚 전체 도서 드롭다운: 가로 배치 */
    #menu-item-398975 > .sub-menu,
    .menu-item-398975 > .sub-menu {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap;
        width: auto !important;
        min-width: 640px;
        max-width: 960px;
        padding: 14px 10px !important;
        gap: 4px;
        left: 0 !important;
        right: auto !important;
        overflow: visible !important;  /* 자식 sub-menu가 부모 밖으로 나올 수 있게 */
    }
    #menu-item-398975 > .sub-menu > li,
    .menu-item-398975 > .sub-menu > li {
        flex: 1 1 0;
        min-width: 90px;
        width: auto !important;
        border-bottom: none !important;
        position: relative !important;  /* 손자 sub-menu absolute 기준점 */
    }
    #menu-item-398975 > .sub-menu > li > a,
    .menu-item-398975 > .sub-menu > li > a {
        display: flex !important;
        flex-direction: column;
        align-items: center;
        gap: 4px;
        padding: 10px 8px !important;
        text-align: center;
        white-space: nowrap;
        font-size: 14px;
        border-radius: 6px;
        transition: background .15s;
    }
    #menu-item-398975 > .sub-menu > li > a:hover,
    .menu-item-398975 > .sub-menu > li > a:hover {
        background: rgba(255,255,255,0.08);
    }
    /* 2depth(중분류) — 부모 카드 아래 · 수평 중앙정렬. overflow는 JS로 보정 */
    /* JS inline 보정 위해 top/left/right/transform/overflow는 !important 미부착 (selector specificity로 우선순위 확보) */
    #menu-item-398975 > .sub-menu > li > .sub-menu {
        position: absolute !important;
        top: 100%;
        left: 50%;
        right: auto;
        transform: translateX(-50%);
        display: none !important;
        flex-direction: column !important;
        min-width: 220px;
        max-width: 300px;
        padding: 8px 0 !important;
        z-index: 9999;
        overflow: visible;
    }
    #menu-item-398975 > .sub-menu > li:hover > .sub-menu,
    #menu-item-398975 > .sub-menu > li:focus-within > .sub-menu {
        display: block !important;
    }
    /* 2depth li는 세로(전체 폭) */
    #menu-item-398975 > .sub-menu > li > .sub-menu > li {
        flex: none !important;
        width: 100% !important;
        position: relative !important;
        display: block !important;
    }
    #menu-item-398975 > .sub-menu > li > .sub-menu > li > a {
        display: block !important;
        flex-direction: row !important;
        text-align: left !important;
        padding: 8px 14px !important;
        white-space: normal !important;
    }
    /* 3depth+ (소분류·소소분류 …) — 부모 li 우측으로 펼침 (cascade right). JS가 viewport overflow 보정 */
    /* JS inline 보정 위해 top/left/right/bottom/transform/max-height/overflow는 !important 미부착 (selector specificity로 우선순위 확보) */
    #menu-item-398975 > .sub-menu > li > .sub-menu .sub-menu {
        position: absolute !important;
        top: 0;
        left: 100%;
        right: auto;
        bottom: auto;
        transform: none;
        display: none !important;
        flex-direction: column !important;
        min-width: 220px;
        max-width: 300px;
        padding: 8px 0 !important;
        z-index: 10000;
        overflow: visible;
    }
    /* 모든 깊이 hover/focus 트리거 */
    #menu-item-398975 > .sub-menu > li > .sub-menu li:hover > .sub-menu,
    #menu-item-398975 > .sub-menu > li > .sub-menu li:focus-within > .sub-menu {
        display: block !important;
    }
    /* 깊은 sub-menu 안의 li 모두 세로 정렬 + position relative */
    #menu-item-398975 > .sub-menu > li > .sub-menu li {
        flex: none !important;
        width: 100% !important;
        position: relative !important;
        display: block !important;
    }
    #menu-item-398975 > .sub-menu > li > .sub-menu .sub-menu li > a {
        display: block !important;
        text-align: left !important;
        padding: 8px 14px !important;
        white-space: normal !important;
    }
    /* 우측 끝 1depth 카드 자손: 3depth+ 좌측으로 펼침 (cascade left mirror). JS가 추가 보정 */
    #menu-item-398975 > .sub-menu > li:nth-last-child(-n+3) > .sub-menu .sub-menu {
        left: auto; right: 100%;
    }
    /* 모바일에서는 세로 복귀 */
    @media (max-width: 768px) {
        #menu-item-398975 > .sub-menu,
        .menu-item-398975 > .sub-menu {
            display: block !important;
            flex-direction: column !important;
            min-width: 0 !important;
            max-width: 100% !important;
            left: auto !important;
            transform: none !important;
        }
        #menu-item-398975 > .sub-menu > li {
            flex: none;
            width: 100% !important;
        }
        /* 모바일: 모든 깊이 inline expand (절대위치 X) */
        #menu-item-398975 > .sub-menu > li > .sub-menu,
        #menu-item-398975 > .sub-menu > li > .sub-menu .sub-menu {
            position: static !important;
            left: auto !important; right: auto !important; top: auto !important;
            min-width: 0 !important;
            max-width: 100% !important;
            padding-left: 16px !important;
            transform: none !important;
        }
    }
    