.avec-language-switcher {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    min-height: 36px;
    padding: .4rem .7rem;
    border: 1px solid currentColor;
    border-radius: 999px;
    color: inherit;
    background: rgba(255, 255, 255, .12);
    font-size: .82rem;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color .18s ease, color .18s ease, transform .18s ease;
}

.avec-language-switcher:hover,
.avec-language-switcher:focus-visible {
    color: inherit;
    background: rgba(255, 255, 255, .24);
    transform: translateY(-1px);
}

.avec-language-switcher--dashboard {
    color: var(--bs-body-color, #212529);
    background: #fff;
    border-color: #d8dee7;
}

.avec-language-switcher--frontend {
    color: var(--primary-dark-red, #95122c);
    background: #fff;
}

.avec-language-switcher--floating {
    position: fixed;
    top: max(12px, env(safe-area-inset-top));
    right: max(12px, env(safe-area-inset-right));
    z-index: 1090;
    color: #95122c;
    background: #fff;
    box-shadow: 0 4px 18px rgba(0, 0, 0, .14);
}

@media (max-width: 575.98px) {
    .avec-language-switcher span { font-size: .76rem; }
    .avec-language-switcher--dashboard { padding-inline: .55rem; }
}

@media print {
    .avec-language-switcher { display: none !important; }
}
