/* Application-only international typography and bidirectional layout. */
html:is(:lang(zh), :lang(ja), :lang(ko), :lang(hi), :lang(bn), :lang(th), :lang(ar), :lang(ur)) body {
    /* Let the OS supply complete CJK, Indic and Arabic glyph coverage. */
    font-family: system-ui, sans-serif;
}
html[dir="rtl"] body { text-align: start; }
html[dir="rtl"] .client-sidebar {
    inset: 0 0 0 auto;
    border-right: 0;
    border-left: 1px solid var(--client-border);
}
html[dir="rtl"] .client-admin-main {
    margin-left: 0;
    margin-right: var(--client-sidebar-width);
    transition: margin-right .2s ease;
}
html[dir="rtl"] .client-topbar {
    left: 0;
    right: var(--client-sidebar-width);
    transition: right .2s ease;
}
html[dir="rtl"] .client-sidebar__collapse { right: auto; left: -14px; }
html[dir="rtl"] .client-sidebar__collapse i { transform: scaleX(-1); }
html[dir="rtl"] .client-sidebar__dev-badge { margin-left: 0; margin-right: auto; }
html[dir="rtl"] .client-sidebar__link,
html[dir="rtl"] .client-sidebar__group-toggle,
html[dir="rtl"] .dropdown-menu,
html[dir="rtl"] .form-control,
html[dir="rtl"] .form-select { text-align: start; }
html[dir="rtl"] .form-select {
    background-position: left .75rem center;
    padding-left: 2.25rem;
    padding-right: .75rem;
}
html[dir="rtl"] .form-check { padding-left: 0; padding-right: 1.5em; }
html[dir="rtl"] .form-check .form-check-input { float: right; margin-left: 0; margin-right: -1.5em; }
html[dir="rtl"] .text-start { text-align: right !important; }
html[dir="rtl"] .text-end { text-align: left !important; }
/* Technical content keeps its reading order inside either interface direction. */
html[dir="rtl"] :is(input[type="email"], input[type="url"], input[type="tel"], input[type="number"], input[type="password"], pre, code) {
    direction: ltr;
    unicode-bidi: isolate;
    text-align: left;
}
.public-review-text, .review-text, .trumbowyg-editor {
    unicode-bidi: plaintext;
    text-align: start;
}
@media (max-width: 1199.98px) {
    html[dir="rtl"] .client-admin-main { margin-right: 0; }
    html[dir="rtl"] .client-topbar { right: 0; }
    html[dir="rtl"] .client-sidebar { transform: translateX(100%); }
    html[dir="rtl"] .client-sidebar.is-open { transform: translateX(0); }
}
