:root{--brand:#1a237e;--brand-700:#141b63;--coral:#ff6b6b;--coral-600:#e24e4e;--ink:#1a1c22;--muted:#5a5f6e;--bg:#f5f6fb;--line:#e6e8f0;--card:#fff}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:var(--brand);text-decoration:none}.brand{font-weight:800;font-size:1.25rem;letter-spacing:-.02em}.brand span{color:var(--coral)}.btn{display:inline-flex;align-items:center;gap:.5rem;border:0;border-radius:999px;padding:.7rem 1.3rem;font-weight:600;font-size:.95rem;cursor:pointer;transition:.2s;font-family:inherit}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-700)}.btn-primary:disabled{opacity:.6;cursor:default}.btn-ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn-ghost:hover{border-color:#c5ccec;background:#fafbff}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem}.login-card{width:100%;max-width:400px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:2.2rem;box-shadow:0 20px 50px -20px rgba(26,35,126,.25)}.login-card h1{font-size:1.15rem;margin:.4rem 0 .25rem}.login-card p.sub{color:var(--muted);font-size:.9rem;margin:0 0 1.5rem}label{display:block;font-size:.85rem;font-weight:600;margin:.9rem 0 .35rem}input[type=email],input[type=password],input[type=text]{width:100%;padding:.7rem .9rem;border:1px solid var(--line);border-radius:10px;font-size:.95rem;background:#fff;outline:none;font-family:inherit}input:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(26,35,126,.12)}.err{background:#ffe7e7;color:#b3261e;border:1px solid #ffc9c9;border-radius:10px;padding:.6rem .8rem;font-size:.88rem;font-weight:600;margin-bottom:1rem}.topbar{background:#fff;border-bottom:1px solid var(--line);padding:.9rem 1.5rem;justify-content:space-between}.topbar,.topbar .right{display:flex;align-items:center}.topbar .right{gap:.8rem}.topbar .who{color:var(--muted);font-size:.85rem}.wrap{max-width:1150px;margin:0 auto;padding:1.8rem 1.5rem 3rem}.stats{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:1.6rem}@media (max-width:640px){.stats{grid-template-columns:1fr}}.stat{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1.2rem 1.3rem}.stat .n{font-size:2rem;font-weight:800;color:var(--brand);line-height:1}.stat.coral .n{color:var(--coral-600)}.stat .l{color:var(--muted);font-size:.82rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-top:.4rem}.toolbar{display:flex;gap:.8rem;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:1rem}.toolbar h2{font-size:1.1rem;margin:0}.toolbar .right{display:flex;gap:.6rem;align-items:center}.search{min-width:240px}.tablecard{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:auto}table{width:100%;border-collapse:collapse;font-size:.9rem}thead th{text-align:left;background:#fafbff;color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;padding:.75rem 1rem;border-bottom:1px solid var(--line);white-space:nowrap}tbody td{padding:.8rem 1rem;border-bottom:1px solid #f0f2f8;vertical-align:top}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafbff}td.name{font-weight:600}.pill,td .email{color:var(--brand)}.pill{display:inline-block;background:#eef0fa;border-radius:999px;padding:.15rem .6rem;font-size:.78rem;font-weight:600}.empty{padding:3rem 1rem;text-align:center}.empty,.foot,.muted{color:var(--muted)}.foot{font-size:.8rem;margin-top:1rem}