:root{--brand:#1d4ed8;--brand-dark:#1e3a8a;--bg:#f7f8fa;--card:#fff;--text:#1f2937;--muted:#6b7280;--border:#e5e7eb;--success:#16a34a;--danger:#dc2626;--warn:#d97706;font-family:Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}a{color:var(--brand);text-decoration:none}.container{max-width:1100px;margin:0 auto;padding:24px 16px}.navbar{background:var(--brand-dark);color:#fff;justify-content:space-between;align-items:center;padding:14px 24px;display:flex}.navbar .brand{font-size:18px;font-weight:700}.navbar a,.navbar button{color:#fff}.navbar nav{align-items:center;gap:16px;display:flex}.btn{background:var(--brand);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:10px 18px;font-size:14px;font-weight:600;display:inline-block}.btn:hover{background:var(--brand-dark)}.btn.secondary{color:var(--brand);border:1px solid var(--brand);background:#fff}.btn.danger{background:var(--danger)}.btn:disabled{opacity:.6;cursor:not-allowed}.card{background:var(--card);border:1px solid var(--border);border-radius:10px;margin-bottom:16px;padding:20px}.grid{gap:16px;display:grid}.grid.cols-2{grid-template-columns:1fr 1fr}.grid.cols-3{grid-template-columns:repeat(3,1fr)}@media (width<=720px){.grid.cols-2,.grid.cols-3{grid-template-columns:1fr}}label{color:var(--muted);margin-top:10px;margin-bottom:4px;font-size:13px;display:block}input,select,textarea{border:1px solid var(--border);border-radius:6px;width:100%;padding:9px 10px;font-size:14px}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px}th{color:var(--muted);font-weight:600}.badge{border-radius:20px;padding:3px 9px;font-size:12px;font-weight:600}.badge.requested{color:var(--warn);background:#fef3c7}.badge.assigned{color:var(--brand);background:#dbeafe}.badge.ongoing{color:#6d28d9;background:#ede9fe}.badge.completed{color:var(--success);background:#dcfce7}.badge.cancelled{color:var(--danger);background:#fee2e2}.hero{background:linear-gradient(135deg, var(--brand-dark), var(--brand));color:#fff;text-align:center;padding:60px 24px}.hero h1{margin-bottom:8px;font-size:32px}.hero p{opacity:.9;font-size:16px}.error-text{color:var(--danger);margin-top:8px;font-size:13px}.muted{color:var(--muted);font-size:13px}
