/*
  تخصيص Bootstrap 5 ليطابق هوية الجمعية، مشترك بين كل الصفحات التي تحمّل Bootstrap.
  يُحمَّل دائمًا بعد bootstrap.rtl.min.css وقبل assets/style.css، حتى تبقى الغلبة
  النهائية لتنسيقات الموقع الأساسية عند أي تعارض بالاسم.
*/
:root {
  --bs-primary: #52703C;
  --bs-primary-rgb: 82,112,60;
  --bs-link-color: #52703C;
  --bs-link-hover-color: #3f5a2c;
  --bs-body-font-family: 'Tajawal', 'Segoe UI', sans-serif;
}

.bs-card, .dash-card { padding: 0 !important; border-radius: var(--radius, 14px) !important; }
.bs-card .card-header, .dash-card .card-header { border-bottom:1px solid var(--line); font-family:'Cairo'; font-weight:700; font-size:.95rem; background:#fff; display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.bs-card .card-body, .dash-card .card-body { padding: 20px; }

.avatar-circle { width:30px; height:30px; border-radius:50%; background: var(--brand); color:#fff; display:flex; align-items:center; justify-content:center; font-size:.8rem; font-weight:700; flex-shrink:0; }
.dept-badge { background: var(--dept-badge-bg, var(--gold-bg)); color: var(--dept-badge-text, #5c5030); font-weight:700; }
.text-ink-soft { color: var(--ink-soft) !important; }

.btn-outline-secondary { border-color: var(--line); color: var(--ink-soft); }
.btn-outline-secondary.active, .btn-check:checked + .btn-outline-secondary { background: var(--brand); border-color: var(--brand); color:#fff; }
.btn-brand { background: var(--brand); border-color: var(--brand); color:#fff; }
.btn-brand:hover { background: var(--brand-2); border-color: var(--brand-2); color:#fff; }

.nav-pills .nav-link { color: var(--ink-soft); font-weight:700; font-size:.88rem; }
.nav-pills .nav-link.active { background: var(--brand); color:#fff; }

.notif-alert { border-radius: 12px; border:1px solid var(--gold); background: var(--gold-bg); color:#5c5030; display:flex; align-items:center; gap:10px; padding:14px 18px; }
.notif-alert .notif-icon { font-size:1.3rem; }

.form-label { font-weight:700; color: var(--ink-soft); font-size:.85rem; }
.form-control, .form-select { border-color: var(--line); }
.form-control:focus, .form-select:focus { border-color: var(--brand-2); box-shadow: 0 0 0 .2rem rgba(82,112,60,.15); }

.tab-badge { display:inline-flex; align-items:center; justify-content:center; min-width:18px; height:18px; padding:0 5px; border-radius:999px; background:#A5432B; color:#fff; font-size:.68rem; font-weight:800; margin-inline-start:5px; vertical-align:2px; }

.item-row-form { transition: opacity .2s ease; }
.ach-item { transition: box-shadow .15s ease; }
.ach-item:hover { box-shadow: 0 2px 4px rgba(36,41,31,.08), 0 10px 24px rgba(36,41,31,.08); }
