/* --- MOBILE-FIRST BASE STYLES --- */ :root { --primary: #0F172A; --secondary: #2563EB; --accent: #F59E0B; --bg: #F8FAFC; --card: #FFFFFF; --border: #E2E8F0; --text: #334155; --sidebar-width: 260px; } * { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: 'Inter', sans-serif; background-color: var(--bg); color: var(--text); overflow-x: hidden; line-height: 1.5; } /* Layout Container */ .dashboard-body { display: flex; min-height: 100vh; } /* Sidebar Styling - Mobile First */ .sidebar { position: fixed; top: 0; left: 0; width: var(--sidebar-width); height: 100vh; background: var(--primary); color: white; z-index: 1000; transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1); transform: translateX(-100%); display: flex; flex-direction: column; } .sidebar.active { transform: translateX(0); box-shadow: 10px 0 30px rgba(0,0,0,0.2); } .sidebar-mobile-toggle { position: fixed; top: 15px; left: 15px; z-index: 1100; background: var(--secondary); color: white; padding: 10px 15px; border-radius: 8px; font-weight: bold; cursor: pointer; box-shadow: 0 4px 6px rgba(0,0,0,0.1); } /* Main Content Area */ .main-content { flex: 1; padding: 70px 15px 20px; /* Space for mobile toggle */ width: 100%; transition: margin-left 0.3s ease; } /* Desktop Sidebar Behavior */ @media (min-width: 1024px) { .sidebar { transform: translateX(0); position: sticky; } .sidebar-mobile-toggle { display: none; } .main-content { padding: 30px 40px; } } /* --- DOCTOR ZEN VIEW: RESPONSIVE GRID --- */ .doctor-zen-section { display: flex; flex-direction: column; gap: 1.5rem; } @media (min-width: 1024px) { .doctor-zen-section { display: grid; grid-template-columns: 320px 1fr; height: calc(100vh - 100px); } } .patient-pipeline { background: var(--card); border-radius: 16px; border: 1px solid var(--border); padding: 1.5rem; overflow-y: auto; } .clinical-workspace-area { background: var(--card); border-radius: 16px; border: 1px solid var(--border); padding: 2rem; display: flex; flex-direction: column; gap: 1.5rem; } /* --- BUTTONS & ACTIONS --- */ .workspace-actions { display: flex; gap: 10px; flex-wrap: wrap; } .workspace-actions button, .workspace-actions select { flex: 1 1 140px; padding: 12px; border-radius: 10px; font-weight: 600; } /* --- CLINICAL SUMMARY CARDS --- */ .summary-card { background: linear-gradient(135deg, #F0FDF4 0%, #DCFCE7 100%); padding: 1.5rem; border-radius: 16px; border: 1px solid #BBF7D0; } .btn-scribe.active { background: #EF4444 !important; animation: scribePulse 2s infinite; } /* --- UTILS --- */ .hidden { display: none !important; } .table-responsive { width: 100%; overflow-x: auto; border-radius: 12px; border: 1px solid var(--border); margin-top: 1rem; } table { width: 100%; border-collapse: collapse; min-width: 600px; /* Force scroll on small screens */ } th, td { padding: 15px; text-align: left; border-bottom: 1px solid var(--border); } @keyframes scribePulse { 0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.4); } 70% { transform: scale(1.02); box-shadow: 0 0 0 15px rgba(239, 68, 68, 0); } 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(239, 68, 68, 0); } }