:root{--bg:#16211c;--panel:#1e2b23;--card:#22302a;--text:#ede8dc;--muted:#96a498;--border:#2c3a32;--achilles:#d9793f;--knee:#4fa8a0;--hip:#8fa876;--general:#7a8b99;--green:#6fbf73;--yellow:#e0c34a;--red:#d9584f;--font-display:"Anton", sans-serif;--font-mono:"IBM Plex Mono", monospace;--font-body:"Work Sans", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:radial-gradient(ellipse at top left, #1a2820 0%, var(--bg) 45%), radial-gradient(ellipse at bottom right, #1c2b22 0%, var(--bg) 55%);background-color:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-weight:300}button,input,select{font-family:inherit}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:6px}.dashboard{max-width:1200px;margin:0 auto;padding:28px 24px 60px}.header{margin-bottom:24px}.page-title{font-family:var(--font-display);letter-spacing:1px;color:var(--text);font-size:44px;line-height:1}.page-sub{font-family:var(--font-mono);letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-top:6px;font-size:12px}.tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:4px;margin:24px 0 20px;display:flex}.tab-btn{color:var(--muted);font-family:var(--font-mono);letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:12px 16px;font-size:12px;transition:color .15s,border-color .15s}.tab-btn:hover{color:var(--text)}.tab-btn.active{color:var(--text);border-bottom-color:var(--achilles)}.panel{background:var(--panel);border:1px solid var(--border);border-radius:14px;margin-bottom:20px;padding:20px}.panel-title{font-family:var(--font-mono);letter-spacing:2px;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:14px;font-size:11px;display:flex}.card-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:20px;display:grid}.stat-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px 16px}.stat-card .label{font-family:var(--font-mono);letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-size:10px}.stat-card .value{font-family:var(--font-mono);color:var(--text);font-size:26px;font-weight:500;line-height:1}.stat-card .sub{color:var(--muted);margin-top:6px;font-size:11px}.badge{font-family:var(--font-mono);letter-spacing:1px;text-transform:uppercase;border:1px solid;border-radius:10px;padding:3px 8px;font-size:9px}.badge.green{color:var(--green);border-color:var(--green);background:#6fbf731a}.badge.yellow{color:var(--yellow);border-color:var(--yellow);background:#e0c34a1a}.badge.red{color:var(--red);border-color:var(--red);background:#d9584f1a}.badge.muted{color:var(--muted);border-color:var(--border)}.tag{font-family:var(--font-mono);letter-spacing:1px;text-transform:uppercase;border:1px solid;border-radius:8px;margin-left:8px;padding:2px 7px;font-size:9px;display:inline-block}.tag.achilles{color:var(--achilles);border-color:var(--achilles);background:#d9793f1f}.tag.knee{color:var(--knee);border-color:var(--knee);background:#4fa8a01f}.tag.hip{color:var(--hip);border-color:var(--hip);background:#8fa8761f}.tag.general{color:var(--general);border-color:var(--general);background:#7a8b991f}.empty-state{border:1px dashed var(--border);text-align:center;color:var(--muted);border-radius:12px;padding:28px 20px;font-size:13px;line-height:1.6}.empty-state strong{color:var(--text);font-family:var(--font-mono);letter-spacing:1px;text-transform:uppercase;margin-bottom:6px;font-size:12px;display:block}.upload-row{justify-content:center;align-items:center;gap:12px;margin-top:14px;display:flex}.upload-row input[type=file]{color:var(--muted);font-size:12px}.note-box{border-left:3px solid var(--achilles);background:var(--card);color:var(--muted);border-radius:0 10px 10px 0;margin-bottom:20px;padding:12px 16px;font-size:12px;line-height:1.6}.chart-wrap{width:100%;height:260px}.run-table{border-collapse:collapse;width:100%;font-size:12px}.run-table th,.run-table td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px}.run-table th{font-family:var(--font-mono);letter-spacing:1px;text-transform:uppercase;color:var(--muted);font-size:10px}.run-table td{color:var(--text)}.run-table .muted-cell{color:var(--muted)}
