Spaces:
Sleeping
Sleeping
| """UI constants: CSS, severity colors, phase labels.""" | |
| from code_tribunal.pipeline import Phase | |
| SEVERITY_COLORS = {"CRITICAL": "#dc2626", "HIGH": "#ea580c", "MEDIUM": "#ca8a04", "LOW": "#2563eb"} | |
| CSS = """ | |
| .gradio-container{min-width:1280px!important;max-width:1310px!important;margin:0 auto!important} | |
| body{background:#0a0a14!important} | |
| .hero-logo{display:block!important;margin:0 auto 12px auto!important;border-radius:16px!important} | |
| .hero-title{text-align:center!important;color:#fbbf24!important;font-family:Georgia,serif!important;font-size:2.4em!important} | |
| .hero-subtitle{text-align:center!important;color:#94a3b8!important;font-size:1.1em!important} | |
| .upload-area .file-preview{min-height:220px!important;border:2px dashed #fbbf2440!important;border-radius:16px!important;background:#1a1a2e!important} | |
| .upload-area .file-preview:hover{border-color:#fbbf24!important} | |
| .chatbot{border:none!important;box-shadow:none!important} | |
| .contain{border:none!important;box-shadow:none!important;background:transparent!important} | |
| [data-testid="status-tracker"]{border:none!important;box-shadow:none!important} | |
| .bot.svelte-1nr59td.message{border:none!important;box-shadow:none!important;background:transparent!important} | |
| .phase-active{font-family:sans-serif;font-size:1.5rem;font-weight:bold;background:linear-gradient(to left,#333 20%,#888 40%,#eee 50%,#888 60%,#333 80%);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;color:transparent;animation:shine 3s linear infinite} | |
| @keyframes shine{to{background-position:200% center}} | |
| """ | |
| PHASE_LABELS = { | |
| Phase.EVIDENCE: "Phase 1/7: Forensic Evidence", | |
| Phase.GRAPH: "Phase 2/7: Code Graph", | |
| Phase.INVESTIGATION: "Phase 3/7: Investigation", | |
| Phase.TRIAL: "Phase 4/7: The Trial", | |
| Phase.VERDICT: "Phase 5/7: Verdict", | |
| Phase.REPORT: "Phase 6/7: Final Report", | |
| Phase.COMPLETE: "Trial Complete", | |
| Phase.FAILED: "Error", | |
| } | |