.bg-yellow{
    background-color: #f0cd0d !important;
}
/* ==========================================================================
   مفاتيح التبديل (switch) — دعم صحيح للاتجاهين
   بدل إزاحة الوسم بهامش ثابت، نصحّح تموضع المفتاح نفسه في الوضع العربي
   ========================================================================== */
html[dir=rtl] .form-check:not(.app-switch) {
    padding-left: 0;
    padding-right: 1.5em;
}

html[dir=rtl] .form-check:not(.app-switch) .form-check-input {
    float: right;
    margin-left: 0;
    margin-right: -1.5em;
}

html[dir=rtl] .form-switch:not(.app-switch) {
    padding-right: 2.5em;
}

html[dir=rtl] .form-switch:not(.app-switch) .form-check-input {
    margin-right: -2.5em;
}

/* المقبض يبدأ من اليمين ويتحرك لليسار في الواجهة العربية */
html[dir=rtl] .form-switch .form-check-input {
    transform: scaleX(-1);
}

/* --------------------------------------------------------------------------
   .app-switch — مفتاح مضغوط لا يعتمد على اتجاه الصفحة إطلاقاً
   الاستخدام: <label class="form-check form-switch app-switch">
                <input class="form-check-input" type="checkbox"> <span>النص</span>
              </label>
   -------------------------------------------------------------------------- */
.app-switch {
    display: inline-flex;
    align-items: center;
    gap: .625rem;
    margin: 0;
    min-height: 0;
    cursor: pointer;
    user-select: none;
}

/* يلغي حشوة .form-check/.form-switch في الاتجاهين دون الحاجة لـ !important */
.form-check.app-switch,
html[dir=rtl] .form-check.app-switch,
.app-switch {
    padding-left: 0;
    padding-right: 0;
}

.app-switch .form-check-input {
    float: none;
    flex: 0 0 auto;
    margin: 0 !important;
    width: 2.25rem;
    height: 1.25rem;
    cursor: pointer;
}

.app-switch .form-check-input:disabled {
    cursor: not-allowed;
}

.app-switch .form-check-label,
.app-switch > span {
    margin: 0 !important;
    cursor: pointer;
    line-height: 1.3;
}

/* ==========================================================================
   .app-search — حقل بحث بأيقونة داخلية وزر مسح
   يتجنّب مشكلة انكسار زوايا input-group عند إخفاء أحد أزراره
   ========================================================================== */
.app-search {
    position: relative;
    display: block;
}

.app-search .form-control {
    padding-inline-start: 2.375rem;
    padding-inline-end: 2.375rem;
}

.app-search .app-search-icon {
    position: absolute;
    top: 50%;
    inset-inline-start: .875rem;
    transform: translateY(-50%);
    color: #8392ab;
    font-size: .8125rem;
    line-height: 1;
    pointer-events: none;
}

.app-search .app-search-clear {
    position: absolute;
    top: 50%;
    inset-inline-end: .5rem;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #8392ab;
    font-size: .75rem;
    line-height: 1;
    cursor: pointer;
    transition: color .15s ease, background-color .15s ease;
}

.app-search .app-search-clear:hover {
    color: #344767;
    background-color: #eef1f5;
}

/* إخفاء زر المسح الأصلي في كروم/سفاري لأننا نوفّر زراً خاصاً */
.app-search .form-control::-webkit-search-cancel-button,
.app-search .form-control::-webkit-search-decoration {
    -webkit-appearance: none;
    appearance: none;
}

/* ==========================================================================
   .app-tile — بطاقة اختيار قابلة للنقر (صلاحية، علم، خيار)
   ========================================================================== */
.app-tile {
    display: flex;
    align-items: center;
    gap: .625rem;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: .625rem .75rem;
    border: 1px solid #e9ecef;
    border-radius: .5rem;
    background-color: #fff;
    cursor: pointer;
    transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease;
}

/* البطاقة تحتفظ بحشوتها حتى عند دمجها مع .app-switch */
.app-tile.app-switch,
.app-tile.form-check,
html[dir=rtl] .app-tile.form-check {
    padding: .625rem .75rem;
}

.app-tile:hover {
    border-color: #ced4da;
    background-color: #f8f9fa;
}

.app-tile:has(input:checked) {
    border-color: #5e72e4;
    background-color: rgba(94, 114, 228, .07);
    box-shadow: inset 0 0 0 1px #5e72e4;
}

/* outline بدل box-shadow حتى لا يلغي تمييز البطاقة المحددة */
.app-tile:focus-within {
    outline: 2px solid rgba(94, 114, 228, .45);
    outline-offset: 2px;
}

/* أدوات عامة */
.min-width-0 {
    min-width: 0;
}

html[dir=rtl] .rtl-flip {
    transform: scaleX(-1);
}
@media (min-width: 992px) {
    .dropdown .dropdown-menu::before {
        content: "";
        display: inline-block;
        margin-right: 6px;
        width: 0;
        height: 0;
        border-left: 5px solid transparent;
        border-right: 5px solid transparent;
        border-bottom: 6px solid #fff; /* لون السهم */
        vertical-align: middle;
    }
    .dropdown.dropdown-hover:hover > .dropdown-menu::before, .dropdown .dropdown-menu.show::before {
        top: -5px;
    }
    .dropdown:not(.dropdown-hover) .dropdown-menu {
        margin-top: 10px !important;
    }
}
.active > .page-link, .page-link.active {
    color: var(--bs-pagination-active-color) !important;
}
.navbar-vertical.bg-white .navbar-nav > .nav-item .nav-link.active i {
    color: #0a58a9 !important;
}
.empty{
    color: #0a58a9 !important;
    text-align: center;
}