diff --git a/dashboard.css b/dashboard.css index c91faff..2f02979 100644 --- a/dashboard.css +++ b/dashboard.css @@ -635,16 +635,124 @@ border-left: 4px solid var(--secondary); } -.p-token { +.zen-grid { + display: grid; + grid-template-columns: 1fr 350px; + gap: 2rem; +} + +.clinical-notes-card { + background: white; + border-radius: 24px; + box-shadow: 0 4px 20px rgba(0,0,0,0.05); + border: 1px solid #f1f5f9; + overflow: hidden; +} + +.zen-textarea { + width: 100%; + height: 600px; + padding: 2rem; + border: none; + font-size: 1.1rem; + line-height: 1.6; + resize: none; + color: var(--primary); +} + +.zen-textarea:focus { + outline: none; +} + +.zen-sidebar { + display: flex; + flex-direction: column; + gap: 1.5rem; +} + +.insight-card, .ai-nudge-box { + background: white; + border-radius: 20px; + padding: 1.5rem; + box-shadow: 0 4px 20px rgba(0,0,0,0.05); + border: 1px solid #f1f5f9; +} + +.vitals-grid { + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: 1rem; + margin-top: 1rem; +} + +.vital-item { + display: flex; + flex-direction: column; + align-items: center; + padding: 0.75rem; + background: #f8fafc; + border-radius: 12px; + text-align: center; +} + +.vital-item.warning { + background: #fef2f2; + border: 1px solid #fee2e2; +} + +.vital-item.warning .value { + color: #ef4444; +} + +.vital-item .label { + font-size: 0.7rem; + color: #64748b; + text-transform: uppercase; + letter-spacing: 0.05em; + margin-bottom: 0.25rem; +} + +.vital-item .value { font-weight: 700; color: var(--primary); - background: white; - padding: 0.4rem 0.6rem; + font-size: 1rem; +} + +.allergy-tag { + margin-top: 1rem; + padding: 0.5rem 1rem; + background: #fff1f2; + color: #e11d48; + border-radius: 10px; + font-size: 0.85rem; + font-weight: 600; + text-align: center; +} + +.ai-nudge-box p { + font-size: 0.95rem; + color: #475569; + margin: 1rem 0; + line-height: 1.5; +} + +.suggested-tags { + display: flex; + flex-wrap: wrap; + gap: 0.5rem; +} + +.suggested-tags span { + padding: 0.25rem 0.75rem; + background: #f0f9ff; + color: #0369a1; border-radius: 8px; font-size: 0.8rem; - box-shadow: 0 2px 4px rgba(0,0,0,0.05); + font-weight: 500; + cursor: pointer; } + .zen-workspace { display: flex; flex-direction: column; diff --git a/dashboard.html b/dashboard.html index d53ecbe..3f5d21e 100644 --- a/dashboard.html +++ b/dashboard.html @@ -106,7 +106,6 @@
-
Consultation Notes
@@ -120,10 +119,34 @@
- diff --git a/dashboard.js b/dashboard.js index c5f056f..43150e7 100644 --- a/dashboard.js +++ b/dashboard.js @@ -44,11 +44,37 @@ document.addEventListener("DOMContentLoaded", () => { link.style.display = 'none'; } }); + + // Hide Admin Top Bar elements + const adminElements = ['.search-box', '.top-actions', '.btn-primary']; + adminElements.forEach(selector => { + const el = document.querySelector(selector); + if (el && !el.closest('.workspace-actions')) el.style.display = 'none'; + }); + showSection('zen'); } else { showSection('overview'); } + // AI Nudge Simulation Logic + const notesArea = document.getElementById("consultationNotes"); + const nudgeText = document.getElementById("aiNudgeText"); + const tagsContainer = document.querySelector(".suggested-tags"); + + if (notesArea) { + notesArea.addEventListener("input", (e) => { + const val = e.target.value.toLowerCase(); + if (val.includes("fever") || val.includes("temperature")) { + nudgeText.innerText = "✨ AI suggests: Patient has elevated temp. Consider prescribing Paracetamol and checking for throat infection."; + tagsContainer.innerHTML = '#ViralFever#InfectionCheck'; + } else if (val.includes("cough") || val.includes("breath")) { + nudgeText.innerText = "✨ AI suggests: Respiratory symptoms detected. Check SpO2 and listen for chest congestion."; + tagsContainer.innerHTML = '#AsthmaProtocol#Bronchitis'; + } + }); + } + // Initialize Recognition if ('webkitSpeechRecognition' in window) { recognition = new webkitSpeechRecognition();