.tmp-language-switcher {
    --tmp-switcher-surface: rgba(255, 255, 255, 0.94);
    --tmp-switcher-border: rgba(24, 49, 83, 0.12);
    --tmp-switcher-text: #16314d;
    --tmp-switcher-muted: rgba(231, 241, 255, 0.95);
    --tmp-switcher-active-start: #0a6cff;
    --tmp-switcher-active-end: #12b4ff;
    --tmp-switcher-shadow: 0 18px 48px rgba(12, 27, 52, 0.18);
    --tmp-switcher-offset-x: 24px;
    --tmp-switcher-offset-y: 24px;
    --tmp-switcher-z: 9999;
    --tmp-switcher-flag-size: 14px;
    --tmp-switcher-chip-gap: 8px;
    --tmp-switcher-flag-text-gap: 8px;
    --tmp-switcher-panel-padding: 8px;
    --tmp-switcher-border-width: 1px;
    --tmp-switcher-custom-bg: var(--tmp-switcher-surface);
    --tmp-switcher-custom-border-color: var(--tmp-switcher-border);
    --tmp-switcher-custom-text: var(--tmp-switcher-text);
    --tmp-switcher-item-bg: var(--tmp-switcher-muted);
    --tmp-switcher-item-border: transparent;
    --tmp-switcher-item-text: var(--tmp-switcher-custom-text);
    --tmp-switcher-active-bg: linear-gradient(135deg, var(--tmp-switcher-active-start), var(--tmp-switcher-active-end));
    --tmp-switcher-active-text: #ffffff;
    --tmp-switcher-custom-font-size: 13px;
    display: inline-flex !important;
    width: var(--tmp-switcher-panel-width, auto);
    max-width: var(--tmp-switcher-panel-max-width, 100%);
    flex-wrap: wrap;
    gap: var(--tmp-switcher-chip-gap);
    padding: var(--tmp-switcher-panel-padding);
    border: var(--tmp-switcher-border-width) solid var(--tmp-switcher-custom-border-color) !important;
    border-radius: 999px !important;
    background: var(--tmp-switcher-custom-bg) !important;
    backdrop-filter: blur(14px);
    box-shadow: var(--tmp-switcher-shadow) !important;
    font-family: var(--tmp-switcher-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
    line-height: 1 !important;
    isolation: isolate;
    text-transform: none !important;
    letter-spacing: normal !important;
    color: var(--tmp-switcher-custom-text) !important;
}

.tmp-language-switcher--layout-inline {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
}

.tmp-language-switcher,
.tmp-language-switcher * {
    box-sizing: border-box;
}

.tmp-language-switcher > a,
.tmp-language-switcher > span {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 0;
    min-width: 58px;
    min-height: 38px;
    padding: 8px 12px;
    border-radius: 999px !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    font-size: var(--tmp-switcher-custom-font-size) !important;
    transition: transform 140ms ease, background-color 140ms ease, box-shadow 140ms ease, color 140ms ease;
    border: 0 !important;
    margin: 0 !important;
}

.tmp-language-switcher > a > span,
.tmp-language-switcher > span > span {
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    line-height: 1 !important;
    letter-spacing: normal !important;
}

.tmp-language-switcher--flags-only > a,
.tmp-language-switcher--flags-only > span {
    min-width: auto;
    padding-left: 6px;
    padding-right: 6px;
    gap: 0;
}

.tmp-language-switcher--text-only > a,
.tmp-language-switcher--text-only > span {
    min-width: auto;
    padding-left: 10px;
    padding-right: 10px;
}

.tmp-language-switcher a {
    color: var(--tmp-switcher-item-text) !important;
    background: var(--tmp-switcher-item-bg) !important;
    border: 1px solid var(--tmp-switcher-item-border) !important;
    box-shadow: none !important;
}

.tmp-language-switcher a:hover,
.tmp-language-switcher a:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(10, 108, 255, 0.16);
    outline: none;
}

.tmp-language-switcher > .is-current {
    color: var(--tmp-switcher-active-text) !important;
    background: var(--tmp-switcher-active-bg) !important;
    border: 1px solid transparent !important;
    box-shadow: 0 10px 24px rgba(10, 108, 255, 0.18);
}

.tmp-language-switcher-flag {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    font-size: var(--tmp-switcher-flag-size) !important;
    line-height: 1;
    margin-right: calc(var(--tmp-switcher-flag-text-gap) - 8px);
}

.tmp-language-switcher--flags-only .tmp-language-switcher-flag {
    margin-right: 0;
}

.tmp-language-switcher--layout-stacked {
    flex-direction: column;
    align-items: stretch;
    border-radius: 18px !important;
}

.tmp-language-switcher--layout-stacked > a,
.tmp-language-switcher--layout-stacked > span {
    width: 100%;
}

.tmp-language-switcher--shell-flat {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.tmp-language-switcher--shell-outline {
    background: transparent !important;
    box-shadow: none !important;
    border-color: var(--tmp-switcher-custom-border-color) !important;
}

.tmp-language-switcher--transparent-panel {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.tmp-language-switcher--transparent-panel.tmp-language-switcher--shell-panel,
.tmp-language-switcher--transparent-panel.tmp-language-switcher--shell-outline {
    border: 0 !important;
}

.tmp-language-switcher--layout-stacked.tmp-language-switcher--shell-flat,
.tmp-language-switcher--layout-stacked.tmp-language-switcher--shell-outline {
    border-radius: 0 !important;
}

.tmp-language-switcher--variant-glass-pill,
.tmp-language-switcher--variant-soft-pill,
.tmp-language-switcher--variant-floating-capsule,
.tmp-language-switcher--variant-floating-panel,
.tmp-language-switcher--variant-dashboard-pills,
.tmp-language-switcher--variant-capsule-shadow,
.tmp-language-switcher--variant-aurora-glow {
    padding: 6px !important;
    border-radius: 999px !important;
}

.tmp-language-switcher--variant-glass-pill {
    background: rgba(255, 255, 255, 0.72) !important;
    backdrop-filter: blur(12px);
}

.tmp-language-switcher--variant-glass-pill a {
    background: rgba(255, 255, 255, 0.88) !important;
}

.tmp-language-switcher--variant-glass-pill .is-current {
    background: linear-gradient(135deg, #0a6cff, #26c0ff) !important;
}

.tmp-language-switcher--variant-soft-pill {
    background: #eef5ff !important;
    box-shadow: 0 14px 32px rgba(17, 24, 39, 0.1) !important;
}

.tmp-language-switcher--variant-soft-pill a {
    background: #ffffff !important;
}

.tmp-language-switcher--variant-soft-pill .is-current {
    background: #d8e8ff !important;
    color: #0a57d1 !important;
}

.tmp-language-switcher--variant-solid-chip {
    background: #14253a !important;
    border-color: rgba(255, 255, 255, 0.08) !important;
}

.tmp-language-switcher--variant-solid-chip a {
    background: rgba(255, 255, 255, 0.08) !important;
    color: #ecf5ff !important;
    box-shadow: none !important;
}

.tmp-language-switcher--variant-solid-chip .is-current {
    background: linear-gradient(135deg, #ff8a34, #ffc46a) !important;
    color: #1b1204 !important;
}

.tmp-language-switcher--variant-outline-chip,
.tmp-language-switcher--variant-editorial-badge,
.tmp-language-switcher--variant-flag-rail,
.tmp-language-switcher--variant-badge-rail {
    background: transparent !important;
    box-shadow: none !important;
}

.tmp-language-switcher--variant-outline-chip a,
.tmp-language-switcher--variant-outline-chip span,
.tmp-language-switcher--variant-editorial-badge a,
.tmp-language-switcher--variant-editorial-badge span {
    background: transparent !important;
    box-shadow: inset 0 0 0 1px rgba(24, 49, 77, 0.18) !important;
}

.tmp-language-switcher--variant-outline-chip .is-current {
    color: #0a6cff !important;
    box-shadow: inset 0 0 0 1px #0a6cff !important;
}

.tmp-language-switcher--variant-segmented-tab,
.tmp-language-switcher--variant-segmented-wide,
.tmp-language-switcher--variant-switch-track,
.tmp-language-switcher--variant-switch-paddle,
.tmp-language-switcher--variant-slate-switch {
    padding: 4px !important;
    border-radius: 18px !important;
    background: #d8e5f6 !important;
    box-shadow: none !important;
}

.tmp-language-switcher--variant-segmented-tab a,
.tmp-language-switcher--variant-segmented-tab span,
.tmp-language-switcher--variant-segmented-wide a,
.tmp-language-switcher--variant-segmented-wide span,
.tmp-language-switcher--variant-switch-track a,
.tmp-language-switcher--variant-switch-track span,
.tmp-language-switcher--variant-switch-paddle a,
.tmp-language-switcher--variant-switch-paddle span,
.tmp-language-switcher--variant-slate-switch a,
.tmp-language-switcher--variant-slate-switch span {
    border-radius: 14px !important;
    box-shadow: none !important;
}

.tmp-language-switcher--variant-segmented-tab .is-current,
.tmp-language-switcher--variant-segmented-wide .is-current,
.tmp-language-switcher--variant-switch-track .is-current,
.tmp-language-switcher--variant-switch-paddle .is-current,
.tmp-language-switcher--variant-slate-switch .is-current {
    background: #ffffff !important;
    color: #10233d !important;
    box-shadow: 0 8px 20px rgba(17, 24, 39, 0.12) !important;
}

.tmp-language-switcher--variant-minimal-underline,
.tmp-language-switcher--variant-minimal-inline,
.tmp-language-switcher--variant-signal-strip {
    gap: 16px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.tmp-language-switcher--variant-minimal-underline a,
.tmp-language-switcher--variant-minimal-underline span,
.tmp-language-switcher--variant-minimal-inline a,
.tmp-language-switcher--variant-minimal-inline span,
.tmp-language-switcher--variant-signal-strip a,
.tmp-language-switcher--variant-signal-strip span {
    min-width: auto !important;
    min-height: 32px !important;
    padding: 4px 0 8px !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-bottom: 2px solid transparent !important;
}

.tmp-language-switcher--variant-minimal-underline .is-current,
.tmp-language-switcher--variant-minimal-inline .is-current,
.tmp-language-switcher--variant-signal-strip .is-current {
    color: #0a6cff !important;
    border-bottom-color: currentColor !important;
    background: transparent !important;
}

.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-stacked-cards,
.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-stacked-compact,
.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-aurora-stacked {
    width: min(100%, 260px);
}

.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-stacked-cards a,
.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-stacked-cards span,
.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-stacked-compact a,
.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-stacked-compact span,
.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-aurora-stacked a,
.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-aurora-stacked span,
.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-metro-cards a,
.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-metro-cards span {
    width: 100%;
    justify-content: flex-start !important;
    border-radius: 14px !important;
}

.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-stacked-cards a,
.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-stacked-cards span,
.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-stacked-compact a,
.tmp-language-switcher--layout-stacked.tmp-language-switcher--variant-stacked-compact span {
    background: #ffffff !important;
    border: 1px solid rgba(20, 37, 58, 0.1) !important;
    box-shadow: none !important;
}

.tmp-language-switcher--variant-stacked-cards .is-current {
    background: linear-gradient(135deg, #0a6cff, #5ad1ff) !important;
}

.tmp-language-switcher--variant-floating-capsule {
    background: rgba(11, 18, 32, 0.82) !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28) !important;
}

.tmp-language-switcher--variant-floating-capsule a {
    background: transparent !important;
    color: #eff7ff !important;
    box-shadow: none !important;
}

.tmp-language-switcher--variant-floating-capsule .is-current {
    background: #ffffff !important;
    color: #0f2035 !important;
}

.tmp-language-switcher--variant-floating-panel {
    padding: 10px !important;
    border-radius: 22px !important;
    background: #ffffff !important;
    box-shadow: 0 24px 48px rgba(17, 24, 39, 0.16) !important;
}

.tmp-language-switcher--variant-floating-panel a {
    background: #eef4fd !important;
    border-radius: 14px !important;
}

.tmp-language-switcher--variant-floating-panel .is-current {
    background: #101926 !important;
    color: #ffffff !important;
}

.tmp-language-switcher--variant-flag-grid,
.tmp-language-switcher--variant-dashboard-minis,
.tmp-language-switcher--variant-orbit-dots {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px !important;
}

.tmp-language-switcher--variant-flag-grid a,
.tmp-language-switcher--variant-flag-grid span,
.tmp-language-switcher--variant-dashboard-minis a,
.tmp-language-switcher--variant-dashboard-minis span,
.tmp-language-switcher--variant-orbit-dots a,
.tmp-language-switcher--variant-orbit-dots span {
    min-width: 52px !important;
    min-height: 52px !important;
    padding: 0 !important;
    border-radius: 16px !important;
}

.tmp-language-switcher--variant-flag-grid a,
.tmp-language-switcher--variant-dashboard-minis a,
.tmp-language-switcher--variant-orbit-dots a {
    background: #ffffff !important;
    border: 1px solid rgba(20, 37, 58, 0.12) !important;
}

.tmp-language-switcher--variant-flag-grid .is-current,
.tmp-language-switcher--variant-dashboard-minis .is-current,
.tmp-language-switcher--variant-orbit-dots .is-current {
    background: linear-gradient(135deg, #0a6cff, #3bd7ff) !important;
}

.tmp-language-switcher--variant-flag-rail,
.tmp-language-switcher--variant-badge-rail {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.tmp-language-switcher--variant-flag-rail .is-current,
.tmp-language-switcher--variant-badge-rail .is-current {
    background: #f2f7ff !important;
    color: #0f2035 !important;
}

.tmp-language-switcher--variant-editorial-badge {
    font-family: "Avenir Next", "Segoe UI", sans-serif !important;
}

.tmp-language-switcher--variant-editorial-badge .is-current {
    background: #10233d !important;
    color: #ffffff !important;
}

.tmp-language-switcher--variant-neon-pulse,
.tmp-language-switcher--variant-neon-outline {
    padding: 8px !important;
    border-radius: 18px !important;
    background: #08111d !important;
    color: #d7fff8 !important;
    border-color: rgba(94, 234, 212, 0.28) !important;
}

.tmp-language-switcher--variant-neon-pulse a,
.tmp-language-switcher--variant-neon-outline a {
    background: rgba(15, 23, 42, 0.84) !important;
    color: #d5fff7 !important;
}

.tmp-language-switcher--variant-neon-pulse .is-current {
    background: linear-gradient(135deg, #14f1d9, #40a9ff) !important;
    color: #04111a !important;
}

.tmp-language-switcher--variant-neon-outline a,
.tmp-language-switcher--variant-neon-outline span {
    border: 1px solid rgba(94, 234, 212, 0.35) !important;
}

.tmp-language-switcher--variant-neon-outline .is-current {
    box-shadow: 0 0 0 1px rgba(94, 234, 212, 0.65), 0 0 24px rgba(94, 234, 212, 0.22) !important;
}

.tmp-language-switcher--variant-mono-squared,
.tmp-language-switcher--variant-mono-dots {
    gap: 10px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.tmp-language-switcher--variant-mono-squared a,
.tmp-language-switcher--variant-mono-squared span,
.tmp-language-switcher--variant-mono-dots a,
.tmp-language-switcher--variant-mono-dots span {
    border-radius: 12px !important;
    background: #121212 !important;
    color: #ffffff !important;
}

.tmp-language-switcher--variant-ticket-tabs a,
.tmp-language-switcher--variant-ticket-tabs span,
.tmp-language-switcher--variant-metro-cards a,
.tmp-language-switcher--variant-metro-cards span {
    border-radius: 14px !important;
    border: 1px dashed rgba(20, 37, 58, 0.18) !important;
    background: #fffdf8 !important;
}

.tmp-language-switcher--variant-ticket-tabs .is-current,
.tmp-language-switcher--variant-metro-cards .is-current {
    background: #fff0c7 !important;
    color: #47340a !important;
}

.tmp-language-switcher--variant-aurora-glow {
    background: linear-gradient(135deg, rgba(92, 205, 255, 0.3), rgba(168, 85, 247, 0.2), rgba(34, 197, 94, 0.22)) !important;
}

.tmp-language-switcher--variant-aurora-glow a,
.tmp-language-switcher--variant-aurora-glow span,
.tmp-language-switcher--variant-aurora-stacked a,
.tmp-language-switcher--variant-aurora-stacked span {
    background: rgba(255, 255, 255, 0.92) !important;
}

.tmp-language-switcher--variant-aurora-glow .is-current,
.tmp-language-switcher--variant-aurora-stacked .is-current {
    background: #0f1b2c !important;
    color: #ffffff !important;
}

.tmp-language-switcher--variant-dashboard-pills a {
    background: #f7fbff !important;
    border: 1px solid rgba(20, 37, 58, 0.08) !important;
}

.tmp-language-switcher--variant-dashboard-pills .is-current {
    background: #0a6cff !important;
}

.tmp-language-switcher--variant-capsule-shadow {
    background: #ffffff !important;
    box-shadow: 0 24px 52px rgba(17, 24, 39, 0.14) !important;
}

.tmp-language-switcher--variant-capsule-shadow a {
    background: #f4f8ff !important;
}

.tmp-language-switcher--variant-capsule-shadow .is-current {
    background: #14253a !important;
}

.tmp-language-switcher--variant-split-toggle {
    padding: 4px !important;
    border-radius: 16px !important;
    background: linear-gradient(180deg, #ebf2fb, #d8e4f4) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
}

.tmp-language-switcher--variant-split-toggle a,
.tmp-language-switcher--variant-split-toggle span {
    border-radius: 12px !important;
    background: transparent !important;
    box-shadow: none !important;
}

.tmp-language-switcher--variant-split-toggle .is-current {
    background: #ffffff !important;
    color: #10233d !important;
    box-shadow: 0 8px 18px rgba(17, 24, 39, 0.1) !important;
}

.tmp-language-switcher--variant-frost-tabs {
    padding: 8px !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.5) !important;
    backdrop-filter: blur(14px);
}

.tmp-language-switcher--variant-frost-tabs a,
.tmp-language-switcher--variant-frost-tabs span {
    background: rgba(255, 255, 255, 0.62) !important;
}

.tmp-language-switcher--variant-frost-tabs .is-current {
    background: rgba(16, 25, 38, 0.94) !important;
}

.tmp-language-switcher--variant-ink-pills {
    background: #ffffff !important;
    border-color: rgba(17, 24, 39, 0.08) !important;
}

.tmp-language-switcher--variant-ink-pills a {
    background: #f6f7fb !important;
    color: #111827 !important;
}

.tmp-language-switcher--variant-ink-pills .is-current {
    background: #111827 !important;
    color: #ffffff !important;
}

/* Final color tokens override for any selected style. */
.tmp-language-switcher > a {
    color: var(--tmp-switcher-item-text) !important;
    background: var(--tmp-switcher-item-bg) !important;
    border-color: var(--tmp-switcher-item-border) !important;
}

.tmp-language-switcher > .is-current {
    color: var(--tmp-switcher-active-text) !important;
    background: var(--tmp-switcher-active-bg) !important;
}

.tmp-language-switcher--theme-light {
    --tmp-switcher-surface: rgba(255, 255, 255, 0.94);
    --tmp-switcher-border: rgba(19, 31, 50, 0.12);
    --tmp-switcher-text: #16314d;
    --tmp-switcher-muted: rgba(231, 241, 255, 0.95);
    --tmp-switcher-shadow: 0 18px 48px rgba(12, 27, 52, 0.18);
}

.tmp-language-switcher--theme-dark {
    --tmp-switcher-surface: rgba(11, 18, 32, 0.88);
    --tmp-switcher-border: rgba(255, 255, 255, 0.12);
    --tmp-switcher-text: #f1f6ff;
    --tmp-switcher-muted: rgba(255, 255, 255, 0.08);
    --tmp-switcher-shadow: 0 22px 52px rgba(0, 0, 0, 0.32);
}

.tmp-language-switcher--theme-auto {
    --tmp-switcher-surface: rgba(255, 255, 255, 0.9);
    --tmp-switcher-border: rgba(19, 31, 50, 0.14);
    --tmp-switcher-text: #183153;
    --tmp-switcher-muted: #eaf2ff;
}

.tmp-language-switcher[style*="--tmp-switcher-font-family:system"] {
    --tmp-switcher-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.tmp-language-switcher[style*="--tmp-switcher-font-family:modern"] {
    --tmp-switcher-font-family: "Avenir Next", "Segoe UI", sans-serif;
}

.tmp-language-switcher[style*="--tmp-switcher-font-family:serif"] {
    --tmp-switcher-font-family: Georgia, "Times New Roman", serif;
}

.tmp-language-switcher[style*="--tmp-switcher-font-family:mono"] {
    --tmp-switcher-font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
}

@media (prefers-color-scheme: dark) {
    .tmp-language-switcher--theme-auto {
        --tmp-switcher-surface: rgba(14, 24, 39, 0.78);
        --tmp-switcher-border: rgba(255, 255, 255, 0.15);
        --tmp-switcher-text: #e8f1ff;
        --tmp-switcher-muted: rgba(255, 255, 255, 0.08);
    }
}

.tmp-language-switcher--auto {
    position: fixed !important;
    z-index: var(--tmp-switcher-z) !important;
    max-width: var(--tmp-switcher-panel-max-width, calc(100vw - 20px));
    margin: 0;
    inset: auto;
}

.tmp-language-switcher--auto.tmp-language-switcher--top-left {
    top: var(--tmp-switcher-offset-y);
    left: var(--tmp-switcher-offset-x);
}

.tmp-language-switcher--auto.tmp-language-switcher--top-right {
    top: var(--tmp-switcher-offset-y);
    right: var(--tmp-switcher-offset-x);
}

.tmp-language-switcher--auto.tmp-language-switcher--top-center {
    top: var(--tmp-switcher-offset-y);
    left: calc(50% + var(--tmp-switcher-offset-x));
    transform: translateX(-50%);
}

.tmp-language-switcher--auto.tmp-language-switcher--bottom-left {
    bottom: var(--tmp-switcher-offset-y);
    left: var(--tmp-switcher-offset-x);
}

.tmp-language-switcher--auto.tmp-language-switcher--middle-center {
    top: calc(50% + var(--tmp-switcher-offset-y));
    left: calc(50% + var(--tmp-switcher-offset-x));
    transform: translate(-50%, -50%);
}

.tmp-language-switcher--auto.tmp-language-switcher--bottom-center {
    bottom: var(--tmp-switcher-offset-y);
    left: calc(50% + var(--tmp-switcher-offset-x));
    transform: translateX(-50%);
}

.tmp-language-switcher--auto.tmp-language-switcher--bottom-right {
    bottom: var(--tmp-switcher-offset-y);
    right: var(--tmp-switcher-offset-x);
}

@media (max-width: 640px) {
    .tmp-language-switcher--auto {
        max-width: calc(100vw - 20px);
    }
}

/* Final panel enforcement layer to ensure panel controls always take effect. */
.tmp-language-switcher.tmp-language-switcher--shell-panel:not(.tmp-language-switcher--transparent-panel) {
    background: var(--tmp-switcher-custom-bg) !important;
    border-style: solid !important;
    border-width: var(--tmp-switcher-border-width) !important;
    border-color: var(--tmp-switcher-custom-border-color) !important;
}

.tmp-language-switcher.tmp-language-switcher--shell-outline:not(.tmp-language-switcher--transparent-panel) {
    background: transparent !important;
    border-style: solid !important;
    border-width: var(--tmp-switcher-border-width) !important;
    border-color: var(--tmp-switcher-custom-border-color) !important;
    box-shadow: none !important;
}

.tmp-language-switcher.tmp-language-switcher--transparent-panel {
    background: transparent !important;
    border-width: 0 !important;
    border-color: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}
