Spaces:
Running
Running
| /* Clinically Healthcare UI Design Kit Styles (Gradio-Optimized) */ | |
| :root { | |
| --primary-indigo: #4338CA; | |
| --secondary-cyan: #0891B2; | |
| --bg-cream: #F8FAFC; | |
| --border-soft: #CBD5E1; | |
| --text-slate: #0F172A; | |
| --text-muted: #334155; | |
| --success-green: #059669; | |
| --warning-amber: #D97706; | |
| --danger-red: #DC2626; | |
| --white: #FFFFFF; | |
| } | |
| /* Header */ | |
| .header-box { | |
| background: var(--white); | |
| padding: 1.5rem; | |
| border-bottom: 4px solid var(--primary-indigo); | |
| color: var(--primary-indigo); | |
| text-align: center; | |
| box-shadow: 0 4px 16px rgba(67, 56, 202, 0.12); | |
| } | |
| .header-box h1 { | |
| font-weight: 800; | |
| font-size: 2.25rem; | |
| letter-spacing: -0.025em; | |
| margin: 0; | |
| color: var(--primary-indigo); | |
| } | |
| /* Sidebar Buttons */ | |
| .sidebar-btn { | |
| margin-bottom: 10px ; | |
| font-weight: 600 ; | |
| border-radius: 12px ; | |
| border: 1px solid var(--border-soft) ; | |
| background: var(--white) ; | |
| transition: all 0.2s ease ; | |
| color: var(--text-slate) ; | |
| width: 100%; | |
| } | |
| .sidebar-btn:hover { | |
| background: var(--primary-indigo) ; | |
| border-color: var(--primary-indigo) ; | |
| color: var(--white) ; | |
| transform: translateY(-1px); | |
| box-shadow: 0 6px 18px rgba(67, 56, 202, 0.35); | |
| } | |
| /* Status blocks */ | |
| .vibrant-status .label-wrap span { | |
| color: white ; | |
| font-weight: 700 ; | |
| } | |
| .vibrant-status textarea { | |
| color: white ; | |
| background: rgba(255, 255, 255, 0.12) ; | |
| border: 1px solid rgba(255, 255, 255, 0.25) ; | |
| border-radius: 8px ; | |
| min-height: 44px; | |
| } | |
| /* Status variants */ | |
| .status-green { | |
| background: rgba(5, 150, 105, 0.15) ; | |
| border: 1px solid var(--success-green) ; | |
| color: #064E3B ; | |
| border-radius: 8px ; | |
| padding: 8px 12px ; | |
| } | |
| .status-orange { | |
| background: rgba(217, 119, 6, 0.15) ; | |
| border: 1px solid var(--warning-amber) ; | |
| color: #78350F ; | |
| border-radius: 8px ; | |
| padding: 8px 12px ; | |
| } | |
| .status-red { | |
| background: rgba(220, 38, 38, 0.15) ; | |
| border: 1px solid var(--danger-red) ; | |
| color: #7F1D1D ; | |
| border-radius: 8px ; | |
| padding: 8px 12px ; | |
| } | |
| /* Loading spinner */ | |
| .loading-spinner { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 10px; | |
| color: var(--primary-indigo); | |
| font-weight: 600; | |
| } | |
| .loading-spinner::before { | |
| content: ""; | |
| display: inline-block; | |
| width: 18px; | |
| height: 18px; | |
| border: 3px solid rgba(67, 56, 202, 0.2); | |
| border-top-color: var(--primary-indigo); | |
| border-radius: 50%; | |
| animation: hr-spin 0.8s linear infinite; | |
| } | |
| @keyframes hr-spin { | |
| to { | |
| transform: rotate(360deg); | |
| } | |
| } | |
| /* Page layout */ | |
| .page-container { | |
| padding: 0.5rem 1.5rem 2rem 1.5rem; | |
| background: var(--bg-cream); | |
| } | |
| .page-title { | |
| font-size: 1.25rem; | |
| font-weight: 700; | |
| color: var(--text-slate); | |
| margin-bottom: 1rem; | |
| padding-bottom: 0.5rem; | |
| border-bottom: 2px solid var(--border-soft); | |
| } | |
| /* Inputs */ | |
| input, textarea, select { | |
| border-color: var(--border-soft) ; | |
| color: var(--text-slate); | |
| } | |
| input:focus, textarea:focus, select:focus { | |
| border-color: var(--primary-indigo) ; | |
| box-shadow: 0 0 0 3px rgba(67, 56, 202, 0.15) ; | |
| } | |
| /* ========================================================= | |
| 🔥 GRADIO OVERRIDE ENFORCER LAYER (IMPORTANT PART) | |
| ========================================================= */ | |
| /* 1. Hard reset Gradio container interference */ | |
| .gradio-container { | |
| background: var(--bg-cream) ; | |
| } | |
| /* 2. FORCE header styling (highest practical CSS specificity) */ | |
| body .gradio-container div.header-box, | |
| html body .gradio-container div.header-box, | |
| div.gradio-container div.header-box { | |
| background: #0B1F3B ; /* deep navy override */ | |
| color: #FFFFFF ; | |
| border-bottom: 4px solid var(--primary-indigo) ; | |
| box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25) ; | |
| } | |
| /* 3. Force all text inside header */ | |
| body .gradio-container .header-box * { | |
| color: #FFFFFF ; | |
| } | |
| /* 4. Kill any theme pseudo overlays */ | |
| .header-box::before, | |
| .header-box::after { | |
| background: transparent ; | |
| content: none ; | |
| } | |
| /* 5. Prevent Gradio theme bleed on blocks */ | |
| .gr-block, | |
| .gr-box, | |
| .gr-panel { | |
| background: transparent ; | |
| } |