.wpr-language-switcher {
 background-color: #fff;
}

.wpr-language-switcher .wpr-language-switcher-toggle {
    display: flex;
    align-items: center;
    gap: 8px;
    position: relative;
    padding-right: 30px;
}

.wpr-language-switcher-current,
.wpr-language-switcher-item-content {
    display: flex;
    align-items: center;
    gap: 8px;
}

.wpr-language-switcher-label {
    color: #222222;
    text-transform: none;
}

.wpr-language-switcher .wpr-language-switcher-toggle,
.wpr-language-switcher .wpr-language-switcher-toggle:focus,
.wpr-language-switcher .wpr-language-switcher-toggle:active,
.wpr-language-switcher .wpr-language-switcher-toggle.show {
    color: #222222;
}

.wpr-language-switcher-flag {
    width: 18px;
    height: 14px;
    border-radius: 2px;
    overflow: hidden;
    line-height: 0;
    flex: 0 0 auto;
}

.wpr-language-switcher-flag img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08);
    border-radius: 2px;
}

.wpr-language-switcher-flag.wpr-language-switcher-flag--hidden {
    display: none;
}

#wpr-language-switcher-wpr_translate_language_switcher-toggle.btn:hover {
    color: #222222;
}

.wpr-language-switcher .wpr-language-switcher-toggle::after {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 700;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    margin-left: 0;
    font-size: 14px;
    line-height: 1;
    border: none;
}

/* WPRentals-only caret alignment override. */
body.wp-theme-wprentals .wpr-language-switcher .wpr-language-switcher-toggle::after {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 700;
    position: absolute;
    right: 0px;
}

.wpr-debug-panel {
    position: relative;
    height: 400px;
    padding: 10px;
    z-index: 9999;
    font-size: 12px;
}

/* Menu-injected language switcher only. */
.wpresidence-navigation-menu .wpr-language-switcher-menu-item {
    position: relative;
}

.wpresidence-navigation-menu .wpr-language-switcher-menu-item .wpr-language-switcher-menu {
    display: none;
    flex-direction: column;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 9999;
}

.wpresidence-navigation-menu .wpr-language-switcher-menu-item:hover .wpr-language-switcher-menu,
.wpresidence-navigation-menu .wpr-language-switcher-menu-item .wpr-language-switcher-menu.show {
    display: flex;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.wpresidence-navigation-menu .wpr-language-switcher-menu-item .dropdown-item.active,
.wpresidence-navigation-menu .wpr-language-switcher-menu-item .dropdown-item:active,
.wpresidence-navigation-menu .wpr-language-switcher-menu-item .dropdown-item:hover,
.wpresidence-navigation-menu .wpr-language-switcher-menu-item .dropdown-item:focus {
    color: var(--wp-estate-menu-hover-font-color-option, var(--wp-estate-menu-hover-font-color));
    background-color: transparent;
}

.top_bar_wrapper .wpr-language-switcher-menu > li:hover {
    color: var(--wp-estate-menu-hover-font-color-option, var(--wp-estate-menu-hover-font-color));
    background-color: var(--wp-estate-menu-hover-back-color-option, var(--wp-estate-menu-hover-back-color));
}

.top_bar_wrapper .wpr-language-switcher-menu .dropdown-item:hover,
.top_bar_wrapper .wpr-language-switcher-menu .dropdown-item:focus {
    color: var(--wp-estate-menu-hover-font-color-option, var(--wp-estate-menu-hover-font-color));
    background-color: var(--wp-estate-menu-hover-back-color-option, var(--wp-estate-menu-hover-back-color));
}

/* Decouple dropdown spacing from sticky-menu collapsed state. */
.wpr-language-switcher .wpr-language-switcher-menu {
    padding-top: 4px;
    padding-bottom: 4px;
}

.wpr-language-switcher .wpr-language-switcher-menu .wpr-language-switcher-item {
    display: flex;
    align-items: center;
    padding: 6px 12px;
    line-height: 1.4;
    min-height: 0;
}

.wpr-language-switcher .wpr-language-switcher-item-content {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: nowrap;
}

/* WPRentals header menu compatibility (Bootstrap 3 / #access menu markup). */
#access .wpr-language-switcher-menu-item--wprentals > .wpr-language-switcher {
    background: transparent;
}

#access .wpr-language-switcher-menu-item--wprentals > .wpr-language-switcher > .wpr-language-switcher-toggle {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    color: inherit;
    display: block;
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    margin: 0;
    min-height: 0;
    padding: 23px 20px;
    text-align: left;
}

#access .wpr-language-switcher-menu-item--wprentals > .wpr-language-switcher > .wpr-language-switcher-toggle:hover,
#access .wpr-language-switcher-menu-item--wprentals > .wpr-language-switcher > .wpr-language-switcher-toggle:focus {
    background: transparent;
    color: #b881fc;
}

#access .wpr-language-switcher-menu-item--wprentals > .wpr-language-switcher .wpr-language-switcher-menu {
    top: 77px;
}

#access .wpr-language-switcher-menu-item--wprentals:hover > .wpr-language-switcher .wpr-language-switcher-menu,
#access .wpr-language-switcher-menu-item--wprentals.is-open > .wpr-language-switcher .wpr-language-switcher-menu {
    opacity: 1;
    top: 69px;
    visibility: visible;
}

#access .wpr-language-switcher-menu-item--wprentals .wpr-language-switcher-menu .wpr-language-switcher-item {
    background: transparent;
    border: 0;
    color: #484848;
    display: block;
    font-size: 13px;
    padding: 10px 25px;
    text-align: left;
    width: 100%;
    transition: all 0.25s ease;
}

#access .wpr-language-switcher-menu-item--wprentals .wpr-language-switcher-menu .wpr-language-switcher-item:hover,
#access .wpr-language-switcher-menu-item--wprentals .wpr-language-switcher-menu .wpr-language-switcher-item:focus {
    background: transparent;
    color: #b881fc;
    padding-left: 30px;
}

/* Ibeka / WPResidence Header Type 6 compact desktop switcher. */
.wpr-language-switcher-header6-mount {
    display: none;
}

.wpr-language-switcher-header6-mount.is-mounted {
    display: flex;
    align-items: center;
    margin-left: 12px;
    position: relative;
    z-index: 10020;
}

.wpr-language-switcher-header6-mount .wpr-language-switcher {
    background: transparent !important;
    position: relative;
}

.wpr-language-switcher-header6-mount .wpr-language-switcher-toggle,
.wpr-language-switcher-header6-mount .wpr-language-switcher-toggle:focus,
.wpr-language-switcher-header6-mount .wpr-language-switcher-toggle:active,
.wpr-language-switcher-header6-mount .wpr-language-switcher-toggle.show {
    min-height: 0;
    padding: 3px 20px 3px 0;
    border: 0;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.2;
}

.wpr-language-switcher-header6-mount .wpr-language-switcher-label,
.wpr-language-switcher-header6-mount .wpr-language-switcher-current {
    color: #fff !important;
    font-size: 12px;
    line-height: 1.2;
}

.wpr-language-switcher-header6-mount .wpr-language-switcher-current {
    gap: 5px;
}

.wpr-language-switcher-header6-mount .wpr-language-switcher-flag {
    width: 16px;
    height: 12px;
}

.wpr-language-switcher-header6-mount .wpr-language-switcher-toggle::after {
    right: 2px;
    color: #fff;
    font-size: 11px;
}

.wpr-language-switcher-header6-mount .wpr-language-switcher-menu {
    min-width: 154px;
    max-height: min(420px, 70vh);
    overflow-y: auto;
    margin-top: 8px;
    padding: 5px 0;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 4px;
    background: #111 !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.28);
}

.wpr-language-switcher-header6-mount .wpr-language-switcher-item {
    width: 100%;
    padding: 7px 11px;
    border: 0;
    background: transparent;
    color: #fff;
    font-size: 12px;
    text-align: left;
}

.wpr-language-switcher-header6-mount .wpr-language-switcher-item:hover,
.wpr-language-switcher-header6-mount .wpr-language-switcher-item:focus,
.wpr-language-switcher-header6-mount .wpr-language-switcher-item.active {
    background: rgba(255,255,255,.08);
    color: #fff;
}

.wpr-language-switcher-header6-mount .wpr-language-switcher-item-content {
    gap: 7px;
}

/* The desktop Header 6 mount is not used on mobile; the configured Mobile Menu
 * switcher remains the only mobile-language selector. */
@media (max-width: 991px) {
    .wpr-language-switcher-header6-mount {
        display: none !important;
    }
}


/* Keep the header language switcher's accessible name for assistive
 * technology without rendering the text visually next to the flag/code. */
.wpr-language-switcher-header6-mount
.wpr-language-switcher-toggle
.screen-reader-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

