/* Public plugin language controls; no styles escape the plugin roots. */
[data-rf-i18n-root] .rf-language-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: .65rem 1.1rem;
    margin-block: 0 1.15rem;
    padding: .7rem 1rem;
    border: 1px solid rgba(139, 175, 183, .25);
    border-radius: 10px;
    background: #17252c;
    color: #dce8e9;
    font: 500 13px/1.5 system-ui, -apple-system, "Segoe UI", sans-serif;
    text-align: start;
}
[data-rf-i18n-root] .rf-language-control {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .55rem;
    margin: 0;
    min-width: 0;
    color: inherit;
}
[data-rf-i18n-root] .rf-language-icon { color: #8cddd0; font-size: 22px; line-height: 1; }
[data-rf-i18n-root] .rf-language-select {
    width: auto;
    max-width: 100%;
    min-height: 38px;
    min-width: 158px;
    padding: .4rem 1.7rem .4rem .65rem;
    border: 1px solid #567078;
    border-radius: 6px;
    background-color: #0d1a20;
    color: #f2f7f7;
    font: inherit;
    text-transform: none;
    letter-spacing: normal;
    cursor: pointer;
    color-scheme: dark;
}
[data-rf-i18n-root] .rf-language-select:focus-visible { outline: 2px solid #8cddd0; outline-offset: 3px; }
[data-rf-i18n-root] .rf-language-note { color: #b8cace; font-size: 12px; max-width: 40rem; overflow-wrap: anywhere; }
[data-rf-i18n-root] .rf-language-error { color: #ffbdad; flex-basis: 100%; }
[data-rf-i18n-root] .rf-language-bar [hidden], [data-rf-i18n-root] .rt4-language[hidden] { display: none !important; }
[data-rf-i18n-root][dir="rtl"] { text-align: right; }
/* Coordinates and connection directions remain physical, even in an RTL UI. */
[data-rf-i18n-root] canvas, [data-rf-i18n-root] .rcb-stage,
[data-rf-i18n-root] .ri-canvas-shell, [data-rf-i18n-root] .rf2-stage,
[data-rf-i18n-root] .rfgal-viewer { direction: ltr; }
[data-rf-i18n-root] [translate="no"], [data-rf-i18n-root] input[type="number"] { unicode-bidi: isolate; }
[data-rf-i18n-root] button, [data-rf-i18n-root] label { overflow-wrap: anywhere; }
@media (max-width: 560px) {
    [data-rf-i18n-root] .rf-language-bar { padding: .7rem; gap: .5rem; }
    [data-rf-i18n-root] .rf-language-control { width: 100%; }
    [data-rf-i18n-root] .rf-language-select { flex: 1 1 145px; min-width: 0; }
    [data-rf-i18n-root] .rf-language-note { flex-basis: 100%; }
}
@media print { [data-rf-i18n-root] .rf-language-bar { display: none !important; } }
