@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@400;500;600;700;800&display=swap');
:root{--brand:#4f46e5;--brand-dark:#3730a3;--ink:#172033;--muted:#64748b;--line:#e8edf4;--surface:#fff;--page:#f5f7fb}
*{box-sizing:border-box}body{font-family:"Cairo",Tahoma,Arial,sans-serif;background:var(--page);color:var(--ink);min-height:100vh;display:flex;flex-direction:column}main{flex:1}.app-navbar{background:linear-gradient(110deg,#1e1b4b,#3730a3 58%,#4f46e5);box-shadow:0 4px 18px #312e811a}.navbar-brand{letter-spacing:-.3px}.app-card{border:1px solid var(--line);border-radius:18px;overflow:hidden}.auth-wrap{max-width:510px;margin:1rem auto;width:100%}.brand-icon{width:62px;height:62px;border-radius:20px;display:grid;place-items:center;margin:auto;background:#eef2ff;font-size:1.8rem}.form-control,.form-select{border-color:#dbe2ec;min-height:44px;border-radius:10px}.form-control:focus,.form-select:focus{border-color:#818cf8;box-shadow:0 0 0 .2rem #6366f11c}.btn{border-radius:10px;font-weight:600}.btn-primary{background:var(--brand);border-color:var(--brand)}.btn-primary:hover{background:var(--brand-dark);border-color:var(--brand-dark)}.eyebrow{font-size:.78rem;font-weight:700;color:var(--brand);display:block;margin-bottom:.35rem}.stat-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.2rem;display:flex;flex-direction:column;gap:.2rem}.stat-card strong{font-size:2rem;line-height:1.4}.stat-card small{color:var(--muted)}.app-table thead th{font-size:.82rem;color:#64748b;font-weight:700;border-bottom-color:var(--line);white-space:nowrap}.app-table td{padding-top:1rem;padding-bottom:1rem;border-color:#f0f2f7}.avatar{width:42px;height:42px;object-fit:cover;border-radius:13px;border:1px solid var(--line)}.avatar-placeholder{display:grid;place-items:center;background:#eef2ff;color:#4338ca;font-weight:800}.avatar-large{width:80px;height:80px;border-radius:18px}.empty-state{text-align:center;padding:2.8rem 1rem}.empty-state strong{display:block;font-size:1.1rem;margin:.6rem 0}.field-error{font-size:.83rem;color:#dc2626;margin-top:.25rem;min-height:1rem}footer{background:#fff}a{color:var(--brand)}.pagination{gap:.25rem}.page-link{border-radius:8px!important;color:var(--brand)}.page-item.active .page-link{background:var(--brand);border-color:var(--brand)}@media(max-width:575.98px){.app-table{font-size:.85rem}.app-table td{padding:.7rem .45rem}.stat-card{padding:1rem}.auth-wrap .card-body{padding:1.4rem!important}}
