/**
 * Lara Modul - Mega Menu (v2 - thumbnails mai mici)
 */

/* Forteaza dropdown ALB peste tot */
.ct-header-secondary > ul.menu > li.menu-item-has-children > .sub-menu,
.ct-header > ul.menu li.menu-item-has-children > .sub-menu,
header.ct-header .sub-menu {
    background: #ffffff !important;
    box-shadow: 0 12px 40px -4px rgba(0, 0, 0, 0.08) !important;
    border-radius: 16px !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
}
.ct-header .sub-menu a { color: #1d1d1f !important; }
.ct-header .sub-menu a:hover,
.ct-header .sub-menu .current-menu-item > a { color: #000000 !important; }

/* MEGA MENU pe item .lm-mega */
header.ct-header li.lm-mega { position: static !important; }

header.ct-header li.lm-mega > .sub-menu {
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    top: 100% !important;
    width: min(900px, calc(100vw - 40px)) !important;
    max-width: 900px !important;
    padding: 24px !important;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 16px !important;
    background: #ffffff !important;
    border-radius: 20px !important;
    box-shadow: 0 20px 60px -8px rgba(0, 0, 0, 0.12) !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
    margin-top: 0 !important;
}

header.ct-header li.lm-mega > .sub-menu li {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    border: none !important;
}

header.ct-header li.lm-mega > .sub-menu li > a {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    text-decoration: none !important;
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* Thumbnail - aspect 1:1 patrat compact */
header.ct-header li.lm-mega > .sub-menu li > a::before {
    content: '' !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    background-image: var(--thumb, none) !important;
    background-size: cover !important;
    background-position: center !important;
    background-color: #f5f5f7 !important;
    border-radius: 10px !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
    transition: box-shadow 0.25s ease !important;
}

header.ct-header li.lm-mega > .sub-menu li > a:not([data-thumb])::before {
    background-image: linear-gradient(135deg, #f5f5f7 0%, #e8e8ed 100%) !important;
}

header.ct-header li.lm-mega > .sub-menu li > a {
    font-family: -apple-system, "Inter", BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #1d1d1f !important;
    letter-spacing: -0.01em !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

header.ct-header li.lm-mega > .sub-menu li > a:hover {
    transform: translateY(-2px) !important;
    color: #000000 !important;
}
header.ct-header li.lm-mega > .sub-menu li > a:hover::before {
    box-shadow: 0 6px 18px -3px rgba(0, 0, 0, 0.15) !important;
}

/* RESPONSIVE */
@media (max-width: 991px) {
    header.ct-header li.lm-mega > .sub-menu {
        grid-template-columns: repeat(3, 1fr) !important;
        width: min(680px, calc(100vw - 40px)) !important;
    }
}
@media (max-width: 768px) {
    header.ct-header li.lm-mega > .sub-menu {
        grid-template-columns: repeat(2, 1fr) !important;
        padding: 16px !important;
        gap: 12px !important;
    }
    header.ct-header li.lm-mega > .sub-menu li > a { font-size: 12px !important; }
}

/* === MOBILE - dezactivez complet mega-menu pe drawer mobile === */
/* Selectori reali: <nav class="mobile-menu"> in <div id="offcanvas"> */
#offcanvas li.lm-mega,
.mobile-menu li.lm-mega,
#offcanvas li.lm-mega > .sub-menu,
.mobile-menu li.lm-mega > .sub-menu {
    position: static !important;
    transform: none !important;
    left: auto !important;
    top: auto !important;
    width: auto !important;
    max-width: none !important;
    display: block !important;
    grid-template-columns: none !important;
    gap: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
}

/* Sterg pseudo-element thumbnail in drawer mobile */
#offcanvas li.lm-mega > .sub-menu li > a::before,
.mobile-menu li.lm-mega > .sub-menu li > a::before,
#offcanvas li.lm-mega-item > a::before,
.mobile-menu li.lm-mega-item > a::before {
    display: none !important;
    content: none !important;
}

/* Reset link-uri categorii in mobile - lista verticala normala */
#offcanvas li.lm-mega > .sub-menu li > a,
.mobile-menu li.lm-mega > .sub-menu li > a,
#offcanvas li.lm-mega-item > a,
.mobile-menu li.lm-mega-item > a {
    display: block !important;
    flex-direction: row !important;
    text-align: left !important;
    padding: 12px 20px !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    gap: 0 !important;
    color: inherit !important;
    aspect-ratio: auto !important;
    transform: none !important;
}

/* Reset thumbnail aspect-ratio - nu vrem patratul gigantic */
#offcanvas li.lm-mega-item,
.mobile-menu li.lm-mega-item {
    aspect-ratio: auto !important;
    width: 100% !important;
    background: transparent !important;
}

/* Sub-divider intre items - mai subtil */
#offcanvas .mobile-menu li {
    border-color: rgba(255, 255, 255, 0.06) !important;
}

/* === FIX FORTE: text alb 100% pentru toate items in offcanvas mobile === */
#offcanvas .mobile-menu a,
#offcanvas .mobile-menu .sub-menu a,
#offcanvas li.lm-mega-item > a,
#offcanvas li.lm-mega > .sub-menu > li > a,
.ct-panel#offcanvas .mobile-menu a {
    color: #ffffff !important;
    opacity: 1 !important;
}

/* Sub-items un pic mai discret dar lizibil */
#offcanvas .mobile-menu .sub-menu a,
#offcanvas li.lm-mega > .sub-menu > li > a {
    color: rgba(255, 255, 255, 0.85) !important;
}

#offcanvas .mobile-menu .sub-menu a:hover,
#offcanvas li.lm-mega > .sub-menu > li > a:hover {
    color: #ffffff !important;
}


/* === Mobile drawer - background catifelat DOAR pe panou (nu wrapper) === */
#offcanvas .ct-panel-inner {
    background: #262626 !important;
}
/* Overlay-ul ramane semi-transparent default Blocksy */
#offcanvas .mobile-menu li {
    border-color: rgba(255, 255, 255, 0.06) !important;
}
