/* assets/css/custom_style.css */

:root {
  /* --- لوحة الألوان المعتمدة (Palette) --- */
  --brand-primary: #403f97;
  /* البنفسجي الوقور - للعناوين والسايدبار */
  --brand-secondary: #a1a3d9;
  /* بنفسجي فاتح - للخلفيات الفرعية */
  --brand-accent: #fb8993;
  /* الوردي الحيوي - للأرقام والعمليات المالية والتحذيرات */
  --brand-info: #6c8df7;
  /* الأزرق السماوي - للمعلومات والنجاح */
  --brand-dark: #2c3e50;
  /* نص غامق */

  /* --- خلفيات ناعمة --- */
  --bg-soft-pink: #f7e5e9;
  --bg-soft-blue: #d5e0ff;
  --bg-light-gray: #f8f9fa;
}

/* 1. تخصيص النصوص والخلفيات العامة */
body {
  background-color: var(--bg-light-gray);
  color: var(--brand-dark);
}

.text-primary-custom {
  color: var(--brand-primary) !important;
}

.bg-primary-custom {
  background-color: var(--brand-primary);
  color: white;
}

.text-accent {
  color: var(--brand-accent) !important;
}

.border-custom {
  border-color: var(--brand-primary) !important;
}

/* 2. تخصيص الأزرار لتبدو عصرية */
.btn-primary-custom {
  background-color: var(--brand-primary);
  border-color: var(--brand-primary);
  color: white;
  box-shadow: 0 4px 6px rgba(84, 83, 171, 0.2);
  transition: all 0.3s ease;
}

.btn-primary-custom:hover {
  background-color: #c3c3cf;
  transform: translateY(-2px);
  box-shadow: 0 6px 12px rgba(84, 83, 171, 0.3);
}

.btn-outline-primary-custom {
  /* background-color: var(--brand-primary); */
  border-color: var(--brand-primary);
  color: rgb(80, 65, 168);
  box-shadow: 0 4px 6px rgba(84, 83, 171, 0.2);
  transition: all 0.3s ease;
}

.btn-outline-primary-custom:hover {
  background-color: #403f97;
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 6px 12px rgba(229, 229, 233, 0.3);
}

/* 3. تخصيص الكروت (Cards) */
.card-custom {
  border: none;
  border-radius: 15px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
  transition: transform 0.3s;
  background: white;
  overflow: hidden;
}

.card-custom:hover {
  transform: translateY(-5px);
}

/* 4. تخصيص القائمة الجانبية (Sidebar) - لتأخذ لون البراند */
#sidebar-wrapper {
  background: linear-gradient(180deg,
      var(--brand-primary) 0%,
      #343453 100%) !important;
}

.list-group-item {
  color: rgba(255, 255, 255, 0.8) !important;
}

.list-group-item:hover,
.list-group-item.active {
  background-color: rgba(255, 255, 255, 0.1) !important;
  color: white !important;
  border-left: 4px solid var(--brand-accent) !important;
}

/* 5. شارات الحالة (Badges) */
.badge-custom-success {
  background-color: rgba(25, 135, 84, 0.1);
  color: #198754;
  border: 1px solid rgba(25, 135, 84, 0.2);
}

.badge-custom-warning {
  background-color: rgba(255, 193, 7, 0.1);
  color: #d6a100;
  border: 1px solid rgba(255, 193, 7, 0.2);
}

/* تخصيص الطباعة العام */
@media print {

  #sidebar-wrapper,
  .navbar,
  .btn,
  .no-print {
    display: none !important;
  }

  .content-wrapper {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
  }

  body {
    background: white !important;
  }

  .card-custom {
    box-shadow: none !important;
    border: 1px solid #ddd !important;
  }
}

/* --- تحسينات القائمة الجانبية (Sidebar) --- */

/* تنسيق روابط القائمة */
.list-group-item {
  white-space: nowrap;
  /* منع التفاف النص */
  overflow: hidden;
  transition: all 0.3s ease;
  border-left: 4px solid transparent !important;
}

/* حالة الرابط النشط */
.list-group-item.active,
.list-group-item:hover {
  background-color: rgba(255, 255, 255, 0.1) !important;
  border-left-color: var(--brand-accent) !important;
  color: #fff !important;
}

/* أيقونة القائمة المنسدلة (السهم) */
.dropdown-icon {
  font-size: 0.8rem;
  transition: transform 0.3s;
}

/* تدوير السهم عند الفتح */
.list-group-item[aria-expanded="true"] .dropdown-icon {
  transform: rotate(180deg);
}

/* --- إصلاح الانكماش (Toggled State) --- */
/* عندما يكون الـ body يحمل كلاس sb-sidenav-toggled */
body.sb-sidenav-toggled #sidebar-wrapper {
  width: 80px;
  /* عرض القائمة المنكمشة */
}

body.sb-sidenav-toggled #sidebar-wrapper .sidebar-text,
body.sb-sidenav-toggled #sidebar-wrapper .dropdown-icon,
body.sb-sidenav-toggled #sidebar-wrapper .link-text,
body.sb-sidenav-toggled #sidebar-wrapper small {
  display: none !important;
  /* إخفاء النصوص تماماً */
}

body.sb-sidenav-toggled #sidebar-wrapper .sidebar-heading {
  padding: 10px 0;
}

body.sb-sidenav-toggled #sidebar-wrapper .list-group-item {
  text-align: center;
  padding-left: 0;
  padding-right: 0;
}

body.sb-sidenav-toggled #sidebar-wrapper i {
  font-size: 1.5rem;
  /* تكبير الأيقونات قليلاً عند الانكماش */
  margin: 0 !important;
}

/* إخفاء القوائم الفرعية عند الانكماش لمنع التشوه */
body.sb-sidenav-toggled #sidebar-wrapper .collapse {
  display: none !important;
}

/* --- إصلاحات القائمة الجانبية (Final Fixes) --- */

/* 1. إصلاح ألوان القوائم الفرعية (Submenus) */
#sidebar-wrapper .collapse .list-group-item {
  color: #495057 !important;
  /* لون رمادي داكن للنص */
  background-color: #f8f9fa !important;
  /* خلفية فاتحة جداً */
  padding-right: 3rem !important;
  /* إزاحة للداخل لتمييز الفرعي */
  padding-left: 1rem !important;
  font-size: 0.9rem;
  border-left: 4px solid transparent !important;
}

#sidebar-wrapper .collapse .list-group-item:hover {
  color: var(--brand-primary) !important;
  background-color: #e9ecef !important;
  border-left-color: var(--brand-primary) !important;
}

/* 2. إصلاح محاذاة السهم (Accordion Icon) */
/* نجعل الرابط الرئيسي حاوية مرنة */
.accordion-link {
  position: relative;
  /* ضروري لتموضع السهم */
  display: flex;
  align-items: center;
  justify-content: flex-start;
  /* المحتوى يبدأ من اليمين */
  padding-right: 1.25rem;
}

/* الأيقونة الأساسية للرابط */
.accordion-link>i:first-child {
  width: 25px;
  /* عرض ثابت للأيقونة لضمان عدم اهتزاز النص */
  text-align: center;
  margin-left: 10px;
}

/* أيقونة السهم (الشيفرون) */
.accordion-link .dropdown-icon {
  position: absolute;
  left: 15px;
  /* تثبيت السهم في أقصى اليسار */
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.5);
  /* لون خافت */
  transition: transform 0.3s;
}

/* تدوير السهم عند الفتح */
.accordion-link[aria-expanded="true"] .dropdown-icon {
  transform: rotate(180deg);
  color: #fff;
}

/* إخفاء السهم عند انكماش القائمة بالكامل */
body.sb-sidenav-toggled .dropdown-icon {
  display: none !important;
}

/* ==========================================================================
   إعدادات الطباعة العالمية (Global Print Rules) لترويض الصفحات
   ========================================================================== */
@media print {

  /* 1. إيقاف نظام Flexbox في الحاويات الرئيسية لأنه العدو الأول لتقسيم الصفحات (Pagination) */
  body,
  .wrapper,
  .main-panel,
  .content-wrapper {
    display: block !important;
    height: auto !important;
    min-height: auto !important;
    overflow: visible !important;
    position: relative !important;
  }

  /* 2. إجبار الجداول على التوقف عن دفع العناصر التي تحتها بقوة */
  table,
  .table-responsive {
    page-break-after: auto !important;
    break-after: auto !important;
  }

  /* 3. إجبار الفوتر على الالتصاق بأسفل الورقة دائماً */
  .print-footer,
  footer,
  .footer {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    background: white !important;
    text-align: center !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
    z-index: 1000 !important;
  }

  /* 4. إعطاء مساحة تنفس سفلية للمحتوى حتى لا يطبع فوقه الفوتر الثابت */
  body,
  .content-wrapper {
    padding-bottom: 10px !important;
  }

  /* 4. إخفاء أي مساحات بيضاء زائدة قد تتولد من الواجهة */
  html {
    margin: 0 !important;
    padding: 0 !important;
  }
}