:root{--primary-color:#2d5bff;--accent-color:#ff6b6b;--dark-color:#2c3e50;--text-light:#f8f9fa;--success-color:#28a745;--warning-color:#ffc107;--danger-color:#dc3545}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--light-color);color:var(--text-dark);font-family:Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}*{box-sizing:border-box}a{color:var(--primary-color);text-decoration:none}button{cursor:pointer}.header{align-items:center;background-color:var(--white);box-shadow:0 2px 10px #0000001a;display:flex;justify-content:space-between;padding:1rem 5%;position:fixed;top:0;width:100%;z-index:1000}.logo-container{display:flex;flex-direction:column}.logo-text{color:var(--primary-color);font-size:1.8rem;font-weight:700}.logo-subtext{color:var(--secondary-color);font-size:.8rem}.nav-links{align-items:center;display:flex;gap:2rem}.nav-links a{color:var(--text-dark);font-weight:500;transition:color .3s}.nav-links a:hover{color:var(--primary-color)}.login-btn{background-color:var(--primary-color);border-radius:5px;color:#fff;padding:.5rem 1.5rem;transition:background-color .3s}.login-btn:hover{background-color:#1a4bcc;color:#fff}.logo-image{height:50px;width:auto}.footer{background-color:var(--dark-color);color:var(--text-light);margin-top:3rem;padding:2rem 5%}.footer-content{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;margin-bottom:2rem}.footer-section{flex:1 1;min-width:200px}.footer-section h3,.footer-section h4{color:var(--white);margin-bottom:1rem}.footer-section a,.footer-section p{color:var(--text-light);display:block;margin-bottom:.5rem;opacity:.8;transition:opacity .3s}.footer-section a:hover{opacity:1}.footer-bottom{border-top:1px solid #ffffff1a;font-size:.9rem;padding-top:1rem;text-align:center}.landing-page{display:flex;flex-direction:column;min-height:100vh}.landing-main{flex:1 1}.hero-section{background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);color:#fff;overflow:hidden;padding:120px 20px;position:relative;text-align:center}.hero-section:before{animation:float 6s ease-in-out infinite;background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Ccircle cx='20' cy='20' r='2' fill='rgba(255,255,255,0.1)'/%3E%3Ccircle cx='80' cy='40' r='1.5' fill='rgba(255,255,255,0.1)'/%3E%3Ccircle cx='40' cy='80' r='1' fill='rgba(255,255,255,0.1)'/%3E%3Ccircle cx='90' cy='80' r='2.5' fill='rgba(255,255,255,0.1)'/%3E%3Ccircle cx='10' cy='60' r='1.5' fill='rgba(255,255,255,0.1)'/%3E%3C/svg%3E") repeat;bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.hero-content{position:relative;z-index:1}.hero-content h1{animation:slideInDown 1s ease-out;font-size:3.5rem;font-weight:700;margin-bottom:1.5rem;text-shadow:2px 2px 4px #0000004d}@keyframes slideInDown{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.hero-content p{animation:slideInUp 1s ease-out .3s both;font-size:1.3rem;margin-bottom:2.5rem;margin-left:auto;margin-right:auto;max-width:700px;opacity:.95}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:.95;transform:translateY(0)}}.hero-buttons{animation:slideInUp 1s ease-out .6s both;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center}.btn{border-radius:50px;font-size:1.1rem;font-weight:600;overflow:hidden;padding:15px 32px;position:relative;text-decoration:none;transition:all .4s ease}.btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.btn:hover:before{left:100%}.btn-primary{background:linear-gradient(135deg,#4caf50,#45a049);box-shadow:0 8px 25px #4caf5066;color:#fff}.btn-primary:hover{box-shadow:0 12px 35px #4caf5099;transform:translateY(-3px)}.btn-secondary{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fffc;color:#fff}.btn-secondary:hover{background:#fff3;box-shadow:0 12px 35px #ffffff4d;transform:translateY(-3px)}.container{margin:0 auto;max-width:1200px;padding:0 20px}.about-section,.contact-section,.features-section{padding:100px 20px;position:relative}.features-section{background:linear-gradient(135deg,#a8edea,#fed6e3);position:relative}.features-section:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath fill='rgba(255,255,255,0.05)' d='m50 10 30 30-30 30-30-30z'/%3E%3C/svg%3E") repeat;background-size:100px 100px;bottom:0;content:"";left:0;position:absolute;right:0;top:0}.features-section h2{color:#2c3e50;font-size:3rem;font-weight:700;margin-bottom:4rem;position:relative;text-align:center;z-index:1}.features-section h2:after{background:linear-gradient(90deg,#4caf50,#2196f3);border-radius:2px;bottom:-10px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.features-grid{grid-gap:2.5rem;display:grid;gap:2.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:3rem;position:relative;z-index:1}.feature-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:1px solid #ffffff4d;border-radius:20px;box-shadow:0 10px 30px #0000001a,0 1px 8px #0000000f;overflow:hidden;padding:2.5rem;position:relative;text-align:center;transition:all .4s ease}.feature-card:before{background:linear-gradient(90deg,#4caf50,#2196f3,#9c27b0);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .4s ease}.feature-card:hover:before{transform:scaleX(1)}.feature-card:hover{box-shadow:0 20px 40px #00000026,0 5px 15px #0000001a;transform:translateY(-10px) scale(1.02)}.feature-card h3{color:#2c3e50;font-size:1.6rem;font-weight:600;margin-bottom:1.5rem}.feature-card p{color:#555;font-size:1.05rem;line-height:1.7}.about-section{background:linear-gradient(135deg,#ffecd2,#fcb69f);position:relative}.about-section:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M20 20q30-15 60 0 15 30 0 60-30 15-60 0-15-30 0-60' fill='rgba(255,255,255,0.03)'/%3E%3C/svg%3E") repeat;background-size:150px 150px;bottom:0;content:"";left:0;position:absolute;right:0;top:0}.about-section h2{color:#8b4513;font-size:3rem;font-weight:700;margin-bottom:4rem;position:relative;text-align:center;z-index:1}.about-section h2:after{background:linear-gradient(90deg,#ff6b6b,#feca57);border-radius:2px;bottom:-10px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.about-section p{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffb3;border:1px solid #ffffff4d;border-radius:20px;box-shadow:0 15px 35px #0000001a;color:#6b4423;font-size:1.2rem;line-height:1.9;margin:0 auto;max-width:900px;padding:3rem;position:relative;text-align:center;z-index:1}.contact-section{background:linear-gradient(135deg,#667eea,#764ba2 50%,#3b4371);color:#fff;position:relative}.contact-section:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath fill='rgba(255,255,255,0.03)' d='M25 17.929 32.071 25 25 32.071 17.929 25zM74 28.343 79.657 34 74 39.657 68.343 34zM43 68.757 47.243 73 43 77.243 38.757 73z'/%3E%3C/svg%3E") repeat;background-size:200px 200px;bottom:0;content:"";left:0;position:absolute;right:0;top:0}.contact-section h2{color:#fff;font-size:3rem;font-weight:700;margin-bottom:2rem;position:relative;text-align:center;z-index:1}.contact-section h2:after{background:linear-gradient(90deg,#4caf50,#2196f3);border-radius:2px;bottom:-10px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.contact-section>.container>p{font-size:1.2rem;margin-bottom:3rem;opacity:.9}.contact-info,.contact-section>.container>p{position:relative;text-align:center;z-index:1}.contact-info{margin-top:3rem}.contact-info p{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:15px;color:#ffffffe6;display:inline-block;font-size:1.2rem;margin:1.5rem 0;min-width:300px;padding:1rem;transition:all .3s ease}.contact-info p:hover{background:#fff3;transform:translateY(-2px)}@media (max-width:768px){.hero-content h1{font-size:2.5rem}.hero-content p{font-size:1.1rem}.hero-buttons{align-items:center;flex-direction:column}.features-grid{grid-template-columns:1fr}.about-section h2,.contact-section h2,.features-section h2{font-size:2.2rem}.about-section p{font-size:1.1rem;padding:2rem}.contact-info p{max-width:350px;min-width:auto;width:100%}}@media (max-width:480px){.hero-section{padding:80px 20px}.about-section,.contact-section,.features-section{padding:60px 20px}.btn{font-size:1rem;padding:12px 24px}}.login-page{display:flex;flex-direction:column;min-height:100vh}.login-container{align-items:center;display:flex;flex:1 1;justify-content:center;padding:100px 2rem 2rem}.login-form-container{background-color:var(--white);border-radius:10px;box-shadow:0 5px 15px #0000001a;max-width:500px;padding:2rem;width:100%}.login-form-container h2{color:var(--primary-color);margin-bottom:2rem;text-align:center}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--text-dark);display:block}.form-group input,.form-group select{border:1px solid #ddd;border-radius:5px;padding:.8rem;transition:border-color .3s;width:100%}.form-group input:focus,.form-group select:focus{border-color:var(--primary-color)}.login-button{background-color:var(--primary-color);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:1rem;transition:background-color .3s;width:100%}.login-button:hover{background-color:#1a4bcc}.error-message{background-color:#dc35451a;border-radius:5px;color:var(--danger-color);margin-bottom:1.5rem;padding:.8rem;text-align:center}.register-link{color:var(--text-dark);margin-top:1.5rem;text-align:center}.register-link a{color:var(--primary-color);font-weight:500}.register-page{display:flex;flex-direction:column;min-height:100vh}.register-container{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;flex:1 1;justify-content:center;padding:2rem 1rem}.register-form-container{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000001a;max-width:500px;padding:2.5rem;width:100%}.register-form-container h2{color:#333;font-size:2rem;font-weight:600;margin-bottom:.5rem;text-align:center}.register-subtitle{color:#666;font-size:1rem;margin-bottom:2rem;text-align:center}.register-form{gap:1.5rem}.form-group,.register-form{display:flex;flex-direction:column}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-group label{color:#333;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group select{background-color:#fff;border:2px solid #e1e5e9;border-radius:8px;font-size:1rem;padding:12px 16px;transition:all .3s ease}.form-group input:focus,.form-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input:disabled,.form-group select:disabled{background-color:#f8f9fa;cursor:not-allowed;opacity:.6}.form-help{color:#666;font-size:.8rem;font-style:italic;margin-top:.25rem}.error-message{background-color:#fee;border-left:4px solid #c33;color:#c33}.error-message,.success-message{border-radius:8px;font-size:.9rem;margin-bottom:1rem;padding:12px 16px}.success-message{background-color:#efe;border-left:4px solid #060;color:#060}.register-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;margin-top:1rem;padding:14px 24px;transition:all .3s ease}.register-button:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.register-button:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.login-link{color:#666;font-size:.9rem;margin-top:1.5rem;text-align:center}.login-link a{color:#667eea;font-weight:500;text-decoration:none}.login-link a:hover{text-decoration:underline}@media (max-width:768px){.register-container{padding:1rem}.register-form-container{padding:2rem 1.5rem}.form-row{gap:1.5rem;grid-template-columns:1fr}.register-form-container h2{font-size:1.5rem}}@media (max-width:480px){.register-form-container{padding:1.5rem 1rem}.register-form{gap:1rem}}.form-group select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:20px;padding-right:40px}:root{--primary-color:#667eea;--secondary-color:#00c6ab;--danger-color:#e74c3c;--dark-color:#333;--light-color:#f8f9fa;--white:#fff;--text-dark:#333}.dashboard{background-color:#f8f9fa;background-color:var(--light-color);display:flex;flex-direction:column;min-height:100vh;padding-top:80px}.dashboard-header{align-items:center;background-color:#fff;background-color:var(--white);border-bottom:2px solid #f0f0f0;box-shadow:0 2px 5px #0000001a;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1rem 5%;position:sticky;top:80px;z-index:900}.dashboard-header h1{color:#667eea;color:var(--primary-color);font-size:1.5rem;margin:0}.user-info{color:#666;font-size:.9rem;margin:.5rem 0 0}.logout-button{background-color:#e74c3c;background-color:var(--danger-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:background-color .3s ease}.logout-button:hover{background-color:#c0392b}.dashboard-tabs{background-color:#fff;background-color:var(--white);border-bottom:2px solid #f0f0f0;display:flex;gap:0;margin-bottom:2rem;padding:0 5%}.dashboard-tabs button{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:1rem;padding:1rem 2rem;transition:all .3s ease}.dashboard-tabs button.active{border-bottom-color:#667eea;border-bottom-color:var(--primary-color);color:#667eea;color:var(--primary-color);font-weight:500}.dashboard-tabs button:hover:not(.active){background-color:#f8f9fa;color:#667eea;color:var(--primary-color)}.dashboard-content{flex:1 1;padding:2rem 5%}.dashboard-section{margin-bottom:3rem}.dashboard-section h2{border-bottom:2px solid #00c6ab;border-bottom:2px solid var(--secondary-color);color:#333;color:var(--dark-color);font-size:1.3rem;margin-bottom:1.5rem;padding-bottom:.5rem}.error-container,.loading-container{align-items:center;display:flex;flex-direction:column;height:60vh;justify-content:center;text-align:center}.loading-spinner{color:#667eea;color:var(--primary-color);font-size:1.2rem;font-weight:500}.loading-spinner:after{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;border-top:4px solid var(--primary-color);content:"";display:block;height:40px;margin:20px auto;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-container h2{color:#e74c3c;color:var(--danger-color);margin-bottom:1rem}.error-container p{color:#666;margin-bottom:2rem}.retry-button{background-color:#667eea;background-color:var(--primary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;padding:12px 24px}.retry-button:hover{background-color:#5a6fd8}.enhanced-card{background:#fff;border:1px solid #f0f0f0;border-left:4px solid #667eea;border-left:4px solid var(--primary-color);border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:1.5rem;transition:all .3s ease}.enhanced-card:hover{box-shadow:0 6px 12px #00000026;transform:translateY(-3px)}.enhanced-card h3{color:#667eea;color:var(--primary-color);font-size:1.2rem;margin:0 0 1rem}.card-container{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.dashboard-card{background-color:#fff;background-color:var(--white);border-radius:8px;border-top:4px solid #00c6ab;border-top:4px solid var(--secondary-color);box-shadow:0 3px 10px #0000001a;display:flex;flex-direction:column;min-height:200px;padding:1.5rem;transition:transform .3s,box-shadow .3s}.dashboard-card:hover{box-shadow:0 5px 15px #00000026;transform:translateY(-5px)}.dashboard-card h3{color:#667eea;color:var(--primary-color);margin-bottom:1rem;margin-top:0}.dashboard-card p{color:#333;color:var(--text-dark);line-height:1.5;margin-bottom:1.5rem}.dashboard-card button{background-color:#667eea;background-color:var(--primary-color);border:none;border-radius:5px;color:#fff;cursor:pointer;font-weight:500;margin-top:auto;padding:.5rem 1rem;transition:background-color .3s;width:100%}.dashboard-card button:hover{background-color:#1a4bcc}.vitals-display{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:2rem}.vital-item{background:#f8f9fa;border-radius:8px;padding:1rem;text-align:center}.vital-value{color:#667eea;color:var(--primary-color);font-size:2.5rem;margin:.5rem 0}.vital-label{color:#666;font-size:.9rem;margin-bottom:.5rem}.consultation-timeline{margin-top:2rem;position:relative}.timeline-item{align-items:flex-start;display:flex;margin-bottom:1.5rem;padding-left:2rem;position:relative}.timeline-item:before{content:"";height:100%;left:0;top:0;width:2px}.timeline-dot,.timeline-item:before{background:#00c6ab;background:var(--secondary-color);position:absolute}.timeline-dot{border-radius:50%;height:12px;left:-6px;top:4px;width:12px}.timeline-content{flex:1 1}.timeline-content p{color:#333;margin:0 0 .5rem}.timeline-date{color:#333;color:var(--text-dark);font-size:.85rem;opacity:.7}.status-badge{border-radius:20px;display:inline-block;font-size:.8rem;font-weight:500;padding:4px 12px;text-transform:capitalize}.status-scheduled{background-color:#e3f2fd;color:#1976d2}.status-completed{background-color:#e8f5e8;color:#388e3c}.status-cancelled{background-color:#ffebee;color:#d32f2f}.toolbar{display:flex;flex-direction:column;gap:1rem;margin:1.5rem 0}.toolbar-button{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:12px 20px;text-align:center;transition:all .3s ease}.primary-button{background-color:#667eea;background-color:var(--primary-color);color:#fff}.primary-button:hover{background-color:#5a6fd8;transform:translateY(-2px)}.secondary-button{background:#00c6ab;background:var(--secondary-color);color:#fff}.outline-button{background-color:initial;border:2px solid #667eea;border:2px solid var(--primary-color);color:#667eea;color:var(--primary-color)}.outline-button:hover{background-color:#667eea;background-color:var(--primary-color);color:#fff}.today-schedule{background:#f8f9fa;border-radius:8px;margin-top:1rem;padding:1rem}.schedule-item{grid-gap:1rem;align-items:center;background:#fff;border-left:3px solid #667eea;border-left:3px solid var(--primary-color);border-radius:6px;display:grid;gap:1rem;grid-template-columns:80px 1fr auto;margin-bottom:.5rem;padding:.75rem}.schedule-item:last-child{margin-bottom:0}.schedule-time{color:#667eea;color:var(--primary-color);font-size:.9rem;font-weight:600}.schedule-patient{color:#333;font-weight:500}.schedule-status{display:flex;justify-content:flex-end}.action-buttons{display:flex;gap:.5rem;margin-top:1rem}.action-button{border:none;border-radius:4px;cursor:pointer;font-size:.8rem;padding:6px 12px;transition:all .3s ease}.action-button.start{background-color:#4caf50;color:#fff}.action-button.start:hover{background-color:#45a049}.action-button.reschedule{background-color:#ff9800;color:#fff}.action-button.reschedule:hover{background-color:#e68900}.action-button.cancel{background-color:#f44336;color:#fff}.action-button.cancel:hover{background-color:#da190b}.patients-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:1rem}.patient-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:1.5rem;transition:all .3s ease}.patient-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.patient-info h3{color:#333;font-size:1.2rem;margin:0 0 1rem}.patient-info p{color:#666;font-size:.9rem;margin:.5rem 0}.patient-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.dashboard-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:2fr 1fr;margin-top:2rem}.consultation-panel{display:flex;gap:2rem;margin-top:2rem}.video-container{flex:2 1;min-width:0}.video-placeholder{align-items:center;background-color:#f0f0f0;border:2px dashed #ccc;border-radius:8px;display:flex;height:400px;justify-content:center;margin-bottom:1rem;position:relative}.video-placeholder:before{color:#333;color:var(--text-dark);content:"Video Feed Will Appear Here";opacity:.7}.video-controls{margin-top:1rem}.video-controls button{background-color:#667eea;background-color:var(--primary-color);border:none;border-radius:5px;color:#fff;cursor:pointer;flex:1 1;padding:.8rem 1.5rem;transition:all .3s}.video-controls button:last-child{background-color:#00c6ab;background-color:var(--secondary-color)}.video-controls button:hover{opacity:.9}.patient-info{background-color:#fff;background-color:var(--white);border-radius:8px;box-shadow:0 3px 10px #0000001a;flex:1 1;padding:1.5rem}.heart-rate-display{background-color:#00c6ab1a;border-radius:8px;margin:1.5rem 0;padding:1rem;text-align:center}.heart-rate-display h4{margin-top:0}.heart-rate-display h4,.heart-rate-value{color:#00c6ab;color:var(--secondary-color)}.heart-rate-value{font-size:2.5rem;font-weight:700;margin:.5rem 0}.sample-credentials{background-color:#f8f9fa;border-left:4px solid #667eea;border-left:4px solid var(--primary-color);border-radius:8px;margin-top:2rem;padding:1rem}.sample-credentials h4{color:#333;font-size:1rem;margin:0 0 1rem}.credential-item{color:#555;font-size:.9rem;margin:.5rem 0}.credential-item strong{color:#667eea;color:var(--primary-color)}.stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;display:flex;gap:1rem;padding:1.5rem;transition:transform .3s ease}.stat-card:hover{transform:translateY(-2px)}.stat-icon{align-items:center;background:linear-gradient(135deg,#667eea,#00c6ab);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:50%;display:flex;font-size:2rem;height:60px;justify-content:center;width:60px}.stat-number{color:#667eea;color:var(--primary-color);font-size:2rem;font-weight:700;margin:0}.stat-label{color:#666;margin:.25rem 0 0}.today-appointments{display:flex;flex-direction:column;gap:1rem}.appointment-item{grid-gap:1rem;align-items:center;background:#f8f9fa;border-left:4px solid #667eea;border-left:4px solid var(--primary-color);border-radius:8px;display:grid;gap:1rem;grid-template-columns:80px 1fr auto;padding:1rem}.appointment-time{color:#667eea;color:var(--primary-color);font-weight:600;text-align:center}.appointment-patient strong{color:#333;display:block;margin-bottom:.25rem}.appointment-patient p{color:#666;font-size:.9rem;margin:0}.appointment-actions button{background:#667eea;background:var(--primary-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:6px 16px}.schedule-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:2fr 1fr}.consultations-list{display:flex;flex-direction:column;gap:1rem}.consultation-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:1.5rem}.consultation-item.completed{border-left:4px solid #00c6ab;border-left:4px solid var(--secondary-color)}.consultation-header{margin-bottom:1rem}.consultation-details p{color:#666}.consultation-actions{display:flex;gap:.5rem;margin-top:1rem}.quick-actions{display:flex;flex-direction:column;gap:1rem}.quick-actions button{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:12px 20px;transition:all .3s ease}.quick-actions .primary{background:#667eea;background:var(--primary-color);color:#fff}.quick-actions .secondary{background:#00c6ab;background:var(--secondary-color);color:#fff}.quick-actions .outline{background:#0000;border:2px solid #667eea;border:2px solid var(--primary-color);color:#667eea;color:var(--primary-color)}.patients-controls{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:2rem}.search-box{flex:1 1;max-width:400px}.search-input{border:2px solid #e1e5e9;border-radius:8px;font-size:1rem;padding:12px 16px;transition:border-color .3s ease;width:100%}.search-input:focus{border-color:#667eea;border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a;outline:none}.table-controls{color:#666;font-size:.9rem}.patients-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.patients-table{border-collapse:collapse;width:100%}.patients-table th{background:#667eea;background:var(--primary-color);border-bottom:2px solid #5a6fd8;color:#fff;font-weight:600;padding:1rem;text-align:left}.patients-table th.sortable{cursor:pointer;transition:background-color .3s ease;-webkit-user-select:none;user-select:none}.patients-table th.sortable:hover{background:#5a6fd8}.patients-table td{border-bottom:1px solid #f0f0f0;padding:1rem;vertical-align:middle}.patients-table tr:hover{background:#f8f9fa}.patients-table tr:last-child td{border-bottom:none}.patient-name{gap:1rem}.patient-avatar,.patient-name{align-items:center;display:flex}.patient-avatar{background:#00c6ab;background:var(--secondary-color);border-radius:50%;color:#fff;font-size:.9rem;font-weight:700;height:40px;justify-content:center;width:40px}.patient-id{color:#999;font-size:.8rem;margin-top:.25rem}.consultation-count{background:#667eea;background:var(--primary-color);border-radius:12px;color:#fff;font-size:.8rem;font-weight:500;padding:4px 8px}.no-visits{color:#999;font-style:italic}.table-actions{display:flex;gap:.5rem}.table-btn{border:none;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:500;padding:6px 12px;transition:all .3s ease}.table-btn.primary{background:#667eea;background:var(--primary-color);color:#fff}.table-btn.primary:hover{background:#5a6fd8}.table-btn.secondary{background:#00c6ab;background:var(--secondary-color);color:#fff}.table-btn.secondary:hover{background:#00a693}.no-results{color:#666;padding:3rem;text-align:center}.no-results p{font-size:1.1rem;margin:0}.action-button.primary{background:#667eea;background:var(--primary-color)}.action-button.primary,.action-button.secondary{border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px;transition:all .3s ease}.action-button.secondary{background:#00c6ab;background:var(--secondary-color)}.action-button.outline{background:#0000;border:2px solid #667eea;border:2px solid var(--primary-color);border-radius:6px;color:#667eea;color:var(--primary-color);cursor:pointer;font-weight:500;padding:8px 16px;transition:all .3s ease}@media (max-width:768px){.stats-grid{gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat-card{flex-direction:column;padding:1rem;text-align:center}.stat-icon{font-size:1.5rem;height:50px;width:50px}.appointment-item,.schedule-grid{grid-template-columns:1fr}.appointment-item{gap:.5rem;text-align:center}.patients-controls{align-items:stretch;flex-direction:column}.search-box{max-width:none}.patients-table-container{overflow-x:auto}.patients-table{min-width:600px}.table-actions{flex-direction:column;gap:.25rem}.table-btn{font-size:.7rem;padding:4px 8px}.dashboard-header{align-items:flex-start;flex-direction:column;gap:1rem;padding:1rem}.dashboard-tabs{flex-direction:column;padding:0 1rem}.dashboard-tabs button{border-bottom:1px solid #f0f0f0;border-right:none;text-align:left}.dashboard-tabs button.active{background-color:#f8f9fa;border-bottom-color:#f0f0f0;border-left:3px solid #667eea;border-left:3px solid var(--primary-color)}.dashboard-content{padding:1rem}.card-container{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.dashboard-grid,.vitals-display{grid-template-columns:1fr}.consultation-panel{flex-direction:column}.schedule-item{gap:.5rem;grid-template-columns:1fr;text-align:center}.schedule-time{font-size:1rem;margin-bottom:.25rem}.action-buttons{flex-wrap:wrap;justify-content:center}.patients-grid{grid-template-columns:1fr}}@media (max-width:480px){.dashboard-header h1{font-size:1.2rem}.dashboard-tabs button{font-size:.9rem;padding:.8rem 1rem}.toolbar{gap:.5rem}.toolbar-button{font-size:.9rem;padding:10px 16px}}.video-consultation{background:#f5f7fa;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100vh}.consultation-header{align-items:center;background:#fff;border-bottom:2px solid #e1e8ed;box-shadow:0 2px 10px #0000001a;display:flex;justify-content:space-between;padding:1rem 2rem}.consultation-header h2{color:#2c3e50;font-size:1.5rem;margin:0}.consultation-info{align-items:center;color:#7f8c8d;display:flex;font-size:.9rem;gap:2rem}.device-status{align-items:center;border-radius:20px;display:flex;font-size:.8rem;font-weight:500;gap:.5rem;padding:.5rem 1rem}.device-status.connected{background:#d5f4e6;color:#27ae60}.device-status.disconnected{background:#fadbd8;color:#e74c3c}.status-indicator{animation:pulse 2s infinite;background:currentColor;border-radius:50%;height:8px;width:8px}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.consultation-main{gap:2rem;padding:2rem}.consultation-main,.video-section{display:flex;flex:1 1;overflow:hidden}.video-section{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;flex-direction:column}.video-container{background:#2c3e50;flex:1 1}.demo-video,.video-container{align-items:center;display:flex;justify-content:center;position:relative}.demo-video{height:100%;width:100%}.demo-video,.demo-video.remote-video{background:linear-gradient(135deg,#667eea,#764ba2)}.demo-video.local-video{background:linear-gradient(135deg,#11998e,#38ef7d);border:3px solid #fff;border-radius:8px;bottom:20px;box-shadow:0 4px 15px #0000004d;height:150px;overflow:hidden;position:absolute;right:20px;width:200px}.demo-video-content{color:#fff;position:relative;text-align:center;z-index:2}.demo-video-content.small{transform:scale(.7)}.demo-avatar{filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));font-size:4rem;margin-bottom:1rem}.demo-avatar.small{font-size:2.5rem;margin-bottom:.5rem}.demo-video-content h3{font-size:1.5rem;font-weight:600;margin:0;text-shadow:0 2px 4px #0000004d}.demo-video-content p{font-size:1rem;font-weight:500;margin:0;text-shadow:0 1px 2px #0000004d}.video-effects{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.pulse-animation{animation:videoPulse 2s ease-out infinite;border:2px solid #ffffff4d;border-radius:50%;height:100px;left:50%;margin:-50px 0 0 -50px;position:absolute;top:50%;width:100px}@keyframes videoPulse{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(2)}}.video-off-overlay{align-items:center;background:#000c;bottom:0;color:#fff;display:flex;font-size:1rem;font-weight:500;justify-content:center;left:0;position:absolute;right:0;top:0}.call-starting{color:#fff;text-align:center}.call-starting h3{font-size:2rem;margin:0 0 2rem}.loading-dots{display:flex;gap:.5rem;justify-content:center}.loading-dots span{animation:loadingBounce 1.4s ease-in-out infinite both;background:#fff;border-radius:50%;height:12px;width:12px}.loading-dots span:first-child{animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes loadingBounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.video-label{background:#000000b3;border-radius:15px;bottom:10px;color:#fff;font-size:.8rem;font-weight:500;left:10px;padding:.25rem .75rem;position:absolute}.video-controls{background:#34495e;display:flex;gap:1rem;justify-content:center;padding:2rem}.control-btn{border:none;border-radius:25px;cursor:pointer;font-size:1rem;font-weight:500;min-width:120px;padding:1rem 2rem;transition:all .3s ease}.control-btn.start-call{background:#27ae60;color:#fff}.control-btn.start-call:hover{background:#2ecc71;transform:translateY(-2px)}.control-btn:not(.start-call):not(.end-call){background:#95a5a6;color:#fff}.control-btn:not(.start-call):not(.end-call):hover{background:#7f8c8d}.control-btn.muted,.control-btn.video-off{background:#e74c3c}.control-btn.end-call{background:#e74c3c;color:#fff}.control-btn.end-call:hover{background:#c0392b}.patient-side-panel{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;display:flex;flex:1 1;flex-direction:column;gap:1.5rem;overflow-y:auto;padding:1.5rem}.patient-call-info,.patient-info-card,.patient-instructions-card{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;padding:1.5rem}.patient-call-info h3,.patient-info-card h3,.patient-instructions-card h3{color:#2c3e50;font-size:1.2rem;margin:0 0 1rem}.consultation-details p{color:#2c3e50;font-size:.9rem;margin:.5rem 0}.consultation-details strong{color:#667eea}.patient-monitoring-status{background:linear-gradient(135deg,#d5f4e6,#e8f5e8);border-left:4px solid #27ae60;border-radius:8px;padding:1.5rem;text-align:center}.monitoring-indicator{align-items:center;color:#27ae60;display:flex;font-weight:500;gap:.5rem;justify-content:center;margin-bottom:1rem}.pulse-dot{animation:pulse 1.5s ease-in-out infinite;background:#27ae60;border-radius:50%;height:12px;width:12px}.call-stats{display:flex;flex-direction:column;gap:1rem}.call-stat{align-items:center;background:#fff;border-left:3px solid #667eea;border-radius:6px;display:flex;justify-content:space-between;padding:.75rem}.stat-label{color:#7f8c8d;font-size:.9rem;font-weight:500}.stat-value{color:#2c3e50;font-size:.9rem;font-weight:600}.patient-emergency{display:flex;justify-content:center}.patient-emergency-btn{background:#e74c3c!important;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease;width:100%}.patient-emergency-btn:hover{background:#c0392b!important;box-shadow:0 4px 12px #e74c3c4d;transform:translateY(-2px)}.health-monitoring-section{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:1.5rem}.monitoring-header{align-items:center;border-bottom:2px solid #ecf0f1;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.monitoring-header h3{color:#2c3e50;font-size:1.3rem;margin:0}.body-part-selector{align-items:center;display:flex;gap:.5rem}.body-part-selector label{color:#7f8c8d;font-weight:500}.body-part-selector select{background:#fff;border:2px solid #bdc3c7;border-radius:6px;color:#2c3e50;font-size:.9rem;padding:.5rem 1rem}.current-vitals{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:2rem}.vital-card{align-items:center;background:#f8f9fa;border-left:4px solid #3498db;border-radius:10px;display:flex;gap:1rem;padding:1.5rem;transition:transform .3s ease}.vital-card:hover{box-shadow:0 4px 15px #0000001a;transform:translateY(-2px)}.vital-card.primary{background:linear-gradient(135deg,#ffebee,#f8f9fa);border-left-color:#e74c3c}.vital-icon{font-size:2rem;opacity:.8}.vital-info{flex:1 1}.vital-label{color:#7f8c8d;font-size:.8rem;font-weight:500;margin-bottom:.25rem}.vital-value{color:#2c3e50;font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.vital-status{font-size:.7rem;font-weight:500;opacity:.8;text-transform:uppercase}.real-time-chart{background:#f8f9fa;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.chart-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.chart-header h4{color:#2c3e50;margin:0}.recording-controls{display:flex;gap:.5rem}.record-btn{border:none;border-radius:20px;cursor:pointer;font-size:.8rem;font-weight:500;padding:.5rem 1rem;transition:all .3s ease}.record-btn.start{background:#e74c3c;color:#fff}.record-btn.start:hover{background:#c0392b;transform:translateY(-1px)}.record-btn.stop{background:#95a5a6;color:#fff}.record-btn.stop:hover{background:#7f8c8d}.record-btn:disabled{cursor:not-allowed;opacity:.5}.chart-container{align-items:center;background:#fff;border-radius:6px;display:flex;height:200px;justify-content:center;padding:1rem}.heart-rate-chart{display:flex;flex-direction:column;height:100%;width:100%}.chart-grid{gap:2px;padding:1rem 0}.chart-bar,.chart-grid{align-items:flex-end;display:flex;flex:1 1}.chart-bar{border-radius:2px 2px 0 0;justify-content:center;min-height:20px;position:relative;transition:all .3s ease}.bar-value{color:#2c3e50;font-size:.7rem;font-weight:500;position:absolute;top:-20px}.chart-labels{color:#7f8c8d;display:flex;font-size:.8rem;justify-content:space-between;margin-top:.5rem}.chart-placeholder{color:#7f8c8d;text-align:center}.chart-placeholder p{font-size:1.1rem;margin:0 0 .5rem}.chart-placeholder small{font-size:.9rem;opacity:.8}.monitoring-instructions{background:#e8f4f8;border-left:4px solid #3498db;border-radius:8px;padding:1.5rem}.monitoring-instructions h4{color:#2c3e50;margin:0 0 1rem}.instruction-steps{display:flex;flex-direction:column;gap:1rem}.step{color:#2c3e50;font-size:.9rem;gap:1rem}.step,.step-number{align-items:center;display:flex}.step-number{background:#3498db;border-radius:50%;color:#fff;flex-shrink:0;font-size:.8rem;font-weight:700;height:24px;justify-content:center;width:24px}.emergency-controls{background:#ecf0f1;border-top:1px solid #bdc3c7;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;padding:1rem 2rem}.emergency-btn{background:#f39c12;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .3s ease}.emergency-btn:hover{background:#e67e22;transform:translateY(-1px)}@media (max-width:1200px){.consultation-main{flex-direction:column;gap:1rem}.video-section{height:400px}.current-vitals{grid-template-columns:repeat(2,1fr)}.patient-side-panel{height:auto}.call-stats{flex-direction:row;flex-wrap:wrap}.call-stat{flex:1 1;min-width:150px}}@media (max-width:768px){.consultation-header{flex-direction:column;gap:1rem;text-align:center}.consultation-info{flex-direction:column;gap:.5rem}.consultation-main{padding:1rem}.demo-video.local-video{bottom:10px;height:90px;right:10px;width:120px}.video-controls{flex-direction:column;gap:.5rem}.control-btn{min-width:auto}.current-vitals{grid-template-columns:1fr}.monitoring-header{flex-direction:column;gap:1rem}.chart-container{height:150px}.emergency-controls{flex-direction:column;gap:.5rem}.patient-side-panel{gap:1rem}.call-stats{flex-direction:column}.call-stat{min-width:auto}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.c9b9bbd6.css.map*/