*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f7fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{margin:0 auto;max-width:1200px;padding:20px}.card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.btn{border:none;border-radius:4px;cursor:pointer;font-size:16px;padding:10px 20px;transition:all .3s ease}.btn-primary{background-color:#007bff}.btn-primary:hover{background-color:#0056b3}.btn-secondary{background-color:#6c757d}.btn-secondary:hover{background-color:#545b62}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.input-field{border:1px solid #ddd;border-radius:4px;font-size:16px;margin-bottom:10px;padding:10px;width:100%}.input-field:focus{border-color:#007bff;outline:none}.alert{border-radius:4px;margin-bottom:20px;padding:15px}.alert-warning{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.alert-info{background-color:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.error{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#dc3545;margin-bottom:10px;padding:10px}.App{background:#f5f7fa;min-height:100vh}.App,.loading-screen{display:flex;flex-direction:column}.loading-screen{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;height:100vh;justify-content:center}.spinner-large{animation:spin 1s linear infinite;border:6px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:80px;margin-bottom:1rem;width:80px}.loading-screen p{font-size:1.2rem;font-weight:600}.navbar{background:linear-gradient(135deg,#2c3e50,#34495e);box-shadow:0 4px 12px #00000026;color:#fff;padding:1rem 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.nav-container{justify-content:space-between;margin:0 auto;max-width:1400px;padding:0 2rem}.nav-container,.nav-logo{align-items:center;display:flex}.nav-logo{color:#fff;font-size:1.2rem;font-weight:700;gap:.5rem;text-decoration:none;transition:all .3s ease}.nav-logo:hover{transform:translateX(5px)}.nav-menu{align-items:center;display:flex;gap:1rem;list-style:none;margin:0;padding:0}.nav-item{margin:0}.nav-link{border-radius:8px;color:#fff;font-size:.9rem;font-weight:600;padding:.625rem 1rem;text-decoration:none;transition:all .3s ease}.nav-link:hover{background-color:#ffffff1a;transform:translateY(-2px)}.nav-text{padding:.625rem 1rem}.logout-button,.nav-text{color:#fff;font-size:.9rem;font-weight:600}.logout-button{background:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;cursor:pointer;padding:.625rem 1.25rem;transition:all .3s ease}.logout-button:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-2px)}.footer{background-color:#2c3e50;color:#fff;margin-top:auto;padding:2rem 0;text-align:center}.footer p{font-size:.9rem;margin:.5rem 0}.page-content{flex:1 1;padding:2rem 0}@media (max-width:768px){.nav-container{flex-direction:column;gap:1rem}.nav-menu{flex-direction:column;gap:.5rem;text-align:center}}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;overflow:hidden;position:relative}.login-background{bottom:0;left:0;overflow:hidden;position:absolute;right:0;top:0}.login-shape{animation:float 20s ease-in-out infinite;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:50%;position:absolute}.login-shape.shape-1{animation-delay:0s;height:400px;left:-100px;top:-100px;width:400px}.login-shape.shape-2{animation-delay:7s;bottom:-50px;height:300px;right:-50px;width:300px}.login-shape.shape-3{animation-delay:14s;height:200px;left:50%;top:50%;width:200px}@keyframes float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-50px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}}.login-content{align-items:center;display:flex;justify-content:center;max-width:600px;padding:2rem;position:relative;width:100%;z-index:1}.login-box{animation:slideInLeft .6s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa;border-radius:24px;box-shadow:0 20px 60px #0000004d;padding:3rem}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}.login-header{margin-bottom:2rem;text-align:center}.logo-container{flex-direction:column;gap:1rem}.logo-container,.logo-icon{align-items:center;display:flex}.logo-icon{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 4px 12px #667eea66;height:60px;justify-content:center;width:60px}.logo-icon svg{color:#fff;height:36px;width:36px}.login-header h1{color:#1a1a2e;font-size:1.5rem;font-weight:700;margin:0}.login-subtitle{color:#666;font-size:.85rem;margin:.5rem 0 0}.role-selector{margin-bottom:2rem}.role-selector h3{color:#333;font-size:.9rem;font-weight:600;margin:0 0 1rem}.role-buttons{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}.role-button{align-items:center;background:#f8f9fa;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:.5rem;padding:1rem;transition:all .3s ease}.role-button:hover{background:#f0f0f0;border-color:#667eea;transform:translateY(-2px)}.role-button.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;box-shadow:0 4px 12px #667eea66;color:#fff}.role-icon{font-size:2rem}.role-button span{font-size:.85rem;font-weight:600}.login-form{display:flex;flex-direction:column;gap:1.5rem}.error-message{align-items:center;background:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;display:flex;font-size:.9rem;gap:.5rem;padding:.75rem 1rem}.error-icon{font-size:1.2rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.85rem}.form-group input,.form-group select,.form-input{font-size:.9rem;padding:.75rem .875rem}.form-input{background:#fafafa;border:2px solid #e0e0e0;border-radius:10px;transition:all .3s ease;width:100%}.form-input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-options{font-size:.875rem;justify-content:space-between}.checkbox-label,.form-options{align-items:center;display:flex}.checkbox-label{color:#666;cursor:pointer;gap:.5rem}.checkbox-label input{cursor:pointer}.forgot-link{color:#667eea;font-weight:600;text-decoration:none;transition:color .3s ease}.forgot-link:hover{color:#764ba2}.login-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 12px #667eea66;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.5rem;justify-content:center;padding:.875rem;transition:all .3s ease}.login-button:hover:not(:disabled){box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.login-button:disabled{cursor:not-allowed;opacity:.7}.spinner{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-top-color:#fff;height:16px;width:16px}.login-footer{margin-top:2rem;text-align:center}.login-footer p{color:#666;font-size:.9rem;margin:0 0 1rem}.demo-note{background:#f0f5ff;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem}.demo-note,.login-footer a{color:#667eea;font-weight:600}.login-footer a{text-decoration:none}.login-footer a:hover{text-decoration:underline}.security-badge{align-items:center;background:#f0f7ff;border-radius:20px;color:#06c;display:inline-flex;font-size:.85rem;font-weight:600;gap:.5rem;padding:.5rem 1rem}.login-info{animation:slideInRight .6s ease-out;display:flex;flex-direction:column;gap:1.5rem}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}.info-card{background:#fffffff2;border-radius:16px;box-shadow:0 10px 30px #0003;padding:2rem;transition:all .3s ease}.info-card:hover{box-shadow:0 15px 40px #0000004d;transform:translateX(10px)}.info-icon{font-size:3rem;margin-bottom:1rem}.info-card h3{color:#1a1a2e;font-size:1.3rem;font-weight:700;margin:0 0 .5rem}.info-card p{color:#666;line-height:1.5;margin:0}@media (max-width:1024px){.login-content{gap:2rem;grid-template-columns:1fr}.login-info{display:none}}@media (max-width:640px){.login-box{padding:2rem 1.5rem}.role-buttons{grid-template-columns:1fr}.login-header h1{font-size:1.5rem}}.conversation-history-container{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;padding:2rem}.history-header{margin:0 auto 2rem;max-width:1400px}.header-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.header-top h1{color:#1a1a2e;font-size:2.5rem;font-weight:700;margin:0}.header-buttons{align-items:center;display:flex;gap:1rem}.delete-all-button{align-items:center;background:linear-gradient(135deg,#ff6b6b,#ee5a6f);border:none;border-radius:10px;box-shadow:0 4px 12px #ff6b6b66;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;padding:1rem 2rem;transition:all .3s ease}.delete-all-button:hover{box-shadow:0 6px 20px #ff6b6b80;transform:translateY(-2px)}.new-recording-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 12px #667eea66;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;padding:1rem 2rem;transition:all .3s ease}.new-recording-button:hover{box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.button-icon{font-size:1.2rem}.header-controls{display:flex;flex-wrap:wrap;gap:1rem}.search-box{align-items:center;display:flex;flex:1 1;min-width:300px;position:relative}.search-icon{color:#999;font-size:1.2rem;left:1rem;position:absolute}.search-box input{background:#fff;border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;padding:.875rem 1rem .875rem 3rem;transition:all .3s ease;width:100%}.search-box input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.filter-buttons{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000d;display:flex;gap:.5rem;padding:.5rem}.filter-btn{background:#0000;border:none;border-radius:8px;color:#666;cursor:pointer;font-weight:600;padding:.5rem 1rem;transition:all .3s ease}.filter-btn:hover{background:#f0f0f0}.filter-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.history-content{margin:0 auto;max-width:1400px}.loading-spinner{background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a;padding:4rem;text-align:center}.spinner{border:4px solid #f0f0f0;height:60px;margin:0 auto 1rem;width:60px}.empty-state{background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a;padding:4rem}.empty-icon{font-size:5rem;margin-bottom:1rem}.empty-state h2{color:#1a1a2e;font-size:1.8rem;margin:1rem 0 .5rem}.empty-state p{margin-bottom:2rem}.conversations-grid{grid-gap:1.5rem;animation:fadeIn .5s ease-out;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.conversation-card{background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;cursor:pointer;padding:1.5rem}.conversation-card:hover{box-shadow:0 8px 20px #00000026;transform:translateY(-5px)}.card-header{align-items:flex-start;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.patient-info h3{color:#1a1a2e;font-size:1.3rem;font-weight:700;margin:0 0 .25rem}.patient-mrn{color:#666;font-size:.85rem;font-weight:600}.status-badge{border-radius:15px;font-size:.8rem;padding:.35rem .75rem;text-transform:capitalize}.status-completed{background:#e8f5e9;color:#388e3c}.status-pending{background:#fff3e0;color:#f57c00}.status-processing{background:#e3f2fd;color:#1976d2}.card-body{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.info-row{align-items:center;display:flex;justify-content:space-between}.info-label{color:#666}.info-label,.info-value{font-size:.9rem;font-weight:600}.info-value{color:#1a1a2e}.card-actions{gap:.75rem}.delete-button,.view-button{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:600;padding:.75rem;transition:all .3s ease}.view-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.view-button:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.delete-button{background:#fee;border:1px solid #fcc;color:#d32f2f}.delete-button:hover{background:#d32f2f;color:#fff;transform:translateY(-2px)}.primary-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 12px #667eea66;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.primary-button:hover{box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.modal-overlay{animation:fadeIn .3s ease-out}.modal-content{animation:slideUp .3s ease-out;border-radius:20px;max-height:80vh;max-width:500px;padding:2rem;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.detail-modal{max-width:600px}.modal-header{border-bottom:2px solid #f0f0f0;margin-bottom:1.5rem;padding-bottom:1rem}.modal-header h2{color:#1a1a2e;font-size:1.8rem;font-weight:700}.close-button{align-items:center;background:#0000;border:none;color:#999;cursor:pointer;display:flex;font-size:1.5rem;height:30px;justify-content:center;padding:0;transition:all .3s ease;width:30px}.close-button:hover{color:#333;transform:rotate(90deg)}.modal-body{margin-bottom:1.5rem}.delete-info{background:#f8f9fa;border-radius:10px;margin:1rem 0;padding:1rem}.delete-info p{color:#333;margin:.5rem 0}.warning-text{background:#fee;border-left:4px solid #d32f2f;border-radius:8px;color:#d32f2f;font-weight:600;margin-top:1rem;padding:1rem}.detail-section{margin-bottom:1.5rem}.detail-section h3{font-size:1.1rem;font-weight:700}.detail-section p{color:#333}.modal-actions{display:flex;gap:1rem;justify-content:flex-end}.cancel-button,.confirm-delete-button{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;padding:.875rem 1.5rem;transition:all .3s ease}.cancel-button{background:#f0f0f0;color:#333}.cancel-button:hover{background:#e0e0e0}.confirm-delete-button{background:#d32f2f;color:#fff}.confirm-delete-button:hover{background:#b71c1c;transform:translateY(-2px)}@media (max-width:768px){.conversations-grid{grid-template-columns:1fr}.header-controls{flex-direction:column}.search-box{min-width:auto}.header-top{align-items:flex-start;flex-direction:column;gap:1rem}}.record-container{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;padding:2rem}.record-box{background:#fff;border-radius:16px;box-shadow:0 8px 24px #0000001f;margin:0 auto;max-width:900px;padding:3rem}.record-box h1{color:#1a1a2e;font-size:2rem;font-weight:700;margin-bottom:2rem;text-align:center}.step-content{margin-top:2rem}.step-content h2{color:#667eea;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.form-row{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#333;display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.form-group input,.form-group select{background:#fafafa;border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;padding:.875rem 1rem;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.consent-box{background:linear-gradient(135deg,#f0f4ff,#e8f0ff);border:2px solid #667eea;border-radius:12px;margin:2rem 0;padding:1.5rem}.consent-label{align-items:flex-start;color:#333;cursor:pointer;display:flex;font-size:1rem;gap:1rem;line-height:1.6}.consent-label input[type=checkbox]{accent-color:#667eea;cursor:pointer;height:20px;margin-top:2px;width:20px}.consent-label span{font-size:14px;line-height:1.6}.session-id{background:#e8f5e9;border-radius:6px;margin-bottom:20px;padding:15px;text-align:center}.upload-section{margin-top:20px}.file-input{border:2px dashed #667eea;border-radius:8px;cursor:pointer;display:block;margin:20px 0;padding:15px;width:100%}.file-info{background:#e8f5e9;border-radius:6px;color:#2e7d32;margin:15px 0;padding:15px}.button-group{display:flex;gap:15px;margin-top:20px}.btn-primary{box-shadow:0 4px 12px #667eea66;flex:1 1;font-size:1.1rem;padding:1rem 2.5rem}.btn-primary:hover:not(:disabled){box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-secondary{background:#fff;border:2px solid #667eea;color:#667eea;font-size:1.1rem;padding:1rem 2.5rem}.btn-secondary:hover{background:#f0f4ff}.processing-info{margin-top:30px;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:50px;margin:0 auto 20px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.text-muted{color:#999;font-size:14px;margin-top:10px}.recording-mode-selector{display:flex;gap:10px;margin-bottom:20px}.mode-btn{background:#fff;border:2px solid #ddd;border-radius:8px;color:#666;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:12px 20px;transition:all .3s ease}.mode-btn:hover{border-color:#4a90e2;color:#4a90e2}.mode-btn.active{background:#4a90e2;border-color:#4a90e2;color:#fff}.recording-section{background:#f8f9fa;border:2px dashed #ddd;border-radius:8px;padding:40px 20px;text-align:center}.recording-section.recording-active{animation:pulse-border 2s infinite;background:#fff3cd;border-color:#ff6b6b}@keyframes pulse-border{0%,to{border-color:#ff6b6b}50%{border-color:#ff8c8c}}.recording-indicator{align-items:center;display:flex;gap:10px;justify-content:center;margin-bottom:20px}.recording-indicator .icon{color:#4a90e2;font-size:48px}.recording-active .recording-indicator .icon{animation:pulse 1.5s infinite;color:#ff6b6b}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.recording-timer{color:#333;font-family:Courier New,monospace;font-size:32px;font-weight:600;margin:10px 0}.recording-active .recording-timer{color:#ff6b6b}.recording-status{color:#666;font-size:16px;margin:10px 0}.recording-active .recording-status{color:#ff6b6b;font-weight:600}.waveform{align-items:center;display:flex;gap:4px;height:40px;justify-content:center;margin:20px 0}.waveform-bar{animation:wave 1.2s ease-in-out infinite;background:#4a90e2;border-radius:2px;width:4px}.recording-active .waveform-bar{background:#ff6b6b}.waveform-bar:first-child{animation-delay:0s}.waveform-bar:nth-child(2){animation-delay:.1s}.waveform-bar:nth-child(3){animation-delay:.2s}.waveform-bar:nth-child(4){animation-delay:.3s}.waveform-bar:nth-child(5){animation-delay:.4s}.waveform-bar:nth-child(6){animation-delay:.3s}.waveform-bar:nth-child(7){animation-delay:.2s}.waveform-bar:nth-child(8){animation-delay:.1s}@keyframes wave{0%,to{height:10px}50%{height:30px}}.btn-record-start{background:#28a745;border:none;border-radius:25px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:20px;padding:15px 40px;transition:all .3s ease}.btn-record-start:hover{background:#218838;box-shadow:0 4px 12px #28a7454d;transform:translateY(-2px)}.btn-record-stop{background:#dc3545;border:none;border-radius:25px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:20px;padding:15px 40px;transition:all .3s ease}.btn-record-stop:hover{background:#c82333;box-shadow:0 4px 12px #dc35454d;transform:translateY(-2px)}.recording-complete-message{color:#28a745;font-size:16px;font-weight:600;margin-top:15px}.live-transcript{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;margin-top:30px;padding:20px}.live-transcript h4{color:#333;font-size:16px;margin-bottom:15px}.transcript-box{word-wrap:break-word;border:1px solid #e0e0e0;border-radius:6px;color:#555;font-size:14px;line-height:1.6;max-height:200px;padding:15px}.medical-entities{background:#fff;border:2px solid #e8f5e9;border-radius:8px;margin-top:25px;padding:20px}.medical-entities h4{color:#2e7d32;font-size:16px;font-weight:600;margin-bottom:20px}.entity-group{margin-bottom:15px}.entity-group strong{color:#555;display:block;font-size:14px;margin-bottom:8px}.entity-tags{display:flex;flex-wrap:wrap;gap:8px}.entity-tag{border-radius:16px;display:inline-block;font-size:13px;font-weight:500;padding:6px 12px;text-transform:capitalize}.entity-tag.symptom{background:#ffebee;border:1px solid #ef5350;color:#c62828}.entity-tag.medication{background:#e3f2fd;border:1px solid #42a5f5;color:#1565c0}.entity-tag.diagnosis{background:#fff3e0;border:1px solid #ff9800;color:#e65100}.entity-tag.vital{background:#f3e5f5;border:1px solid #ab47bc;color:#6a1b9a}.transcript-box::-webkit-scrollbar{width:8px}.transcript-box::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.transcript-box::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.transcript-box::-webkit-scrollbar-thumb:hover{background:#555}.dashboard-container{margin:0 auto;max-width:1200px;padding:30px 20px}.dashboard-header{align-items:center;display:flex;justify-content:space-between}.dashboard-header h1{color:#333;font-size:1.75rem;margin:0}.conversations-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:25px}.conversation-cards{display:flex;flex-direction:column;gap:15px}.conversation-card{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:10px;padding:20px;transition:all .3s ease}.conversation-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.card-content{align-items:center;display:flex;gap:20px;justify-content:space-between}.patient-info h3{color:#333;font-size:1.1rem;margin:0 0 8px}.session-date{color:#666;font-size:.9rem}.card-actions{gap:15px}.card-actions,.delete-btn{align-items:center;display:flex}.delete-btn{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;gap:5px;padding:8px 16px;transition:all .3s ease}.delete-btn:hover{box-shadow:0 4px 12px #ff6b6b66;transform:translateY(-2px)}.badge{border-radius:20px;font-size:.8rem;font-weight:600;padding:5px 12px}.badge-success{background-color:#28a745;color:#fff}.badge-warning{background-color:#ffc107;color:#333}.badge-pending{background-color:#6c757d;color:#fff}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;padding:12px 24px;text-decoration:none;transition:all .3s ease}.btn-primary:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.loading{color:#666;padding:40px}.empty-state{padding:60px 20px;text-align:center}.empty-state p{color:#666;font-size:1.1rem;margin-bottom:20px}.modal-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:900px;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;padding:2rem}.modal-header h2{color:#333;font-size:1.75rem;margin:0}.close-btn{background:none;border:none;color:#666;cursor:pointer;font-size:1.5rem;padding:.5rem;transition:all .3s ease}.close-btn:hover{color:#ff6b6b;transform:scale(1.1)}.modal-body{padding:2rem}.detail-section{background:#f8f9fa;border-radius:10px;margin-bottom:2rem;padding:1.5rem}.detail-section h3{color:#667eea;font-size:1.3rem;margin:0 0 1rem}.detail-section h4{color:#333;font-size:1.1rem;margin:1rem 0 .5rem}.detail-section p{color:#555;line-height:1.6;margin:.5rem 0}.nurse-notice{background:linear-gradient(135deg,#fff3cd,#fff8e1);border:2px solid #ffc107;padding:2rem}.nurse-notice h3{align-items:center;color:#856404;display:flex;gap:.5rem}.nurse-notice p{color:#856404;font-weight:500}.transcript-box{border:2px solid #e0e0e0;color:#333;font-family:system-ui;line-height:1.8;max-height:400px;overflow-y:auto;padding:1.5rem;white-space:pre-wrap}.soap-section,.transcript-box{background:#fff;border-radius:8px}.soap-section{border-left:4px solid #667eea;margin-bottom:1rem;padding:1rem}.modal-footer{border-top:2px solid #e0e0e0;display:flex;justify-content:flex-end;padding:1.5rem 2rem}.btn-secondary{background:#6c757d;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-secondary:hover{background:#5a6268;transform:translateY(-2px)}.nurse-dashboard{margin:0 auto;max-width:1400px;padding:30px}.dashboard-header{margin-bottom:30px}.dashboard-stats{margin-bottom:40px}.stat-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;box-shadow:0 4px 6px #0000001a;color:#fff;padding:25px}.stat-card h3{margin:0 0 10px}.stat-card p{font-size:14px;opacity:.9}.sessions-section h2{margin-bottom:20px}.sessions-table{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;overflow:hidden}table{border-collapse:collapse;width:100%}thead{background:#f8f9fa}thead th{border-bottom:2px solid #e9ecef;color:#2c3e50;font-weight:600;padding:15px;text-align:left}tbody td{border-bottom:1px solid #e9ecef;padding:15px}.status-badge{padding:5px 12px}.status-badge.approved,.status-badge.completed{background:#d1e7dd;color:#0f5132}.btn-view{background:#667eea;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background .3s}.btn-view:hover{background:#5568d3}.no-sessions{color:#7f8c8d;padding:40px}.patient-dashboard{background:#f5f7fa;margin:0 auto;max-width:1200px;min-height:100vh;padding:30px}.dashboard-header{margin-bottom:40px;text-align:center}.dashboard-header h1{color:#2c3e50;font-size:32px;margin-bottom:10px}.dashboard-header p{color:#7f8c8d;font-size:16px}.dashboard-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.stat-card{background:#fff;border-radius:15px;box-shadow:0 4px 6px #00000012;padding:30px;text-align:center;transition:transform .3s}.stat-card:hover{box-shadow:0 6px 12px #0000001a;transform:translateY(-5px)}.stat-icon{font-size:48px;margin-bottom:15px}.stat-card h3{color:#2c3e50;font-size:36px;margin:10px 0}.stat-card p{color:#7f8c8d;margin:0}.consent-notice{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 15px #667eea66;color:#fff;display:flex;gap:20px;margin-bottom:30px;padding:20px 25px}.notice-icon{font-size:36px}.notice-content h3{font-size:18px;margin:0 0 8px}.notice-content p{font-size:14px;line-height:1.5;margin:0;opacity:.95}.sessions-section{margin-top:40px}.sessions-section h2{color:#2c3e50;font-size:24px;margin-bottom:25px}.sessions-list{grid-gap:20px;display:grid;gap:20px}.session-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:25px;transition:transform .3s,box-shadow .3s}.session-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-3px)}.session-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:15px}.session-date{display:flex;flex-direction:column}.date-label{color:#7f8c8d;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.date-value{color:#2c3e50;font-size:16px;font-weight:600;margin-top:3px}.status-badge{border-radius:20px;font-size:12px;font-weight:600;padding:6px 14px;text-transform:uppercase}.status-badge.pending{background:#fff3cd;color:#856404}.status-badge.processing{background:#cfe2ff;color:#084298}.status-badge.approved,.status-badge.completed{background:#d1e7dd;color:#0f5132}.session-info{margin:15px 0}.session-info p{color:#495057;font-size:14px;margin:8px 0}.consent-indicator{align-items:center;color:#28a745;display:flex;font-weight:500;gap:8px}.consent-icon{font-size:16px}.btn-view-session{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;margin-top:15px;padding:12px 24px;transition:background .3s;width:100%}.btn-view-session:hover{background:#5568d3}.no-sessions{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:60px 30px;text-align:center}.no-sessions-icon{font-size:72px;margin-bottom:20px}.no-sessions h3{color:#2c3e50;margin-bottom:10px}.loading,.no-sessions p{color:#7f8c8d}.loading{font-size:18px;padding:100px;text-align:center}.session-view-container{margin:0 auto;max-width:1000px;padding:30px 20px}.session-header{margin-bottom:30px}.btn-back{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;margin-bottom:15px;padding:10px 20px}.clinical-note-card,.entities-card,.session-info-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;padding:30px}.info-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:15px}.soap-section{border-bottom:1px solid #eee;margin-bottom:25px;padding-bottom:20px}.soap-section h3{color:#667eea;margin-bottom:10px}.soap-section p{color:#333;line-height:1.8}.pre-formatted{font-family:Courier New,monospace;font-size:14px;white-space:pre-wrap}.alert-section{background:#fff3e0;border:2px solid #ff9800;border-radius:8px;padding:20px}.btn-approve{background:#4caf50;border:none;color:#fff;cursor:pointer;font-size:16px;width:100%}.approved-badge,.btn-approve{border-radius:8px;font-weight:600;padding:15px}.approved-badge{background:#e8f5e9;color:#2e7d32;text-align:center}.entities-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}.entity-item{align-items:center;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;display:flex;gap:8px;padding:8px 12px}.entity-type{background:#667eea;border-radius:4px;color:#fff;font-size:11px;font-weight:600;padding:3px 8px;text-transform:uppercase}.entity-confidence{color:#666;font-size:12px}
/*# sourceMappingURL=main.c0883dac.css.map*/