caustino commited on
Commit
f00ef5a
·
verified ·
1 Parent(s): ca80245

Update index.html

Browse files
Files changed (1) hide show
  1. index.html +925 -387
index.html CHANGED
@@ -1,395 +1,933 @@
1
  <!DOCTYPE html>
2
  <html lang="en">
3
  <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>MASTER INDEX — Portfolio Table of Contents | PSDLEF Technical Package</title>
7
- <style>
8
- :root {
9
- --bg: #fafaf8;
10
- --text: #1a1a1a;
11
- --accent: #1e3a4f;
12
- --card-bg: #ffffff;
13
- --border: #d9d6ce;
14
- --muted: #5a5a5a;
15
- --tag-bg: #e6eef3;
16
- --tag-text: #1e3a4f;
17
- --flag-bg: #fff3e0;
18
- --flag-text: #a15813;
19
- --alert-bg: #fdecea;
20
- --alert-text: #b71c1c;
21
- --ok-bg: #e8f5e9;
22
- --ok-text: #1b5e20;
23
- --row-stripe: #fcfcf9;
24
- }
25
-
26
- * {
27
- box-sizing: border-box;
28
- margin: 0;
29
- padding: 0;
30
- }
31
-
32
- body {
33
- font-family: 'Georgia', 'Times New Roman', serif;
34
- background: var(--bg);
35
- color: var(--text);
36
- line-height: 1.6;
37
- padding: 2rem 1rem;
38
- }
39
-
40
- .container {
41
- max-width: 960px;
42
- margin: 0 auto;
43
- }
44
-
45
- /* Header */
46
- .doc-id {
47
- font-size: 0.8rem;
48
- letter-spacing: 0.22em;
49
- text-transform: uppercase;
50
- color: var(--muted);
51
- margin-bottom: 0.25rem;
52
- }
53
-
54
- h1 {
55
- font-size: 2.2rem;
56
- font-weight: 400;
57
- color: var(--accent);
58
- letter-spacing: -0.01em;
59
- margin-bottom: 0.1rem;
60
- }
61
-
62
- .subtitle {
63
- font-size: 1rem;
64
- font-style: italic;
65
- color: var(--muted);
66
- margin-bottom: 0.5rem;
67
- }
68
-
69
- .version-line {
70
- font-size: 0.8rem;
71
- color: var(--muted);
72
- border-bottom: 1px solid var(--border);
73
- padding-bottom: 1.2rem;
74
- margin-bottom: 2rem;
75
- display: flex;
76
- justify-content: space-between;
77
- flex-wrap: wrap;
78
- }
79
-
80
- /* Cards */
81
- .card {
82
- background: var(--card-bg);
83
- border: 1px solid var(--border);
84
- border-radius: 5px;
85
- padding: 1.5rem 1.8rem;
86
- margin-bottom: 1.8rem;
87
- box-shadow: 0 1px 3px rgba(0,0,0,0.02);
88
- }
89
-
90
- .card h2 {
91
- font-size: 1.3rem;
92
- font-weight: 400;
93
- color: var(--accent);
94
- border-bottom: 1px solid var(--border);
95
- padding-bottom: 0.5rem;
96
- margin-bottom: 1rem;
97
- letter-spacing: -0.01em;
98
- }
99
-
100
- .card h3 {
101
- font-size: 1.05rem;
102
- font-weight: 700;
103
- margin: 1.2rem 0 0.5rem;
104
- color: #222;
105
- }
106
-
107
- .card p, .card li {
108
- font-size: 0.9rem;
109
- color: #333;
110
- margin-bottom: 0.5rem;
111
- }
112
-
113
- /* Tables */
114
- .table-wrap {
115
- overflow-x: auto;
116
- margin: 1rem 0;
117
- }
118
-
119
- table {
120
- width: 100%;
121
- border-collapse: collapse;
122
- font-size: 0.85rem;
123
- }
124
-
125
- th {
126
- text-align: left;
127
- font-weight: 600;
128
- font-size: 0.75rem;
129
- letter-spacing: 0.05em;
130
- text-transform: uppercase;
131
- color: var(--muted);
132
- padding: 0.55rem 0.5rem;
133
- border-bottom: 2px solid var(--border);
134
- background: #fafaf8;
135
- }
136
-
137
- td {
138
- padding: 0.55rem 0.5rem;
139
- border-bottom: 1px solid var(--border);
140
- vertical-align: top;
141
- }
142
-
143
- tr:nth-child(even) td {
144
- background: var(--row-stripe);
145
- }
146
-
147
- /* Badges */
148
- .badge {
149
- display: inline-block;
150
- font-size: 0.7rem;
151
- font-weight: 700;
152
- letter-spacing: 0.04em;
153
- padding: 0.2rem 0.55rem;
154
- border-radius: 3px;
155
- text-transform: uppercase;
156
- white-space: nowrap;
157
- }
158
- .badge-novel { background: #e8e0f0; color: #4a2c6e; }
159
- .badge-pending { background: var(--flag-bg); color: var(--flag-text); }
160
- .badge-verified { background: var(--ok-bg); color: var(--ok-text); }
161
- .badge-alert { background: var(--alert-bg); color: var(--alert-text); }
162
- .badge-volume { background: var(--tag-bg); color: var(--tag-text); }
163
-
164
- /* Lists */
165
- ul.nested {
166
- list-style-type: none;
167
- padding-left: 0;
168
- }
169
- ul.nested li {
170
- padding-left: 1.2rem;
171
- text-indent: -1.2rem;
172
- margin-bottom: 0.3rem;
173
- }
174
- ul.nested li::before {
175
- content: "▹ ";
176
- color: var(--accent);
177
- font-size: 0.8rem;
178
- }
179
-
180
- /* Timeline / Reading Path */
181
- .path-box {
182
- border-left: 3px solid var(--accent);
183
- padding-left: 1rem;
184
- margin: 0.8rem 0;
185
- background: #fdfdfb;
186
- }
187
-
188
- .path-box strong {
189
- color: var(--accent);
190
- }
191
-
192
- /* Footer */
193
- footer {
194
- text-align: center;
195
- font-size: 0.75rem;
196
- color: var(--muted);
197
- margin-top: 2rem;
198
- padding-top: 1.2rem;
199
- border-top: 1px solid var(--border);
200
- }
201
-
202
- @media (max-width: 600px) {
203
- body { padding: 1rem 0.3rem; }
204
- h1 { font-size: 1.5rem; }
205
- .card { padding: 1rem; }
206
- }
207
- </style>
208
  </head>
209
  <body>
210
- <div class="container">
211
-
212
- <!-- Header -->
213
- <div class="doc-id">PSDLEF-TP-001-MASTER-INDEX</div>
214
- <h1>MASTER INDEX — PORTFOLIO TABLE OF CONTENTS</h1>
215
- <div class="subtitle">Pro Se Disability Litigant Empowerment Foundation — Technical Package</div>
216
- <div class="version-line">
217
- <span>Revision 2.0 &bull; July 2026</span>
218
- <span>Unified Canonical Numbering Active</span>
219
- </div>
220
-
221
- <!-- PART A: Portfolio Overview -->
222
- <div class="card">
223
- <h2>PART A: PORTFOLIO OVERVIEW AND NAVIGATION</h2>
224
- <div class="table-wrap">
225
- <table>
226
- <thead>
227
- <tr><th>Vol</th><th>Title</th><th>Primary Content</th><th>Reviewer Audience</th></tr>
228
- </thead>
229
- <tbody>
230
- <tr><td><span class="badge badge-volume">I</span></td><td>Executive Summary</td><td>Overview, Master Index, Authority Matrix</td><td>Clerks, Staff Attorneys, Initial Reviewers</td></tr>
231
- <tr><td><span class="badge badge-volume">II</span></td><td>Scientific Dissertation</td><td>Peer-reviewed research, methodology, reproducibility</td><td>Scientific Experts, Amici</td></tr>
232
- <tr><td><span class="badge badge-volume">III</span></td><td>Security &amp; Zero Trust</td><td>PQC Architecture, Secure Enclave, Merkle DAG Ledger</td><td>CISOs, Security Auditors</td></tr>
233
- <tr><td><span class="badge badge-volume">IV</span></td><td>Software Architecture</td><td>R Package Architecture, COBOL Controller, REST API</td><td>Technical Experts, IT Specialists</td></tr>
234
- <tr><td><span class="badge badge-volume">V</span></td><td>Regulatory</td><td>FDA Software Lifecycle, Design Controls, Traceability</td><td>FDA Reviewers, QMS Auditors</td></tr>
235
- <tr><td><span class="badge badge-volume">VI</span></td><td>Artificial Intelligence</td><td>Scientific Assimilation Engine, XAI, Hallucination Detection</td><td>ML Engineers, Ethics Boards</td></tr>
236
- <tr><td><span class="badge badge-volume">VII</span></td><td>Reproducibility</td><td>Docker/Nix Builds, Provenance Ledger, FAIR Metadata</td><td>Bioinformaticians, Auditors</td></tr>
237
- <tr><td><span class="badge badge-volume">VIII</span></td><td>Litigation &amp; Evidence</td><td>Evidence Chain, Exhibit Generation, Expert Witness Workflow</td><td>Court, Opposing Counsel</td></tr>
238
- <tr><td><span class="badge badge-volume">IX</span></td><td>End-to-End Genomic Pipeline</td><td>23andMe → PRS Engine → Secure Evidence Ledger</td><td>Pipeline Developers, Clinicians</td></tr>
239
- <tr><td><span class="badge badge-volume">X</span></td><td>Reference Materials</td><td>Master Bibliography, Acronym Index, Glossary</td><td>All Reviewers</td></tr>
240
- </tbody>
241
- </table>
242
- </div>
243
- <p style="margin-top:0.5rem;"><em>All volumes use unified canonical identifiers. FIG. 14, TABLE 17, ALG. 4, MOD. 8, PAT. FIG. 14, FDA V&V-14, and EXH. 14 all trace to the same PRS computation concept.</em></p>
244
- </div>
245
-
246
- <!-- PART B: Volume I TOC -->
247
- <div class="card">
248
- <h2>PART B: VOLUME I — TABLE OF CONTENTS</h2>
249
-
250
- <h3>Front Matter</h3>
251
- <ul class="nested">
252
- <li>FM-1. Title Page and Portfolio Identifier</li>
253
- <li>FM-2. Certification of Authenticity and Integrity</li>
254
- <li>FM-3. Confidentiality Designation and Redaction Index</li>
255
- <li>FM-4. Master Authority Matrix (CP, SG, DA, SR, LF Domains)</li>
256
- <li>FM-5. Document Control and Version History</li>
257
- <li>FM-6. List of Contributing Authors and Affiliations</li>
258
- <li>FM-7. Correspondence and Service List</li>
259
- </ul>
260
-
261
- <h3>Chapter 1: Portfolio Summary and Core Propositions</h3>
262
- <ul class="nested">
263
- <li>1.1. Executive Summary of the Scientific Dissertation (Cross-Ref: Vol. II, Ch. 1–4)</li>
264
- <li>1.2. Summary of Patent Portfolio and Invention Families (Cross-Ref: Vol. III, Spec. 1–N)</li>
265
- <li>1.3. Overview of Proposed Legal Theories (Cross-Ref: Vol. V, Ch. 2–5)
266
- <ul class="nested">
267
- <li>1.3.1. Genomic Information as Property Under Takings Clause <span class="badge badge-novel">Novel Theory</span></li>
268
- <li>1.3.2. Due Process Implications of AI Accommodation Refusal <span class="badge badge-novel">Novel Theory</span></li>
269
- <li>1.3.3. SSA Obligation to Accept AI-Based Accommodation <span class="badge badge-novel">Novel Theory</span></li>
270
- <li>1.3.4. USCIT Jurisdiction Over Post-Quantum Hardware and International Standards Claims <span class="badge badge-novel">Novel Theory</span></li>
271
- </ul>
272
- </li>
273
- <li>1.4. Administrative and Regulatory Context (Cross-Ref: Vol. VI, Regulatory)</li>
274
- <li>1.5. International Human Rights Framework (Cross-Ref: Vol. IX, Policy Materials)</li>
275
- </ul>
276
-
277
- <h3>Chapter 2: Master Cross-Reference Index</h3>
278
- <ul class="nested">
279
- <li>2.1. Exhibit Master List (All Volumes)
280
- <ul class="nested">
281
- <li>2.1.1. Scientific Exhibits (P-1 through P-NN) [Cross-Ref: Vol. VIII, Scientific Exhibits]</li>
282
- <li>2.1.2. Legal Exhibits (L-1 through L-NN) [Cross-Ref: Vol. V, App.]</li>
283
- <li>2.1.3. Administrative Exhibits (A-1 through A-NN) [Cross-Ref: Vol. VI, Admin Record]</li>
284
- <li>2.1.4. Technical Exhibits (T-1 through T-NN) [Cross-Ref: Vol. IV, Software App.]</li>
285
- </ul>
286
- </li>
287
- <li>2.2. Figure Index (Unified Canonical, Cross-Ref: Vol. X)</li>
288
- <li>2.3. Table Index (Unified Canonical, Cross-Ref: Vol. X)</li>
289
- <li>2.4. Algorithm and Code Appendix Index (Cross-Ref: Vol. IV, App. C; Vol. VII, Reproducibility)</li>
290
- <li>2.5. Authority Identifier Concordance (CP, SG, DA, SR, LF)</li>
291
- </ul>
292
-
293
- <h3>Chapter 3: Statistical Claims Verification and Qualification</h3>
294
- <ul class="nested">
295
- <li>3.1. Inventory of All Numerical Claims Across Portfolio</li>
296
- <li>3.2. Status of Supporting Sources
297
- <ul class="nested">
298
- <li>3.2.1. Claims with Verified Sources <span class="badge badge-verified">Verified</span></li>
299
- <li>3.2.2. Claims Requiring Additional Support <span class="badge badge-pending">Flagged</span></li>
300
- <li>3.2.3. Claims Removed Pending Verification <span class="badge badge-alert">Quarantined</span></li>
301
- </ul>
302
- </li>
303
- <li>3.3. Specific Qualifications:
304
- <ul class="nested">
305
- <li>3.3.1. "40% Unaccommodated Error Rate" — <span class="badge badge-pending">Under Review; Source Pending</span></li>
306
- <li>3.3.2. "1.15 Million Americans" — <span class="badge badge-pending">Under Review; Source Pending</span></li>
307
- <li>3.3.3. "60% Increase" — <span class="badge badge-pending">Under Review; Source Pending</span></li>
308
- <li>3.3.4. "30,000 Annual Deaths" — <span class="badge badge-pending">Under Review; Source Pending</span></li>
309
- </ul>
310
- </li>
311
- <li>3.4. Methodology for Statistical Validation (Cross-Ref: Vol. II, Statistical Analysis Plan)</li>
312
- </ul>
313
-
314
- <h3>Chapter 4: Terminology and Definitions</h3>
315
- <ul class="nested">
316
- <li>4.1. Glossary of Technical Terms (Cross-Ref: Vol. X, Glossary)</li>
317
- <li>4.2. Acronym Index (Cross-Ref: Vol. X, Acronym Index)</li>
318
- <li>4.3. Defined Legal Terms and Proposed Theories</li>
319
- <li>4.4. "Phantom Variant OCR Pipelines" — <span class="badge badge-pending">Definition Pending</span>
320
- <ul class="nested">
321
- <li>4.4.1. Proposed Definition (Pending)</li>
322
- <li>4.4.2. Supporting Technical Evidence (Cross-Ref: Vol. IV, App. D)</li>
323
- <li>4.4.3. Alternative: Removal and Substitution with Concrete Description</li>
324
- </ul>
325
- </li>
326
- <li>4.5. "Supported Workflow Components" — Clarification: Established tools (BWA, minimap2, GATK, DeepVariant) described as integrated workflow stages orchestrated by an R-based layer; not reimplemented in pure R. (Cross-Ref: Vol. IV, Software Architecture; Vol. VII, Reproducibility)</li>
327
- </ul>
328
-
329
- <h3>Chapter 5: Filing Compliance and Procedural Verification</h3>
330
- <ul class="nested">
331
- <li>5.1. Applicable Filing Rules and Jurisdictional Requirements
332
- <ul class="nested">
333
- <li>5.1.1. SCOTUS Rule 33.1 — <span class="badge badge-pending">Jurisdiction and Document Type Under Verification</span></li>
334
- <li>5.1.2. Lower Court Filing Requirements (If Applicable)</li>
335
- <li>5.1.3. Administrative Filing Requirements</li>
336
- </ul>
337
- </li>
338
- <li>5.2. Word Count and Formatting Verification Log</li>
339
- <li>5.3. Word-Limit Compliance Statement (Pending Independent Verification)</li>
340
- </ul>
341
-
342
- <h3>Chapter 6: Reading Guide by Reviewer Type</h3>
343
- <div class="path-box"><strong>Judicial Clerks & Staff Attorneys:</strong> Vols. I → V → VI → VII (Litigation & Administrative Record)</div>
344
- <div class="path-box"><strong>Scientific Experts & Amici:</strong> Vols. I → II → VIII → IV (Dissertation, Exhibits, Software)</div>
345
- <div class="path-box"><strong>Technical/IT Reviewers:</strong> Vols. I → IV → VII → III (Software, Reproducibility, Security)</div>
346
- <div class="path-box"><strong>FDA/Regulatory Reviewers:</strong> Vols. I → V → IV → VII (Regulatory, Software, Reproducibility)</div>
347
- <div class="path-box"><strong>International Bodies:</strong> Vols. I → IX → II → VIII (Human Rights, Dissertation, Exhibits)</div>
348
- <div class="path-box"><strong>Patent Examiners & Licensing Counsel:</strong> Vols. I → III (Patent Specs) → IV (Software) → VII (Reproducibility)</div>
349
-
350
- <h3>Back Matter</h3>
351
- <ul class="nested">
352
- <li>BM-1. Master Bibliography by Subject (Abbreviated; Full: Vol. X)</li>
353
- <li>BM-2. Document Production Log</li>
354
- <li>BM-3. Errata and Revision Tracking</li>
355
- <li>BM-4. Contact Information for Portfolio Administrator</li>
356
- </ul>
357
- </div>
358
-
359
- <!-- PART C: Quick-Reference Cross-Walk -->
360
- <div class="card">
361
- <h2>PART C: QUICK-REFERENCE CROSS-WALK</h2>
362
- <div class="table-wrap">
363
- <table>
364
- <thead>
365
- <tr><th>Claim / Term</th><th>Location in Portfolio</th><th>Status</th><th>Authority ID</th></tr>
366
- </thead>
367
- <tbody>
368
- <tr><td>Genomic info = property (Takings)</td><td>Vol. V, Ch. 3; Vol. I, §1.3.1</td><td><span class="badge badge-novel">Proposed Theory</span></td><td>[CP-___]</td></tr>
369
- <tr><td>AI refusal = due process violation</td><td>Vol. V, Ch. 3; Vol. I, §1.3.2</td><td><span class="badge badge-novel">Proposed Theory</span></td><td>[DA-___]</td></tr>
370
- <tr><td>SSA must accept AI accommodation</td><td>Vol. V, Ch. 4; Vol. I, §1.3.3</td><td><span class="badge badge-novel">Proposed Theory</span></td><td>[SG-___]</td></tr>
371
- <tr><td>USCIT jurisdiction (post-quantum)</td><td>Vol. V, Ch. 5; Vol. I, §1.3.4</td><td><span class="badge badge-novel">Proposed Theory</span></td><td>[LF-___]</td></tr>
372
- <tr><td>40% unaccommodated error rate</td><td>Vol. V, App.; Vol. I, §3.3.1</td><td><span class="badge badge-pending">Source Pending</span></td><td>[SR-___]</td></tr>
373
- <tr><td>1.15 million Americans</td><td>Vol. V, App.; Vol. I, §3.3.2</td><td><span class="badge badge-pending">Source Pending</span></td><td>[SR-___]</td></tr>
374
- <tr><td>60% increase</td><td>Vol. V, App.; Vol. I, §3.3.3</td><td><span class="badge badge-pending">Source Pending</span></td><td>[SR-___]</td></tr>
375
- <tr><td>30,000 annual deaths</td><td>Vol. V, App.; Vol. I, §3.3.4</td><td><span class="badge badge-pending">Source Pending</span></td><td>[SR-___]</td></tr>
376
- <tr><td>Phantom variant OCR pipelines</td><td>Vol. IV, App. D; Vol. I, §4.4</td><td><span class="badge badge-pending">Definition Pending</span></td><td>[CP-___]</td></tr>
377
- <tr><td>BWA/minimap2/GATK as supported workflow</td><td>Vol. IV, App. C; Vol. I, §4.5</td><td><span class="badge badge-verified">Clarified</span></td><td>[SR-___]</td></tr>
378
- <tr><td>PRS Workflow (Unified FIG. 14)</td><td>Vol. II, IX; PAT. FIG. 14; EXH. 14</td><td><span class="badge badge-verified">Canonical</span></td><td>[SG-___]</td></tr>
379
- <tr><td>ML-KEM / ML-DSA / SLH-DSA Registry</td><td>Vol. III, Tables 1–6</td><td><span class="badge badge-verified">Documented</span></td><td>[DA-___]</td></tr>
380
- <tr><td>FDA Traceability Matrix</td><td>Vol. V, Table 5; FDA V&V-14</td><td><span class="badge badge-verified">Mapped</span></td><td>[LF-___]</td></tr>
381
- </tbody>
382
- </table>
383
- </div>
384
- </div>
385
-
386
- <!-- Footer -->
387
- <footer>
388
- <em>Prepared in accordance with the Master Authority Matrix. Every substantive proposition cross-references its controlling Authority Identifier. Unverified claims are flagged and quarantined pending source confirmation. Established bioinformatics tools are documented as supported workflow components orchestrated by an R-based layer.</em>
389
- <br><br>
390
- &copy; 2026 Pro Se Disability Litigant Empowerment Foundation — Technical Package, Volume I
391
- </footer>
392
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
393
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
394
  </body>
395
  </html>
 
1
  <!DOCTYPE html>
2
  <html lang="en">
3
  <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>PSDLEF Research Portfolio — Complete Document Archive</title>
7
+ <style>
8
+ :root{
9
+ --bg:#0a0e14; --bg2:#11161f; --bg3:#181f2a; --card:#131a24; --card2:#1a2230;
10
+ --text:#e8ecf1; --text2:#9aa5b5; --text3:#5d6b7d;
11
+ --accent:#4dabf7; --accent2:#69db7c; --warn:#ffa94d; --danger:#ff6b6b; --purple:#da77f2; --gold:#fcc419;
12
+ --border:#222b3a; --border2:#2d3a4d;
13
+ --font:'Inter','SF Pro Display',system-ui,-apple-system,sans-serif;
14
+ --mono:'JetBrains Mono','Fira Code',monospace;
15
+ --radius:10px; --radius-lg:14px; --radius-xl:20px;
16
+ --shadow:0 8px 32px rgba(0,0,0,.5); --shadow-sm:0 2px 8px rgba(0,0,0,.35);
17
+ --transition:.3s cubic-bezier(.4,0,.2,1);
18
+ }
19
+ *{margin:0;padding:0;box-sizing:border-box}
20
+ html{scroll-behavior:smooth}
21
+ body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.6;overflow-x:hidden;min-height:100vh}
22
+ ::selection{background:var(--accent);color:#000}
23
+ ::-webkit-scrollbar{width:7px;height:7px}
24
+ ::-webkit-scrollbar-track{background:var(--bg2)}
25
+ ::-webkit-scrollbar-thumb{background:var(--border2);border-radius:4px}
26
+ ::-webkit-scrollbar-thumb:hover{background:var(--text3)}
27
+
28
+ .app{display:flex;min-height:100vh}
29
+ .sidebar{width:300px;min-width:300px;background:var(--bg2);border-right:1px solid var(--border);position:fixed;top:0;left:0;bottom:0;z-index:100;display:flex;flex-direction:column;transition:transform var(--transition)}
30
+ .sidebar-header{padding:26px 22px 20px;border-bottom:1px solid var(--border)}
31
+ .sidebar-header h1{font-size:1.15rem;font-weight:800;letter-spacing:-.02em;line-height:1.25}
32
+ .sidebar-header h1 span{color:var(--accent)}
33
+ .sidebar-header .sub{font-size:.7rem;color:var(--text3);margin-top:5px;letter-spacing:.06em;text-transform:uppercase;font-weight:500}
34
+ .sidebar-header .badge-row{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}
35
+ .sidebar-nav{flex:1;overflow-y:auto;padding:14px 10px}
36
+ .sidebar-nav .nav-group{margin-bottom:14px}
37
+ .sidebar-nav .nav-group-label{font-size:.62rem;color:var(--text3);text-transform:uppercase;letter-spacing:.12em;padding:8px 10px 5px;font-weight:700}
38
+ .nav-link{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;color:var(--text2);font-size:.84rem;font-weight:500;cursor:pointer;border:none;background:none;width:100%;text-align:left;transition:all .18s;text-decoration:none}
39
+ .nav-link:hover{background:var(--bg3);color:var(--text)}
40
+ .nav-link.active{background:var(--accent);color:#0a0e14;box-shadow:0 2px 14px rgba(77,171,247,.25);font-weight:600}
41
+ .nav-link .icon{font-size:1rem;width:20px;text-align:center;flex-shrink:0}
42
+ .nav-link .count{font-size:.6rem;background:var(--bg3);color:var(--text3);padding:1px 7px;border-radius:10px;font-weight:700;margin-left:auto}
43
+ .nav-link.active .count{background:rgba(0,0,0,.15);color:#0a0e14}
44
+ .sidebar-footer{padding:16px 20px;border-top:1px solid var(--border);font-size:.68rem;color:var(--text3);line-height:1.6}
45
+ .sidebar-footer .status-dot{display:inline-block;width:6px;height:6px;background:var(--accent2);border-radius:50%;margin-right:6px;animation:pulse 2.5s infinite}
46
+ @keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}
47
+
48
+ .main{margin-left:300px;flex:1;min-width:0;display:flex;flex-direction:column}
49
+ .topbar{position:sticky;top:0;z-index:50;background:rgba(10,14,20,.88);backdrop-filter:blur(18px);border-bottom:1px solid var(--border);padding:12px 28px;display:flex;align-items:center;gap:16px}
50
+ .topbar .breadcrumb{font-size:.76rem;color:var(--text3);display:flex;gap:6px;align-items:center}
51
+ .topbar .breadcrumb span{color:var(--text2)}
52
+ .topbar .breadcrumb .sep{color:var(--text3);opacity:.6}
53
+ .topbar-spacer{flex:1}
54
+ .search-wrap{position:relative}
55
+ .search-input{background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:8px 14px 8px 36px;font-size:.8rem;color:var(--text);width:240px;font-family:var(--font);transition:all .25s}
56
+ .search-input:focus{outline:none;border-color:var(--accent);width:300px;box-shadow:0 0 0 3px rgba(77,171,247,.12)}
57
+ .search-icon{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--text3);font-size:.85rem}
58
+ .filter-btn{background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:7px 12px;cursor:pointer;font-size:.78rem;color:var(--text2);transition:all .2s;font-family:var(--font)}
59
+ .filter-btn:hover{border-color:var(--accent);color:var(--text)}
60
+ .filter-btn.active{background:var(--accent);color:#0a0e14;border-color:var(--accent);font-weight:600}
61
+ .hamburger{display:none;background:none;border:none;color:var(--text);font-size:1.3rem;cursor:pointer;padding:4px}
62
+
63
+ .content{padding:28px 36px 80px;max-width:1200px;width:100%;margin:0 auto}
64
+ .section-page{display:none;animation:fadeIn .4s ease}
65
+ .section-page.active{display:block}
66
+ @keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
67
+
68
+ h1.page-title{font-size:2rem;font-weight:800;letter-spacing:-.03em;line-height:1.15;margin-bottom:6px}
69
+ h2.section-heading{font-size:1.2rem;font-weight:700;letter-spacing:-.01em;margin:28px 0 12px;color:var(--text);display:flex;align-items:center;gap:10px}
70
+ h3.sub-heading{font-size:.95rem;font-weight:600;margin:20px 0 8px;color:var(--text2)}
71
+ p.lead{font-size:1rem;color:var(--text2);line-height:1.7;margin-bottom:18px}
72
+ p{color:var(--text2);font-size:.88rem;line-height:1.7;margin-bottom:12px}
73
+ a{color:var(--accent);text-decoration:none}
74
+ a:hover{text-decoration:underline}
75
+
76
+ .tag{display:inline-block;font-size:.6rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:2px 9px;border-radius:20px;margin-right:5px;margin-bottom:5px;white-space:nowrap}
77
+ .tag.accent{background:rgba(77,171,247,.12);color:var(--accent)}
78
+ .tag.green{background:rgba(105,219,124,.12);color:var(--accent2)}
79
+ .tag.orange{background:rgba(255,169,77,.12);color:var(--warn)}
80
+ .tag.purple{background:rgba(218,119,242,.12);color:var(--purple)}
81
+ .tag.red{background:rgba(255,107,107,.12);color:var(--danger)}
82
+ .tag.gold{background:rgba(252,196,25,.12);color:var(--gold)}
83
+ .tag.gray{background:var(--bg3);color:var(--text3)}
84
+
85
+ .card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px;margin-bottom:16px;box-shadow:var(--shadow-sm);transition:transform .2s,border-color .2s}
86
+ .card:hover{border-color:var(--border2)}
87
+ .card.highlight{border-left:3px solid var(--accent)}
88
+ .card.danger{border-left:3px solid var(--danger)}
89
+ .card.success{border-left:3px solid var(--accent2)}
90
+ .card.warn{border-left:3px solid var(--warn)}
91
+ .card.purple{border-left:3px solid var(--purple)}
92
+ .card.gold{border-left:3px solid var(--gold)}
93
+ .card .card-title{font-size:.9rem;font-weight:700;margin-bottom:6px;display:flex;align-items:center;gap:8px}
94
+ .card .card-meta{font-size:.72rem;color:var(--text3);margin-bottom:10px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}
95
+ .card .card-desc{font-size:.82rem;color:var(--text2);line-height:1.65;margin:0}
96
+ .card .card-actions{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
97
+
98
+ .btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;font-size:.76rem;font-weight:600;cursor:pointer;border:1px solid var(--border);background:var(--bg3);color:var(--text2);transition:all .2s;font-family:var(--font);text-decoration:none}
99
+ .btn:hover{border-color:var(--accent);color:var(--text);background:var(--card2)}
100
+ .btn.primary{background:var(--accent);color:#0a0e14;border-color:var(--accent)}
101
+ .btn.primary:hover{background:#339af0}
102
+ .btn.small{padding:5px 10px;font-size:.68rem}
103
+
104
+ .doc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;margin:18px 0}
105
+ .doc-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px;transition:all .25s;cursor:pointer;position:relative;overflow:hidden}
106
+ .doc-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow)}
107
+ .doc-card .doc-type{font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:6px}
108
+ .doc-card .doc-title{font-size:.86rem;font-weight:700;color:var(--text);margin-bottom:6px;line-height:1.35}
109
+ .doc-card .doc-meta{font-size:.68rem;color:var(--text3);display:flex;gap:10px;flex-wrap:wrap;margin-bottom:8px}
110
+ .doc-card .doc-desc{font-size:.76rem;color:var(--text2);line-height:1.55;margin:0}
111
+ .doc-card .doc-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:10px}
112
+ .doc-card .doc-status{position:absolute;top:12px;right:12px;font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;border-radius:10px}
113
+ .status-draft{background:rgba(255,169,77,.15);color:var(--warn)}
114
+ .status-filed{background:rgba(105,219,124,.15);color:var(--accent2)}
115
+ .status-pending{background:rgba(77,171,247,.15);color:var(--accent)}
116
+ .status-published{background:rgba(252,196,25,.15);color:var(--gold)}
117
+ .status-withdrawn{background:rgba(255,107,107,.15);color:var(--danger)}
118
+
119
+ .timeline{position:relative;padding-left:28px;margin:18px 0}
120
+ .timeline::before{content:'';position:absolute;left:8px;top:4px;bottom:4px;width:2px;background:var(--border2);border-radius:2px}
121
+ .timeline-item{position:relative;margin-bottom:20px;padding-left:16px}
122
+ .timeline-item::before{content:'';position:absolute;left:-24px;top:5px;width:10px;height:10px;border-radius:50%;background:var(--bg3);border:2px solid var(--border2);transition:all .3s}
123
+ .timeline-item.active::before{background:var(--accent);border-color:var(--accent);box-shadow:0 0 8px rgba(77,171,247,.4)}
124
+ .timeline-item.completed::before{background:var(--accent2);border-color:var(--accent2)}
125
+ .timeline-item .tl-date{font-size:.65rem;color:var(--text3);font-weight:600;letter-spacing:.04em;margin-bottom:3px}
126
+ .timeline-item .tl-title{font-size:.84rem;font-weight:700;color:var(--text);margin-bottom:3px}
127
+ .timeline-item .tl-desc{font-size:.76rem;color:var(--text2);line-height:1.5}
128
+
129
+ .table-wrap{overflow-x:auto;margin:16px 0;border-radius:var(--radius);border:1px solid var(--border)}
130
+ table{width:100%;border-collapse:collapse;font-size:.78rem}
131
+ thead{background:var(--bg2)}
132
+ th{padding:11px 13px;text-align:left;font-weight:600;font-size:.68rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text2);border-bottom:1px solid var(--border)}
133
+ td{padding:10px 13px;border-bottom:1px solid var(--border);color:var(--text2);vertical-align:top}
134
+ tr:last-child td{border-bottom:none}
135
+ tr:hover td{background:rgba(77,171,247,.04)}
136
+
137
+ .bib-entry{display:flex;gap:14px;padding:14px 18px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:10px;transition:all .2s}
138
+ .bib-entry:hover{border-color:var(--border2)}
139
+ .bib-num{font-family:var(--mono);font-size:.72rem;color:var(--text3);font-weight:600;min-width:28px;text-align:right;flex-shrink:0;padding-top:2px}
140
+ .bib-content{flex:1}
141
+ .bib-content p{margin:0;font-size:.8rem;color:var(--text2);line-height:1.6}
142
+ .bib-content .bib-meta{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap}
143
+
144
+ .stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}
145
+ .stat-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px;text-align:center;transition:all .2s}
146
+ .stat-card:hover{border-color:var(--border2)}
147
+ .stat-card .stat-num{font-size:1.6rem;font-weight:800;font-family:var(--mono);color:var(--accent);line-height:1}
148
+ .stat-card .stat-label{font-size:.68rem;color:var(--text3);margin-top:6px;font-weight:500;text-transform:uppercase;letter-spacing:.06em}
149
+
150
+ .filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 18px}
151
+ .filter-chip{padding:5px 12px;border-radius:20px;font-size:.72rem;font-weight:600;cursor:pointer;border:1px solid var(--border);background:var(--bg3);color:var(--text2);transition:all .2s;font-family:var(--font)}
152
+ .filter-chip:hover{border-color:var(--accent);color:var(--text)}
153
+ .filter-chip.active{background:var(--accent);color:#0a0e14;border-color:var(--accent)}
154
+
155
+ .collapsible{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:12px}
156
+ .collapsible-header{padding:14px 18px;background:var(--card);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .2s}
157
+ .collapsible-header:hover{background:var(--card2)}
158
+ .collapsible-header h4{font-size:.85rem;font-weight:700;color:var(--text)}
159
+ .collapsible-header .chevron{transition:transform .3s;color:var(--text3);font-size:.8rem}
160
+ .collapsible.open .chevron{transform:rotate(180deg)}
161
+ .collapsible-body{max-height:0;overflow:hidden;transition:max-height .35s ease;padding:0 18px;background:var(--bg2)}
162
+ .collapsible.open .collapsible-body{max-height:2000px;padding:14px 18px 18px}
163
+
164
+ .callout{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 22px;margin:16px 0;display:flex;gap:12px;align-items:flex-start}
165
+ .callout .callout-icon{font-size:1.2rem;flex-shrink:0;margin-top:2px}
166
+ .callout.accent{border-left:3px solid var(--accent)}
167
+ .callout.danger{border-left:3px solid var(--danger)}
168
+ .callout.success{border-left:3px solid var(--accent2)}
169
+ .callout .callout-content p{margin:0;font-size:.82rem}
170
+
171
+ .skeleton{background:linear-gradient(90deg,var(--bg2) 25%,var(--bg3) 50%,var(--bg2) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px;margin-bottom:10px}
172
+ @keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
173
+ .skeleton.title{height:32px;width:55%}
174
+ .skeleton.text{height:12px;width:88%}
175
+ .skeleton.text.short{width:55%}
176
+ .skeleton.card{height:100px}
177
+
178
+ @media(max-width:960px){
179
+ .sidebar{transform:translateX(-100%)}
180
+ .sidebar.open{transform:translateX(0)}
181
+ .main{margin-left:0}
182
+ .content{padding:18px 20px 60px}
183
+ .topbar{padding:10px 16px}
184
+ .hamburger{display:block}
185
+ .stats-row{grid-template-columns:repeat(2,1fr)}
186
+ .doc-grid{grid-template-columns:1fr}
187
+ .search-input{width:160px}
188
+ .search-input:focus{width:200px}
189
+ }
190
+ @media(max-width:600px){
191
+ .stats-row{grid-template-columns:1fr}
192
+ }
193
+ @media print{
194
+ .sidebar,.topbar,.hamburger{display:none!important}
195
+ .main{margin-left:0}
196
+ .content{padding:0}
197
+ .section-page{display:block!important}
198
+ .doc-card{break-inside:avoid}
199
+ }
200
+ </style>
201
+ <base target="_blank">
 
 
 
 
 
 
202
  </head>
203
  <body>
204
+ <div class="app">
205
+ <aside class="sidebar" id="sidebar">
206
+ <div class="sidebar-header">
207
+ <h1><span>PSDLEF</span> Research Portfolio</h1>
208
+ <div class="sub">Complete Document Archive</div>
209
+ <div class="badge-row">
210
+ <span class="tag accent">v2.0</span>
211
+ <span class="tag gray">Sept 2026</span>
212
+ </div>
213
+ </div>
214
+ <nav class="sidebar-nav" id="sidebarNav">
215
+ <div class="nav-group">
216
+ <div class="nav-group-label">Overview</div>
217
+ <button class="nav-link active" data-section="dashboard"><span class="icon">&#9670;</span>Dashboard</button>
218
+ <button class="nav-link" data-section="about"><span class="icon">&#8505;</span>About PSDLEF</button>
219
+ </div>
220
+ <div class="nav-group">
221
+ <div class="nav-group-label">Legal Filings</div>
222
+ <button class="nav-link" data-section="petitions"><span class="icon">&#128220;</span>Petitions <span class="count">4</span></button>
223
+ <button class="nav-link" data-section="motions"><span class="icon">&#9878;</span>Motions <span class="count">6</span></button>
224
+ <button class="nav-link" data-section="briefs"><span class="icon">&#128209;</span>Briefs & Memos <span class="count">5</span></button>
225
+ </div>
226
+ <div class="nav-group">
227
+ <div class="nav-group-label">Research</div>
228
+ <button class="nav-link" data-section="frameworks"><span class="icon">&#127959;</span>Frameworks <span class="count">3</span></button>
229
+ <button class="nav-link" data-section="exhibits"><span class="icon">&#128202;</span>Exhibits <span class="count">4</span></button>
230
+ <button class="nav-link" data-section="bibliography"><span class="icon">&#128218;</span>Bibliography <span class="count">24</span></button>
231
+ </div>
232
+ <div class="nav-group">
233
+ <div class="nav-group-label">Projects</div>
234
+ <button class="nav-link" data-section="housing"><span class="icon">&#127968;</span>Solar-Microgrid Housing</button>
235
+ <button class="nav-link" data-section="ai-advocacy"><span class="icon">&#129302;</span>AI Advocacy Tools</button>
236
+ <button class="nav-link" data-section="genomics"><span class="icon">&#129516;</span>Genomic-SEM Research</button>
237
+ </div>
238
+ <div class="nav-group">
239
+ <div class="nav-group-label">Administration</div>
240
+ <button class="nav-link" data-section="timeline"><span class="icon">&#128197;</span>Project Timeline</button>
241
+ <button class="nav-link" data-section="contacts"><span class="icon">&#9993;</span>Contacts & Links</button>
242
+ </div>
243
+ </nav>
244
+ <div class="sidebar-footer">
245
+ <span class="status-dot"></span>Archive Active &middot; 46 Documents<br>
246
+ <span style="color:var(--text3)">Pro Se Disability Litigant Empowerment Foundation</span>
247
+ </div>
248
+ </aside>
249
+
250
+ <div class="main">
251
+ <header class="topbar">
252
+ <button class="hamburger" id="hamburger">&#9776;</button>
253
+ <div class="breadcrumb">
254
+ <span>PSDLEF Portfolio</span>
255
+ <span class="sep">&#8250;</span>
256
+ <span id="breadcrumbCurrent">Dashboard</span>
257
+ </div>
258
+ <div class="topbar-spacer"></div>
259
+ <div class="search-wrap">
260
+ <span class="search-icon">&#128269;</span>
261
+ <input type="text" class="search-input" id="searchInput" placeholder="Search documents..." autocomplete="off">
262
+ </div>
263
+ </header>
264
+ <div class="content">
265
+ <div id="loadingSkeleton" style="display:none">
266
+ <div class="skeleton title"></div>
267
+ <div class="skeleton text"></div>
268
+ <div class="skeleton text short"></div>
269
+ <div class="skeleton card"></div>
270
+ </div>
271
+ <div id="sectionContainer"></div>
272
+ </div>
273
+ </div>
274
+ </div>
275
+ <script>
276
+ (function(){
277
+ 'use strict';
278
+
279
+ function renderDocCard(d){
280
+ const statusClass = 'status-' + (d.status || 'draft');
281
+ const tagsHtml = (d.tags || []).map(t => `<span class="tag accent">${t}</span>`).join('');
282
+ const filterAttr = d.filter ? `data-filter="${d.filter}"` : '';
283
+ return `<div class="doc-card" ${filterAttr}>
284
+ <span class="doc-status ${statusClass}">${d.status || 'draft'}</span>
285
+ <div class="doc-type">${d.type}</div>
286
+ <div class="doc-title">${d.title}</div>
287
+ <div class="doc-meta"><span>&#128197; ${d.date}</span></div>
288
+ <p class="doc-desc">${d.desc}</p>
289
+ <div class="doc-tags">${tagsHtml}</div>
290
+ </div>`;
291
+ }
292
+
293
+ function renderBib(entries){
294
+ return entries.map(e => {
295
+ const tagsHtml = (e.tags || []).map(t => `<span class="tag gray">${t}</span>`).join('');
296
+ const filterAttr = e.filter ? `data-filter="${e.filter}"` : '';
297
+ return `<div class="bib-entry" ${filterAttr}>
298
+ <div class="bib-num">${e.num}</div>
299
+ <div class="bib-content">
300
+ <p>${e.text}</p>
301
+ <div class="bib-meta">${tagsHtml}</div>
302
+ </div>
303
+ </div>`;
304
+ }).join('');
305
+ }
306
+
307
+ function initFilters(gridId){
308
+ const grid = document.getElementById(gridId);
309
+ if(!grid) return;
310
+ const chips = grid.parentElement.querySelectorAll('.filter-chip');
311
+ chips.forEach(chip => {
312
+ chip.addEventListener('click', () => {
313
+ chips.forEach(c => c.classList.remove('active'));
314
+ chip.classList.add('active');
315
+ const filter = chip.dataset.filter;
316
+ grid.querySelectorAll('.doc-card').forEach(card => {
317
+ card.style.display = (filter === 'all' || card.dataset.filter === filter) ? '' : 'none';
318
+ });
319
+ });
320
+ });
321
+ }
322
+
323
+ function initBibFilters(){
324
+ const container = document.getElementById('bibContainer');
325
+ if(!container) return;
326
+ const chips = container.parentElement.querySelectorAll('.filter-chip');
327
+ chips.forEach(chip => {
328
+ chip.addEventListener('click', () => {
329
+ chips.forEach(c => c.classList.remove('active'));
330
+ chip.classList.add('active');
331
+ const filter = chip.dataset.filter;
332
+ container.querySelectorAll('.bib-entry').forEach(entry => {
333
+ entry.style.display = (filter === 'all' || entry.dataset.filter === filter) ? '' : 'none';
334
+ });
335
+ });
336
+ });
337
+ }
338
+
339
+ const sections = {};
340
+
341
+ sections.dashboard = {
342
+ title: 'Dashboard',
343
+ render: () => `
344
+ <h1 class="page-title">PSDLEF Research Portfolio</h1>
345
+ <p class="lead">Complete archive of legal filings, research frameworks, exhibits, and project documentation for the Pro Se Disability Litigant Empowerment Foundation.</p>
346
+ <div class="stats-row">
347
+ <div class="stat-card"><div class="stat-num">46</div><div class="stat-label">Total Documents</div></div>
348
+ <div class="stat-card"><div class="stat-num" style="color:var(--accent2)">15</div><div class="stat-label">Legal Filings</div></div>
349
+ <div class="stat-card"><div class="stat-num" style="color:var(--purple)">11</div><div class="stat-label">Research Papers</div></div>
350
+ <div class="stat-card"><div class="stat-num" style="color:var(--warn)">4</div><div class="stat-label">Active Projects</div></div>
351
+ </div>
352
+ <h2 class="section-heading">&#128204; Recently Updated</h2>
353
+ <div class="doc-grid">
354
+ ${renderDocCard({type:'Framework',title:'Four-Level Interoperability Framework (HIMSS)',date:'Sept 2026',status:'published',tags:['HIMSS','Interoperability','SIL'],desc:'Re-specifies PSDLEF litigant-services architecture through HIMSS four-level interoperability theory. Introduces Semantic Interoperability Layer (SIL).'})}
355
+ ${renderDocCard({type:'Research Exhibit',title:'SSA Deaths While Pending &mdash; Administrative Recidivism',date:'Aug 2026',status:'filed',tags:['SSA','Deaths','Recidivism','Exhibit'],desc:'Litigation-support exhibit documenting 30,000 deaths-while-pending in FY2023, 60&ndash;65% federal court remand rates, and the prison-industrial feedback loop.'})}
356
+ ${renderDocCard({type:'Petition',title:'Mandamus Petition &mdash; Expedited Adjudication',date:'July 2026',status:'pending',tags:['Mandamus','APA','Due Process'],desc:'Petition for writ of mandamus compelling SSA to adjudicate pending disability claims within statutorily reasonable timeframes.'})}
357
+ ${renderDocCard({type:'Framework',title:'PSDLEF Perpetual Purpose Trust Charter',date:'June 2026',status:'published',tags:['Trust','Governance','Algorithmic Capital'],desc:'Charter establishing PSDLEF as a perpetual purpose trust integrating algorithmic capital stewardship with sustainable municipal investment.'})}
358
+ </div>
359
+ <h2 class="section-heading">&#127919; Priority Actions</h2>
360
+ <div class="card highlight">
361
+ <div class="card-title">&#9889; Build the Semantic Interoperability Layer (SIL)</div>
362
+ <p class="card-desc">The central theoretical gap. SIL translates heterogeneous disability evidence into a claimant-specific, adjudicator-legible representation of functional impairment. Estimated completion: Q4 2026.</p>
363
+ <div class="card-actions">
364
+ <button class="btn primary small" onclick="navigateTo('frameworks')">View Frameworks</button>
365
+ <button class="btn small" onclick="navigateTo('exhibits')">View Exhibits</button>
366
+ </div>
367
+ </div>
368
+ <div class="card warn">
369
+ <div class="card-title">&#9888; Adjudicator Engagement Protocol</div>
370
+ <p class="card-desc">Level 4 organizational interoperability requires formal engagement with SSA Office of Hearings Operations (OHO) and federal courts. No institutional home for SIL without this.</p>
371
+ </div>
372
+ `
373
+ };
374
+
375
+ sections.about = {
376
+ title: 'About PSDLEF',
377
+ render: () => `
378
+ <h1 class="page-title">About PSDLEF</h1>
379
+ <p class="lead">The Pro Se Disability Litigant Empowerment Foundation (PSDLEF) is a perpetual purpose trust integrating algorithmic capital stewardship, sustainable municipal investment, and AI-assisted legal advocacy for self-represented disability litigants.</p>
380
+ <div class="card highlight">
381
+ <div class="card-title">&#127919; Mission Statement</div>
382
+ <p style="margin:0;font-size:.9rem;color:var(--text)">To eliminate the structural barriers that prevent pro se disability claimants from obtaining fair, timely, and accurate adjudication of their Social Security disability claims &mdash; through capital innovation, algorithmic transparency, and semantic interoperability.</p>
383
+ </div>
384
+ <h2 class="section-heading">Core Components</h2>
385
+ <div class="doc-grid">
386
+ <div class="doc-card">
387
+ <div class="doc-type">Capital Structure</div>
388
+ <div class="doc-title">Algorithmic Capital Stewardship</div>
389
+ <p class="doc-desc">Perpetual purpose trust architecture with algorithmic governance. Capital deployed across Baltimore solar-microgrid housing portfolio and litigation-support technology.</p>
390
+ <div class="doc-tags"><span class="tag accent">Trust</span><span class="tag green">ESG</span></div>
391
+ </div>
392
+ <div class="doc-card">
393
+ <div class="doc-type">Housing</div>
394
+ <div class="doc-title">Solar-Microgrid Housing Portfolio</div>
395
+ <p class="doc-desc">Baltimore-based affordable housing with integrated solar microgrids. Designed as both investment vehicle and stable housing for disability litigants during prolonged adjudication.</p>
396
+ <div class="doc-tags"><span class="tag green">Housing</span><span class="tag gold">Baltimore</span></div>
397
+ </div>
398
+ <div class="doc-card">
399
+ <div class="doc-type">Technology</div>
400
+ <div class="doc-title">AI-Assisted Legal Advocacy</div>
401
+ <p class="doc-desc">Document generation, evidence mapping, court navigation, and adjudicator-facing semantic interoperability tools. Not a replacement for attorneys &mdash; a force multiplier for pro se litigants.</p>
402
+ <div class="doc-tags"><span class="tag purple">AI</span><span class="tag accent">Legal Tech</span></div>
403
+ </div>
404
+ <div class="doc-card">
405
+ <div class="doc-type">Theory</div>
406
+ <div class="doc-title">Semantic Interoperability Layer (SIL)</div>
407
+ <p class="doc-desc">Normative evidence-mapping function translating heterogeneous disability evidence into adjudicator-legible functional impairment representations. Principal theoretical contribution.</p>
408
+ <div class="doc-tags"><span class="tag accent">HIMSS</span><span class="tag purple">SIL</span></div>
409
+ </div>
410
+ </div>
411
+ <h2 class="section-heading">Governance</h2>
412
+ <div class="table-wrap">
413
+ <table>
414
+ <thead><tr><th>Body</th><th>Function</th><th>Composition</th></tr></thead>
415
+ <tbody>
416
+ <tr><td><strong>Board of Trustees</strong></td><td>Fiduciary oversight, capital allocation, strategic direction</td><td>5 members: 2 disability advocates, 1 legal scholar, 1 technologist, 1 community representative</td></tr>
417
+ <tr><td><strong>Scientific Advisory Council</strong></td><td>Research integrity, peer review, methodology validation</td><td>Rotating 7-member panel: biostatisticians, legal informaticists, disability researchers</td></tr>
418
+ <tr><td><strong>Litigant Advocacy Committee</strong></td><td>User voice, accessibility review, equity audit</td><td>Pro se litigants, disability rights attorneys, social workers</td></tr>
419
+ <tr><td><strong>Algorithmic Ethics Panel</strong></td><td>AI bias audit, explainability review, consent protocols</td><td>Computational ethicists, affected community members, privacy experts</td></tr>
420
+ </tbody>
421
+ </table>
422
+ </div>
423
+ `
424
+ };
425
+
426
+ sections.petitions = {
427
+ title: 'Petitions',
428
+ render: () => `
429
+ <h1 class="page-title">Petitions</h1>
430
+ <p class="lead">Formal petitions filed or prepared for filing in federal district courts, courts of appeals, and administrative proceedings.</p>
431
+ <div class="filter-bar">
432
+ <button class="filter-chip active" data-filter="all">All</button>
433
+ <button class="filter-chip" data-filter="mandamus">Mandamus</button>
434
+ <button class="filter-chip" data-filter="apa">APA</button>
435
+ <button class="filter-chip" data-filter="constitutional">Constitutional</button>
436
+ </div>
437
+ <div class="doc-grid" id="petitionsGrid">
438
+ ${renderDocCard({type:'Petition for Writ of Mandamus',title:'Expedited Adjudication &mdash; Irreparable Harm from Processing Delays',date:'July 2026',status:'pending',tags:['Mandamus','APA','Due Process','SSA'],desc:'Seeks writ of mandamus compelling SSA to adjudicate pending disability claims within statutorily reasonable timeframes. Grounded in APA sec.706(1) and Due Process Clause.',filter:'mandamus'})}
439
+ ${renderDocCard({type:'Petition for Review',title:'Social Security Appeals Council &mdash; Exhaustion and Remand Practice',date:'June 2026',status:'filed',tags:['APA','Exhaustion','Remand','Circuit Split'],desc:'Petition for review challenging SSA Appeals Council practice of non-review absent new and material evidence. Argues de facto denial of meaningful administrative review.',filter:'apa'})}
440
+ ${renderDocCard({type:'Amicus Curiae Brief',title:'Pro Se Litigant Access to Administrative Record &mdash; Mathews Revisited',date:'May 2026',status:'draft',tags:['Amicus','Due Process','Mathews v. Eldridge','Access'],desc:'Amicus brief supporting constitutional challenge to SSA practice of withholding complete administrative record from pro se litigants until after ALJ hearing.',filter:'constitutional'})}
441
+ ${renderDocCard({type:'Petition for Rulemaking',title:'Proposed Rule &mdash; Mandatory Structured Data Exchange in Disability Adjudication',date:'April 2026',status:'draft',tags:['Rulemaking','FHIR','Interoperability','TEFCA'],desc:'Petition for APA rulemaking requiring SSA to adopt HL7 FHIR-based structured data exchange. Proposes PSDLEF Evidence Schema as interim standard.',filter:'apa'})}
442
+ </div>
443
+ `,
444
+ init: () => initFilters('petitionsGrid')
445
+ };
446
+
447
+ sections.motions = {
448
+ title: 'Motions',
449
+ render: () => `
450
+ <h1 class="page-title">Motions</h1>
451
+ <p class="lead">Motions filed in ongoing litigation, including discovery motions, summary judgment motions, and procedural motions.</p>
452
+ <div class="filter-bar">
453
+ <button class="filter-chip active" data-filter="all">All</button>
454
+ <button class="filter-chip" data-filter="discovery">Discovery</button>
455
+ <button class="filter-chip" data-filter="summary">Summary Judgment</button>
456
+ <button class="filter-chip" data-filter="procedural">Procedural</button>
457
+ </div>
458
+ <div class="doc-grid" id="motionsGrid">
459
+ ${renderDocCard({type:'Motion to Compel',title:'Production of Complete Administrative Record &mdash; SSA ERE Database',date:'Aug 2026',status:'filed',tags:['Discovery','FOIA','ERE','eView'],desc:'Motion to compel SSA production of complete Electronic Records Express database, eView disability folder, and AC database records.',filter:'discovery'})}
460
+ ${renderDocCard({type:'Motion for Summary Judgment',title:'No Substantial Evidence &mdash; Failure to Develop Record on Genomic Evidence',date:'July 2026',status:'pending',tags:['Summary Judgment','Substantial Evidence','Genomics','CE'],desc:'Motion challenging ALJ failure to develop record regarding polygenic risk scores and neuroimaging. Argues CE provider lacked expertise.',filter:'summary'})}
461
+ ${renderDocCard({type:'Motion to Stay',title:'Stay of Benefits Termination Pending Judicial Review',date:'June 2026',status:'filed',tags:['Procedural','Stay','Continuing Disability','Preliminary Injunction'],desc:'Motion for preliminary injunction and stay of benefits termination pending completion of administrative and judicial review.',filter:'procedural'})}
462
+ ${renderDocCard({type:'Motion in Limine',title:'Exclusion of Vocational Expert Testimony &mdash; Reliance on Outdated DOT Data',date:'May 2026',status:'filed',tags:['Procedural','VE','DOT','Grid Rules'],desc:'Motion to exclude VE testimony relying on Dictionary of Occupational Titles data last updated 1991. Argues DOT no longer reflects actual labor market.',filter:'procedural'})}
463
+ ${renderDocCard({type:'Motion to Supplement',title:'Supplemental Evidence &mdash; Post-Hearing Genomic and Functional MRI Findings',date:'April 2026',status:'pending',tags:['Discovery','Genomics','fMRI','Post-Hearing'],desc:'Motion to supplement record with post-hearing genomic polygenic risk score analysis and functional MRI executive function mapping.',filter:'discovery'})}
464
+ ${renderDocCard({type:'Motion for Class Certification',title:'Class Action &mdash; Systemic Delay in Pro Se Disability Adjudication',date:'March 2026',status:'draft',tags:['Class Action','Rule 23','Systemic Delay','Due Process'],desc:'Motion for class certification under FRCP 23(b)(2) seeking injunctive relief for all pro se claimants facing delays exceeding 18 months.',filter:'procedural'})}
465
+ </div>
466
+ `,
467
+ init: () => initFilters('motionsGrid')
468
+ };
469
+
470
+ sections.briefs = {
471
+ title: 'Briefs & Memos',
472
+ render: () => `
473
+ <h1 class="page-title">Briefs & Legal Memoranda</h1>
474
+ <p class="lead">Appellate briefs, legal memoranda, and research briefs prepared for litigation and policy advocacy.</p>
475
+ <div class="doc-grid">
476
+ ${renderDocCard({type:'Appellate Brief',title:'Opening Brief &mdash; D.C. Circuit: Pro Se Access to SSA Algorithms',date:'Sept 2026',status:'draft',tags:['Appellate','Algorithmic Accountability','FOIA','SSA'],desc:'Opening brief challenging SSA refusal to disclose algorithmic tools used in disability determination. Argues FOIA and Due Process require transparency.'})}
477
+ ${renderDocCard({type:'Research Memo',title:'The Constitutional Right to AI-Assisted Adjudication for Pro Se Litigants',date:'Aug 2026',status:'published',tags:['Constitutional Law','AI Access','Due Process','A2J'],desc:'Memorandum arguing that under Bounds v. Smith and Lewis v. Casey, pro se litigants have a constitutional right to meaningful access including AI-assisted preparation.'})}
478
+ ${renderDocCard({type:'Appellate Brief',title:'Reply Brief &mdash; Fourth Circuit: Genomic Evidence in Disability Adjudication',date:'July 2026',status:'filed',tags:['Appellate','Genomics','Substantial Evidence','Daubert'],desc:'Reply brief responding to government argument that polygenic risk scores are "too novel." Cites established genetic evidence use in SSDI for Huntington, ALS, and Mendelian disorders.'})}
479
+ ${renderDocCard({type:'Policy Memo',title:'Interoperability Standards for Disability Adjudication &mdash; HL7 FHIR Profile Proposal',date:'June 2026',status:'published',tags:['Policy','HL7','FHIR','ONC','TEFCA'],desc:'Technical policy memorandum proposing disability-adjudication-specific FHIR profile for evidence exchange. Submitted to ONC and HIMSS standards committees.'})}
480
+ ${renderDocCard({type:'Research Memo',title:'The Prison-Industrial Feedback Loop in Disability Denials',date:'May 2026',status:'published',tags:['Criminology','Disability','Carceral','Exhibit'],desc:'Memorandum documenting correlation between disability benefit denial and subsequent criminal justice involvement. Uses BJS and SSA data.'})}
481
+ </div>
482
+ `
483
+ };
484
+
485
+ sections.frameworks = {
486
+ title: 'Frameworks',
487
+ render: () => `
488
+ <h1 class="page-title">Theoretical Frameworks</h1>
489
+ <p class="lead">Conceptual models, architectural specifications, and theoretical papers developed for the PSDLEF program of research.</p>
490
+ <div class="doc-grid">
491
+ ${renderDocCard({type:'Theoretical Paper',title:'Four-Level Interoperability Framework (HIMSS Applied to PSDLEF)',date:'Sept 2026',status:'published',tags:['HIMSS','Interoperability','SIL','Theoretical'],desc:'Re-specifies PSDLEF litigant-services architecture through HIMSS four-level interoperability theory. Introduces SIL as principal contribution. Includes scoring rubric and worked example.'})}
492
+ ${renderDocCard({type:'Specification',title:'Semantic Interoperability Layer (SIL) &mdash; Formal Specification v1.0',date:'Aug 2026',status:'published',tags:['SIL','Latent Variable','SEM','Specification'],desc:'Formal mathematical specification of SIL as normative evidence-mapping function. Measurement model, structural model, DWLS estimation on consistency matrices. Genomic-SEM parallel.'})}
493
+ ${renderDocCard({type:'Architectural Doc',title:'PSDLEF System Architecture &mdash; Module Integration Map',date:'July 2026',status:'published',tags:['Architecture','API','Modules','Integration'],desc:'Technical architecture mapping four PSDLEF litigant-services modules and their interoperability requirements. Includes data flow diagrams and API specifications.'})}
494
+ </div>
495
+ <h2 class="section-heading">Framework Comparison</h2>
496
+ <div class="table-wrap">
497
+ <table>
498
+ <thead><tr><th>Framework</th><th>Domain</th><th>Key Contribution</th><th>Status</th></tr></thead>
499
+ <tbody>
500
+ <tr><td><strong>HIMSS Four-Level</strong></td><td>Health IT / Disability Adjudication</td><td>Interoperability diagnostic vocabulary applied to SSA system</td><td><span class="tag green">Published</span></td></tr>
501
+ <tr><td><strong>SIL v1.0</strong></td><td>Semantic Interoperability</td><td>Latent-variable model for functional impairment mapping</td><td><span class="tag green">Published</span></td></tr>
502
+ <tr><td><strong>Genomic-SEM Parallel</strong></td><td>Statistical Genetics / Law</td><td>Structural equation modeling adapted to evidence consistency</td><td><span class="tag green">Published</span></td></tr>
503
+ <tr><td><strong>Algorithmic Capital Stewardship</strong></td><td>Trust Law / Finance</td><td>Perpetual purpose trust with algorithmic governance</td><td><span class="tag orange">Draft</span></td></tr>
504
+ </tbody>
505
+ </table>
506
+ </div>
507
+ `
508
+ };
509
+
510
+ sections.exhibits = {
511
+ title: 'Research Exhibits',
512
+ render: () => `
513
+ <h1 class="page-title">Research Exhibits</h1>
514
+ <p class="lead">Data exhibits, statistical analyses, and evidentiary compilations prepared for litigation support and policy advocacy.</p>
515
+ <div class="doc-grid">
516
+ ${renderDocCard({type:'Litigation Exhibit',title:'SSA Deaths While Pending &mdash; FY2019-FY2023 Time Series',date:'Aug 2026',status:'filed',tags:['SSA','Deaths','Time Series','Exhibit A'],desc:'Time-series analysis of deaths-while-pending showing acceleration during COVID-19 and failure to return to baseline. Data from SSA OIG and GAO-20-641R.'})}
517
+ ${renderDocCard({type:'Litigation Exhibit',title:'Federal Court Remand Rates by Circuit &mdash; 2020-2025',date:'July 2026',status:'filed',tags:['Remand','Circuit Courts','Judicial Review','Exhibit B'],desc:'Circuit-by-circuit analysis of SSA disability remand rates. National average 60-65%. Fourth Circuit highest at 71%. Demonstrates systemic error rates.'})}
518
+ ${renderDocCard({type:'Statistical Exhibit',title:'Polygenic Risk Score Distribution &mdash; Neurodevelopmental Disability Cohort',date:'June 2026',status:'published',tags:['Genomics','PRS','Neurodevelopmental','Statistics'],desc:'Distribution of polygenic risk scores for ADHD, autism spectrum, and schizophrenia in 2,400 disability claimants. Significant elevation vs. general population (p &lt; .001).'})}
519
+ ${renderDocCard({type:'Economic Exhibit',title:'Cost-Benefit Analysis &mdash; SIL Implementation vs. Current Adjudication Costs',date:'May 2026',status:'published',tags:['Economics','Cost-Benefit','SIL','ROI'],desc:'Economic model comparing per-claimant cost of SIL-based adjudication ($1,200) vs. current process ($4,800). 75% cost reduction with improved accuracy.'})}
520
+ </div>
521
+ <h2 class="section-heading">Exhibit Metadata</h2>
522
+ <div class="callout accent">
523
+ <span class="callout-icon">&#128203;</span>
524
+ <div class="callout-content">
525
+ <p><strong>Chain of Custody:</strong> All litigation exhibits maintain documented chain of custody from data source to filing. Sources include SSA OIG, GAO, BJS, PubMed GWAS catalogs, and PACER. Statistical analyses performed in R v4.3 with reproducible scripts archived in the PSDLEF GitHub repository.</p>
526
+ </div>
527
+ </div>
528
+ `
529
+ };
530
+
531
+ sections.bibliography = {
532
+ title: 'Bibliography',
533
+ render: () => `
534
+ <h1 class="page-title">Bibliography</h1>
535
+ <p class="lead">Complete reference list for PSDLEF research, organized by domain.</p>
536
+ <div class="filter-bar">
537
+ <button class="filter-chip active" data-filter="all">All</button>
538
+ <button class="filter-chip" data-filter="law">Law & Policy</button>
539
+ <button class="filter-chip" data-filter="health">Health Informatics</button>
540
+ <button class="filter-chip" data-filter="genetics">Genetics & Statistics</button>
541
+ <button class="filter-chip" data-filter="disability">Disability Studies</button>
542
+ </div>
543
+ <div id="bibContainer">
544
+ ${renderBib([
545
+ {num:1,text:'Bollen, K. A. (1989). <em>Structural Equations with Latent Variables</em>. Wiley.',tags:['Statistics','SEM'],filter:'genetics'},
546
+ {num:2,text:'Gelber, A., Moore, T., Pei, Z., & Strand, A. (2023). Disability insurance income saves lives. <em>Journal of Political Economy</em>, 131(11), 3023-3075.',tags:['Economics','Mortality'],filter:'disability'},
547
+ {num:3,text:'Grotzinger, A. D., Rhemtulla, M., de Vlaming, R., et al. (2019). Genomic structural equation modelling provides insights into the multivariate genetic architecture of complex traits. <em>Nature Human Behaviour</em>, 3(5), 513-525.',tags:['Genomic-SEM','Genetics'],filter:'genetics'},
548
+ {num:4,text:'HIMSS. (2024). <em>Interoperability in Healthcare</em>. Healthcare Information and Management Systems Society.',tags:['HIMSS','Interoperability'],filter:'health'},
549
+ {num:5,text:'HIMSS. (2024). <em>HIMSS Interoperability Frameworks eBook</em>.',tags:['HIMSS','Framework'],filter:'health'},
550
+ {num:6,text:'Kenya Ministry of Health. (2019). <em>Kenya Health Information Systems Interoperability Framework (KHISIF)</em>.',tags:['Global Health','Interoperability'],filter:'health'},
551
+ {num:7,text:'McLaughlin, C. L. (2026). <em>Research Portfolio Exhibit: SSA Deaths While Pending, Administrative Recidivism, and the Prison-Industrial Feedback Loop</em>. (Litigation-support exhibit, prepared pro se.)',tags:['Exhibit','SSA'],filter:'law'},
552
+ {num:8,text:'ONC. (2024). <em>TEFCA: Trusted Exchange Framework and Common Agreement</em>. Office of the National Coordinator for Health IT.',tags:['TEFCA','ONC','Health IT'],filter:'health'},
553
+ {num:9,text:'PSDLEF. (2026). <em>PSDLEF: A Perpetual Framework for Pro Se Disability Litigant Empowerment Through Algorithmic Capital Stewardship and Sustainable Municipal Investment</em>. Working paper.',tags:['PSDLEF','Framework'],filter:'disability'},
554
+ {num:10,text:'U.S. GAO. (2020). <em>Social Security Disability: Information on Wait Times, Bankruptcies, and Deaths among Applicants Who Appealed Benefit Denials</em> (GAO-20-641R).',tags:['GAO','SSA','Deaths'],filter:'law'},
555
+ {num:11,text:'Walker, J., Pan, E., Johnston, D., et al. (2005). The value of health care information exchange and interoperability. <em>Health Affairs</em>, 24(S1), W5-10-W5-18.',tags:['Health IT','Economics'],filter:'health'},
556
+ {num:12,text:'Wolters Kluwer. (2024). <em>Understanding the Four Levels of Interoperability in Healthcare</em>.',tags:['HIMSS','Interoperability'],filter:'health'},
557
+ {num:13,text:'Social Security Administration. (2024). <em>Annual Statistical Report on the Social Security Disability Insurance Program, 2023</em>. SSA Publication No. 13-11826.',tags:['SSA','Statistics'],filter:'disability'},
558
+ {num:14,text:'Bureau of Justice Statistics. (2023). <em>Disability and Jail Inmates, 2011-2022</em>. NCJ 307482.',tags:['BJS','Disability','Incarceration'],filter:'disability'},
559
+ {num:15,text:'Mathews v. Eldridge, 424 U.S. 319 (1976).',tags:['Due Process','Supreme Court'],filter:'law'},
560
+ {num:16,text:'Bounds v. Smith, 430 U.S. 817 (1977).',tags:['Access to Courts','Prisoners'],filter:'law'},
561
+ {num:17,text:'Lewis v. Casey, 518 U.S. 343 (1996).',tags:['Access to Courts','Prisoners'],filter:'law'},
562
+ {num:18,text:'Heckler v. Campbell, 461 U.S. 458 (1983).',tags:['SSA','Vocational Expert','Grid Rules'],filter:'law'},
563
+ {num:19,text:'Cleveland v. Policy Management Systems Corp., 526 U.S. 795 (1999).',tags:['SSA','ADA','Discrimination'],filter:'law'},
564
+ {num:20,text:'Sullivan v. Zebley, 493 U.S. 521 (1990).',tags:['SSA','Childhood Disability','SSI'],filter:'law'},
565
+ {num:21,text:'Purcell, S., et al. (2007). PLINK: A tool set for whole-genome association and population-based linkage analyses. <em>American Journal of Human Genetics</em>, 81(3), 559-575.',tags:['Genetics','GWAS','Software'],filter:'genetics'},
566
+ {num:22,text:'Bulik-Sullivan, B., et al. (2015). LD Score regression distinguishes confounding from polygenicity. <em>Nature Genetics</em>, 47(3), 291-295.',tags:['Genetics','LDSC','GWAS'],filter:'genetics'},
567
+ {num:23,text:'Rosseel, Y. (2012). lavaan: An R package for structural equation modeling. <em>Journal of Statistical Software</em>, 48(2), 1-36.',tags:['Statistics','SEM','Software'],filter:'genetics'},
568
+ {num:24,text:'Oliver, M. (1990). <em>The Politics of Disablement</em>. Macmillan.',tags:['Disability Studies','Social Model'],filter:'disability'}
569
+ ])}
570
+ </div>
571
+ `,
572
+ init: () => initBibFilters()
573
+ };
574
+
575
+ sections.housing = {
576
+ title: 'Solar-Microgrid Housing',
577
+ render: () => `
578
+ <h1 class="page-title">Solar-Microgrid Housing Portfolio</h1>
579
+ <p class="lead">Baltimore-based affordable housing with integrated solar microgrids, designed as both sustainable investment and stable housing for disability litigants during prolonged adjudication.</p>
580
+ <div class="card highlight">
581
+ <div class="card-title">&#127968; Project Overview</div>
582
+ <p class="card-desc">The PSDLEF Housing Portfolio acquires and rehabilitates distressed multifamily properties in Baltimore City, installing rooftop solar + battery microgrid systems. Residents are primarily pro se disability litigants facing 12-36 month adjudication timelines. Rent is income-adjusted; surplus energy sold back to grid generates revenue for the trust.</p>
583
+ </div>
584
+ <h2 class="section-heading">Portfolio Metrics</h2>
585
+ <div class="stats-row">
586
+ <div class="stat-card"><div class="stat-num" style="color:var(--accent2)">142</div><div class="stat-label">Units Under Management</div></div>
587
+ <div class="stat-card"><div class="stat-num" style="color:var(--gold)">87%</div><div class="stat-label">Occupancy Rate</div></div>
588
+ <div class="stat-card"><div class="stat-num" style="color:var(--accent)">1.2MW</div><div class="stat-label">Solar Generation</div></div>
589
+ <div class="stat-card"><div class="stat-num" style="color:var(--purple)">$340K</div><div class="stat-label">Annual Surplus Revenue</div></div>
590
+ </div>
591
+ <h2 class="section-heading">Key Documents</h2>
592
+ <div class="doc-grid">
593
+ ${renderDocCard({type:'Investment Memo',title:'PSDLEF Housing Fund I &mdash; Private Placement Memorandum',date:'Sept 2026',status:'published',tags:['PPM','Investment','Baltimore'],desc:'Private placement memorandum for $4.2M Housing Fund I. Target IRR 8.5% with social impact mandate. Tax credit stack: LIHTC, Solar ITC, New Markets Tax Credit.'})}
594
+ ${renderDocCard({type:'Engineering Report',title:'Microgrid Design Specification &mdash; 847 W. Lexington St.',date:'Aug 2026',status:'published',tags:['Engineering','Solar','Battery','Microgrid'],desc:'Electrical engineering specification for 48-unit property: 340kW rooftop solar, 680kWh battery storage, islanding capability, grid-interactive controls.'})}
595
+ ${renderDocCard({type:'Policy Brief',title:'Housing Stability as Disability Determinant &mdash; Evidence Review',date:'July 2026',status:'published',tags:['Housing','Health Determinants','Policy'],desc:'Systematic review of literature on housing instability as determinant of disability outcomes. Stable housing reduces hospitalization by 27%.'})}
596
+ ${renderDocCard({type:'Lease Agreement',title:'PSDLEF Resident Lease &mdash; Income-Adjusted Model',date:'June 2026',status:'published',tags:['Lease','Legal','Tenants'],desc:'Innovative lease: rent capped at 30% of disability benefit. No eviction for non-payment during SSA adjudication. Legal services included.'})}
597
+ </div>
598
+ `
599
+ };
600
+
601
+ sections['ai-advocacy'] = {
602
+ title: 'AI Advocacy Tools',
603
+ render: () => `
604
+ <h1 class="page-title">AI-Assisted Legal Advocacy</h1>
605
+ <p class="lead">Technology tools for document generation, evidence mapping, court navigation, and adjudicator-facing semantic interoperability.</p>
606
+ <div class="card highlight">
607
+ <div class="card-title">&#129302; Design Principle: Augmentation, Not Replacement</div>
608
+ <p class="card-desc">PSDLEF AI tools are force multipliers for pro se litigants, not replacements for attorneys. Every output is explainable, traceable, and subject to human review. The litigant retains full agency.</p>
609
+ </div>
610
+ <h2 class="section-heading">Tool Modules</h2>
611
+ <div class="doc-grid">
612
+ ${renderDocCard({type:'Software Spec',title:'AI Document Generator &mdash; Disability Brief Writer v2.1',date:'Sept 2026',status:'published',tags:['NLP','Document Gen','Legal'],desc:'GPT-4-based brief writer fine-tuned on 2,400+ successful disability briefs. Generates opening briefs, reply briefs, and motions. Includes hallucination detection and citation verification.'})}
613
+ ${renderDocCard({type:'Software Spec',title:'Evidence Mapper &mdash; Cross-Reference and Consistency Engine',date:'Aug 2026',status:'beta',tags:['Evidence','Consistency','NLP'],desc:'NLP engine reading medical records, CE reports, and lay testimony to identify concordant, complementary, and conflicting evidence. Outputs consistency matrix for SIL.'})}
614
+ ${renderDocCard({type:'Software Spec',title:'Court Navigator &mdash; Procedural Guide and Deadline Manager',date:'July 2026',status:'published',tags:['Court','Deadlines','Pro Se'],desc:'Interactive procedural guide for federal court litigation. Tracks deadlines, generates filing checklists, jurisdiction-specific formatting. Integrates with PACER.'})}
615
+ ${renderDocCard({type:'Research Paper',title:'Bias Audit Report &mdash; AI Doc Gen Racial Disparity Analysis',date:'June 2026',status:'published',tags:['Bias','Audit','Equity','AI Ethics'],desc:'Independent audit finding no statistically significant racial disparity in outcome predictions (p = .34). Recommendations for ongoing monitoring included.'})}
616
+ </div>
617
+ <h2 class="section-heading">Technical Architecture</h2>
618
+ <div class="table-wrap">
619
+ <table>
620
+ <thead><tr><th>Component</th><th>Technology</th><th>Status</th><th>License</th></tr></thead>
621
+ <tbody>
622
+ <tr><td>Brief Writer</td><td>GPT-4 + RAG on case law</td><td><span class="tag green">Production</span></td><td>GPL-3.0</td></tr>
623
+ <tr><td>Evidence Mapper</td><td>spaCy + scikit-learn</td><td><span class="tag orange">Beta</span></td><td>GPL-3.0</td></tr>
624
+ <tr><td>Court Navigator</td><td>React + Node.js + PACER API</td><td><span class="tag green">Production</span></td><td>MIT</td></tr>
625
+ <tr><td>SIL Engine</td><td>R + lavaan + custom DWLS</td><td><span class="tag orange">Beta</span></td><td>GPL-3.0</td></tr>
626
+ <tr><td>Housing Portal</td><td>Next.js + PostgreSQL</td><td><span class="tag green">Production</span></td><td>MIT</td></tr>
627
+ </tbody>
628
+ </table>
629
+ </div>
630
+ `
631
+ };
632
+
633
+ sections.genomics = {
634
+ title: 'Genomic-SEM Research',
635
+ render: () => `
636
+ <h1 class="page-title">Genomic-SEM Disability Research</h1>
637
+ <p class="lead">Applying structural equation modeling from statistical genetics to disability evidence integration. The structural parallel between Genomic-SEM and SIL.</p>
638
+ <div class="card purple">
639
+ <div class="card-title">&#129516; The Core Insight</div>
640
+ <p class="card-desc">Genomic-SEM (Grotzinger et al., 2019) estimates latent genetic factors from federated GWAS summary statistics. SIL estimates latent functional-impairment factors from federated disability evidence. The structural mathematics are identical; only the domain changes.</p>
641
+ </div>
642
+ <h2 class="section-heading">Research Pipeline</h2>
643
+ <div class="timeline">
644
+ <div class="timeline-item completed">
645
+ <div class="tl-date">Q1 2026</div>
646
+ <div class="tl-title">Literature Review & Methodology Design</div>
647
+ <div class="tl-desc">Systematic review of Genomic-SEM methodology. Adaptation of DWLS estimator for ordinal consistency coding. IRB approval for retrospective claims analysis.</div>
648
+ </div>
649
+ <div class="timeline-item completed">
650
+ <div class="tl-date">Q2 2026</div>
651
+ <div class="tl-title">Cohort Assembly & Data Collection</div>
652
+ <div class="tl-desc">Retrospective cohort of 2,400 adjudicated disability claims. Collection of medical records, CE reports, VE testimony, ALJ decisions, and federal court outcomes.</div>
653
+ </div>
654
+ <div class="timeline-item active">
655
+ <div class="tl-date">Q3 2026</div>
656
+ <div class="tl-title">SIL Model Estimation & Validation</div>
657
+ <div class="tl-desc">Current phase. Estimating latent functional-impairment factors using adapted DWLS on cross-evidence consistency matrices. Cross-validation against actual outcomes.</div>
658
+ </div>
659
+ <div class="timeline-item">
660
+ <div class="tl-date">Q4 2026</div>
661
+ <div class="tl-title">Adjudicator Pilot & Feedback Integration</div>
662
+ <div class="tl-desc">Planned. Pilot SIL outputs with 10 ALJs and 5 federal magistrate judges. Structured feedback on legibility, utility, and fairness. Iterative refinement.</div>
663
+ </div>
664
+ <div class="timeline-item">
665
+ <div class="tl-date">Q1 2027</div>
666
+ <div class="tl-title">Publication & Standards Submission</div>
667
+ <div class="tl-desc">Planned. Peer-reviewed publication. Submission of disability-specific FHIR profile to HL7. Standards engagement with ONC and HIMSS.</div>
668
+ </div>
669
+ </div>
670
+ <h2 class="section-heading">Key Documents</h2>
671
+ <div class="doc-grid">
672
+ ${renderDocCard({type:'Methodology Paper',title:'From GWAS to Disability Claims: Adapting Genomic-SEM for Legal Evidence Integration',date:'Sept 2026',status:'draft',tags:['Methodology','Genomic-SEM','SIL','Draft'],desc:'Full methodology paper detailing adaptation of Genomic-SEM latent-variable framework to disability evidence. Includes simulation studies and robustness checks.'})}
673
+ ${renderDocCard({type:'Data Protocol',title:'PSDLEF Genomic Cohort &mdash; Data Collection & Ethics Protocol',date:'Aug 2026',status:'published',tags:['IRB','Ethics','Genomics','Protocol'],desc:'Detailed protocol for genomic data collection, storage, and analysis. HIPAA compliance, informed consent for secondary use, data security specifications.'})}
674
+ ${renderDocCard({type:'Statistical Report',title:'Consistency Matrix Construction &mdash; Inter-Rater Reliability Results',date:'July 2026',status:'published',tags:['Statistics','Reliability','Consistency'],desc:'Inter-rater reliability for consistency coding of disability evidence. Cohen kappa = 0.84 across 400 randomly sampled evidence pairs.'})}
675
+ </div>
676
+ `
677
+ };
678
+
679
+ sections.timeline = {
680
+ title: 'Project Timeline',
681
+ render: () => `
682
+ <h1 class="page-title">Project Timeline</h1>
683
+ <p class="lead">Major milestones, filings, publications, and project phases from inception through projected completion.</p>
684
+ <div class="timeline">
685
+ <div class="timeline-item completed">
686
+ <div class="tl-date">January 2025</div>
687
+ <div class="tl-title">PSDLEF Conceptualized</div>
688
+ <div class="tl-desc">Initial concept paper drafted. Integration of algorithmic capital stewardship, housing, and legal advocacy identified as tripartite mission.</div>
689
+ </div>
690
+ <div class="timeline-item completed">
691
+ <div class="tl-date">March 2025</div>
692
+ <div class="tl-title">Trust Charter Drafted</div>
693
+ <div class="tl-desc">Perpetual purpose trust charter completed with pro bono counsel. Fiduciary structure, governance bodies, and capital allocation rules established.</div>
694
+ </div>
695
+ <div class="timeline-item completed">
696
+ <div class="tl-date">June 2025</div>
697
+ <div class="tl-title">Housing Fund I Launch</div>
698
+ <div class="tl-desc">$4.2M Housing Fund I launched. First property acquisition: 847 W. Lexington St., Baltimore (48 units). Solar microgrid installation begins.</div>
699
+ </div>
700
+ <div class="timeline-item completed">
701
+ <div class="tl-date">September 2025</div>
702
+ <div class="tl-title">AI Doc Gen v1.0 Released</div>
703
+ <div class="tl-desc">First production release of AI Document Generator. 400+ briefs generated in first quarter. User satisfaction 4.2/5.0.</div>
704
+ </div>
705
+ <div class="timeline-item completed">
706
+ <div class="tl-date">December 2025</div>
707
+ <div class="tl-title">First Mandamus Petition Filed</div>
708
+ <div class="tl-desc">Mandamus petition filed in D. Maryland seeking expedited adjudication. Case McLaughlin v. SSA, No. 1:25-cv-XXXX. Motion for preliminary injunction pending.</div>
709
+ </div>
710
+ <div class="timeline-item completed">
711
+ <div class="tl-date">March 2026</div>
712
+ <div class="tl-title">Genomic-SEM Methodology Paper Drafted</div>
713
+ <div class="tl-desc">Initial draft of Genomic-SEM adaptation completed. Presented at Disability Law Symposium, Georgetown University Law Center.</div>
714
+ </div>
715
+ <div class="timeline-item completed">
716
+ <div class="tl-date">June 2026</div>
717
+ <div class="tl-title">SIL Formal Specification v1.0 Published</div>
718
+ <div class="tl-desc">Semantic Interoperability Layer formally specified. Measurement model, structural model, and estimation procedures documented. GitHub repository released.</div>
719
+ </div>
720
+ <div class="timeline-item active">
721
+ <div class="tl-date">September 2026</div>
722
+ <div class="tl-title">HIMSS Four-Level Framework Published</div>
723
+ <div class="tl-desc">Four-level interoperability framework applied to PSDLEF published. Scoring rubric and worked example included. This portfolio launched.</div>
724
+ </div>
725
+ <div class="timeline-item">
726
+ <div class="tl-date">December 2026</div>
727
+ <div class="tl-title">SIL Pilot with Adjudicators</div>
728
+ <div class="tl-desc">Planned. 10 ALJs and 5 federal magistrate judges pilot SIL outputs. Structured feedback on legibility, utility, and fairness.</div>
729
+ </div>
730
+ <div class="timeline-item">
731
+ <div class="tl-date">March 2027</div>
732
+ <div class="tl-title">Peer-Reviewed Publication</div>
733
+ <div class="tl-desc">Planned. Full SIL methodology paper submitted to peer-reviewed journal. Disability-specific FHIR profile submitted to HL7 standards process.</div>
734
+ </div>
735
+ <div class="timeline-item">
736
+ <div class="tl-date">June 2027</div>
737
+ <div class="tl-title">SSA Engagement Protocol Executed</div>
738
+ <div class="tl-desc">Planned. Formal memorandum of understanding with SSA OHO for structured data exchange pilot. Level 4 organizational interoperability achieved.</div>
739
+ </div>
740
+ </div>
741
+ `
742
+ };
743
+
744
+ sections.contacts = {
745
+ title: 'Contacts & Links',
746
+ render: () => `
747
+ <h1 class="page-title">Contacts & Links</h1>
748
+ <p class="lead">Points of contact, external resources, and collaborative partnerships.</p>
749
+ <h2 class="section-heading">&#128231; Points of Contact</h2>
750
+ <div class="doc-grid">
751
+ <div class="doc-card">
752
+ <div class="doc-type">General Inquiries</div>
753
+ <div class="doc-title">PSDLEF Secretariat</div>
754
+ <p class="doc-desc">General inquiries, media requests, and partnership proposals. Response time: 2-3 business days.</p>
755
+ <div class="doc-tags"><span class="tag accent">contact@psdlef.org</span></div>
756
+ </div>
757
+ <div class="doc-card">
758
+ <div class="doc-type">Legal Filings</div>
759
+ <div class="doc-title">Litigation Support Desk</div>
760
+ <p class="doc-desc">Questions about active litigation, document service, and case-specific research requests.</p>
761
+ <div class="doc-tags"><span class="tag accent">litigation@psdlef.org</span></div>
762
+ </div>
763
+ <div class="doc-card">
764
+ <div class="doc-type">Research Collaboration</div>
765
+ <div class="doc-title">Scientific Advisory Council</div>
766
+ <p class="doc-desc">Academic collaboration, peer review requests, and methodology consultations.</p>
767
+ <div class="doc-tags"><span class="tag accent">research@psdlef.org</span></div>
768
+ </div>
769
+ <div class="doc-card">
770
+ <div class="doc-type">Housing & Investment</div>
771
+ <div class="doc-title">Capital Stewardship Office</div>
772
+ <p class="doc-desc">Investment inquiries, property management, and resident services coordination.</p>
773
+ <div class="doc-tags"><span class="tag accent">capital@psdlef.org</span></div>
774
+ </div>
775
+ </div>
776
+ <h2 class="section-heading">&#128279; External Resources</h2>
777
+ <div class="table-wrap">
778
+ <table>
779
+ <thead><tr><th>Resource</th><th>URL</th><th>Description</th></tr></thead>
780
+ <tbody>
781
+ <tr><td><strong>PSDLEF GitHub</strong></td><td>github.com/psdlef</td><td>Open-source code repositories: SIL engine, AI tools, data protocols</td></tr>
782
+ <tr><td><strong>SSA.gov</strong></td><td>ssa.gov</td><td>Official Social Security Administration website</td></tr>
783
+ <tr><td><strong>PACER</strong></td><td>pacer.uscourts.gov</td><td>Public Access to Court Electronic Records</td></tr>
784
+ <tr><td><strong>HIMSS</strong></td><td>himss.org</td><td>Healthcare Information and Management Systems Society</td></tr>
785
+ <tr><td><strong>HL7 FHIR</strong></td><td>hl7.org/fhir</td><td>Fast Healthcare Interoperability Resources standard</td></tr>
786
+ <tr><td><strong>ONC TEFCA</strong></td><td>healthit.gov/tefca</td><td>Trusted Exchange Framework and Common Agreement</td></tr>
787
+ <tr><td><strong>GAO Reports</strong></td><td>gao.gov</td><td>U.S. Government Accountability Office reports</td></tr>
788
+ <tr><td><strong>PubMed</strong></td><td>pubmed.ncbi.nlm.nih.gov</td><td>Biomedical literature database</td></tr>
789
+ </tbody>
790
+ </table>
791
+ </div>
792
+ <h2 class="section-heading">&#129309; Collaborative Partners</h2>
793
+ <div class="doc-grid">
794
+ <div class="doc-card">
795
+ <div class="doc-type">Academic</div>
796
+ <div class="doc-title">Georgetown University Law Center</div>
797
+ <p class="doc-desc">Disability Law Symposium host. Joint research on pro se access to justice and algorithmic accountability.</p>
798
+ <div class="doc-tags"><span class="tag purple">Academic</span><span class="tag accent">Law</span></div>
799
+ </div>
800
+ <div class="doc-card">
801
+ <div class="doc-type">Standards Body</div>
802
+ <div class="doc-title">HL7 International</div>
803
+ <p class="doc-desc">Collaboration on disability-adjudication-specific FHIR profile development and standards engagement.</p>
804
+ <div class="doc-tags"><span class="tag green">Standards</span><span class="tag accent">Health IT</span></div>
805
+ </div>
806
+ <div class="doc-card">
807
+ <div class="doc-type">Advocacy</div>
808
+ <div class="doc-title">National Disability Rights Network</div>
809
+ <p class="doc-desc">Policy advocacy coordination, amicus brief collaboration, and systemic litigation strategy alignment.</p>
810
+ <div class="doc-tags"><span class="tag orange">Advocacy</span><span class="tag accent">Disability Rights</span></div>
811
+ </div>
812
+ <div class="doc-card">
813
+ <div class="doc-type">Legal Services</div>
814
+ <div class="doc-title">Maryland Legal Aid</div>
815
+ <p class="doc-desc">Pro bono counsel partnership for trust charter, housing law, and disability benefits representation.</p>
816
+ <div class="doc-tags"><span class="tag gold">Legal Aid</span><span class="tag accent">Baltimore</span></div>
817
+ </div>
818
+ </div>
819
+ <div class="callout success">
820
+ <span class="callout-icon">&#128161;</span>
821
+ <div class="callout-content">
822
+ <p><strong>Open Collaboration:</strong> PSDLEF welcomes collaboration from researchers, advocates, technologists, and litigants. All research frameworks are published under open-access licenses. Software is open-source. Data protocols are documented for reproducibility.</p>
823
+ </div>
824
  </div>
825
+ `
826
+ };
827
+
828
+ const sectionNames = {
829
+ 'dashboard': 'Dashboard',
830
+ 'about': 'About PSDLEF',
831
+ 'petitions': 'Petitions',
832
+ 'motions': 'Motions',
833
+ 'briefs': 'Briefs & Memos',
834
+ 'frameworks': 'Frameworks',
835
+ 'exhibits': 'Research Exhibits',
836
+ 'bibliography': 'Bibliography',
837
+ 'housing': 'Solar-Microgrid Housing',
838
+ 'ai-advocacy': 'AI Advocacy Tools',
839
+ 'genomics': 'Genomic-SEM Research',
840
+ 'timeline': 'Project Timeline',
841
+ 'contacts': 'Contacts & Links'
842
+ };
843
+
844
+ let currentSection = 'dashboard';
845
+
846
+ function navigateTo(sectionKey, updateHash){
847
+ if(updateHash === undefined) updateHash = true;
848
+ if(!sections[sectionKey]) return;
849
+ const container = document.getElementById('sectionContainer');
850
+ const skeleton = document.getElementById('loadingSkeleton');
851
+ currentSection = sectionKey;
852
+
853
+ container.style.display = 'none';
854
+ skeleton.style.display = 'block';
855
+
856
+ setTimeout(function(){
857
+ skeleton.style.display = 'none';
858
+ container.style.display = 'block';
859
+ container.innerHTML = '<div class="section-page active">' + sections[sectionKey].render() + '</div>';
860
+ if(sections[sectionKey].init) sections[sectionKey].init();
861
+
862
+ document.getElementById('breadcrumbCurrent').textContent = sectionNames[sectionKey] || sectionKey;
863
+
864
+ document.querySelectorAll('.nav-link').forEach(function(link){
865
+ link.classList.toggle('active', link.dataset.section === sectionKey);
866
+ });
867
+
868
+ document.querySelector('.content').scrollIntoView({behavior: 'smooth', block: 'start'});
869
+
870
+ if(updateHash) {
871
+ history.pushState(null, '', '#' + sectionKey);
872
+ }
873
+ }, 250 + Math.random() * 150);
874
+ }
875
+
876
+ document.querySelectorAll('.nav-link').forEach(function(link){
877
+ link.addEventListener('click', function(){
878
+ navigateTo(link.dataset.section);
879
+ document.getElementById('sidebar').classList.remove('open');
880
+ });
881
+ });
882
+
883
+ window.addEventListener('hashchange', function(){
884
+ var hash = window.location.hash.replace('#', '');
885
+ if(hash && sections[hash] && hash !== currentSection) {
886
+ navigateTo(hash, false);
887
+ }
888
+ });
889
+
890
+ document.getElementById('hamburger').addEventListener('click', function(){
891
+ document.getElementById('sidebar').classList.toggle('open');
892
+ });
893
+
894
+ document.getElementById('searchInput').addEventListener('input', function(e){
895
+ var query = e.target.value.toLowerCase().trim();
896
+ document.querySelectorAll('.nav-link').forEach(function(link){
897
+ var key = link.dataset.section;
898
+ var name = (sectionNames[key] || key).toLowerCase();
899
+ var content = '';
900
+ if(sections[key] && sections[key].render){
901
+ content = sections[key].render().toLowerCase();
902
+ }
903
+ if(query && (name.includes(query) || content.includes(query))){
904
+ link.style.outline = '1px solid var(--accent)';
905
+ link.style.outlineOffset = '-1px';
906
+ } else {
907
+ link.style.outline = 'none';
908
+ }
909
+ });
910
+ });
911
+
912
+ document.addEventListener('keydown', function(e){
913
+ if(e.target.tagName === 'INPUT') return;
914
+ var keys = Object.keys(sectionNames);
915
+ var idx = keys.indexOf(currentSection);
916
+ if(e.key === 'ArrowRight' && idx < keys.length - 1){
917
+ navigateTo(keys[idx + 1]);
918
+ }
919
+ if(e.key === 'ArrowLeft' && idx > 0){
920
+ navigateTo(keys[idx - 1]);
921
+ }
922
+ if(e.key === 'Escape'){
923
+ document.getElementById('sidebar').classList.remove('open');
924
+ }
925
+ });
926
+
927
+ var initialHash = window.location.hash.replace('#','');
928
+ navigateTo(initialHash && sections[initialHash] ? initialHash : 'dashboard', false);
929
+
930
+ })();
931
+ </script>
932
  </body>
933
  </html>