/**
 * FILE: switcher-floating.css
 * PATH: /wp-content/plugins/linguifiwp/assets/css/switcher-floating.css
 * VERSION: 0.1.0
 *
 * Styles for the Floating Blob switcher type.
 *
 * Copyright © 2026 Rob Snow / Rob Art | Illustration
 * All Rights Reserved.
 */

.lfi-blob-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 52px !important;
    height: 52px !important;
    padding: 0 !important;
    background: var(--sw-active-bg) !important;
    border: none !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    box-shadow: 0 3px 12px rgba(0,0,0,.25) !important;
    transition: transform 0.15s, box-shadow 0.15s !important;
    color: var(--sw-active-text) !important;
    box-sizing: border-box !important;
    outline: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    font-size: inherit !important;
    line-height: 1 !important;
}

.lfi-blob-btn:hover,
.lfi-blob-btn:focus,
.lfi-blob-btn:active {
    transform: scale(1.08) !important;
    box-shadow: 0 5px 18px rgba(0,0,0,.3) !important;
    background: var(--sw-active-bg) !important;
    color: var(--sw-active-text) !important;
    opacity: 1 !important;
    border: none !important;
    outline: none !important;
    text-decoration: none !important;
}

.lfi-blob-flag {
    font-size: 26px;
    line-height: 1;
    display: flex;
    align-items: center;
    pointer-events: none;
}

.lfi-blob-icon {
    width: 26px;
    height: 26px;
    display: block;
    filter: brightness(0) invert(1);
    pointer-events: none;
}

.lfi-blob-menu {
    list-style: none !important;
    margin: 0 !important;
    padding: 4px 0 !important;
    background: var(--sw-bg);
    border: var(--sw-border-width) solid var(--sw-border);
    border-radius: var(--sw-radius);
    box-shadow: 0 4px 16px rgba(0,0,0,.18);
    position: absolute;
    bottom: calc(100% + 8px);
    right: 0;
    min-width: 160px;
    width: max-content;
    z-index: 99999;
}

/* If blob is on the left side, anchor menu to left edge */
.lfi-floating-wrap[style*="left:"] .lfi-blob-menu {
    right: auto;
    left: 0;
}

.lfi-blob-menu-item {
    display: block !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
}
.lfi-blob-menu-item::before,
.lfi-blob-menu-item::after {
    display: none !important;
    content: none !important;
}

.lfi-blob-menu-link {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 7px 14px !important;
    color: var(--sw-text) !important;
    text-decoration: none !important;
    font-size: 13px !important;
    transition: background 0.1s, opacity 0.1s !important;
    white-space: nowrap !important;
    background: none !important;
    opacity: 1 !important;
}

.lfi-blob-menu-link:hover {
    background: rgba(0,0,0,.06) !important;
    text-decoration: none !important;
    color: var(--sw-text) !important;
    opacity: 1 !important;
}

.lfi-blob-menu-item--active .lfi-blob-menu-link {
    background: var(--sw-active-bg) !important;
    color: var(--sw-active-text) !important;
    font-weight: 600 !important;
}

.lfi-blob-menu-item--active .lfi-blob-menu-link:hover {
    background: var(--sw-active-bg) !important;
    color: var(--sw-active-text) !important;
}

.lfi-blob-menu-flag {
    font-size: 18px;
    line-height: 1;
    flex-shrink: 0;
}
