<?php
session_start();
include 'db.php';

/* ==========================================================
   لوحة تحكم احترافية شاملة لنظام إدارة المدرسة
   متوافقة مع PHP قديم:
   - بدون ??
   - بدون get_result
   - تعتمد على الجداول الموجودة وتتعامل مع عدم وجود بعضها بأمان
   ========================================================== */

if (!isset($_SESSION['admin_id'])) {
    header("Location: admin_login.php");
    exit();
}

if (function_exists('mysqli_set_charset')) {
    mysqli_set_charset($conn, "utf8mb4");
}

$admin_username = isset($_SESSION['admin_username']) ? $_SESSION['admin_username'] : 'أدمن';

if ($admin_username === 'alawael0') {
    session_unset();
    session_destroy();
    header("Location: admin_login.php");
    exit();
}

$admin_role = isset($_SESSION['admin_role']) ? $_SESSION['admin_role'] : null;

if ($admin_role === null) {
    switch ($admin_username) {
        case 'alawael0':
            $admin_role = 'questions_only';
            break;
        case 'alawael1':
            $admin_role = 'homework_exam_stats';
            break;
        case 'alawael2':
            $admin_role = 'eval_stats_grades';
            break;
        case 'awael':
        case 'alawael':
        default:
            $admin_role = 'super';
            break;
    }
    $_SESSION['admin_role'] = $admin_role;
}

/* =========================
   صلاحيات الكروت
   ========================= */
$can_teachers       = ($admin_role == 'super');
$can_subjects       = ($admin_role == 'super');
$can_students       = ($admin_role == 'super');
$can_fees           = ($admin_role == 'super');
$can_registration   = ($admin_role == 'super');
$can_parent_portal  = ($admin_role == 'super');
$can_attendance     = ($admin_role == 'super');
$can_supplies       = ($admin_role == 'super');

$can_grades         = ($admin_role == 'super');
$can_grades_matrix  = ($admin_role == 'super' || $admin_role == 'eval_stats_grades');
$can_homework_rep   = ($admin_role == 'super' || $admin_role == 'homework_exam_stats' || $admin_role == 'eval_stats_grades');
$can_exam_topics    = ($admin_role == 'super' || $admin_role == 'homework_exam_stats');
$can_questions      = ($admin_role == 'super' || $admin_role == 'questions_only');
$can_homework_stats = ($admin_role == 'super' || $admin_role == 'homework_exam_stats' || $admin_role == 'eval_stats_grades');
$can_evaluations    = ($admin_role == 'super' || $admin_role == 'eval_stats_grades');
$can_statistics     = ($admin_role == 'super' || $admin_role == 'eval_stats_grades');
$can_student_cards  = ($admin_role == 'super' || $admin_role == 'eval_stats_grades');
$can_listener_grades = ($admin_role == 'super' || $admin_role == 'eval_stats_grades');
$can_admin_behavior  = ($admin_role == 'super' || $admin_role == 'eval_stats_grades');
$can_teacher_logins = ($admin_username === 'awael');

$role_label = 'إدارة كاملة';
if ($admin_role == 'questions_only') { $role_label = 'عرض أسئلة المدرسين'; }
if ($admin_role == 'homework_exam_stats') { $role_label = 'الواجبات والمادة الداخلة'; }
if ($admin_role == 'eval_stats_grades') { $role_label = 'الدرجات والتقييمات'; }

function h($s) {
    return htmlspecialchars((string)$s, ENT_QUOTES, 'UTF-8');
}

function table_exists2($conn, $table) {
    $table = mysqli_real_escape_string($conn, $table);
    $q = mysqli_query($conn, "SHOW TABLES LIKE '$table'");
    return ($q && mysqli_num_rows($q) > 0);
}

function one_value($conn, $sql, $default) {
    $q = mysqli_query($conn, $sql);
    if ($q && mysqli_num_rows($q) > 0) {
        $r = mysqli_fetch_row($q);
        if (isset($r[0]) && $r[0] !== null) {
            return $r[0];
        }
    }
    return $default;
}

function fmt_int($n) {
    return number_format((float)$n, 0);
}

function fmt_money_dash($n) {
    return number_format((float)$n, 0) . ' د.ع';
}

function current_academic_year_dash() {
    $y = (int)date('Y');
    $m = (int)date('n');
    if ($m >= 9) {
        return $y . '-' . ($y + 1);
    }
    return ($y - 1) . '-' . $y;
}

$today = date('Y-m-d');
$month_start = date('Y-m-01');
$academic_year = current_academic_year_dash();

/* =========================
   إحصائيات عامة
   ========================= */
$total_students = table_exists2($conn, 'students') ? one_value($conn, "SELECT COUNT(*) FROM students", 0) : 0;
$total_teachers = table_exists2($conn, 'teachers') ? one_value($conn, "SELECT COUNT(*) FROM teachers", 0) : 0;
$total_subjects = table_exists2($conn, 'subjects') ? one_value($conn, "SELECT COUNT(*) FROM subjects", 0) : 0;
$total_parent_accounts = table_exists2($conn, 'parent_accounts') ? one_value($conn, "SELECT COUNT(*) FROM parent_accounts WHERE is_active=1", 0) : 0;

$pending_reg = table_exists2($conn, 'student_registrations') ? one_value($conn, "SELECT COUNT(*) FROM student_registrations WHERE status='pending'", 0) : 0;
$accepted_reg = table_exists2($conn, 'student_registrations') ? one_value($conn, "SELECT COUNT(*) FROM student_registrations WHERE status='accepted'", 0) : 0;

$faces_count = table_exists2($conn, 'student_faces') ? one_value($conn, "SELECT COUNT(*) FROM student_faces", 0) : 0;
$today_present = table_exists2($conn, 'attendance_daily') ? one_value($conn, "SELECT COUNT(*) FROM attendance_daily WHERE att_date='$today' AND status IN ('present','late')", 0) : 0;
$today_absent = table_exists2($conn, 'attendance_daily') ? one_value($conn, "SELECT COUNT(*) FROM attendance_daily WHERE att_date='$today' AND status='absent'", 0) : 0;

$homework_today = table_exists2($conn, 'homeworks') ? one_value($conn, "SELECT COUNT(*) FROM homeworks WHERE DATE(created_at)='$today'", 0) : 0;
$questions_total = table_exists2($conn, 'question_files') ? one_value($conn, "SELECT COUNT(*) FROM question_files", 0) : 0;
$exam_topics_month = table_exists2($conn, 'exam_topics') ? one_value($conn, "SELECT COUNT(*) FROM exam_topics WHERE created_at >= '$month_start'", 0) : 0;
$evaluations_month = table_exists2($conn, 'evaluations') ? one_value($conn, "SELECT COUNT(*) FROM evaluations WHERE created_at >= '$month_start'", 0) : 0;

$fees_total = 0;
$fees_paid = 0;
$fees_remaining = 0;
$fees_students_with_debt = 0;
if (table_exists2($conn, 'student_fees')) {
    $fees_total = one_value($conn, "SELECT COALESCE(SUM(final_amount),0) FROM student_fees WHERE academic_year='".mysqli_real_escape_string($conn, $academic_year)."'", 0);
    if (table_exists2($conn, 'student_fee_payments')) {
        $fees_paid = one_value($conn, "SELECT COALESCE(SUM(p.amount),0) FROM student_fee_payments p INNER JOIN student_fees f ON f.id=p.fee_id WHERE f.academic_year='".mysqli_real_escape_string($conn, $academic_year)."'", 0);
        $fees_students_with_debt = one_value($conn, "
            SELECT COUNT(*) FROM (
                SELECT f.id, f.final_amount, COALESCE(SUM(p.amount),0) AS paid
                FROM student_fees f
                LEFT JOIN student_fee_payments p ON p.fee_id=f.id
                WHERE f.academic_year='".mysqli_real_escape_string($conn, $academic_year)."'
                GROUP BY f.id
                HAVING (f.final_amount - paid) > 0
            ) x
        ", 0);
    }
    $fees_remaining = max(0, (float)$fees_total - (float)$fees_paid);
}

$avg_grade = table_exists2($conn, 'grades') ? one_value($conn, "SELECT ROUND(AVG(annual_average),1) FROM grades WHERE annual_average IS NOT NULL AND annual_average>0", 0) : 0;
$pass_count = table_exists2($conn, 'grades') ? one_value($conn, "SELECT COUNT(*) FROM grades WHERE annual_average >= 50", 0) : 0;
$fail_count = table_exists2($conn, 'grades') ? one_value($conn, "SELECT COUNT(*) FROM grades WHERE annual_average > 0 AND annual_average < 50", 0) : 0;

$attendance_rate = 0;
if (((float)$today_present + (float)$today_absent) > 0) {
    $attendance_rate = round(((float)$today_present / ((float)$today_present + (float)$today_absent)) * 100);
}

/* =========================
   جلب مراحل سريعة
   ========================= */
$stage_rows = array();
if (table_exists2($conn, 'students')) {
    $qr = mysqli_query($conn, "SELECT stage, COUNT(*) AS c FROM students GROUP BY stage ORDER BY stage ASC");
    if ($qr) {
        while ($r = mysqli_fetch_assoc($qr)) {
            $stage_rows[] = $r;
        }
    }
}

$latest_registrations = array();
if (table_exists2($conn, 'student_registrations')) {
    $qr = mysqli_query($conn, "SELECT student_full_name, stage, status, created_at FROM student_registrations ORDER BY id DESC LIMIT 6");
    if ($qr) {
        while ($r = mysqli_fetch_assoc($qr)) { $latest_registrations[] = $r; }
    }
}

function status_label_dash($st) {
    if ($st == 'accepted') { return 'مقبول'; }
    if ($st == 'rejected') { return 'مرفوض'; }
    return 'قيد المراجعة';
}

function card_allowed($condition) {
    return $condition ? true : false;
}

$cards = array();

/* تسجيل وإدارة الطلبة */
if (card_allowed($can_registration)) {
    $cards[] = array('group'=>'تسجيل وإدارة الطلبة','href'=>'registration/student_register.php','icon'=>'📝','title'=>'رابط تسجيل الطلبة','desc'=>'استمارة تسجيل إلكترونية مباشرة بدون ورق وقلم مع رسالة نجاح للطالب.','tag'=>'واجهة عامة','hot'=>1);
    $cards[] = array('group'=>'تسجيل وإدارة الطلبة','href'=>'registration/admin_registrations.php','icon'=>'🧾','title'=>'طلبات التسجيل','desc'=>'مراجعة الطلبات، قبول الطالب وتحويله للنظام، رفض أو حذف الطلب.','tag'=>'إدارة','hot'=>1);
}
if (card_allowed($can_students)) {
    $cards[] = array('group'=>'تسجيل وإدارة الطلبة','href'=>'admin_students.php','icon'=>'🎓','title'=>'إدارة الطلبة','desc'=>'إضافة وتعديل وحذف الطلبة الرسميين حسب المرحلة والشعبة.','tag'=>'بيانات','hot'=>0);
}
if (card_allowed($can_student_cards)) {
    $cards[] = array('group'=>'تسجيل وإدارة الطلبة','href'=>'admin_student_cards.php','icon'=>'🪪','title'=>'كروت الطلبة','desc'=>'كرت لكل طالب يعرض بياناته، درجاته، حضوره ومعلوماته الأساسية.','tag'=>'طباعة','hot'=>1);
}
if (card_allowed($can_supplies)) {
    $cards[] = array('group'=>'تسجيل وإدارة الطلبة','href'=>'registration/admin_uniform_books.php','icon'=>'🎒','title'=>'الزي والكتب','desc'=>'متابعة تسليم الزي والكتب للطلبة المسجلين فقط.','tag'=>'مخزن','hot'=>0);
}

/* الأقساط */
if (card_allowed($can_fees)) {
    $cards[] = array('group'=>'الأقساط والحسابات','href'=>'admin_fees.php','icon'=>'💰','title'=>'متابعة أقساط الطلبة','desc'=>'تحديد القسط، تسجيل الدفعات، معرفة المتبقي والمدفوع حسب السنة الدراسية.','tag'=>'جديد','hot'=>1);
}

/* الحضور والبصمة */
if (card_allowed($can_attendance)) {
    $cards[] = array('group'=>'الحضور وبصمة الوجه','href'=>'admin_face_enroll.php','icon'=>'📷','title'=>'تسجيل بصمة الوجه','desc'=>'أخذ صورة الطالب وتخزين بصمة الوجه للربط مع نظام الحضور.','tag'=>'AI Face','hot'=>1);
    $cards[] = array('group'=>'الحضور وبصمة الوجه','href'=>'admin_attendance_gate.php','icon'=>'🤖','title'=>'بوابة الحضور الذكية','desc'=>'تسجيل حضور ومغادرة الطلبة من الكاميرا اعتماداً على بصمة الوجه.','tag'=>'حضور','hot'=>1);
    $cards[] = array('group'=>'الحضور وبصمة الوجه','href'=>'admin_attendance_manage.php','icon'=>'✅','title'=>'إدارة الحضور اليومي','desc'=>'إغلاق اليوم، تثبيت الغياب، تعديل حالات الحضور والمتابعة حسب المرحلة.','tag'=>'إدارة','hot'=>0);
    $cards[] = array('group'=>'الحضور وبصمة الوجه','href'=>'admin_attendance_stats.php','icon'=>'📊','title'=>'إحصائيات الحضور','desc'=>'تقرير غيابات وحضور ومغادرات حسب الطالب والمرحلة والفترة الزمنية.','tag'=>'تقارير','hot'=>0);
}

/* المستوى والدرجات */
if (card_allowed($can_grades)) {
    $cards[] = array('group'=>'المستوى والدرجات','href'=>'admin_grades.php','icon'=>'📚','title'=>'درجات الطلبة','desc'=>'مراجعة الدرجات الشهرية والفصلية والنهائية حسب المدرس والمادة.','tag'=>'درجات','hot'=>0);
}
if (card_allowed($can_grades_matrix)) {
    $cards[] = array('group'=>'المستوى والدرجات','href'=>'admin_grades_matrix.php','icon'=>'📑','title'=>'درجات الطلبة للمواد','desc'=>'جدول تفصيلي يجمع مواد الطالب ودرجاته بطريقة منظمة للإدارة.','tag'=>'تحليل','hot'=>1);
}
if (card_allowed($can_evaluations)) {
    $cards[] = array('group'=>'المستوى والدرجات','href'=>'view_evaluations.php','icon'=>'🧠','title'=>'تقييمات الطلبة','desc'=>'متابعة المستوى العلمي والسلوك والملاحظات المرسلة من المدرسين.','tag'=>'تقييم','hot'=>0);
}
if (card_allowed($can_statistics)) {
    $cards[] = array('group'=>'المستوى والدرجات','href'=>'admin_statistics.php','icon'=>'📈','title'=>'الإحصائيات والتحليل الأكاديمي','desc'=>'نسب النجاح والرسوب، المتفوقين، الضعف، وتحليل أداء المواد.','tag'=>'لوحة تحليل','hot'=>1);
}
if (card_allowed($can_admin_behavior)) {
    $cards[] = array('group'=>'المستوى والدرجات','href'=>'admin_behavior_manage.php','icon'=>'🚨','title'=>'سجل السلوك الإداري','desc'=>'إضافة ومتابعة المخالفات والملاحظات الإدارية على الطلبة.','tag'=>'انضباط','hot'=>0);
}
if (card_allowed($can_listener_grades)) {
    $cards[] = array('group'=>'المستوى والدرجات','href'=>'listener_grades.php','icon'=>'🎧','title'=>'طلبة الانتساب / المستمعين','desc'=>'إدارة درجات طلبة مستمعين بجدول منفصل بدون تأثير على طلبة المدرسة.','tag'=>'منفصل','hot'=>0);
}

/* التدريس والتواصل */
if (card_allowed($can_teachers)) {
    $cards[] = array('group'=>'التدريس والتواصل','href'=>'admin_teachers.php','icon'=>'👨‍🏫','title'=>'إدارة المدرسين','desc'=>'إضافة المدرسين وتحديد المواد والمراحل والشعب الخاصة بكل مدرس.','tag'=>'كادر','hot'=>0);
}
if (card_allowed($can_subjects)) {
    $cards[] = array('group'=>'التدريس والتواصل','href'=>'admin_subjects.php','icon'=>'🧮','title'=>'إدارة المواد الدراسية','desc'=>'تنظيم المواد وربطها بالمراحل والمدرسين داخل النظام.','tag'=>'مواد','hot'=>0);
}
if (card_allowed($can_homework_rep)) {
    $cards[] = array('group'=>'التدريس والتواصل','href'=>'homework_report.php','icon'=>'📘','title'=>'عرض الواجبات','desc'=>'متابعة الواجبات اليومية والامتحانات القصيرة والمدرسين الذين لم يرسلوا.','tag'=>'واجبات','hot'=>1);
}
if (card_allowed($can_homework_stats)) {
    $cards[] = array('group'=>'التدريس والتواصل','href'=>'homework_stats.php','icon'=>'📒','title'=>'إحصائية الواجبات','desc'=>'تحليل أداء المدرسين في إرسال الواجبات والامتحانات اليومية.','tag'=>'إحصاء','hot'=>0);
}
if (card_allowed($can_exam_topics)) {
    $cards[] = array('group'=>'التدريس والتواصل','href'=>'admin_exam_topics.php','icon'=>'📄','title'=>'المادة الداخلة بالامتحان','desc'=>'عرض المواد الداخلة، النسخ للطباعة، ومعرفة المدرسين الذين لم يرسلوا.','tag'=>'امتحانات','hot'=>1);
}
if (card_allowed($can_questions)) {
    $cards[] = array('group'=>'التدريس والتواصل','href'=>'admin_questions_all.php','icon'=>'📁','title'=>'أسئلة المدرسين','desc'=>'جميع ملفات الأسئلة المرفوعة مع فلاتر وإحصائيات واضحة.','tag'=>'ملفات','hot'=>1);
}
if (card_allowed($can_parent_portal)) {
    $cards[] = array('group'=>'بوابة ولي الأمر','href'=>'admin_parent_accounts.php','icon'=>'👨‍👩‍👦','title'=>'حسابات أولياء الأمور','desc'=>'إنشاء حساب ولي أمر لمتابعة الطالب من بوابة خاصة.','tag'=>'حسابات','hot'=>0);
    $cards[] = array('group'=>'بوابة ولي الأمر','href'=>'admin_parent_notifications.php','icon'=>'🔔','title'=>'إشعارات ولي الأمر','desc'=>'إرسال تبليغات عامة أو حسب مرحلة أو لطالب محدد.','tag'=>'تواصل','hot'=>1);
    $cards[] = array('group'=>'بوابة ولي الأمر','href'=>'admin_parent_exam_schedules.php','icon'=>'🗓️','title'=>'جداول امتحانات ولي الأمر','desc'=>'رفع جداول امتحانات تظهر مباشرة داخل بوابة ولي الأمر.','tag'=>'جداول','hot'=>0);
}
if ($can_teacher_logins) {
    $cards[] = array('group'=>'الرقابة الإدارية','href'=>'admin_teacher_logins.php','icon'=>'👁️','title'=>'مراقبة دخول المدرسين','desc'=>'عرض أوقات دخول المدرسين، المتصفح، الجهاز، وعنوان IP.','tag'=>'رقابة','hot'=>0);
}
?>
<!DOCTYPE html>
<html lang="ar" dir="rtl">
<head>
<meta charset="UTF-8">
<title>لوحة تحكم نظام إدارة المدرسة الذكي</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://fonts.googleapis.com/css2?family=Tajawal:wght@400;500;700;800;900&display=swap" rel="stylesheet">
<style>
:root{
  --bg1:#07111f;--bg2:#0b2440;--card:rgba(255,255,255,.09);--stroke:rgba(255,255,255,.14);
  --cyan:#22d3ee;--gold:#f5c542;--green:#34d399;--red:#fb7185;--text:#f8fafc;--muted:#cbd5e1;
}
*{box-sizing:border-box}
body{margin:0;font-family:'Tajawal',Arial,sans-serif;color:var(--text);min-height:100vh;background:
  radial-gradient(circle at 12% 8%,rgba(34,211,238,.22),transparent 28%),
  radial-gradient(circle at 85% 15%,rgba(245,197,66,.18),transparent 25%),
  radial-gradient(circle at 50% 100%,rgba(59,130,246,.18),transparent 35%),
  linear-gradient(135deg,var(--bg1),var(--bg2) 60%,#04111f);}
a{text-decoration:none;color:inherit}
.topbar{position:sticky;top:0;z-index:50;background:rgba(7,17,31,.78);backdrop-filter:blur(18px);border-bottom:1px solid var(--stroke)}
.topbar-in{max-width:1440px;margin:auto;padding:14px 22px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.brand{display:flex;align-items:center;gap:13px}
.brand img{width:52px;height:52px;object-fit:contain;border-radius:18px;background:#fff;padding:5px;box-shadow:0 10px 30px rgba(0,0,0,.2)}
.brand h1{font-size:19px;margin:0;font-weight:900}
.brand small{display:block;color:var(--muted);margin-top:2px}
.nav-actions{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:14px;padding:10px 13px;font-weight:900;border:1px solid var(--stroke);background:rgba(255,255,255,.09);color:#fff;transition:.25s}
.btn:hover{transform:translateY(-2px);background:rgba(255,255,255,.16)}
.btn.gold{background:linear-gradient(135deg,#fde68a,#f59e0b);color:#3b2600;border:0}
.btn.cyan{background:linear-gradient(135deg,#67e8f9,#0ea5e9);color:#06121d;border:0}
.btn.red{background:linear-gradient(135deg,#fb7185,#be123c);border:0}
.wrap{max-width:1440px;margin:auto;padding:24px 22px 42px}
.hero{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;align-items:stretch;margin-bottom:18px}
.hero-card{background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.05));border:1px solid var(--stroke);border-radius:28px;padding:24px;box-shadow:0 25px 70px rgba(0,0,0,.22);position:relative;overflow:hidden}
.hero-card:before{content:"";position:absolute;inset:-80px auto auto -80px;width:240px;height:240px;background:rgba(34,211,238,.22);filter:blur(45px);border-radius:999px}
.hero-card h2{font-size:31px;margin:0 0 10px;font-weight:900;line-height:1.35;position:relative}
.hero-card p{color:var(--muted);font-size:16px;line-height:1.9;margin:0;position:relative}
.hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;position:relative}
.badge{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.09);border-radius:999px;padding:8px 12px;font-weight:800;color:#e2e8f0;font-size:13px}
.side-panel{display:grid;grid-template-columns:1fr;gap:12px}
.side-box{background:rgba(255,255,255,.08);border:1px solid var(--stroke);border-radius:24px;padding:17px;box-shadow:0 18px 45px rgba(0,0,0,.16)}
.side-box span{display:block;color:var(--muted);font-weight:800;font-size:13px;margin-bottom:4px}
.side-box b{font-size:25px;color:#fff}
.side-box small{display:block;color:#94a3b8;margin-top:6px}
.stats{display:grid;grid-template-columns:repeat(6,1fr);gap:13px;margin:18px 0}
.stat{background:rgba(255,255,255,.08);border:1px solid var(--stroke);border-radius:22px;padding:16px;min-height:118px;position:relative;overflow:hidden}
.stat:after{content:"";position:absolute;left:-40px;bottom:-40px;width:110px;height:110px;background:rgba(34,211,238,.12);border-radius:999px;filter:blur(8px)}
.stat .ico{font-size:26px;margin-bottom:10px}
.stat span{color:var(--muted);font-size:13px;font-weight:800}
.stat b{display:block;font-size:27px;margin-top:5px}
.stat small{display:block;color:#94a3b8;margin-top:5px;font-weight:700}
.panels{display:grid;grid-template-columns:1fr 390px;gap:18px;margin:18px 0}
.panel{background:rgba(255,255,255,.08);border:1px solid var(--stroke);border-radius:26px;padding:18px;box-shadow:0 18px 45px rgba(0,0,0,.14)}
.panel-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;gap:12px}
.panel-title h3{margin:0;font-size:18px}
.progress-wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.progress-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:14px}
.progress-card b{font-size:21px}
.bar{height:9px;background:rgba(255,255,255,.12);border-radius:999px;overflow:hidden;margin-top:10px}
.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--gold));border-radius:999px}
.stage-list{display:grid;gap:8px}
.stage-line{display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:10px 12px}
.stage-line b{font-size:18px;color:var(--cyan)}
.section-title{display:flex;align-items:center;justify-content:space-between;margin:26px 0 13px}
.section-title h2{font-size:22px;margin:0;font-weight:900}
.section-title span{color:#94a3b8;font-weight:800;font-size:13px}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.card{background:rgba(255,255,255,.085);border:1px solid rgba(255,255,255,.13);border-radius:25px;padding:18px;min-height:190px;box-shadow:0 18px 48px rgba(0,0,0,.14);position:relative;overflow:hidden;transition:.28s}
.card:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(34,211,238,.11),transparent 48%,rgba(245,197,66,.08));opacity:.75}
.card:hover{transform:translateY(-6px);background:rgba(255,255,255,.13);box-shadow:0 24px 70px rgba(0,0,0,.25)}
.card .top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;position:relative}
.card .icon{font-size:38px;filter:drop-shadow(0 10px 18px rgba(0,0,0,.18))}
.card .tag{font-size:11px;font-weight:900;border-radius:999px;padding:6px 9px;background:rgba(34,211,238,.15);color:#a5f3fc;border:1px solid rgba(34,211,238,.28)}
.card.hot{border-color:rgba(245,197,66,.45);box-shadow:0 18px 55px rgba(245,197,66,.09)}
.card.hot .tag{background:rgba(245,197,66,.18);color:#fde68a;border-color:rgba(245,197,66,.35)}
.card h3{font-size:18px;margin:16px 0 8px;position:relative}
.card p{margin:0;color:#cbd5e1;line-height:1.75;font-size:14px;position:relative}
.empty{background:rgba(255,255,255,.08);border:1px dashed rgba(255,255,255,.25);border-radius:24px;padding:35px;text-align:center;color:#cbd5e1}
.latest{display:grid;gap:9px}
.latest-row{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:10px}
.latest-row b{display:block}
.latest-row small{color:#94a3b8}
.footer{text-align:center;color:#94a3b8;margin-top:30px;padding:18px;border-top:1px solid rgba(255,255,255,.1)}
@media(max-width:1200px){.stats{grid-template-columns:repeat(3,1fr)}.cards{grid-template-columns:repeat(3,1fr)}.panels,.hero{grid-template-columns:1fr}}
@media(max-width:800px){.topbar-in{flex-direction:column;text-align:center}.brand{flex-direction:column}.nav-actions{justify-content:center}.stats,.progress-wrap,.cards{grid-template-columns:1fr 1fr}.hero-card h2{font-size:25px}}
@media(max-width:520px){.wrap{padding:18px 12px 32px}.stats,.progress-wrap,.cards{grid-template-columns:1fr}.hero-card{padding:19px}.btn{width:100%}.nav-actions{width:100%}}
</style>
</head>
<body>

<div class="topbar">
  <div class="topbar-in">
    <div class="brand">
      <img src="logo.png" alt="logo">
      <div>
        <h1>نظام إدارة المدرسة الذكي</h1>
        <small>لوحة تحكم شاملة جاهزة للبيع للمدارس</small>
      </div>
    </div>
    <div class="nav-actions">
      <a class="btn gold" href="demo.php" target="_blank">🚀 فتح الديمو المجاني</a>
      <a class="btn cyan" href="registration/student_register.php" target="_blank">📝 رابط التسجيل</a>
      <a class="btn" href="parent_login.php" target="_blank">👨‍👩‍👦 بوابة ولي الأمر</a>
      <a class="btn red" href="admin_logout.php">تسجيل خروج</a>
    </div>
  </div>
</div>

<div class="wrap">

  <section class="hero">
    <div class="hero-card">
      <h2>أهلاً <?php echo h($admin_username); ?> 👋<br>هذه لوحة قيادة موحدة لكل تفاصيل المدرسة</h2>
      <p>
        من تسجيل الطالب الإلكتروني، إلى الأقساط، الحضور ببصمة الوجه، الدرجات، الواجبات،
        المادة الداخلة، أسئلة المدرسين، إشعارات أولياء الأمور، الإحصائيات والتحليل الأكاديمي.
      </p>
      <div class="hero-badges">
        <span class="badge">صلاحيتك: <?php echo h($role_label); ?></span>
        <span class="badge">السنة الدراسية: <?php echo h($academic_year); ?></span>
        <span class="badge">تاريخ اليوم: <?php echo h($today); ?></span>
        <span class="badge">نسخة تسويقية جاهزة للعرض</span>
      </div>
    </div>
    <div class="side-panel">
      <div class="side-box"><span>الأقساط المستحقة</span><b><?php echo fmt_money_dash($fees_total); ?></b><small>المتبقي: <?php echo fmt_money_dash($fees_remaining); ?></small></div>
      <div class="side-box"><span>نسبة حضور اليوم</span><b><?php echo fmt_int($attendance_rate); ?>%</b><small>حاضر: <?php echo fmt_int($today_present); ?> / غائب: <?php echo fmt_int($today_absent); ?></small></div>
      <div class="side-box"><span>متوسط المستوى العام</span><b><?php echo h($avg_grade); ?></b><small>ناجح: <?php echo fmt_int($pass_count); ?> / يحتاج متابعة: <?php echo fmt_int($fail_count); ?></small></div>
    </div>
  </section>

  <section class="stats">
    <div class="stat"><div class="ico">🎓</div><span>إجمالي الطلبة</span><b><?php echo fmt_int($total_students); ?></b><small>داخل جدول الطلاب الرسمي</small></div>
    <div class="stat"><div class="ico">🧾</div><span>طلبات قيد المراجعة</span><b><?php echo fmt_int($pending_reg); ?></b><small>المقبولين: <?php echo fmt_int($accepted_reg); ?></small></div>
    <div class="stat"><div class="ico">👨‍🏫</div><span>المدرسون</span><b><?php echo fmt_int($total_teachers); ?></b><small>المواد: <?php echo fmt_int($total_subjects); ?></small></div>
    <div class="stat"><div class="ico">📷</div><span>بصمات الوجه</span><b><?php echo fmt_int($faces_count); ?></b><small>جاهزين للحضور الذكي</small></div>
    <div class="stat"><div class="ico">📘</div><span>واجبات اليوم</span><b><?php echo fmt_int($homework_today); ?></b><small>المادة الداخلة هذا الشهر: <?php echo fmt_int($exam_topics_month); ?></small></div>
    <div class="stat"><div class="ico">📁</div><span>ملفات الأسئلة</span><b><?php echo fmt_int($questions_total); ?></b><small>تقييمات الشهر: <?php echo fmt_int($evaluations_month); ?></small></div>
  </section>

  <section class="panels">
    <div class="panel">
      <div class="panel-title"><h3>ملخص سريع للإدارة</h3><span>تقرير مباشر</span></div>
      <div class="progress-wrap">
        <div class="progress-card">
          <span>تحصيل الأقساط</span>
          <b><?php echo fmt_money_dash($fees_paid); ?></b>
          <?php $fee_percent = ((float)$fees_total > 0) ? round(((float)$fees_paid/(float)$fees_total)*100) : 0; ?>
          <div class="bar"><i style="width:<?php echo (int)$fee_percent; ?>%"></i></div>
          <small><?php echo (int)$fee_percent; ?>% مدفوع — طلبة عليهم متبقي: <?php echo fmt_int($fees_students_with_debt); ?></small>
        </div>
        <div class="progress-card">
          <span>الحضور اليومي</span>
          <b><?php echo fmt_int($attendance_rate); ?>%</b>
          <div class="bar"><i style="width:<?php echo (int)$attendance_rate; ?>%"></i></div>
          <small>اعتماداً على حضور اليوم</small>
        </div>
        <div class="progress-card">
          <span>المتابعة الأكاديمية</span>
          <?php $academic_percent = ((float)$pass_count + (float)$fail_count > 0) ? round(((float)$pass_count/((float)$pass_count+(float)$fail_count))*100) : 0; ?>
          <b><?php echo fmt_int($academic_percent); ?>%</b>
          <div class="bar"><i style="width:<?php echo (int)$academic_percent; ?>%"></i></div>
          <small>نسبة السجلات الناجحة حسب المعدل السنوي</small>
        </div>
      </div>
    </div>
    <div class="panel">
      <div class="panel-title"><h3>آخر طلبات التسجيل</h3><a class="btn" href="registration/admin_registrations.php">فتح</a></div>
      <div class="latest">
        <?php if (count($latest_registrations) > 0) { ?>
          <?php foreach ($latest_registrations as $lr) { ?>
            <div class="latest-row">
              <b><?php echo h($lr['student_full_name']); ?></b>
              <small><?php echo h($lr['stage']); ?> — <?php echo h(status_label_dash($lr['status'])); ?> — <?php echo h($lr['created_at']); ?></small>
            </div>
          <?php } ?>
        <?php } else { ?>
          <div class="latest-row">لا توجد طلبات تسجيل حديثة.</div>
        <?php } ?>
      </div>
    </div>
  </section>

  <?php if (count($stage_rows) > 0) { ?>
  <section class="panel">
    <div class="panel-title"><h3>توزيع الطلبة حسب المرحلة</h3><span>من جدول الطلاب</span></div>
    <div class="stage-list">
      <?php foreach ($stage_rows as $sr) { ?>
        <div class="stage-line"><span><?php echo h($sr['stage']); ?></span><b><?php echo fmt_int($sr['c']); ?></b></div>
      <?php } ?>
    </div>
  </section>
  <?php } ?>

  <?php
    $groups_done = array();
    foreach ($cards as $c) {
        if (!isset($groups_done[$c['group']])) {
            $groups_done[$c['group']] = array();
        }
        $groups_done[$c['group']][] = $c;
    }
  ?>

  <?php if (count($groups_done) > 0) { ?>
    <?php foreach ($groups_done as $gname => $items) { ?>
      <div class="section-title">
        <h2><?php echo h($gname); ?></h2>
        <span><?php echo count($items); ?> وحدة</span>
      </div>
      <div class="cards">
        <?php foreach ($items as $c) { ?>
          <a href="<?php echo h($c['href']); ?>" class="card-link">
            <div class="card <?php echo !empty($c['hot']) ? 'hot' : ''; ?>">
              <div class="top">
                <div class="icon"><?php echo h($c['icon']); ?></div>
                <span class="tag"><?php echo h($c['tag']); ?></span>
              </div>
              <h3><?php echo h($c['title']); ?></h3>
              <p><?php echo h($c['desc']); ?></p>
            </div>
          </a>
        <?php } ?>
      </div>
    <?php } ?>
  <?php } else { ?>
    <div class="empty">لا توجد وحدات ظاهرة لهذه الصلاحية حالياً.</div>
  <?php } ?>

  <div class="footer">
    © <?php echo date("Y"); ?> — نظام إدارة المدرسة الذكي | جاهز للعرض والبيع للمدارس
  </div>

</div>
</body>
</html>
