/* ==========================================================
   Impact — هوية الداش بورد فوق قالب Nazox (RTL)
   Navy #1F3F66  ·  Amber #FFBC00
   ========================================================== */
:root,
[data-bs-theme=light] {
    --bs-primary: #1f3f66;
    --bs-primary-rgb: 31, 63, 102;
    --bs-primary-bg-subtle: #e3e9f1;
    --bs-primary-border-subtle: #b9c7d9;
    --bs-primary-text-emphasis: #152b46;
    --bs-link-color: #1f3f66;
    --bs-link-color-rgb: 31, 63, 102;
    --bs-link-hover-color: #152b46;
    --bs-link-hover-color-rgb: 21, 43, 70;
    --bs-warning: #ffbc00;
    --bs-warning-rgb: 255, 188, 0;
    --bs-font-sans-serif: "Cairo", "Inter", sans-serif;
    --bs-body-font-family: "Cairo", "Inter", sans-serif;
    --bs-sidebar-dark-bg: #1f3f66;
    --bs-sidebar-dark-menu-item-color: #b9c7d9;
    --bs-sidebar-dark-menu-item-icon-color: #b9c7d9;
    --bs-sidebar-dark-menu-sub-item-color: #b9c7d9;
    --bs-sidebar-dark-menu-item-hover-color: #ffffff;
    --bs-sidebar-dark-menu-item-active-color: #ffbc00;
    --impact-amber: #ffbc00;
}

body, h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6,
.btn, .form-control, .form-select, .dropdown-menu, .tooltip, .popover, .badge, table {
    font-family: "Cairo", "Inter", sans-serif !important;
}

/* ---------- Buttons ---------- */
.btn-primary {
    --bs-btn-bg: #1f3f66;
    --bs-btn-border-color: #1f3f66;
    --bs-btn-hover-bg: #183252;
    --bs-btn-hover-border-color: #183252;
    --bs-btn-active-bg: #152b46;
    --bs-btn-active-border-color: #152b46;
    --bs-btn-disabled-bg: #1f3f66;
    --bs-btn-disabled-border-color: #1f3f66;
    --bs-btn-focus-shadow-rgb: 31, 63, 102;
}
.btn-outline-primary {
    --bs-btn-color: #1f3f66;
    --bs-btn-border-color: #1f3f66;
    --bs-btn-hover-bg: #1f3f66;
    --bs-btn-hover-border-color: #1f3f66;
    --bs-btn-active-bg: #1f3f66;
    --bs-btn-active-border-color: #1f3f66;
}
.btn-warning {
    --bs-btn-color: #1f3f66;
    --bs-btn-bg: #ffbc00;
    --bs-btn-border-color: #ffbc00;
    --bs-btn-hover-color: #1f3f66;
    --bs-btn-hover-bg: #e6a900;
    --bs-btn-hover-border-color: #e6a900;
}
.bg-primary { background-color: #1f3f66 !important; }
.text-primary { color: #1f3f66 !important; }
.bg-primary-subtle { background-color: #e3e9f1 !important; }
.bg-warning { background-color: #ffbc00 !important; }
.text-warning { color: #d99f00 !important; }
.form-control:focus, .form-select:focus { border-color: #8fa5c2; box-shadow: none; }
.form-check-input:checked { background-color: #1f3f66; border-color: #1f3f66; }
.page-link { color: #1f3f66; }
.active > .page-link, .page-link.active { background-color: #1f3f66; border-color: #1f3f66; }
.nav-tabs-custom .nav-item .nav-link.active { color: #1f3f66; }
.nav-tabs-custom .nav-item .nav-link::after { background: #ffbc00; }

/* ---------- Sidebar / topbar ---------- */
body[data-sidebar=dark] .navbar-brand-box { background: #1f3f66; }
body[data-sidebar=dark] #sidebar-menu ul li.mm-active > a,
body[data-sidebar=dark] #sidebar-menu ul li a.active,
body[data-sidebar=dark] #sidebar-menu ul li.mm-active > a i { color: #ffbc00 !important; }
body[data-sidebar=dark] .menu-title { color: #8fa5c2 !important; }
.navbar-brand-box .logo-lg img { height: 34px; }
.navbar-brand-box .logo-sm img { height: 30px; }
#page-topbar { box-shadow: 0 1px 2px rgba(31, 63, 102, .08); }

/* ---------- Cards & tables ---------- */
.card { border-radius: .6rem; }
.table > :not(caption) > * > th { font-weight: 600; white-space: nowrap; }
.table td { vertical-align: middle; }
.stat-card .avatar-sm { width: 3rem; height: 3rem; }
.stat-card .avatar-title { font-size: 1.4rem; }
.client-logo { width: 42px; height: 42px; object-fit: contain; border-radius: .5rem; border: 1px solid var(--bs-border-color); background: #fff; }
.client-logo-lg { width: 96px; height: 96px; object-fit: contain; border-radius: .75rem; border: 1px solid var(--bs-border-color); background: #fff; padding: 4px; }
.client-initial { width: 42px; height: 42px; border-radius: .5rem; display: inline-flex; align-items: center; justify-content: center; font-weight: 700; background: #e3e9f1; color: #1f3f66; }
.client-initial.lg { width: 96px; height: 96px; font-size: 2.2rem; border-radius: .75rem; }
.section-title { font-size: .95rem; font-weight: 700; color: #1f3f66; border-inline-start: 4px solid #ffbc00; padding-inline-start: .6rem; margin-bottom: 1rem; }
.file-row { border: 1px dashed var(--bs-border-color); border-radius: .5rem; padding: .75rem; }
.attachment-item { border: 1px solid var(--bs-border-color); border-radius: .5rem; padding: .6rem .8rem; }
.attachment-item i.ri-file-pdf-line, .attachment-item i[class^="ri-"] { font-size: 1.6rem; }
.permissions-table td, .permissions-table th { text-align: center; }
.permissions-table td:first-child, .permissions-table th:first-child { text-align: start; }
.permissions-table .form-check-input { width: 1.25rem; height: 1.25rem; float: none; margin: 0; }
.dir-ltr { direction: ltr; unicode-bidi: embed; }

/* ---------- Auth ---------- */
.auth-body-bg .authentication-bg { background-color: #1f3f66; }
.auth-body-bg .authentication-bg .bg-overlay { background: linear-gradient(160deg, rgba(31,63,102,.92), rgba(21,43,70,.85)); opacity: 1; }
.auth-brand-panel { position: relative; z-index: 2; color: #fff; }
.auth-brand-panel .accent { color: #ffbc00; }

/* select2 inside RTL + bootstrap 5 */
.select2-container { width: 100% !important; }
.select2-container--default .select2-selection--single { height: calc(1.5em + .94rem + 2px); border-color: var(--bs-border-color); }
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height: calc(1.5em + .94rem); }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: calc(1.5em + .94rem); }
.select2-container--default .select2-results__option--highlighted[aria-selected] { background-color: #1f3f66; }
