/*
 * Arabic localization refinements.
 * Focus: readable Arabic typography, RTL ergonomics, business tables, forms, and print/PDF-like pages.
 */

:root {
    --clx-arabic-font: "Noto Sans Arabic", "IBM Plex Sans Arabic", "Cairo", "Tajawal", "Segoe UI", Tahoma, Arial, sans-serif;
    --clx-arabic-heading-weight: 700;
    --clx-arabic-body-weight: 400;
    --clx-arabic-line-height: 1.75;
}

html[lang="ar"],
html[dir="rtl"],
body[dir="rtl"],
.clx-arabic-ui {
    font-family: var(--clx-arabic-font);
    letter-spacing: 0;
}

html[lang="ar"] body,
html[dir="rtl"] body,
body[dir="rtl"] {
    direction: rtl;
    text-align: right;
    font-family: var(--clx-arabic-font);
    font-weight: var(--clx-arabic-body-weight);
    line-height: var(--clx-arabic-line-height);
}

html[lang="ar"] h1,
html[lang="ar"] h2,
html[lang="ar"] h3,
html[lang="ar"] h4,
html[lang="ar"] h5,
html[lang="ar"] h6,
html[dir="rtl"] h1,
html[dir="rtl"] h2,
html[dir="rtl"] h3,
html[dir="rtl"] h4,
html[dir="rtl"] h5,
html[dir="rtl"] h6 {
    font-family: var(--clx-arabic-font);
    font-weight: var(--clx-arabic-heading-weight);
    letter-spacing: 0;
    line-height: 1.45;
}

html[dir="rtl"] .page-content,
html[dir="rtl"] .panel-content,
html[dir="rtl"] .card-body,
html[dir="rtl"] .modal-body,
html[dir="rtl"] .dropdown-menu,
html[dir="rtl"] .toast,
html[dir="rtl"] .alert {
    text-align: right;
}

html[dir="rtl"] .form-control,
html[dir="rtl"] .form-select,
html[dir="rtl"] textarea,
html[dir="rtl"] input,
html[dir="rtl"] select,
html[dir="rtl"] .select2-container,
html[dir="rtl"] .select2-selection__rendered {
    direction: rtl;
    text-align: right;
    font-family: var(--clx-arabic-font);
    letter-spacing: 0;
}

html[dir="rtl"] input[type="email"],
html[dir="rtl"] input[type="url"],
html[dir="rtl"] input[type="tel"],
html[dir="rtl"] input[name*="email"],
html[dir="rtl"] input[name*="url"],
html[dir="rtl"] input[name*="phone"],
html[dir="rtl"] input[name*="mobile"],
html[dir="rtl"] input[name*="token"],
html[dir="rtl"] input[name*="api"],
html[dir="rtl"] .text-monospace,
html[dir="rtl"] code,
html[dir="rtl"] pre {
    direction: ltr;
    text-align: left;
}

html[dir="rtl"] .input-group > .form-control,
html[dir="rtl"] .input-group > .form-select {
    border-radius: 0 .375rem .375rem 0;
}

html[dir="rtl"] .input-group-text:first-child {
    border-radius: 0 .375rem .375rem 0;
}

html[dir="rtl"] .input-group-text:last-child {
    border-radius: .375rem 0 0 .375rem;
}

html[dir="rtl"] .form-check,
html[dir="rtl"] .custom-control {
    padding-right: 1.5rem;
    padding-left: 0;
}

html[dir="rtl"] .form-check-input,
html[dir="rtl"] .custom-control-input {
    float: right;
    margin-right: -1.5rem;
    margin-left: 0;
}

html[dir="rtl"] .btn i,
html[dir="rtl"] .nav-link-text + i {
    margin-left: .35rem;
    margin-right: 0;
}

html[dir="rtl"] .dropdown-toggle::after {
    margin-right: .35rem;
    margin-left: 0;
}

html[dir="rtl"] .table {
    direction: rtl;
}

html[dir="rtl"] .table th,
html[dir="rtl"] .table td,
html[dir="rtl"] .sys_table th,
html[dir="rtl"] .sys_table td,
html[dir="rtl"] .dataTable th,
html[dir="rtl"] .dataTable td {
    text-align: right;
    vertical-align: middle;
}

html[dir="rtl"] .table th,
html[dir="rtl"] .dataTable th {
    font-weight: 700;
    white-space: nowrap;
}

html[dir="rtl"] .amount,
html[dir="rtl"] .currency,
html[dir="rtl"] .text-end,
html[dir="rtl"] td[data-value],
html[dir="rtl"] .invoice-total,
html[dir="rtl"] .total-value,
html[dir="rtl"] .total-line {
    direction: ltr;
    text-align: left !important;
    unicode-bidi: plaintext;
}

html[dir="rtl"] .invoice,
html[dir="rtl"] .bill-info,
html[dir="rtl"] .invoice address,
html[dir="rtl"] .statement,
html[dir="rtl"] .printable {
    direction: rtl;
    text-align: right;
    font-family: var(--clx-arabic-font);
}

html[dir="rtl"] .invoice .bill-data,
html[dir="rtl"] .invoice .bill-to {
    text-align: right !important;
}

html[dir="rtl"] .page-sidebar .nav-menu li a,
html[dir="rtl"] .primary-nav .nav-menu li a {
    text-align: right;
}

html[dir="rtl"] .page-sidebar .nav-menu ul,
html[dir="rtl"] .primary-nav .nav-menu ul {
    padding-right: 1rem;
    padding-left: 0;
}

html[dir="rtl"] .dataTables_wrapper .dataTables_filter,
html[dir="rtl"] .dataTables_wrapper .dataTables_length,
html[dir="rtl"] .dataTables_wrapper .dataTables_info,
html[dir="rtl"] .dataTables_wrapper .dataTables_paginate {
    text-align: right;
}

html[dir="rtl"] .dataTables_wrapper .dataTables_filter input {
    margin-right: .5rem;
    margin-left: 0;
}

@media print {
    html[lang="ar"],
    html[dir="rtl"],
    html[lang="ar"] body,
    html[dir="rtl"] body {
        font-family: var(--clx-arabic-font);
        direction: rtl;
        text-align: right;
        line-height: 1.65;
        color: #111827;
        background: #fff;
    }

    html[dir="rtl"] .table th,
    html[dir="rtl"] .table td {
        border-color: #d1d5db !important;
        padding: 8px 10px;
    }

    html[dir="rtl"] .btn,
    html[dir="rtl"] .dropdown,
    html[dir="rtl"] .page-sidebar,
    html[dir="rtl"] .page-header,
    html[dir="rtl"] .panel-toolbar {
        display: none !important;
    }
}
