/* VLIP WP Navigation Block Styles */

.vlip-wp-navigation {
    position: relative;
}

/* Editor-specific styles */
.vlip-wp-navigation .block-editor-inner-blocks {
    width: 100%;
}

.vlip-wp-navigation .block-editor-block-list__layout {
    display: flex;
    gap: 1rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Horizontal layout in editor */
.vlip-nav--horizontal .block-editor-block-list__layout {
    flex-direction: row;
    flex-wrap: wrap;
}

/* Vertical layout in editor */
.vlip-nav--vertical .block-editor-block-list__layout {
    flex-direction: column;
}

/* Navigation Item styling in editor */
.vlip-navigation-item .vlip-navigation-item__label {
    padding: 0.5rem 1rem;
    display: inline-block;
    min-width: 100px;
}

.vlip-navigation-item .vlip-navigation-item__url {
    display: none;
}

/* Mobile Menu Button - Visible by default on mobile */
#menu-button {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem;
    background: transparent;
    border: none;
    cursor: pointer;
    color: currentColor;
}

#menu-button svg {
    display: block;
}

/* Navigation Menu */
.vlip-navigation-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: none; /* Hidden by default on mobile until menu button is clicked */
}

/* Mobile menu open state */
body.vlip-menu-is-open .vlip-navigation-menu {
    display: flex;
    flex-direction: column;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--wp--preset--color--base, #fff);
    padding: 5rem 2rem 2rem;
    overflow-y: auto;
    z-index: 1000;
}

/* Prevent body scroll when menu is open on mobile */
body.vlip-menu-is-open {
    overflow: hidden;
}

/* Navigation Items */
.vlip-navigation-item {
    margin: 0;
}

.vlip-navigation-item a {
    display: block;
    padding: 1rem;
    text-decoration: none;
    color: currentColor;
}

/* Desktop styles - Applied at breakpoint */
@media (min-width: 768px) {
    /* Hide hamburger button on desktop */
    #menu-button {
        display: none;
    }

    /* Show navigation menu on desktop */
    .vlip-navigation-menu {
        display: flex;
        flex-direction: row;
        position: static;
        padding: 0;
        background: transparent;
        overflow: visible;
        gap: 1rem;
    }

    /* Reset body scroll behavior */
    body.vlip-menu-is-open {
        overflow: auto;
    }

    body.vlip-menu-is-open .vlip-navigation-menu {
        position: static;
        padding: 0;
    }

    /* Navigation Items - Horizontal layout */
    .vlip-navigation-item a {
        padding: 0.5rem 1rem;
    }
}
