/* Follow the active interface language; identifiers and numeric inputs keep LTR. */
html[dir="ltr"] body { direction:ltr; }
html[dir="rtl"] body { direction:rtl; }
html[dir="ltr"] body :is(.container,.container-fluid,.card,.card-body,.modal-content,.client-portfolio-page,.financial-reports-page,.trs-create-page,.invoice-page,.report-page) { direction:ltr; }
html[dir="ltr"] body :is(h1,h2,h3,h4,h5,h6,label,legend,.form-label,.form-text,.invalid-feedback,.alert) { text-align:start; }
html[dir="ltr"] body :is(input:not([type="number"]):not([type="date"]):not([type="time"]):not([type="email"]):not([type="tel"]),textarea,select) { direction:ltr; text-align:start; }
html[dir="rtl"] body :is(textarea,select) { direction:rtl; text-align:start; }
html body :is(input[type="number"],input[type="date"],input[type="time"],input[type="email"],input[type="tel"],.numeric,.ltr) { direction:ltr; }
html[dir="ltr"] body table { direction:ltr; }
html[dir="ltr"] body :is(.table,.ledger-table,.client-statement-table) :is(th,td):not(.text-center):not(.text-end):not(.text-right):not(.amount):not(.numeric) { text-align:start; }
html[dir="ltr"] body .text-start { text-align:left!important; }
html[dir="ltr"] body .text-end { text-align:right!important; }
html[dir="rtl"] body .text-start { text-align:right!important; }
html[dir="rtl"] body .text-end { text-align:left!important; }
html[lang^="en"] body { font-family:"Inter","Segoe UI",Arial,sans-serif; }
html[lang^="fa"] body { font-family:"Vazirmatn",Tahoma,Arial,sans-serif; }
