/* ارتقِ - ملف الثيم الموحد: الخطوط + الألوان (متغيرات)
   لتغيير ألوان الموقع عدّل المتغيرات أدناه فقط. */

/* ---------- الخطوط (محلية، بلا اعتماد على الإنترنت) ---------- */
@font-face { font-family: 'Tajawal'; font-weight: 400; font-style: normal; font-display: swap;
  src: url('../fonts/tajawal-400.woff2') format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF; }
@font-face { font-family: 'Tajawal'; font-weight: 500; font-style: normal; font-display: swap;
  src: url('../fonts/tajawal-500.woff2') format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF; }
@font-face { font-family: 'Tajawal'; font-weight: 700; font-style: normal; font-display: swap;
  src: url('../fonts/tajawal-700.woff2') format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF; }
@font-face { font-family: 'Tajawal'; font-weight: 400; font-style: normal; font-display: swap;
  src: url('../fonts/tajawal-latin-400.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Tajawal'; font-weight: 700; font-style: normal; font-display: swap;
  src: url('../fonts/tajawal-latin-700.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Amiri Quran'; font-weight: 400; font-style: normal; font-display: swap;
  src: url('../fonts/amiri-quran-400.woff2') format('woff2'); }

:root {
  --font-ui: 'Tajawal', 'Segoe UI', Tahoma, sans-serif;
  --font-quran: 'Amiri Quran', 'Traditional Arabic', serif;
}

/* ---------- الثيمات ---------- */
/* الأخضر (الافتراضي) */
:root, html[data-theme="green"] {
  --c-primary: #0F4C3A;
  --c-primary-2: #1E7A5E;
  --c-accent-soft: #F1E7CC;
  --c-primary-dark: #0A3729;
  --c-primary-soft: #3F8A74;
  --c-accent: #B8923A;
  --c-bg: #F2F5F1;
  --c-surface: #FFFFFF;
  --c-text: #1F2A27;
  --c-text-soft: #5B6663;
  --c-border: #DCE3DE;
  --c-link: #1B5E4B;
  --c-on-primary: #FFFFFF;
  --c-th-bg: #EDF1EC;
}
/* الأزرق (اللون القديم) */
html[data-theme="blue"] {
  --c-primary: #17476B;
  --c-primary-2: #2F78A8;
  --c-accent-soft: #FBEBC8;
  --c-primary-dark: #123A55;
  --c-primary-soft: #497FAE;
  --c-accent: #FBAA00;
  --c-bg: #F4F6F8;
  --c-surface: #FFFFFF;
  --c-text: #1C2833;
  --c-text-soft: #566573;
  --c-border: #C9D3DC;
  --c-link: #1A5276;
  --c-on-primary: #FFFFFF;
  --c-th-bg: #E4DCD6;
}
/* الليلي */
html[data-theme="dark"] {
  --c-primary: #2E8B6E;
  --c-primary-2: #5BC0A0;
  --c-accent-soft: #3A3320;
  --c-primary-dark: #1E5C48;
  --c-primary-soft: #4FB391;
  --c-accent: #E0B84C;
  --c-bg: #121A18;
  --c-surface: #1B2623;
  --c-text: #E6EDEA;
  --c-text-soft: #A5B3AE;
  --c-border: #31403B;
  --c-link: #7FD1B3;
  --c-on-primary: #FFFFFF;
  --c-th-bg: #26352F;
}

/* ---------- تطبيق الخط ---------- */
html, body, div, input, select, textarea, span, table, label, td, th, p, a, button, ul, code, pre, li,
h1, h2, h3, h4, h5, h6, .select2-container, .btn, .form-control {
  font-family: var(--font-ui);
}
/* لا نغيّر خط الأيقونات */
.fa, [class^="fa-"], [class*=" fa-"], [class^="icon-"], [class*=" icon-"], .glyphicon { font-family: inherit; }
.fa { font-family: FontAwesome !important; }
[class^="icon-"], [class*=" icon-"] { font-family: 'Simple-Line-Icons' !important; }
.glyphicon { font-family: 'Glyphicons Halflings' !important; }

/* نص الآيات: أضف هذا الكلاس لأي عنصر يعرض القرآن */
.quran-text { font-family: var(--font-quran); font-size: 1.6em; line-height: 2.2; }

body { font-size: 15px; color: var(--c-text); }

/* ---------- الألوان ---------- */
body.page-content-white, .page-content-white .page-content, .page-container { background-color: var(--c-bg); }
.page-content-white .page-content { color: var(--c-text); }
.page-header.navbar { background-color: var(--c-primary) !important; }
.page-sidebar, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover { background-color: var(--c-primary); }
.page-sidebar .page-sidebar-menu > li.open > a, .page-sidebar .page-sidebar-menu > li:hover > a,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.open > a,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li:hover > a {
  background: var(--c-primary-dark); color: var(--c-accent);
}
.portlet.box.green > .portlet-title, .portlet.green, .portlet > .portlet-body.green,
.portlet.blue, .portlet.box.blue > .portlet-title, .portlet > .portlet-body.blue {
  background-color: var(--c-primary) !important; color: var(--c-on-primary);
}
.portlet.box.green, .portlet.box.blue { border-color: var(--c-primary); }
.portlet > .portlet-body, .portlet.light { background-color: var(--c-surface); color: var(--c-text); }
a { color: var(--c-link); }
.control-label, label { color: var(--c-text); font-weight: 500; }
.font-green, .font-green-sharp { color: var(--c-primary) !important; }
.login { background-color: var(--c-primary) !important; }

/* نصوص الهيدر */
.page-header.navbar .top-menu .navbar-nav > li.dropdown-user > .dropdown-toggle > .username,
.page-header.navbar .top-menu .navbar-nav > li.dropdown-user > .dropdown-toggle > i { color: #fff !important; }
.portlet > .portlet-title > .caption { font-size: 15px; }

/* الأزرار */
.btn.blue:not(.btn-outline), .btn.green:not(.btn-outline) {
  color: var(--c-on-primary) !important; background-color: var(--c-primary) !important; border-color: var(--c-primary) !important;
}
.btn.blue:not(.btn-outline):hover, .btn.blue:not(.btn-outline):active, .btn.blue:not(.btn-outline).active,
.btn.green:not(.btn-outline):hover, .btn.green:not(.btn-outline):active {
  background-color: var(--c-primary-dark) !important; border-color: var(--c-primary-dark) !important; color: var(--c-on-primary) !important;
}

/* الحقول */
.form-control {
  width: 100% !important; height: 42px !important; padding: 6px 12px;
  background-color: var(--c-surface) !important; color: var(--c-text);
  border: 1px solid var(--c-border) !important; border-radius: 6px !important;
  transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
textarea.form-control { height: auto !important; }
.form-control:focus { border-color: var(--c-primary) !important; box-shadow: 0 0 0 3px rgba(27,94,75,.18); }
.select2-container--default .select2-selection--multiple,
.select2-container--default .select2-selection--single,
.select2-container--bootstrap .select2-selection {
  border: 1px solid var(--c-border); border-radius: 6px; background-color: var(--c-surface); color: var(--c-text);
}
.select2-container--default .select2-selection--single { height: 42px; }
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 40px; color: var(--c-text); }

/* الجداول */
.table > thead > tr > th, table.dataTable thead th { background-color: var(--c-th-bg); color: var(--c-text); }
.table, table.dataTable { color: var(--c-text); }
.table-bordered, .table-bordered > thead > tr > th, .table-bordered > tbody > tr > td { border-color: var(--c-border); }
.table-hover > tbody > tr:hover { background-color: rgba(127,127,127,.10); }
div.dataTables_wrapper div.dataTables_filter label { white-space: inherit; }

h3 { font-size: 20px; }

/* ---------- الجوال ---------- */
@media (max-width: 767px) {
  body { font-size: 16px; }
  .btn { min-height: 44px; padding-top: 10px; padding-bottom: 10px; }
  .form-control { height: 46px !important; }
  .page-content { padding: 15px 10px; }
  .dataTables_wrapper, .portlet-body { overflow-x: auto; }
}

/* ---------- زر اختيار الثيم ---------- */
.theme-switcher .theme-dot {
  display: inline-block; width: 22px; height: 22px; border-radius: 50%; margin: 0 4px;
  border: 2px solid #fff; cursor: pointer; vertical-align: middle;
}
.theme-switcher .theme-dot.active { box-shadow: 0 0 0 2px var(--c-accent); }
.theme-switcher .theme-dot[data-theme="green"] { background: #0F4C3A; }
.theme-switcher .theme-dot[data-theme="blue"]  { background: #17476B; }
.theme-switcher .theme-dot[data-theme="dark"]  { background: #121A18; }


/* ================= الشكل الجديد (v2): بطاقات ناعمة وقائمة خفيفة ================= */
.portlet, .portlet.box, .portlet.light, .dashboard-stat2 {
  border-radius: 14px !important; border: 1px solid var(--c-border) !important; box-shadow: none !important; overflow: hidden;
  background-color: var(--c-surface);
}
.portlet.box.green > .portlet-title, .portlet.box.blue > .portlet-title, .portlet.green > .portlet-title, .portlet.blue > .portlet-title {
  background-color: var(--c-surface) !important; border-bottom: 1px solid var(--c-border) !important; color: var(--c-text) !important;
}
.portlet.box.green > .portlet-title > .caption, .portlet.box.green > .portlet-title > .caption > i,
.portlet.box.blue > .portlet-title > .caption, .portlet.box.blue > .portlet-title > .caption > i {
  color: var(--c-text) !important; font-weight: 700;
}
.portlet.box.green > .portlet-title > .caption > i, .portlet.box.blue > .portlet-title > .caption > i { color: var(--c-accent) !important; }
.portlet.box.green, .portlet.box.blue { border-color: var(--c-border) !important; }
.portlet > .portlet-body { background-color: var(--c-surface); }

/* القائمة الجانبية */
.page-sidebar .page-sidebar-menu > li > a { border-radius: 10px; margin: 2px 10px; padding: 11px 12px; }
.page-sidebar .page-sidebar-menu > li.active > a, .page-sidebar .page-sidebar-menu > li.open > a {
  background: rgba(255,255,255,.14) !important; color: #fff !important; font-weight: 700; box-shadow: inset -3px 0 0 var(--c-accent);
}
.page-sidebar .page-sidebar-menu > li > a:hover { background: rgba(255,255,255,.10) !important; color: #fff !important; }
.page-sidebar .page-sidebar-menu .sub-menu > li > a { border-radius: 8px; }

/* الجداول: بلا حدود ثقيلة */
.table-bordered, .table-bordered > thead > tr > th, .table-bordered > tbody > tr > td, table.dataTable.table-bordered th, table.dataTable.table-bordered td {
  border-left: 0; border-right: 0; border-color: var(--c-border);
}
.table > thead > tr > th, table.dataTable thead th { color: var(--c-text-soft); font-size: .9em; font-weight: 700; border-bottom: 1px solid var(--c-border); }
.table > tbody > tr > td { padding: 12px 14px; vertical-align: middle; }

/* الأزرار والحقول بحواف أنعم */
.btn { border-radius: 10px; }
.form-control, .select2-container--default .select2-selection--single, .select2-container--default .select2-selection--multiple { border-radius: 10px !important; }
.form-control:focus { border-color: var(--c-primary-2) !important; box-shadow: 0 0 0 3px rgba(30,122,94,.22); }
.label, .badge { border-radius: 999px; }
.alert, .note { border-radius: 10px; }

/* بطاقات الإحصاء في الرئيسية */
.dashboard-stat2 { padding: 16px; }
.dashboard-stat2 .progress { height: 6px; border-radius: 3px; background: var(--c-th-bg); box-shadow: none; }
.dashboard-stat2 .progress-bar { background-color: var(--c-primary-2) !important; border-radius: 3px; }
.dashboard-stat2 .display .number h3 { color: var(--c-text-soft) !important; font-size: 15px !important; font-weight: 500; }
.dashboard-stat2 .display .number small { color: var(--c-text) !important; font-size: 30px !important; font-weight: 800; text-transform: none; }

/* أجزاء القرآن (للاستخدام لاحقاً في صفحة الطالب): <div class="juz-grid"><i class="done">1</i><i class="now">13</i><i>14</i>...</div> */
.juz-grid { display: grid; grid-template-columns: repeat(15, minmax(0, 1fr)); gap: 5px; direction: rtl; }
.juz-grid i { aspect-ratio: 1; border-radius: 6px; background: var(--c-th-bg); display: grid; place-items: center; font-style: normal; font-size: 11px; color: var(--c-text-soft); }
.juz-grid i.done { background: var(--c-primary-2); color: #fff; }
.juz-grid i.now { background: var(--c-accent-soft); color: var(--c-accent); outline: 2px solid var(--c-accent); font-weight: 800; }
@media (max-width: 767px) { .juz-grid { grid-template-columns: repeat(10, minmax(0, 1fr)); } }

/* ---------- الطباعة: دائماً ألوان فاتحة حتى لو كان الثيم ليلياً ---------- */
@media print {
  html[data-theme="dark"] {
    --c-bg: #fff; --c-surface: #fff; --c-text: #000; --c-text-soft: #333;
    --c-border: #999; --c-th-bg: #E4DCD6; --c-link: #000;
  }
  body, .page-content, .page-container { background: #fff !important; color: #000 !important; }
  .theme-switcher { display: none !important; }
}

/* القائمة الجانبية على الجوال والتابلت: إلغاء ألوان القالب الزرقاء */
@media (max-width: 991px) {
  .page-sidebar, .page-sidebar.navbar-collapse { background-color: var(--c-primary) !important; }
  .page-sidebar .page-sidebar-menu > li > a { border-top: 1px solid rgba(255,255,255,.12) !important; }
  .page-sidebar .page-sidebar-menu > li.open > a, .page-sidebar .page-sidebar-menu > li:hover > a { background: var(--c-primary-dark) !important; }
  .page-sidebar .page-sidebar-menu .sidebar-search input,
  .page-sidebar .page-sidebar-menu > li .sub-menu,
  .page-sidebar .page-sidebar-menu.page-sidebar-menu-light > li .sub-menu { background: var(--c-primary-dark) !important; }
  .page-sidebar .sidebar-toggler { background: var(--c-primary-dark) !important; }
}
