/**
 * Menu Sync Widget Styles
 * 
 * Basic styling for the menu sync widget
 * Most styling is handled by Elementor controls
 */

.msw-menu-container {
    display: block;
    width: 100%;
}

.msw-headline {
    margin: 0 0 15px 0;
    padding: 0;
    font-weight: bold;
}

.msw-menu-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    width: 100%;
}

.msw-menu-item {
    display: block;
    margin-bottom: 0;
}

.msw-menu-item a {
    display: block;
    text-decoration: none;
    transition: opacity 0.3s ease;
    padding: 8px 12px;
}

.msw-menu-item a:hover {
    opacity: 0.8;
    text-decoration: none;
}

/* Level 2 wrapper with arrow */
.msw-level2-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
}

.msw-level2-link {
    flex: 1;
    display: block;
    cursor: pointer;
    text-decoration: none;
    transition: opacity 0.3s ease;
    padding: 8px 12px;
}

.msw-level2-link:hover {
    opacity: 0.8;
    text-decoration: none;
}

.msw-level2-link[href="#"] {
    cursor: default;
}

/* Dropdown arrow */
.msw-dropdown-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    margin-left: 8px;
    cursor: pointer;
    transition: transform 0.3s ease;
    flex-shrink: 0;
    color: #ffffff;
}

.msw-menu-item.msw-has-children.msw-open .msw-dropdown-arrow {
    transform: rotate(180deg);
}

.msw-dropdown-arrow svg {
    width: 100%;
    height: 100%;
    display: block;
}

/* Level 3 dropdown */
.msw-level3-dropdown {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, opacity 0.3s ease;
    opacity: 0;
    padding-left: 20px;
}

.msw-menu-item.msw-open .msw-level3-dropdown {
    max-height: 1000px;
    opacity: 1;
}

.msw-level3-item {
    margin-top: 4px;
}

.msw-level3-item a {
    padding: 6px 12px;
    font-size: 0.9em;
}

/* Level 2 parent with Level 3 children */
.msw-level2-parent {
    display: flex;
    flex-direction: column;
}

.msw-level3-children {
    padding-left: 20px;
    margin-top: 4px;
}

.msw-level3-children .msw-level3-item {
    margin-top: 2px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .msw-menu-grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    
    .msw-menu-item {
        margin-bottom: 0;
    }
}

