/* ========================================================================== 
   ITNETCOM Catalog Navigation V2 - Desktop refinement
   Preview-only enhancement loaded by the gated V2 loader.
   ========================================================================== */

@media (min-width: 1181px) {
    /* Header search + account: one coherent control group. */
    body.itn-catalog-nav-v2-ready .itn-header-search-account-row {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 9px;
        margin-top: 4px;
    }

    body.itn-catalog-nav-v2-ready .itn-header-account-compact {
        min-height: 44px;
        display: inline-flex !important;
        align-items: center !important;
        gap: 4px !important;
        padding: 3px !important;
        border: 1px solid #e7e7e7;
        border-radius: 10px;
        background: #f7f7f7;
    }

    body.itn-catalog-nav-v2-ready .itn-header-account-compact form {
        margin: 0 !important;
        padding: 0 !important;
    }

    body.itn-catalog-nav-v2-ready .itn-header-account-compact .desktop-menu-item,
    body.itn-catalog-nav-v2-ready .itn-header-account-compact .desktop-menu-item-account {
        min-width: 76px;
        min-height: 38px !important;
        height: 38px !important;
        padding: 0 11px !important;
        gap: 6px !important;
        border: 0 !important;
        border-radius: 7px !important;
        background: transparent !important;
        box-shadow: none !important;
        font-size: 12px !important;
    }

    body.itn-catalog-nav-v2-ready .itn-header-account-compact .desktop-menu-item:hover,
    body.itn-catalog-nav-v2-ready .itn-header-account-compact .desktop-menu-item:focus-visible {
        background: #ffffff !important;
    }

    body.itn-catalog-nav-v2-ready .itn-header-account-compact a[href*="registrazione"] {
        min-width: 92px;
        border: 0 !important;
        background: #e30613 !important;
        color: #ffffff !important;
    }

    body.itn-catalog-nav-v2-ready .itn-header-account-compact a[href*="registrazione"]:hover,
    body.itn-catalog-nav-v2-ready .itn-header-account-compact a[href*="registrazione"]:focus-visible {
        background: #c9000d !important;
        color: #ffffff !important;
    }

    body.itn-catalog-nav-v2-ready .itn-header-account-compact .desktop-menu-icon {
        width: 16px !important;
        height: 16px !important;
        min-width: 16px !important;
    }

    body.itn-catalog-nav-v2-ready .itn-header-account-compact .menu-icon-google {
        font-size: 17px !important;
    }

    body.itn-catalog-nav-v2-ready .itn-header-account-compact .desktop-menu-label {
        font-size: 12px !important;
        font-weight: 700 !important;
    }

    /* The V2 desktop bar is catalog-only: Home and Shop remain reachable
       through logo/site navigation but no longer consume category space. */
    body.itn-catalog-nav-v2-ready .main-nav-desktop .nav-inner > a.desktop-menu-item[href="/"],
    body.itn-catalog-nav-v2-ready .main-nav-desktop .nav-inner > a.desktop-menu-item[href="/negozio"],
    body.itn-catalog-nav-v2-ready .main-nav-desktop .nav-inner > a.desktop-menu-item[href="/negozio/"] {
        display: none !important;
    }

    /* Categories occupy the flexible center; cart is a stable CTA at right. */
    body.itn-catalog-nav-v2-ready .main-nav-desktop .itn-desktop-catalog-v2 {
        order: 10 !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
    }

    body.itn-catalog-nav-v2-ready .main-nav-desktop .nav-inner > .desktop-header-mini-cart {
        order: 20 !important;
        flex: 0 0 auto !important;
        align-self: center !important;
        margin: 0 0 0 12px !important;
        padding-left: 12px !important;
        border-left: 1px solid #ececec;
    }

    body.itn-catalog-nav-v2-ready .desktop-header-mini-cart .header-mini-cart-button {
        min-height: 38px !important;
        height: 38px !important;
        padding: 0 14px !important;
        border-radius: 8px !important;
        white-space: nowrap;
    }

    body.itn-catalog-nav-v2-ready .itn-root-link {
        min-height: 42px;
        padding-inline: 11px;
    }

    /* Scrolled desktop layout: preserve the original compact controls as the
       first fixed row, then keep V2 categories + cart in a second row below. */
    body.itn-catalog-nav-v2-ready.itn-menu-fixed .main-nav-desktop {
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        z-index: 9980 !important;
        margin: 0 !important;
        background: #ffffff !important;
        border-top: 0 !important;
        border-bottom: 1px solid #dedede !important;
        box-shadow: 0 7px 18px rgba(0, 0, 0, 0.08) !important;
        transform: none !important;
    }

    body.itn-catalog-nav-v2-ready.itn-menu-fixed .main-nav-desktop .nav-inner {
        display: grid !important;
        grid-template-columns: auto auto minmax(260px, 1fr) auto;
        grid-template-areas:
            "brand products search account"
            "categories categories categories cart";
        align-items: center !important;
        column-gap: 10px !important;
        row-gap: 0 !important;
        min-height: 0 !important;
        padding-top: 6px !important;
        padding-bottom: 0 !important;
        background: #ffffff !important;
        overflow: visible !important;
    }

    body.itn-catalog-nav-v2-ready.itn-menu-fixed .main-nav-desktop .itn-static-slim-nav-brand {
        grid-area: brand;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        min-width: 96px !important;
        margin: 0 !important;
    }

    body.itn-catalog-nav-v2-ready.itn-menu-fixed .main-nav-desktop .itn-static-slim-nav-logo {
        display: block !important;
        width: auto !important;
        max-width: 108px !important;
        max-height: 31px !important;
        object-fit: contain !important;
    }

    body.itn-catalog-nav-v2-ready.itn-menu-fixed .main-nav-desktop .itn-desktop-category-hover-menu {
        grid-area: products;
        display: block !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    body.itn-catalog-nav-v2-ready.itn-menu-fixed .main-nav-desktop .itn-desktop-category-hover-menu > .desktop-menu-item-summary {
        min-height: 36px !important;
        height: 36px !important;
        padding: 0 11px !important;
        white-space: nowrap !important;
    }

    body.itn-catalog-nav-v2-ready.itn-menu-fixed .main-nav-desktop .itn-static-slim-nav-search {
        grid-area: search;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: stretch !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    body.itn-catalog-nav-v2-ready.itn-menu-fixed .main-nav-desktop .itn-static-slim-nav-search input,
    body.itn-catalog-nav-v2-ready.itn-menu-fixed .main-nav-desktop .itn-static-slim-nav-search button {
        min-height: 36px !important;
        height: 36px !important;
    }

    body.itn-catalog-nav-v2-ready.itn-menu-fixed .main-nav-desktop .desktop-account-menu:not(.itn-header-account-compact) {
        grid-area: account;
        display: inline-flex !important;
        align-items: center !important;
        justify-self: end !important;
        gap: 4px !important;
        min-width: max-content !important;
        margin: 0 !important;
    }

    body.itn-catalog-nav-v2-ready.itn-menu-fixed .main-nav-desktop .desktop-account-menu:not(.itn-header-account-compact) .desktop-menu-item {
        min-height: 36px !important;
        height: 36px !important;
        padding: 0 10px !important;
    }

    body.itn-catalog-nav-v2-ready.itn-menu-fixed .main-nav-desktop .itn-desktop-catalog-v2 {
        grid-area: categories;
        align-self: stretch !important;
        width: 100% !important;
        min-width: 0 !important;
        margin-top: 6px !important;
        border-top: 1px solid #eeeeee !important;
    }

    body.itn-catalog-nav-v2-ready.itn-menu-fixed .main-nav-desktop .nav-inner > .desktop-header-mini-cart {
        grid-area: cart;
        align-self: stretch !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        margin: 6px 0 0 12px !important;
        padding-left: 12px !important;
        border-top: 1px solid #eeeeee !important;
        border-left: 1px solid #ececec !important;
    }

    body.itn-catalog-nav-v2-ready.itn-menu-fixed .main-nav-desktop .itn-root-link {
        min-height: 44px !important;
    }

    /* Mega-menu: denser and more editorial, with less empty vertical space. */
    body.itn-catalog-nav-v2-ready .itn-mega-panel-v2 {
        max-height: min(70vh, 650px);
        border-radius: 0 0 6px 6px;
        box-shadow: 0 20px 42px rgba(0, 0, 0, 0.15);
    }

    body.itn-catalog-nav-v2-ready .itn-mega-shell {
        grid-template-columns: 210px minmax(0, 1fr);
        min-height: 255px;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-left {
        padding: 16px 0;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-root-all {
        margin: 0 12px 8px;
        padding: 9px 8px 11px;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-root-all.is-active {
        color: #e30613;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-left-link {
        min-height: 35px;
        padding: 7px 18px;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-right {
        padding: 22px 24px 27px;
    }

    /* Overview uses newspaper-style columns so groups pack vertically
       without the large empty holes produced by unequal grid rows. */
    body.itn-catalog-nav-v2-ready .itn-mega-grid {
        display: block;
        column-count: 4;
        column-gap: 28px;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-group {
        break-inside: avoid;
        -webkit-column-break-inside: avoid;
        margin: 0 0 20px;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-group-title {
        min-height: 26px;
        margin-bottom: 7px;
        padding: 5px 9px;
        border-radius: 5px;
        background: #f2f2f2;
        font-size: 12.5px;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-link-row {
        margin-top: 6px;
    }

    /* Interactive left subcategory navigation.
       Hover/focus on the left column turns the right side into a focused
       detail view instead of merely highlighting an unchanged overview. */
    body.itn-catalog-nav-v2-ready .itn-mega-grid.is-submenu-focus {
        display: block;
        column-count: 1;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-grid.is-submenu-focus > .itn-mega-group {
        display: none;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-grid.is-submenu-focus > .itn-mega-group.is-submenu-selected {
        display: grid;
        grid-template-columns: repeat(4, minmax(150px, 1fr));
        align-items: start;
        align-content: start;
        gap: 14px 18px;
        width: 100%;
        margin: 0;
        background: transparent;
        box-shadow: none;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-grid.is-submenu-focus .itn-mega-group-title {
        grid-column: 1 / -1;
        min-height: 32px;
        margin: 0 0 4px;
        padding: 0 0 9px;
        border-radius: 0;
        border-bottom: 1px solid #e5e5e5;
        background: transparent;
        color: #111111;
        font-size: 14px;
        font-weight: 800;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-grid.is-submenu-focus .itn-mega-link-row {
        min-width: 0;
        margin: 0;
        padding: 10px 12px;
        border: 1px solid #ededed;
        border-radius: 6px;
        background: #ffffff;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-grid.is-submenu-focus .itn-mega-link {
        display: block;
        font-size: 12.5px;
        line-height: 1.3;
        font-weight: 700;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-grid.is-submenu-focus .itn-mega-l4 {
        margin-top: 7px;
        padding-left: 8px;
    }

    body.itn-catalog-nav-v2-ready .itn-mega-grid.is-submenu-focus .itn-mega-more {
        align-self: start;
        margin-top: 2px;
    }

    @media (max-width: 1380px) {
        body.itn-catalog-nav-v2-ready .itn-mega-grid {
            column-count: 3;
        }

        body.itn-catalog-nav-v2-ready .itn-mega-grid.is-submenu-focus {
            column-count: 1;
        }

        body.itn-catalog-nav-v2-ready .itn-mega-grid.is-submenu-focus > .itn-mega-group.is-submenu-selected {
            grid-template-columns: repeat(3, minmax(150px, 1fr));
        }
    }
}