:root {
  --fgen-fa-font: "Noto Sans Arabic", Tahoma, Arial, sans-serif;
}

html[lang="fa"],
html[lang="fa"] body,
body.rtl,
body.rtl input,
body.rtl select,
body.rtl textarea,
body.rtl button,
body.rtl .btn,
body.rtl .form-control,
body.rtl .dropdown-menu,
body.rtl .modal,
body.rtl .tooltip,
body.rtl .popover,
body.rtl table,
body.rtl .select2-container,
body.rtl .bootstrap-select,
body.rtl .tox,
body.rtl .mce-container,
body.rtl .dataTables_wrapper {
  font-family: var(--fgen-fa-font) !important;
}

html[dir="rtl"] body { direction: rtl; }
html[dir="rtl"] input[type="email"],
html[dir="rtl"] input[type="url"],
html[dir="rtl"] input[type="tel"],
html[dir="rtl"] input[data-type="currency"],
html[dir="rtl"] input[name*="email"],
html[dir="rtl"] input[name*="url"] { direction: ltr; text-align: left; }

html[dir="rtl"] .text-left { text-align: right !important; }
html[dir="rtl"] .text-right { text-align: left !important; }
html[dir="rtl"] td[align="right"],
html[dir="rtl"] th[align="right"] { text-align: right !important; }

.fgen-jalali-picker {
  position: absolute;
  z-index: 2147483000;
  width: 310px;
  max-width: calc(100vw - 20px);
  background: #fff;
  color: #1f2937;
  border: 1px solid #d8dee8;
  border-radius: 10px;
  box-shadow: 0 12px 34px rgba(0,0,0,.18);
  padding: 10px;
  direction: rtl;
  font-family: var(--fgen-fa-font) !important;
}

.fgen-jalali-picker * { box-sizing: border-box; font-family: inherit !important; }
.fgen-jalali-head { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:8px; }
.fgen-jalali-title { font-weight:700; font-size:14px; text-align:center; flex:1; }
.fgen-jalali-nav { border:0; background:#f3f5f8; border-radius:7px; width:34px; height:32px; cursor:pointer; font-size:18px; line-height:1; }
.fgen-jalali-week, .fgen-jalali-grid { display:grid; grid-template-columns:repeat(7, 1fr); gap:3px; }
.fgen-jalali-week span { text-align:center; font-size:11px; font-weight:700; color:#64748b; padding:5px 0; }
.fgen-jalali-day { border:0; background:transparent; height:34px; border-radius:7px; cursor:pointer; font-size:12px; }
.fgen-jalali-day:hover { background:#eef2f7; }
.fgen-jalali-day.is-today { outline:1px solid #94a3b8; }
.fgen-jalali-day.is-selected { background:#111827; color:#fff; }
.fgen-jalali-empty { height:34px; }
.fgen-jalali-time { display:flex; align-items:center; gap:6px; border-top:1px solid #edf0f4; margin-top:8px; padding-top:9px; }
.fgen-jalali-time label { font-size:11px; color:#64748b; }
.fgen-jalali-time input { width:84px; height:32px; border:1px solid #d8dee8; border-radius:7px; padding:4px 7px; direction:ltr; text-align:center; }
.fgen-jalali-actions { display:flex; gap:6px; margin-top:9px; }
.fgen-jalali-actions button { flex:1; border:0; border-radius:7px; padding:7px 8px; cursor:pointer; background:#f1f5f9; }
.fgen-jalali-actions .fgen-jalali-today { background:#e8eef7; font-weight:600; }

@media (prefers-color-scheme: dark) {
  .fgen-jalali-picker { background:#1f2937; color:#f8fafc; border-color:#475569; }
  .fgen-jalali-nav, .fgen-jalali-actions button { background:#334155; color:#f8fafc; }
  .fgen-jalali-week span { color:#cbd5e1; }
  .fgen-jalali-day:hover { background:#334155; }
  .fgen-jalali-time { border-color:#475569; }
  .fgen-jalali-time input { background:#111827; color:#fff; border-color:#475569; }
}
