@font-face {
  font-family: "Vazirmatn";
  src: url("/fonts/Vazirmatn-variable.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
/* =========================================================
   ITping GLPI Clean RTL UI
   هدف: راست‌چین تمیز بدون خراب کردن فاصله آیکون‌ها و Bootstrap
   ========================================================= */

html {
  direction: rtl;
}

body {
  direction: rtl !important;
  text-align: right !important;
  font-family: "Vazirmatn", "IRANSans", "Tahoma", "Arial", sans-serif !important;
  font-feature-settings: "ss01" 1, "ss02" 1;
}

/* فونت عمومی، بدون دستکاری شدید layout */
body,
button,
input,
select,
textarea,
.form-control,
.form-select,
.dropdown-menu,
.card,
.modal {
  font-family: "Vazirmatn", "IRANSans", "Tahoma", "Arial", sans-serif !important;
  letter-spacing: 0 !important;
}

html[dir="rtl"] *,
body[dir="rtl"] * {
  letter-spacing: 0 !important;
}

input::placeholder,
textarea::placeholder {
  color: #94a3b8 !important;
  opacity: 1 !important;
}

/* متن‌های عمومی */
.page,
.page-wrapper,
.page-body,
.page-header,
.card,
.card-body,
.modal-body,
.dropdown-menu,
.table,
.form-label,
label {
  direction: rtl !important;
  text-align: right !important;
}

/* فرم‌ها */
.form-control,
.form-select,
textarea,
input[type="text"],
input[type="search"],
input[type="password"] {
  direction: rtl !important;
  text-align: right !important;
}

/* فیلدهای فنی باید چپ‌چین بمانند */
input[type="email"],
input[type="url"],
input[type="number"],
input[type="tel"],
input[name*="email"],
input[name*="url"],
input[name*="ip"],
input[name*="mac"],
code,
pre,
kbd {
  direction: ltr !important;
  text-align: left !important;
  unicode-bidi: embed;
}

/* لینک‌های منو و آیتم‌های dropdown؛ فاصله با gap، نه margin دستی */
.nav-link,
.dropdown-item,
.btn {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
}

/* لینک‌های منوی اصلی که full width هستند */
.navbar-nav .nav-link,
.sidebar .nav-link,
.dropdown-item {
  width: 100%;
  justify-content: flex-start;
  text-align: right !important;
}

/* آیکون‌ها داخل متن نروند */
.nav-link i,
.nav-link svg,
.nav-link .icon,
.dropdown-item i,
.dropdown-item svg,
.dropdown-item .icon,
.btn i,
.btn svg,
.btn .icon {
  flex: 0 0 auto;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

/* متن کنار آیکون */
.nav-link span,
.dropdown-item span,
.btn span {
  min-width: 0;
}

/* dropdown راست‌چین، ولی بدون اجبار مخرب left/right برای همه */
.dropdown-menu {
  text-align: right !important;
  direction: rtl !important;
}

/* جدول‌ها */
.table th,
.table td {
  text-align: right !important;
  direction: rtl !important;
  vertical-align: middle;
}

.table .text-center,
.text-center {
  text-align: center !important;
}

/* search و فیلتر */
.search-input,
input[type="search"] {
  direction: rtl !important;
  text-align: right !important;
}

/* checkbox / radio اصلاح کنترل‌شده */
.form-check {
  display: flex !important;
  align-items: center;
  gap: 0.45rem;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.form-check-input {
  float: none !important;
  margin: 0 !important;
  flex: 0 0 auto;
}

.form-check-label {
  margin: 0 !important;
}

/* breadcrumb */
.breadcrumb {
  direction: rtl !important;
}

.breadcrumb-item {
  display: inline-flex;
  align-items: center;
}

/* modal */
.modal-header {
  direction: rtl !important;
}

.modal-header .btn-close {
  margin-left: 0 !important;
  margin-right: auto !important;
}

.modal-footer {
  direction: rtl !important;
  justify-content: flex-start !important;
}

/* Select2 / TomSelect */
.select2-container,
.select2-selection,
.select2-results,
.ts-wrapper,
.ts-control,
.ts-dropdown {
  direction: rtl !important;
  text-align: right !important;
}

/* Timeline / Ticket followups */
.timeline,
.timeline-item,
.timeline-content,
.itil-timeline {
  direction: rtl !important;
  text-align: right !important;
}

/* جلوگیری از خراب شدن آیکون‌های Tabler / FontAwesome */
.ti,
.fas,
.far,
.fa,
[class^="ti-"],
[class*=" ti-"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

/* متن‌های انگلیسی یا فنی داخل UI بهم نریزند */
.uuid,
.mac,
.ip,
.serial,
[class*="uuid"],
[class*="serial"] {
  direction: ltr !important;
  text-align: left !important;
  unicode-bidi: embed;
}

/* نکته مهم:
   عمداً کلاس‌های ms-* و me-* بوت‌استرپ را دستکاری نکردیم
   چون باعث خراب شدن فاصله آیکون‌ها و منوها می‌شود.
*/

/* =========================================================
   ITping RTL fixes
   Vazirmatn font + Dashboard icon position
   ========================================================= */

body,
button,
input,
select,
textarea,
.form-control,
.form-select,
.dropdown-menu,
.card,
.modal,
.table,
.btn,
.navbar,
.page,
.page-wrapper,
.page-body {
    font-family: Vazirmatn, Tahoma, Arial, sans-serif !important;
}

/* Fix GLPI dashboard big-number icon position in RTL without hard-coded left/right drift */
.dashboard .big-number .main-icon {
    inset-inline-start: auto !important;
    inset-inline-end: 12px !important;
    top: 0 !important;
}

/* =========================================================
   ITping Logo Fix
   ========================================================= */

.glpi-logo {
    display: inline-block !important;
    width: 140px !important;
    height: 44px !important;
    background-image: url("/pics/itping/logo.png") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    vertical-align: middle !important;
}

/* اگر GLPI داخل /public سرو می‌شود و مسیر بالا جواب نداد، این خط را فعال کن */
/*
.glpi-logo {
    background-image: url("/public/pics/itping/logo.png") !important;
}
*/

/* =========================================================
   ITping RTL button group fix
   ========================================================= */

.btn-group,
.btn-group-vertical {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
    flex-direction: row-reverse;
}

/* =========================================================
   ITping RTL dashboard chart fix
   ========================================================= */

.dashboard .g-chart {
    display: flex;
    flex-direction: column-reverse;
}

/* ITping icon font hard reset */
i.ti,
i[class^="ti-"],
i[class*=" ti-"],
span.ti,
span[class^="ti-"],
span[class*=" ti-"] {
    font-family: "tabler-icons" !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    display: inline-block !important;
}

i.fa,
i.fas,
i.far,
i.fal,
i.fad,
i.fab,
i[class^="fa-"],
i[class*=" fa-"],
span.fa,
span.fas,
span.far,
span.fal,
span.fad,
span.fab,
span[class^="fa-"],
span[class*=" fa-"] {
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", "FontAwesome" !important;
    font-style: normal !important;
    line-height: 1 !important;
    display: inline-block !important;
}

i.fa,
i.fas,
i[class^="fa-"],
i[class*=" fa-"],
span.fa,
span.fas,
span[class^="fa-"],
span[class*=" fa-"] {
    font-weight: 900 !important;
}

i.fab,
span.fab {
    font-family: "Font Awesome 6 Brands", "Font Awesome 5 Brands" !important;
    font-weight: 400 !important;
}

/* =========================================================
   ITping FINAL global icon font fix
   ========================================================= */

.ti,
i.ti,
span.ti,
[class~="ti"],
[class^="ti-"],
[class*=" ti-"] {
    font-family: "tabler-icons" !important;
    font-style: normal !important;
    font-weight: 400 !important;
    font-variant: normal !important;
    text-transform: none !important;
    line-height: 1 !important;
    speak: never !important;
}

.fa,
.fas,
.far,
.fal,
.fad,
.fab,
i.fa,
i.fas,
i.far,
i.fal,
i.fad,
i.fab,
span.fa,
span.fas,
span.far,
span.fal,
span.fad,
span.fab,
[class~="fa"],
[class~="fas"],
[class~="far"],
[class~="fal"],
[class~="fab"],
[class^="fa-"],
[class*=" fa-"] {
    font-style: normal !important;
    font-variant: normal !important;
    text-rendering: auto !important;
    line-height: 1 !important;
}

.fa,
.fas,
i.fa,
i.fas,
span.fa,
span.fas,
[class~="fa"],
[class~="fas"],
[class^="fa-"],
[class*=" fa-"] {
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", "FontAwesome" !important;
    font-weight: 900 !important;
}

.fab,
i.fab,
span.fab,
[class~="fab"] {
    font-family: "Font Awesome 6 Brands", "Font Awesome 5 Brands" !important;
    font-weight: 400 !important;
}

.main-icon.ti,
.main-icon[class*=" ti-"],
.page-body .ti,
.page-body [class*=" ti-"] {
    font-family: "tabler-icons" !important;
}

/* =========================================================
   ITping RTL stability layer
   ========================================================= */

html[dir="rtl"] .dropdown-menu,
html[dir="rtl"] .dropdown-item,
html[dir="rtl"] .list-group-item,
html[dir="rtl"] .card,
html[dir="rtl"] .modal,
html[dir="rtl"] .table,
html[dir="rtl"] .form-label,
html[dir="rtl"] .form-control,
html[dir="rtl"] .form-select {
    direction: rtl !important;
    text-align: right !important;
}

html[dir="rtl"] .text-start {
    text-align: right !important;
}

html[dir="rtl"] .text-end {
    text-align: left !important;
}

html[dir="rtl"] .input-group > .form-control,
html[dir="rtl"] .input-group > .form-select {
    min-width: 0;
}

html[dir="rtl"] .badge,
html[dir="rtl"] .btn,
html[dir="rtl"] .dropdown-item,
html[dir="rtl"] .nav-link {
    letter-spacing: 0 !important;
}

html[dir="rtl"] [dir="ltr"],
html[dir="rtl"] .uuid,
html[dir="rtl"] .mac,
html[dir="rtl"] .ip,
html[dir="rtl"] .serial,
html[dir="rtl"] code,
html[dir="rtl"] pre,
html[dir="rtl"] kbd {
    direction: ltr !important;
    text-align: left !important;
    unicode-bidi: embed;
}
