|
| 1 | +<h2>Mars Genesis Dashboard: Split Colonies + Timeline + Code</h2> |
| 2 | +<p class="subtitle">Layout A + Timeline from C. Four zones: crisis banner, split colonies, timeline, code footer.</p> |
| 3 | + |
| 4 | +<div class="mockup"> |
| 5 | + <div class="mockup-header" style="font-size:13px">Full Dashboard — Turn 5/12, Year 2046: Solar Particle Event</div> |
| 6 | + <div class="mockup-body" style="font-family:'SF Mono',Menlo,monospace;font-size:11px;line-height:1.5;background:#0d0d1a;padding:0;border-radius:0 0 8px 8px"> |
| 7 | + |
| 8 | + <!-- TOP BAR --> |
| 9 | + <div style="display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#111;border-bottom:1px solid #333"> |
| 10 | + <div style="font-weight:bold;color:#e2e8f0;font-size:13px">MARS GENESIS <span style="color:#666;font-weight:normal;font-size:11px">v3</span></div> |
| 11 | + <div style="display:flex;gap:16px;font-size:10px;color:#888"> |
| 12 | + <span>Turn <span style="color:#e2e8f0">5</span>/12</span> |
| 13 | + <span>Year <span style="color:#e2e8f0">2046</span></span> |
| 14 | + <span>Seed <span style="color:#e2e8f0">950</span></span> |
| 15 | + <span style="color:#6ee7b7">● Running</span> |
| 16 | + </div> |
| 17 | + </div> |
| 18 | + |
| 19 | + <!-- CRISIS BANNER --> |
| 20 | + <div style="padding:6px 12px;background:linear-gradient(90deg,#1e1b4b,#312e81);border-bottom:1px solid #4338ca;text-align:center"> |
| 21 | + <span style="color:#c4b5fd;font-size:11px;font-weight:bold">⚡ SOLAR PARTICLE EVENT</span> |
| 22 | + <span style="color:#888;font-size:10px;margin-left:8px">CME impact in 4 hours. No magnetosphere. Unshielded dose: 100-500 mSv.</span> |
| 23 | + </div> |
| 24 | + |
| 25 | + <!-- SPLIT COLONIES --> |
| 26 | + <div style="display:flex;gap:1px;background:#222"> |
| 27 | + |
| 28 | + <!-- LEFT: VISIONARY --> |
| 29 | + <div style="flex:1;padding:10px;background:#0d0d1a"> |
| 30 | + <div style="display:flex;justify-content:space-between;align-items:center;margin-bottom:8px"> |
| 31 | + <div><span style="color:#a78bfa;font-weight:bold;font-size:12px">ARES HORIZON</span> <span style="color:#777;font-size:10px">Aria Chen</span></div> |
| 32 | + <div style="font-size:9px;color:#a78bfa;background:#1e1b4b;padding:2px 6px;border-radius:3px">VISIONARY</div> |
| 33 | + </div> |
| 34 | + |
| 35 | + <div style="display:flex;gap:6px;margin-bottom:8px;font-size:10px"> |
| 36 | + <div style="flex:1;background:#111;padding:4px 6px;border-radius:3px"> |
| 37 | + <div style="color:#888;font-size:9px">POP</div> |
| 38 | + <div style="color:#e2e8f0;font-weight:bold">287</div> |
| 39 | + <div style="height:2px;background:#333;border-radius:1px;margin-top:2px"><div style="height:100%;width:72%;background:#a78bfa;border-radius:1px"></div></div> |
| 40 | + </div> |
| 41 | + <div style="flex:1;background:#111;padding:4px 6px;border-radius:3px"> |
| 42 | + <div style="color:#888;font-size:9px">MORALE</div> |
| 43 | + <div style="color:#fbbf24;font-weight:bold">71%</div> |
| 44 | + <div style="height:2px;background:#333;border-radius:1px;margin-top:2px"><div style="height:100%;width:71%;background:#fbbf24;border-radius:1px"></div></div> |
| 45 | + </div> |
| 46 | + <div style="flex:1;background:#111;padding:4px 6px;border-radius:3px"> |
| 47 | + <div style="color:#888;font-size:9px">FOOD</div> |
| 48 | + <div style="color:#6ee7b7;font-weight:bold">14.2mo</div> |
| 49 | + <div style="height:2px;background:#333;border-radius:1px;margin-top:2px"><div style="height:100%;width:60%;background:#6ee7b7;border-radius:1px"></div></div> |
| 50 | + </div> |
| 51 | + <div style="flex:1;background:#111;padding:4px 6px;border-radius:3px"> |
| 52 | + <div style="color:#888;font-size:9px">DEATHS</div> |
| 53 | + <div style="color:#f87171;font-weight:bold">8</div> |
| 54 | + </div> |
| 55 | + </div> |
| 56 | + |
| 57 | + <div style="background:#111827;border:1px solid #1e293b;border-radius:4px;padding:6px;margin-bottom:5px;font-size:10px"> |
| 58 | + <div style="color:#f9a8d4;font-weight:bold">🏥 Dr. Idris Cruz <span style="color:#666;font-weight:normal">Medical</span></div> |
| 59 | + <div style="color:#ccc;margin-top:2px">"12 colonists in perimeter modules exposed. Triage protocol needed."</div> |
| 60 | + <div style="color:#888;font-size:9px;margin-top:2px">O:0.71 C:0.65 — risks: [critical] radiation exposure</div> |
| 61 | + </div> |
| 62 | + |
| 63 | + <div style="background:#0c1a0c;border:1px solid #166534;border-radius:4px;padding:5px;margin-bottom:5px;font-size:10px"> |
| 64 | + <span style="color:#6ee7b7">🔧</span> <span style="color:#a78bfa;font-weight:bold">radiation_triage_protocol</span> <span style="color:#666">(compose, 0.82)</span> |
| 65 | + </div> |
| 66 | + |
| 67 | + <div style="background:#1e1b4b;border:1px solid #4338ca;border-radius:4px;padding:6px;font-size:10px"> |
| 68 | + <div style="color:#c4b5fd;font-weight:bold">⚡ DECISION</div> |
| 69 | + <div style="color:#e2e8f0;margin-top:2px">"Accept casualties. Expansion cannot stop."</div> |
| 70 | + <div style="color:#fbbf24;font-size:9px;margin-top:3px">risky_failure — 12 colonists received 200+ mSv</div> |
| 71 | + </div> |
| 72 | + </div> |
| 73 | + |
| 74 | + <!-- RIGHT: ENGINEER --> |
| 75 | + <div style="flex:1;padding:10px;background:#0d0d1a"> |
| 76 | + <div style="display:flex;justify-content:space-between;align-items:center;margin-bottom:8px"> |
| 77 | + <div><span style="color:#60a5fa;font-weight:bold;font-size:12px">MERIDIAN BASE</span> <span style="color:#777;font-size:10px">Dietrich Voss</span></div> |
| 78 | + <div style="font-size:9px;color:#60a5fa;background:#172554;padding:2px 6px;border-radius:3px">ENGINEER</div> |
| 79 | + </div> |
| 80 | + |
| 81 | + <div style="display:flex;gap:6px;margin-bottom:8px;font-size:10px"> |
| 82 | + <div style="flex:1;background:#111;padding:4px 6px;border-radius:3px"> |
| 83 | + <div style="color:#888;font-size:9px">POP</div> |
| 84 | + <div style="color:#e2e8f0;font-weight:bold">142</div> |
| 85 | + <div style="height:2px;background:#333;border-radius:1px;margin-top:2px"><div style="height:100%;width:36%;background:#60a5fa;border-radius:1px"></div></div> |
| 86 | + </div> |
| 87 | + <div style="flex:1;background:#111;padding:4px 6px;border-radius:3px"> |
| 88 | + <div style="color:#888;font-size:9px">MORALE</div> |
| 89 | + <div style="color:#6ee7b7;font-weight:bold">83%</div> |
| 90 | + <div style="height:2px;background:#333;border-radius:1px;margin-top:2px"><div style="height:100%;width:83%;background:#6ee7b7;border-radius:1px"></div></div> |
| 91 | + </div> |
| 92 | + <div style="flex:1;background:#111;padding:4px 6px;border-radius:3px"> |
| 93 | + <div style="color:#888;font-size:9px">FOOD</div> |
| 94 | + <div style="color:#6ee7b7;font-weight:bold">22.1mo</div> |
| 95 | + <div style="height:2px;background:#333;border-radius:1px;margin-top:2px"><div style="height:100%;width:90%;background:#6ee7b7;border-radius:1px"></div></div> |
| 96 | + </div> |
| 97 | + <div style="flex:1;background:#111;padding:4px 6px;border-radius:3px"> |
| 98 | + <div style="color:#888;font-size:9px">DEATHS</div> |
| 99 | + <div style="color:#6ee7b7;font-weight:bold">0</div> |
| 100 | + </div> |
| 101 | + </div> |
| 102 | + |
| 103 | + <div style="background:#111827;border:1px solid #1e293b;border-radius:4px;padding:6px;margin-bottom:5px;font-size:10px"> |
| 104 | + <div style="color:#f9a8d4;font-weight:bold">🏥 Dr. Yuki Tanaka <span style="color:#666;font-weight:normal">Medical</span></div> |
| 105 | + <div style="color:#ccc;margin-top:2px">"All personnel in reinforced core. Zero exposure. Protocol 5C activated."</div> |
| 106 | + <div style="color:#888;font-size:9px;margin-top:2px">O:0.38 C:0.88 — risks: [low] confinement stress</div> |
| 107 | + </div> |
| 108 | + |
| 109 | + <div style="background:#0c1a0c;border:1px solid #166534;border-radius:4px;padding:5px;margin-bottom:5px;font-size:10px"> |
| 110 | + <span style="color:#6ee7b7">🔧</span> <span style="color:#60a5fa;font-weight:bold">radiation_dose_calculator</span> <span style="color:#666">(sandbox, 0.94)</span> |
| 111 | + </div> |
| 112 | + |
| 113 | + <div style="background:#172554;border:1px solid #1d4ed8;border-radius:4px;padding:6px;font-size:10px"> |
| 114 | + <div style="color:#93c5fd;font-weight:bold">⚡ DECISION</div> |
| 115 | + <div style="color:#e2e8f0;margin-top:2px">"All personnel to reinforced core. Zero exposure."</div> |
| 116 | + <div style="color:#6ee7b7;font-size:9px;margin-top:3px">conservative_success — 0 colonists exposed</div> |
| 117 | + </div> |
| 118 | + </div> |
| 119 | + </div> |
| 120 | + |
| 121 | + <!-- TIMELINE --> |
| 122 | + <div style="border-top:2px solid #333;padding:8px 12px;background:#080810"> |
| 123 | + <div style="color:#888;font-size:10px;font-weight:bold;margin-bottom:6px">TIMELINE <span style="color:#555;font-weight:normal">— scroll horizontally</span></div> |
| 124 | + <div style="display:flex;gap:3px;overflow-x:auto;padding-bottom:4px"> |
| 125 | + <div style="min-width:100px;padding:4px 6px;background:#111;border-left:2px solid #a78bfa;border-radius:0 3px 3px 0"> |
| 126 | + <div style="color:#a78bfa;font-size:9px;font-weight:bold">2035 Aria</div> |
| 127 | + <div style="color:#ccc;font-size:9px">Valles Marineris</div> |
| 128 | + <div style="color:#6ee7b7;font-size:8px">🔧 site_risk_scorer</div> |
| 129 | + <div style="color:#6ee7b7;font-size:8px">✓ risky_success</div> |
| 130 | + </div> |
| 131 | + <div style="min-width:100px;padding:4px 6px;background:#111;border-left:2px solid #60a5fa;border-radius:0 3px 3px 0"> |
| 132 | + <div style="color:#60a5fa;font-size:9px;font-weight:bold">2035 Dietrich</div> |
| 133 | + <div style="color:#ccc;font-size:9px">Arcadia Planitia</div> |
| 134 | + <div style="color:#6ee7b7;font-size:8px">🔧 load_analyzer</div> |
| 135 | + <div style="color:#6ee7b7;font-size:8px">✓ conservative</div> |
| 136 | + </div> |
| 137 | + <div style="min-width:100px;padding:4px 6px;background:#111;border-left:2px solid #a78bfa;border-radius:0 3px 3px 0"> |
| 138 | + <div style="color:#a78bfa;font-size:9px;font-weight:bold">2040 Aria</div> |
| 139 | + <div style="color:#ccc;font-size:9px">Bioremediation</div> |
| 140 | + <div style="color:#fbbf24;font-size:8px">⚠ risky_failure</div> |
| 141 | + </div> |
| 142 | + <div style="min-width:100px;padding:4px 6px;background:#111;border-left:2px solid #60a5fa;border-radius:0 3px 3px 0"> |
| 143 | + <div style="color:#60a5fa;font-size:9px;font-weight:bold">2040 Dietrich</div> |
| 144 | + <div style="color:#ccc;font-size:9px">Hydroponics</div> |
| 145 | + <div style="color:#6ee7b7;font-size:8px">✓ conservative</div> |
| 146 | + </div> |
| 147 | + <div style="min-width:110px;padding:4px 6px;background:#1e1b4b;border:1px solid #4338ca;border-radius:3px"> |
| 148 | + <div style="color:#c4b5fd;font-size:9px;font-weight:bold">2046 Aria ◄</div> |
| 149 | + <div style="color:#f87171;font-size:9px">12 exposed</div> |
| 150 | + <div style="color:#fbbf24;font-size:8px">⚠ risky_failure</div> |
| 151 | + </div> |
| 152 | + <div style="min-width:110px;padding:4px 6px;background:#172554;border:1px solid #1d4ed8;border-radius:3px"> |
| 153 | + <div style="color:#93c5fd;font-size:9px;font-weight:bold">2046 Dietrich ◄</div> |
| 154 | + <div style="color:#6ee7b7;font-size:9px">0 exposed</div> |
| 155 | + <div style="color:#6ee7b7;font-size:8px">✓ conservative</div> |
| 156 | + </div> |
| 157 | + <div style="min-width:80px;padding:4px 6px;background:#0a0a14;border-radius:3px;opacity:0.4"> |
| 158 | + <div style="color:#555;font-size:9px">2049...</div> |
| 159 | + <div style="color:#444;font-size:8px">pending</div> |
| 160 | + </div> |
| 161 | + </div> |
| 162 | + </div> |
| 163 | + |
| 164 | + <!-- CODE + CITATIONS FOOTER --> |
| 165 | + <div style="border-top:1px solid #333;padding:6px 12px;background:#050510;display:flex;gap:12px"> |
| 166 | + <div style="flex:2;font-size:10px"> |
| 167 | + <div style="color:#555;font-size:9px;margin-bottom:3px;font-weight:bold">CODE EXECUTING</div> |
| 168 | + <code style="color:#c084fc">const</code> <code style="color:#d4d4d4">outcome = classifyOutcome(decision,</code> <code style="color:#fbbf24">"expansion"</code><code style="color:#d4d4d4">, 0.40, colony, rng);</code><br> |
| 169 | + <code style="color:#c084fc">kernel</code><code style="color:#d4d4d4">.applyDrift(leader.hexaco,</code> <code style="color:#f87171">"risky_failure"</code><code style="color:#d4d4d4">, 3);</code><br> |
| 170 | + <code style="color:#555">// Tanaka: O 0.68→0.71 (leader pull) → 0.67 (failure penalty)</code> |
| 171 | + </div> |
| 172 | + <div style="flex:1;font-size:9px;border-left:1px solid #222;padding-left:10px"> |
| 173 | + <div style="color:#555;font-size:9px;margin-bottom:3px;font-weight:bold">CITATIONS</div> |
| 174 | + <div style="color:#6ee7b7">📚 Cucinotta et al. 2010</div> |
| 175 | + <div style="color:#666;font-size:8px">DOI: 10.1667/RR2397.1</div> |
| 176 | + <div style="color:#6ee7b7;margin-top:2px">📚 Acuña et al. 1999</div> |
| 177 | + <div style="color:#666;font-size:8px">Mars magnetosphere loss</div> |
| 178 | + </div> |
| 179 | + </div> |
| 180 | + |
| 181 | + </div> |
| 182 | +</div> |
0 commit comments