// ===== ACCOUNT: role-aware Profile Β· Responder registration Β· Admin console ===== const RESP_KEY = 'nrsa_responder'; const ID_TYPES = ['Driver\u2019s License', 'Passport', 'PhilSys National ID', 'UMID', 'Postal ID', 'Voter\u2019s ID']; const INDUSTRIES = ['Government / Public Sector', 'Transport & Logistics', 'Healthcare & Medical', 'Education', 'IT / BPO', 'Construction & Engineering', 'Retail & Services', 'Manufacturing', 'Other']; const CERTS = ['First Aid', 'BLS / CPR', 'Traffic Management', 'Emergency Response', 'Firefighting', 'Defensive Driving', 'None yet']; function getResp() { try { return JSON.parse(localStorage.getItem(RESP_KEY)) || null; } catch (e) { return null; } } function setResp(v) { localStorage.setItem(RESP_KEY, JSON.stringify(v)); } // ---- small form primitives ---- function FLabel({ t, children, hint }) { return (
{children} {hint && {hint}}
); } function fieldStyle(t) { return { width: '100%', border: `1.5px solid ${t.border}`, background: t.inputBg, color: t.text, borderRadius: 13, padding: '12px 13px', outline: 'none', fontWeight: 500, fontSize: 14.5 }; } function TInput({ t, value, onChange, placeholder, type = 'text', inputMode }) { return onChange(e.target.value)} placeholder={placeholder} style={fieldStyle(t)} />; } function TArea({ t, value, onChange, placeholder, rows = 3 }) { return