.language-switch {
    position: fixed;
    top: 16px;
    right: 16px;
    z-index: 10000;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px;
    border-radius: 999px;
    background: rgba(242, 239, 233, 0.88);
    border: 1px solid rgba(26, 51, 36, 0.12);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    box-shadow: 0 10px 24px rgba(26, 51, 36, 0.12);
    font-family: Inter, system-ui, sans-serif;
}

.language-switch__label {
    padding: 0 8px 0 10px;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: rgba(26, 51, 36, 0.7);
}

.language-switch__button {
    appearance: none;
    border: 0;
    background: transparent;
    color: rgba(26, 51, 36, 0.68);
    padding: 9px 14px;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    cursor: pointer;
    transition:
        background-color 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.language-switch__button:hover {
    color: #1a3324;
    background: rgba(26, 51, 36, 0.06);
}

.language-switch__button.is-active {
    background: linear-gradient(135deg, #1a3324 0%, #2c5530 100%);
    color: #f2efe9;
    box-shadow: 0 6px 16px rgba(26, 51, 36, 0.2);
}

.language-switch[data-busy="true"] .language-switch__button {
    pointer-events: none;
    opacity: 0.75;
}

@media (max-width: 640px) {
    .language-switch {
        top: 10px;
        right: 10px;
        gap: 4px;
        padding: 5px;
    }

    .language-switch__label {
        display: none;
    }

    .language-switch__button {
        padding: 8px 12px;
    }
}
