/* هوية جامعة المنصورة الأهلية */
@font-face { font-family: "Cairo"; font-weight: 400; font-display: swap; src: url("../vendor/cairo/cairo-arabic-400-normal.woff2") format("woff2"); unicode-range: U+0600-06FF, U+0750-077F, U+FB50-FDFF, U+FE70-FEFF; }
@font-face { font-family: "Cairo"; font-weight: 600; font-display: swap; src: url("../vendor/cairo/cairo-arabic-600-normal.woff2") format("woff2"); unicode-range: U+0600-06FF, U+0750-077F, U+FB50-FDFF, U+FE70-FEFF; }
@font-face { font-family: "Cairo"; font-weight: 700; font-display: swap; src: url("../vendor/cairo/cairo-arabic-700-normal.woff2") format("woff2"); unicode-range: U+0600-06FF, U+0750-077F, U+FB50-FDFF, U+FE70-FEFF; }
@font-face { font-family: "Cairo"; font-weight: 400; font-display: swap; src: url("../vendor/cairo/cairo-latin-400-normal.woff2") format("woff2"); unicode-range: U+0000-00FF; }
@font-face { font-family: "Cairo"; font-weight: 600; font-display: swap; src: url("../vendor/cairo/cairo-latin-600-normal.woff2") format("woff2"); unicode-range: U+0000-00FF; }
@font-face { font-family: "Cairo"; font-weight: 700; font-display: swap; src: url("../vendor/cairo/cairo-latin-700-normal.woff2") format("woff2"); unicode-range: U+0000-00FF; }

:root {
  --mnu-navy: #0C203F;
  --mnu-navy-2: #16325e;
  --mnu-gold: #C89839;
  --mnu-gold-2: #b5862b;
  --mnu-bg: #f4f6fa;
  --bs-body-font-family: "Cairo", system-ui, sans-serif;
  --bs-primary: var(--mnu-navy);
  --bs-primary-rgb: 12, 32, 63;
  --bs-link-color: var(--mnu-navy-2);
  --bs-link-color-rgb: 22, 50, 94;
}
body { background: var(--mnu-bg); font-family: var(--bs-body-font-family); }

.mnu-topbar { background: var(--mnu-navy); border-bottom: 3px solid var(--mnu-gold); }
.mnu-topbar .navbar-brand img { height: 42px; background: #fff; border-radius: 50%; padding: 2px; }
.mnu-topbar .navbar-brand .t1 { color: #fff; font-weight: 700; font-size: 1.05rem; line-height: 1.1; }
.mnu-topbar .navbar-brand .t2 { color: var(--mnu-gold); font-size: .78rem; }
.mnu-topbar .nav-link { color: rgba(255,255,255,.85); font-weight: 600; }
.mnu-topbar .nav-link:hover, .mnu-topbar .nav-link.active { color: var(--mnu-gold); }

.btn-primary { --bs-btn-bg: var(--mnu-navy); --bs-btn-border-color: var(--mnu-navy); --bs-btn-hover-bg: var(--mnu-navy-2); --bs-btn-hover-border-color: var(--mnu-navy-2); --bs-btn-active-bg: var(--mnu-navy-2); }
.btn-gold { --bs-btn-color: #fff; --bs-btn-bg: var(--mnu-gold); --bs-btn-border-color: var(--mnu-gold); --bs-btn-hover-color: #fff; --bs-btn-hover-bg: var(--mnu-gold-2); --bs-btn-hover-border-color: var(--mnu-gold-2); --bs-btn-active-bg: var(--mnu-gold-2); }
.text-gold { color: var(--mnu-gold) !important; }
.text-navy { color: var(--mnu-navy) !important; }

.card { border: 0; box-shadow: 0 1px 3px rgba(12,32,63,.08); border-radius: .75rem; }
.card-header { background: #fff; border-bottom: 2px solid var(--mnu-gold); font-weight: 700; color: var(--mnu-navy); }
.stat-card { border-inline-start: 4px solid var(--mnu-gold); }
.stat-card .num { font-size: 2rem; font-weight: 700; color: var(--mnu-navy); line-height: 1; }
.stat-card .lbl { color: #6c757d; font-size: .9rem; }
.stat-card.danger { border-inline-start-color: #dc3545; }
.stat-card.danger .num { color: #dc3545; }

.page-title { color: var(--mnu-navy); font-weight: 700; border-inline-start: 4px solid var(--mnu-gold); padding-inline-start: .6rem; }
.table thead th { background: var(--mnu-navy); color: #fff; font-weight: 600; white-space: nowrap; }
.mnu-timer { font-variant-numeric: tabular-nums; direction: ltr; display: inline-block; }
.timeline { list-style: none; padding: 0; margin: 0; }
.timeline li { position: relative; padding: 0 1.4rem .9rem 0; border-inline-start: 2px solid #dfe3ea; margin-inline-start: .4rem; }
.timeline li::before { content: ""; position: absolute; inset-inline-start: -7px; top: .35rem; width: 12px; height: 12px; border-radius: 50%; background: var(--mnu-gold); }
.timeline li:last-child { border-color: transparent; }
.login-wrap { min-height: 100vh; background: linear-gradient(160deg, var(--mnu-navy) 0%, var(--mnu-navy-2) 60%, var(--mnu-navy) 100%); }
.login-card { max-width: 420px; border-top: 4px solid var(--mnu-gold); }
.notif-dot { position: absolute; top: 2px; inset-inline-start: 2px; font-size: .65rem; }
.photo-thumb { width: 110px; height: 110px; object-fit: cover; border-radius: .5rem; }
.label-sheet { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8mm; }
.label { border: 1px dashed #999; padding: 4mm; text-align: center; page-break-inside: avoid; }
.label img.qr { width: 38mm; height: 38mm; }
.label .code { font-family: monospace; font-weight: 700; direction: ltr; }
@media print { .no-print { display: none !important; } body { background: #fff; } }
