:root{--navy:#0f172a;--blue:#2563eb;--sky:#38bdf8;--bg:#f8fafc;--muted:#64748b;--line:#e2e8f0}*{box-sizing:border-box}body{margin:0;font:15px/1.55 Inter,system-ui,Arial;background:var(--bg);color:var(--navy)}a{color:var(--blue);text-decoration:none}.top{background:var(--navy);color:#fff;padding:17px max(20px,calc((100% - 1100px)/2));display:flex;justify-content:space-between;align-items:center;gap:15px}.brand{font-weight:850;letter-spacing:.3px}.brand span{color:var(--sky)}.top a{color:#fff;margin-left:14px}.wrap{width:min(1100px,calc(100% - 30px));margin:30px auto}.card{background:white;border:1px solid var(--line);border-radius:17px;padding:23px;margin-bottom:18px;box-shadow:0 8px 30px #0f172a06}.narrow{max-width:520px;margin:45px auto}.muted{color:var(--muted)}h1{font-size:28px;margin:0 0 8px}h2{font-size:20px;margin:0 0 14px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.stat{font-size:30px;font-weight:800;color:var(--blue)}label{display:block;font-size:13px;font-weight:700;margin:13px 0 6px}input,textarea,select{width:100%;padding:12px;border:1px solid #cbd5e1;border-radius:10px;font:inherit;background:#fff}textarea{min-height:120px;resize:vertical}button,.btn{display:inline-block;background:var(--blue);color:#fff;border:0;border-radius:10px;padding:11px 16px;font-weight:750;cursor:pointer;font:inherit}button:hover,.btn:hover{opacity:.9}.btn.secondary{background:#e2e8f0;color:var(--navy)}.btn.danger,button.danger{background:#b91c1c}.msg{padding:12px 14px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;margin:12px 0}.error{background:#fef2f2;border-color:#fecaca;color:#991b1b}.success{background:#f0fdf4;border-color:#bbf7d0;color:#166534}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.table-wrap{overflow:auto}.pill{display:inline-block;padding:3px 9px;border-radius:999px;background:#e2e8f0;font-size:12px;font-weight:750}.pending{background:#fef3c7;color:#92400e}.approved,.active{background:#dcfce7;color:#166534}.deleted,.rejected,.suspended{background:#fee2e2;color:#991b1b}.inline{display:inline}.small{font-size:12px}.footer{text-align:center;padding:30px;color:var(--muted)}@media(max-width:600px){.top{align-items:flex-start;flex-direction:column}.top a{margin:0 12px 0 0}.card{padding:17px}h1{font-size:24px}}
