/* ==========================================
   导航栏统一覆盖（所有页面共享）
   手写导航栏 + 组件化导航栏 都生效
   ========================================== */
.header-middle-default {
    transition: all .3s ease
}

.header-middle-default.active-sticky {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    background: #000 !important;
    background-color: #000 !important
}

.main-menu {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    gap: 24px !important
}

.main-menu-item {
    position: relative !important
}

.main-menu-link {
    text-decoration: none !important;
    color: #fff !important;
    padding: 16px 0 !important;
    display: block !important;
    cursor: pointer !important;
    font-weight: 500 !important;
    font-size: 15px !important
}

.sub-menu {
    list-style: none !important;
    padding: 12px 0 !important;
    margin: 0 !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    min-width: 220px !important;
    background: #000 !important;
    background-color: #000 !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .5) !important;
    border-radius: 6px !important;
    display: none !important;
    z-index: 100 !important
}

.main-menu-item:hover .sub-menu {
    display: block !important
}

.sub-menu-item a {
    display: block !important;
    padding: 10px 20px !important;
    text-decoration: none !important;
    color: #fff !important;
    font-size: 14px !important;
    transition: background .15s !important
}

.sub-menu-item a:hover {
    background: #1a1a2e !important;
    color: #729ade !important
}

.offcanvas {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: #fff !important;
    transform: translateX(100%) !important;
    transition: transform .3s ease !important;
    z-index: 1050 !important;
    box-shadow: -4px 0 16px rgba(0, 0, 0, .15) !important
}

.offcanvas.open,
.offcanvas.show {
    transform: translateX(0) !important
}

.offcanvas-header {
    padding: 20px 16px !important;
    border-bottom: 1px solid #eee !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important
}

.offcanvas-header .btn-close {
    filter: none !important;
    opacity: .6 !important
}

.offcanvas-body {
    padding: 0 !important;
    overflow-y: auto !important;
    height: calc(100% - 60px) !important
}

/* offcanvas 菜单白色背景 + 深色文字 */
.offcanvas-menu > ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important
}

.offcanvas-menu > ul > li {
    border-bottom: 1px solid #f0f0f0 !important
}

.offcanvas-menu > ul > li > a {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 16px 20px !important;
    color: #1a1a1a !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-decoration: none !important
}

.offcanvas-menu > ul > li > a:hover {
    color: #3478F6 !important
}

.offcanvas-menu > ul > li > ul {
    display: none !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fafafa !important
}

.offcanvas-menu > ul > li > ul.show,
.offcanvas-menu > ul > li.active > ul {
    display: block !important
}

.offcanvas-menu > ul > li > ul > li > a {
    display: block !important;
    padding: 12px 20px 12px 40px !important;
    color: #555 !important;
    font-size: 14px !important;
    text-decoration: none !important
}

.offcanvas-menu > ul > li > ul > li > a:hover {
    color: #3478F6 !important;
    background: #f0f4ff !important
}

.offcanvas-btn {
    display: none !important;
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    font-size: 24px !important
}

@media (max-width: 991px) {
    .main-menu {
        display: none !important
    }

    .offcanvas-btn {
        display: block !important
    }
}
