/* language-switcher.css */

/* Base styles */
.cls-language-switcher {
    position: relative;
    display: inline-block;
    font-family: var(--bde-font-family-base, inherit);
}

/* Toggle button */
.cls-toggle {
    display: flex;
    align-items: center;
    gap: 8px;
    background: none;
    border: none;
    padding: 8px 12px;
    cursor: pointer;
    transition: opacity 0.2s ease;
    color: var(--bde-palette-color-1-219fc5f7-3915-46c5-8bef-6ed6d8972ff4, inherit);
    font-size: var(--bde-menu-link-font-size, 14px);
}

.cls-toggle:hover {
    opacity: 0.8;
    color: var(--bde-palette-color-1-ba84e4a0-c0ee-47c1-89e9-bfd633a3bf7c, inherit);
}

.cls-globe-icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

.cls-current-language {
	color: var(--bde-links-color) !important;
    font-weight: 500;
}

/* Dropdown */
.cls-dropdown {
    position: absolute;
    top: 100%;
    right: 0;
    background: var(--bde-dropdown-background, #ffffff);
    border-radius: 8px;
    box-shadow: var(--bde-dropdown-shadow, 0 4px 6px -1px rgb(0 0 0 / 0.1));
    min-width: 180px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.2s ease;
    z-index: 1000;
}

.cls-dropdown--active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* Language list */
.cls-language-list {
    list-style: none;
    margin: 0;
    padding: 8px 0;
}

.cls-language-item {
    margin: 0;
    padding: 0;
}

.cls-language-item a {
    color: var(--bde-links-color) !important;
}

.cls-language-link {
    display: block;
    padding: 8px 16px;
    color: var(--bde-dropdown-link-color, #374151);
    text-decoration: none;
    transition: background-color 0.2s ease;
    font-size: var(--bde-dropdown-link-font-size, 14px);
}

.cls-language-link:hover {
    background-color: var(--bde-dropdown-link-background-hover, #f3f4f6);
    color: var(--bde-dropdown-link-color-hover, #1a1a1a);
}

.cls-active .cls-language-link {
    background-color: var(--bde-dropdown-link-background-active, #e5e7eb);
    font-weight: 600;
}

/* Mobile styles */

@media only screen and (max-width: 1023px)
{
	#cls-dropdown {
		position: initial;
		width: 100vw;
	}
}

@media (max-width: 767px) {
    /* Mobile menu integration */
    .breakdance-menu .cls-language-switcher {
        
        padding: 16px 20px;
        width: 100%;
    }

    .cls-toggle {
        width: 100%;
        justify-content: flex-start;
        padding: 12px;
    }

    .cls-dropdown {
        position: relative;
        width: 100%;
        margin-top: 8px;
        right: auto;
    }

    .cls-language-list {
        padding: 0;
    }

    .cls-language-link {
        padding: 12px 16px;
        font-size: 14px;
    }
}

/* RTL Support */
[dir="rtl"] .cls-dropdown {
    right: auto;
    left: 0;
}

[dir="rtl"] .cls-toggle {
    flex-direction: row-reverse;
}


/* Accessibility */
.cls-toggle:focus-visible,
.cls-language-link:focus-visible {
    outline: 2px solid var(--bde-focus-ring-color, #2563eb);
    outline-offset: 2px;
}

/* Mobile-specific styles */
@media (max-width: 767px) {
    /* Mobile wrapper */
    .cls-mobile-wrapper {
        
        width: 100% !important;
    }

    /* Language switcher container */
    .breakdance-menu-list .cls-language-switcher {
        width: 100%;
        padding: 0;
    }

    /* Toggle button */
    .breakdance-menu-list .cls-toggle {
        width: 100%;
        padding: 12px 16px;
        justify-content: flex-start;
        font-size: var(--bde-menu-font-size, 14px);
        color: var(--bde-menu-link-color, inherit);
        text-align: left;
    }

    /* Dropdown */
    .breakdance-menu-list .cls-dropdown {
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        margin-top: 0;
        border-radius: 0;
		/* background: var(--bde-menu-dropdown-background, rgba(0, 0, 0, 0.1)); */
        box-shadow: none;
    }

	#cls-dropdown .cls-language-item.cls-active {
        background: var(--bde-menu-dropdown-background, rgba(0, 0, 0, 0.1));
    }
	
    /* Language list */
    .breakdance-menu-list .cls-language-list {
        padding: 0;
    }

    /* Language items */
    .breakdance-menu-list .cls-language-link {
        padding: 12px 16px 12px 44px;
        color: var(--bde-menu-link-color, inherit);
        font-size: var(--bde-menu-font-size, 14px);
    }

    /* Active language */
    .breakdance-menu-list .cls-active .cls-language-link {
        background-color: var(--bde-menu-link-background-active, rgba(255, 255, 255, 0.1));
    }

    /* Globe icon */
    .breakdance-menu-list .cls-globe-icon {
        width: 20px;
        height: 20px;
        margin-right: 8px;
    }
}

/* RTL support for mobile */
[dir="rtl"] .breakdance-menu-list .cls-toggle {
    text-align: right;
}

[dir="rtl"] .breakdance-menu-list .cls-language-link {
    padding: 12px 44px 12px 16px;
}