/**
 * NSEMM Theme Navigation Dropdown Styles - SIMPLIFIED & BULLETPROOF
 * High specificity selectors to override any conflicting styles
 * Simple, clean dropdown implementation
 */

/* ============================================================================
   CORE DROPDOWN STYLES - High Specificity
   ============================================================================ */

/* Hide submenus by default - HIGH SPECIFICITY */
.main-navigation #primary-menu .sub-menu {
    position: absolute !important;
    left: -9999px !important;
    top: 100% !important;
    z-index: 10000000 !important;
    display: block !important;

    /* Simple sizing */
    min-width: 200px !important;
    width: max-content !important;
    max-width: 280px !important;

    /* Frosted glass styling with yellow tint */
    background: rgba(250, 205, 0, 0.25) !important;
    backdrop-filter: blur(20px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    border-radius: 12px !important;
    box-shadow:
        0 8px 32px rgba(0, 0, 0, 0.12),
        0 2px 8px rgba(250, 205, 0, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.3) !important;

    /* Reset any conflicts */
    opacity: 0 !important;
    visibility: hidden !important;
    margin: 0 !important;
    padding: 8px 0 !important;
    list-style: none !important;

    /* Simple transition */
    transition: opacity 0.2s ease, visibility 0.2s ease !important;
}

/* Menu items - HIGH SPECIFICITY */
.main-navigation #primary-menu .sub-menu .menu-item {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    list-style: none !important;
}

/* Menu links - HIGH SPECIFICITY */
.main-navigation #primary-menu .sub-menu .menu-item a {
    display: block !important;
    padding: 12px 16px !important;
    margin: 0 !important;

    /* Typography */
    color: var(--foundational-brown, #443800) !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;
    text-align: left !important;
    text-decoration: none !important;
    white-space: nowrap !important;

    /* Layout */
    width: 100% !important;
    box-sizing: border-box !important;

    /* Reset any conflicts */
    border: none !important;
    background: transparent !important;
    text-decoration: none !important;
    border-bottom: none !important;

    /* Simple transition */
    transition: background-color 0.2s ease, color 0.2s ease !important;
}

/* Hover states - HIGH SPECIFICITY */
.main-navigation #primary-menu .sub-menu .menu-item a:hover,
.main-navigation #primary-menu .sub-menu .menu-item a:focus {
    background: rgba(28, 59, 112, 0.1) !important;
    color: var(--university-blue, #1C3B70) !important;
    text-decoration: none !important;
    border-bottom: none !important;
}

/* Show dropdown on hover - HIGH SPECIFICITY */
.main-navigation #primary-menu .menu-item-has-children:hover > .sub-menu,
.main-navigation #primary-menu .menu-item-has-children:focus-within > .sub-menu {
    left: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* ============================================================================
   DESKTOP ONLY
   ============================================================================ */

@media (min-width: 769px) {
    /* Ensure parent containers don't clip */
    .site-header,
    .header-container,
    .main-navigation,
    .main-navigation-wrapper {
        overflow: visible !important;
    }

    /* Parent positioning */
    .main-navigation #primary-menu .menu-item-has-children {
        position: relative !important;
    }

    /* Right-align for items near the edge */
    .main-navigation #primary-menu .menu-item-has-children:nth-last-child(-n+2) .sub-menu {
        left: auto !important;
        right: 0 !important;
    }

    /* Hide any toggle buttons on desktop */
    .main-navigation .submenu-toggle {
        display: none !important;
    }
}

/* ============================================================================
   MOBILE - HIDE DROPDOWNS
   ============================================================================ */

@media (max-width: 768px) {
    .main-navigation #primary-menu .sub-menu {
        display: none !important;
    }
}

/* ============================================================================
   ACCESSIBILITY
   ============================================================================ */

/* Focus states */
.main-navigation #primary-menu .menu-item a:focus {
    outline: 2px solid rgba(250, 205, 0, 0.8) !important;
    outline-offset: 2px !important;
    text-decoration: none !important;
    border-bottom: none !important;
}

/* Screen reader text */
.screen-reader-text {
    position: absolute !important;
    clip: rect(1px, 1px, 1px, 1px) !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    .main-navigation #primary-menu .sub-menu {
        transition: none !important;
    }
}

/* ============================================================================
   CURRENT PAGE INDICATORS
   ============================================================================ */

.main-navigation #primary-menu .sub-menu .current-menu-item > a,
.main-navigation #primary-menu .sub-menu .current_page_item > a,
.main-navigation #primary-menu .sub-menu .current-page-ancestor > a,
.main-navigation #primary-menu .sub-menu .current-menu-ancestor > a {
    background: rgba(250, 205, 0, 0.15) !important;
    color: var(--university-blue, #1C3B70) !important;
    font-weight: 700 !important;
    border-left: 3px solid var(--knowledge-gold, #FACD00) !important;
    padding-left: 13px !important;
}