:root{
  --bg:#f6f8fb;
  --surface:#ffffff;
  --ink:#0f172a;
  --muted:#64748b;
  --border:#e5e7eb;

  --brand-a:#00bfa5;
  --brand-b:#009d8e;
  --brand:#0a9f7a;

  --ring:0 0 0 3px color-mix(in srgb, var(--brand) 18%, transparent);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:'Tajawal',system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial,sans-serif;
  color:var(--ink);
  background:
    radial-gradient(900px 600px at 12% -10%, #22c55e12, transparent 60%),
    radial-gradient(800px 580px at 88% 110%, #10b98112, transparent 60%),
    linear-gradient(180deg, #f9fbff, #f3f6fa);
}

/* شريط التاريخ */
.topbar{
  position:fixed; top:14px; inset-inline:14px;
  color:#8593a6; font-size:13px; text-align:center;
  user-select:none; pointer-events:none;
}

/* تمركز البطاقة */
.wrapper{
  min-height:100dvh;
  display:grid; place-items:center;
  padding:24px;
}

/* البطاقة */
.login-card{
  width:min(420px, 94vw);
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:20px;
  box-shadow:
    0 20px 50px rgba(2,6,23,.10),
    0 3px 10px rgba(2,6,23,.06);
  overflow:hidden;
}

/* رأس البطاقة بتدرج أخضر */
.login-head{
  background:linear-gradient(135deg, var(--brand-a), var(--brand-b));
  padding:18px 16px;
  text-align:center;
  color:#fff;
}
.login-head h1{
  margin:0; font-size:22px; font-weight:900; letter-spacing:.2px;
}

.login-body{ padding:18px 16px 20px }

/* الحقول */
.field{
  position:relative; display:flex; align-items:center; gap:10px;
  border:1px solid var(--border);
  border-radius:14px; background:#fff;
  padding:12px 14px;
  transition:border-color .15s ease, box-shadow .15s ease, transform .06s ease;
}
.field:focus-within{ border-color:#d1d5db; box-shadow:var(--ring) }
.fi{font-style:normal; font-size:18px; color:#94a3b8; width:24px; text-align:center}
.in{
  border:0; outline:0; width:100%;
  font-size:18px; font-weight:800; color:var(--ink);
}
.in::placeholder{color:#cbd5e1; font-weight:500}

/* حالة خطأ + اهتزاز */
.error{display:none; margin:8px 2px 0; color:#ef4444; font-weight:800; font-size:13px}
.shake{animation:shake .3s ease}
@keyframes shake{
  10%,90%{transform:translate3d(-1px,0,0)}
  20%,80%{transform:translate3d(2px,0,0)}
  30%,50%,70%{transform:translate3d(-4px,0,0)}
  40%,60%{transform:translate3d(4px,0,0)}
}

/* تذكّرني */
.remember{
  display:inline-flex; align-items:center; gap:8px;
  color:#6b7280; font-size:13.5px; user-select:none; cursor:pointer;
  margin:6px 2px 2px;
}
.remember input{ accent-color: var(--brand) }

/* الأزرار */
.btn{
  height:48px; padding:0 16px; border-radius:12px; border:1px solid transparent;
  font-family:'Tajawal',system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial,sans-serif;
  font-weight:900; letter-spacing:.2px; cursor:pointer;
  transition:transform .06s ease, filter .12s ease, box-shadow .12s ease;
}
.btn:active{ transform:translateY(1px) }

.btn-primary{
  width:100%;
  background:linear-gradient(135deg, var(--brand-a), var(--brand-b));
  color:#fff;
  font-size:20px;                    /* تكبير نص زر الدخول */
  box-shadow:0 12px 26px #00bfa544, inset 0 -1px 0 rgba(255,255,255,.25);
  margin-top:10px;
}
.btn-ghost{
  background:#fff; color:var(--ink); border-color:var(--border);
}

/* المودال (اختيار الطالب عند تعدد النتائج) */
.modal{position:fixed; inset:0; background:rgba(2,6,23,.12); display:none; place-items:center; z-index:50}
.modal.show{display:grid}
.modal-card{
  width:min(560px, 94vw);
  background:#fff; border:1px solid var(--border); border-radius:16px;
  box-shadow:0 18px 48px rgba(2,6,23,.18); overflow:hidden;
}
.modal-head{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px 14px; border-bottom:1px solid #eef2f7}
.modal-head h3{margin:0; font-weight:900; font-size:18px}
.modal-body{padding:12px}
.match{
  display:grid; grid-template-columns:40px 1fr auto; gap:12px; align-items:center;
  border:1px solid var(--border); border-radius:12px; background:#fff; padding:8px 10px; margin-bottom:10px
}
.match .a{width:40px;height:40px;border-radius:10px;object-fit:cover;background:#f1f5f9}
.match .n{font-weight:800}
.match .m{color:#64748b; font-size:12px}
.match .go{height:36px; padding:0 12px; border-radius:10px; border:1px solid var(--border); background:#fff; font-weight:800; cursor:pointer}
.modal-foot{padding:10px 12px; border-top:1px solid #eef2f7; display:flex; justify-content:flex-end; gap:8px}
.modal-foot .btn{height:38px}

/* طبقة العدّاد */
.hidden{display:none}
.cd-overlay{
  --p:0;
  position:fixed; inset:0; z-index:60;
  background:rgba(2,6,23,.12);
  display:none; place-items:center;
}
.cd-overlay:not(.hidden){display:grid}

.cd-card{
  width:min(360px, 92vw);
  background:#fff; border:1px solid var(--border); border-radius:18px;
  box-shadow:0 18px 44px rgba(2,6,23,.18);
  padding:18px 18px 22px; text-align:center;
}
.cd-ring{
  position:relative; width:120px; height:120px; margin:6px auto 10px;
  border-radius:50%;
  background:conic-gradient(var(--brand) calc(var(--p)*1%), #e5e7eb 0);
  display:grid; place-items:center;
}
.cd-ring::after{
  content:""; position:absolute; inset:8px; border-radius:50%;
  background:#fff; border:1px solid #f1f5f9;
}
.cd-num{ position:relative; font:900 36px/1 'Tajawal',sans-serif; color:var(--ink) }
.cd-text{ color:#475569; font-size:14px }

/* تحسينات للجوال */
@media (max-width:480px){
  .wrapper{padding:16px}
  .login-head h1{font-size:20px}
  .in{font-size:17px}
  .btn{height:46px}
  .btn-primary{font-size:19px}
}




/* أيقونة الهوية: رمادي فاتح ومتمركزة عموديًا بالكامل */
.fi{
  color:#cbd5e1;              /* رمادي فاتح */
  width:40px; min-width:40px; /* مساحة ثابتة يمين/يسار */
  align-self:stretch;         /* يساوي ارتفاع الحقل */
  display:grid; place-items:center; /* تمركز تام داخل المساحة */
}
.fi-icon{ display:block }      /* يمنع الهبوط لخط الأساس */

.field{                        /* تأكيد التمركز العمودي لعناصر الحقل */
  display:flex; align-items:center;
}









/* الهيدر يظهر طبيعي في كل الصفحات */
.site-header{
  display: flex;
}

/* إخفاء الهيدر فقط في صفحات الطالب */
.student-page .site-header{
  display: none !important;
}
