*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);min-height:100vh}.app{min-height:100vh}.auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px}.auth-card{background:white;border-radius:20px;padding:40px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:450px}.auth-header{text-align:center;margin-bottom:30px}.auth-header h1{color:#667eea;font-size:36px;margin-bottom:10px}.auth-header p{color:#666;font-size:16px}.auth-form{display:flex;flex-direction:column;gap:15px}.auth-form h2{text-align:center;color:#333;margin-bottom:20px}.auth-form input,.auth-form select,.auth-form textarea{padding:12px 15px;border:2px solid #e0e0e0;border-radius:10px;font-size:16px;transition:all .3s}.auth-form input:focus,.auth-form select:focus,.auth-form textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.auth-form textarea{resize:vertical;min-height:80px}.test-credentials{margin-top:20px;padding:15px;background:#f5f5f5;border-radius:8px;text-align:center}.test-credentials p{font-weight:600;margin-bottom:5px}.test-credentials small{display:block;color:#666;margin:2px 0}.dashboard-container{background:#f5f7fa;min-height:100vh}.dashboard-header{background:white;padding:20px 30px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 10px #0000001a}.header-left{display:flex;align-items:center;gap:20px}.header-left h1{color:#667eea;font-size:28px}.user-role{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:5px 15px;border-radius:20px;font-size:14px;font-weight:500}.header-right{display:flex;align-items:center;gap:20px}.user-name{color:#666;font-weight:500}.dashboard-nav{background:white;padding:0 30px;display:flex;gap:5px;box-shadow:0 2px 5px #0000000d;overflow-x:auto}.dashboard-nav button{padding:15px 20px;border:none;background:transparent;color:#666;cursor:pointer;transition:all .3s;font-size:15px;font-weight:500;position:relative}.dashboard-nav button:hover,.dashboard-nav button.active{color:#667eea}.dashboard-nav button.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:#667eea}.dashboard-main{padding:30px}.section{background:white;border-radius:15px;padding:30px;box-shadow:0 5px 20px #00000014}.section h2{color:#333;margin-bottom:25px;font-size:26px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:25px;border-radius:15px;text-align:center;box-shadow:0 5px 15px #667eea4d}.stat-card h3{font-size:14px;opacity:.9;margin-bottom:10px;text-transform:uppercase;letter-spacing:1px}.stat-number{font-size:36px;font-weight:700}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:20px}.card{background:#f8f9fa;border-radius:12px;padding:20px;border:1px solid #e0e0e0;transition:all .3s}.card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #00000026}.card h3{color:#333;margin-bottom:15px;font-size:20px}.card p{color:#666;margin-bottom:8px;line-height:1.6}.card-actions{display:flex;gap:10px;margin-top:15px}.card-actions select{padding:8px;border:1px solid #ddd;border-radius:6px;background:white}.form-container{background:#f8f9fa;border-radius:12px;padding:25px;margin-bottom:30px;border:1px solid #e0e0e0}.form-container h3{color:#333;margin-bottom:20px}.form-group textarea{resize:vertical;min-height:100px}.time-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px}.time-slot{padding:12px;border:2px solid #e0e0e0;background:white;border-radius:8px;cursor:pointer;transition:all .3s;text-align:center;position:relative}.time-slot:hover:not(.disabled){border-color:#667eea;transform:translateY(-2px)}.time-slot.selected{background:#667eea;color:#fff;border-color:#667eea}.time-slot.disabled{background:#f5f5f5;color:#999;cursor:not-allowed;opacity:.6}.booked-label{display:block;font-size:10px;margin-top:2px;color:#999}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:10px;margin-top:10px}.slot-btn{padding:10px 8px;border-radius:8px;font-size:14px;border:1px solid #d1d5db;background:#ffffff;cursor:pointer;transition:all .25s ease;text-align:center;font-weight:500}.slot-btn:not(.disabled-slot):hover{background:#eef2ff;border-color:#6366f1;transform:translateY(-2px)}.slot-btn.selected{background:#4f46e5;color:#fff;border-color:#4338ca;font-weight:600;transform:scale(1.03)}.slot-btn.disabled-slot{background:#f3f4f6!important;color:#9ca3af!important;border-color:#e5e7eb!important;cursor:not-allowed!important;opacity:.7;transform:none!important}.no-slots{color:#6b7280;font-size:14px;grid-column:1 / -1;text-align:center;margin-top:10px}.appointment-summary{background:#f0f4ff;padding:20px;border-radius:10px;margin-top:20px;border:2px solid #667eea}.appointment-summary h3{color:#667eea;margin-bottom:15px}.appointment-summary p{margin-bottom:10px;color:#333}.status{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500;display:inline-block}.status.Scheduled{background:#fff3cd;color:#856404}.status.Checked-In{background:#cce5ff;color:#004085}.status.Consulted{background:#d4edda;color:#155724}.status.Completed{background:#d1ecf1;color:#0c5460}.schedule-list{display:flex;flex-direction:column;gap:10px}.schedule-item{display:flex;align-items:center;padding:15px;background:#f8f9fa;border-radius:8px;border:1px solid #e0e0e0}.schedule-item .time{font-weight:600;color:#667eea;margin-right:20px;min-width:60px}.schedule-item .patient{flex:1;color:#333}.quick-actions{background:#f8f9fa;padding:20px;border-radius:10px;margin-top:20px}.quick-actions h3{color:#333;margin-bottom:10px}.btn-primary{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;cursor:pointer;transition:all .3s;font-weight:500}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#6c757d;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;cursor:pointer;transition:all .3s}.btn-secondary:hover{background:#5a6268}.btn-danger{background:#dc3545;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;cursor:pointer;transition:all .3s}.btn-danger:hover{background:#c82333}.btn-link{background:none;border:none;color:#667eea;cursor:pointer;text-decoration:underline;font-size:14px;margin-top:15px}.btn-link:hover{color:#5a67d8}.btn-logout{background:#dc3545;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;transition:all .3s}.btn-logout:hover{background:#c82333}.btn-float{position:fixed;bottom:30px;right:30px;box-shadow:0 5px 15px #667eea66;z-index:100}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.modal-content{background:white;border-radius:15px;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;animation:slideUp .3s ease}.modal-header{padding:20px 25px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.modal-header h3{color:#333;font-size:20px}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.modal-close:hover{color:#333}.modal-body{padding:25px}.message{position:fixed;top:20px;right:20px;padding:15px 20px;border-radius:8px;color:#fff;display:flex;align-items:center;gap:10px;z-index:2000;animation:slideInRight .3s ease;min-width:250px;box-shadow:0 5px 15px #0003}.message-success{background:linear-gradient(135deg,#27ae60 0%,#2ecc71 100%)}.message-error{background:linear-gradient(135deg,#e74c3c 0%,#c0392b 100%)}.message button{background:none;border:none;color:#fff;font-size:20px;cursor:pointer;padding:0;margin-left:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.loading{display:flex;justify-content:center;align-items:center;padding:40px;color:#666}@media (max-width: 768px){.dashboard-header{flex-direction:column;gap:15px;text-align:center}.dashboard-nav{justify-content:flex-start;padding:0 15px}.card-grid,.stats-grid{grid-template-columns:1fr}.form-actions,.card-actions{flex-direction:column}.time-slots{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.dashboard-main{padding:15px}.section{padding:20px}.modal-content{width:95%;margin:20px}.btn-float{bottom:20px;right:20px}}@media (max-width: 480px){.auth-card{padding:20px}.auth-header h1,.stat-number{font-size:28px}}@media print{.dashboard-header,.dashboard-nav,.btn-primary,.btn-secondary,.btn-danger,.btn-float{display:none!important}.dashboard-container{background:white}.section{box-shadow:none;border:1px solid #ddd}}.data-table{width:100%;border-collapse:collapse;background:white;border-radius:8px;overflow:hidden}.data-table thead{background:#f8f9fa}.data-table th{padding:12px;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #e0e0e0}.data-table td{padding:12px;border-bottom:1px solid #f0f0f0}.data-table tbody tr:hover{background:#f8f9fa}.admin-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin-top:30px}.recent-activities{background:#f8f9fa;padding:20px;border-radius:12px}.activity-list{margin-top:15px}.activity-item{display:flex;gap:15px;padding:12px;background:white;border-radius:8px;margin-bottom:10px}.activity-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px}.activity-icon.patient{background:#e3f2fd}.activity-icon.appointment{background:#f3e5f5}.activity-icon.lab{background:#e8f5e9}.activity-icon.employee{background:#fff3e0}.department-stats{display:flex;flex-direction:column;gap:10px;margin-top:15px}.dept-item{display:flex;justify-content:space-between;padding:10px;background:white;border-radius:6px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.employee-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:20px}.employee-card{display:flex;flex-direction:column;align-items:center;padding:20px;text-align:center}.employee-avatar{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;margin-bottom:15px}.employee-details h3{margin-bottom:5px}.employee-email{color:#666;font-size:14px;margin-bottom:10px}.employee-role{display:inline-block;padding:4px 12px;background:#f0f4ff;color:#667eea;border-radius:20px;font-size:12px;margin-top:5px}.employee-filters{display:flex;gap:15px;margin-bottom:20px}.search-input{flex:1;padding:10px;border:1px solid #e0e0e0;border-radius:8px}.filter-select{padding:10px;border:1px solid #e0e0e0;border-radius:8px;background:white}.checkin-board{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:20px}.status-column{background:#f8f9fa;border-radius:12px;padding:15px}.column-header{padding:10px;border-radius:8px;margin-bottom:15px;font-size:16px;font-weight:600}.column-header.scheduled{background:#fff3cd;color:#856404}.column-header.checked-in{background:#cce5ff;color:#004085}.column-header.consulted{background:#d4edda;color:#155724}.column-header.completed{background:#d1ecf1;color:#0c5460}.appointment-cards{display:flex;flex-direction:column;gap:10px}.appointment-card{background:white;padding:15px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.appointment-card.completed{opacity:.7}.patient-history-container{max-width:100%}.patient-header{display:flex;gap:20px;padding:20px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border-radius:12px;margin-bottom:20px}.patient-avatar{width:80px;height:80px;background:white;color:#667eea;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700}.patient-meta{display:flex;gap:15px;margin-top:10px;font-size:14px;opacity:.9}.history-tabs{display:flex;gap:10px;border-bottom:2px solid #e0e0e0;margin-bottom:20px}.tab{padding:10px 20px;background:none;border:none;cursor:pointer;color:#666;font-weight:500;transition:all .3s}.tab.active{color:#667eea;border-bottom:3px solid #667eea;margin-bottom:-2px}.lab-reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px;margin-top:20px}.lab-report-card{background:white;border:1px solid #e0e0e0;border-radius:12px;padding:20px}.report-filters{display:flex;gap:10px;margin-bottom:20px}.filter-btn{padding:10px 20px;border:1px solid #e0e0e0;background:white;border-radius:8px;cursor:pointer;transition:all .3s}.filter-btn.active{background:#667eea;color:#fff;border-color:#667eea}.upload-info{background:#f0f4ff;padding:20px;border-radius:12px;margin-top:30px}.upload-info h3{color:#667eea;margin-bottom:10px}.upload-info ul{margin-left:20px;color:#666}.spinner{display:inline-block;width:12px;height:12px;border:2px solid #ffffff;border-radius:50%;border-top-color:transparent;animation:spin .8s linear infinite;margin-right:5px}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 1200px){.checkin-board{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}}@media (max-width: 768px){.checkin-board,.employee-grid,.lab-reports-grid{grid-template-columns:1fr}}.dashboard-welcome{margin-bottom:30px}.dashboard-welcome h2{color:#333;margin-bottom:5px}.dashboard-welcome p{color:#666}.dashboard-sections{display:grid;grid-template-columns:2fr 1fr;gap:30px;margin-top:30px}.recent-appointments{background:#f8f9fa;padding:20px;border-radius:12px}.appointment-list{margin-top:15px}.appointment-item{display:flex;align-items:center;gap:15px;padding:15px;background:white;border-radius:8px;margin-bottom:10px}.appointment-date{display:flex;flex-direction:column;align-items:center;padding:10px;background:#667eea;color:#fff;border-radius:8px;min-width:50px}.appointment-date .day{font-size:20px;font-weight:700}.appointment-date .month{font-size:12px;text-transform:uppercase}.appointment-details{flex:1}.appointment-details h4{margin-bottom:5px;color:#333}.appointment-details p{color:#666;font-size:14px}.quick-actions{background:#f8f9fa;padding:20px;border-radius:12px}.action-buttons{display:flex;flex-direction:column;gap:10px;margin-top:15px}.action-btn{display:flex;align-items:center;gap:10px;padding:12px;background:white;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .3s}.action-btn:hover{background:#667eea;color:#fff;border-color:#667eea}.action-icon{font-size:20px}.empty-state{text-align:center;padding:40px}.empty-state p{color:#666;margin-bottom:20px}.stat-icon{font-size:30px;margin-bottom:10px}.stat-content h3{font-size:14px;color:#666;margin-bottom:5px}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.card-body{margin-bottom:15px}.card-body p{margin-bottom:8px}.btn-small{padding:6px 12px;font-size:12px}.no-data{text-align:center;color:#999;padding:20px}@media (max-width: 768px){.dashboard-sections{grid-template-columns:1fr}}.chatbot-button{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer}.chatbot-panel{position:fixed;right:30px;bottom:100px;width:320px;max-height:60vh;background:white;border-radius:12px;box-shadow:0 10px 30px #00000026;z-index:1200;display:flex;flex-direction:column;overflow:hidden}.chatbot-header{padding:12px 14px;border-bottom:1px solid #f0f0f0;background:linear-gradient(90deg,#667eea,#764ba2);color:#fff;display:flex;flex-direction:column;gap:4px}.chatbot-messages{padding:12px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:8px;background:#fbfbff}.chatbot-message{padding:10px 12px;border-radius:12px;max-width:85%}.chatbot-message.user{background:#667eea;color:#fff;align-self:flex-end}.chatbot-message.bot{background:#f1f3ff;color:#222;align-self:flex-start}.chatbot-input{display:flex;gap:8px;padding:10px;border-top:1px solid #f0f0f0}.chatbot-input input{flex:1;padding:10px 12px;border-radius:8px;border:1px solid #e6e6e6}.chatbot-quick{display:flex;gap:8px;padding:10px;border-top:1px solid #f0f0f0;background:#ffffff}.chatbot-quick .btn-secondary{padding:6px 8px;font-size:13px}@media (max-width: 480px){.chatbot-panel{right:16px;left:16px;bottom:90px;width:auto}}.calendar-container{background:white;border-radius:12px;padding:20px}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-weight:700;margin-bottom:10px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-day{padding:10px;text-align:center;border:1px solid #e0e0e0;cursor:pointer;position:relative;min-height:40px}.calendar-day.today{background:#e3f2fd}.calendar-day.selected{background:#667eea;color:#fff}.calendar-day.has-appointments:after{content:"•";position:absolute;bottom:2px;left:50%;transform:translate(-50%);color:#4caf50;font-size:20px}.schedule-timeline{display:flex;flex-direction:column;gap:15px}.timeline-item{display:flex;gap:20px;padding:15px;background:#f8f9fa;border-radius:8px}.timeline-item .time{font-weight:700;color:#667eea;min-width:80px}.payment-item{display:flex;justify-content:space-between;align-items:center;padding:15px;background:white;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:10px}.payment-status{padding:4px 8px;border-radius:4px;font-size:12px}.payment-status.Paid{background:#4caf50;color:#fff}.payment-status.Pending{background:#ff9800;color:#fff}.doctor-schedule-card{display:flex;justify-content:space-between;align-items:center;padding:20px;background:white;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:15px}.doctor-info h3{margin:0;color:#333}.specialty{color:#666;font-size:14px}.walkin-form{padding:20px}.walkin-form .form-group{margin-bottom:15px}.lab-test-note{background:#fff3cd;border:1px solid #ffc107;padding:10px;border-radius:5px;margin-top:10px;color:#856404}.stat-card.clickable{cursor:pointer;transition:transform .2s}.stat-card.clickable:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0000001a}.doctor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;margin-top:20px}.doctor-card{background:white;border:1px solid #e0e0e0;border-radius:12px;padding:20px;text-align:center}.doctor-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;margin:0 auto 15px}.availability{margin:10px 0}.error-message{background:#f8d7da;color:#721c24;padding:10px;border-radius:4px;margin-bottom:15px;border:1px solid #f5c6cb}.form-container{background:#f8f9fa;border-radius:12px;padding:25px;margin-bottom:30px}.form-group{margin-bottom:20px}.form-group label{display:block;color:#333;margin-bottom:8px;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:16px;transition:all .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea}.form-actions{display:flex;gap:10px;margin-top:20px}.appointments-page{padding:20px;background:#f8f9fd}.page-title{font-size:1.8rem;margin-bottom:20px;font-weight:600;color:#333}.appointment-tabs{display:flex;gap:12px;margin-bottom:25px;flex-wrap:wrap}.tab-btn{border:none;padding:10px 20px;background:#e0e0e0;border-radius:20px;font-weight:500;cursor:pointer;transition:all .2s ease}.tab-btn.active{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff}.appointments-list{display:grid;gap:20px}.glass-card{background:rgba(255,255,255,.9);border-radius:16px;box-shadow:0 4px 12px #0000000d;padding:20px;border:1px solid rgba(230,230,230,.6);transition:transform .2s ease,box-shadow .2s ease}.glass-card:hover{transform:translateY(-3px);box-shadow:0 8px 18px #0000001a}.appointment-header{display:flex;justify-content:space-between;align-items:center}.status-badge{padding:6px 12px;border-radius:12px;font-size:.85rem;font-weight:600}.status-badge.scheduled{background:#e3f2fd;color:#1976d2}.status-badge.completed{background:#e8f5e9;color:#388e3c}.status-badge.cancelled{background:#ffebee;color:#d32f2f}.appointment-body{margin-top:10px;line-height:1.6;color:#444}.appointment-actions{display:flex;gap:10px;margin-top:15px}.btn{border:none;border-radius:6px;padding:8px 14px;cursor:pointer;font-weight:500;transition:.2s}.btn-edit{background:#2196f3;color:#fff}.btn-danger{background:#f44336;color:#fff}.btn:hover{opacity:.9}.no-data{text-align:center;color:#888;font-style:italic}.loading-text{text-align:center;color:#555}.doctors-page{padding:20px;background:#f8f9fd}.doctors-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:25px}.doctor-card{display:flex;flex-direction:column;align-items:center;text-align:center;background:rgba(255,255,255,.95);border-radius:18px;padding:25px 20px;box-shadow:0 4px 12px #0000000d;transition:transform .25s ease,box-shadow .25s ease}.doctor-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000014}.doctor-avatar{width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,#667eea 0%,#764ba2 100% 100%);color:#fff;font-size:1.5rem;font-weight:600;display:flex;align-items:center;justify-content:center;margin-bottom:15px}.doctor-name{font-size:1.2rem;font-weight:600;color:#222;margin-bottom:6px}.specialization{color:#555;font-weight:500;margin:3px 0}.qualification{color:#666;margin-bottom:8px}.availability{margin:8px 0}.availability-badge{display:inline-block;padding:5px 10px;border-radius:10px;font-size:.85rem;font-weight:600}.availability-badge.available{background:#e8f5e9;color:#2e7d32}.availability-badge.unavailable{background:#ffebee;color:#c62828}.working-hours{margin-top:10px;font-size:.9rem;color:#555}.book-btn{margin-top:15px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:10px 18px;border-radius:8px;font-weight:600;transition:.2s}.book-btn:hover{opacity:.9;transform:scale(1.03)}.book-appointment-page{padding:30px;background:#f8f9fd;display:flex;flex-direction:column;align-items:center}.booking-card{width:100%;max-width:600px;background:rgba(255,255,255,.95);border-radius:20px;padding:25px 30px;box-shadow:0 8px 24px #00000014;transition:.3s}.booking-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px #0000001f}.form-group{display:flex;flex-direction:column;margin-bottom:18px}.form-group label{font-weight:600;margin-bottom:8px;color:#333}.styled-select,.styled-input,.styled-textarea{border:1px solid #ddd;border-radius:8px;padding:10px 12px;font-size:1rem;outline:none;transition:.2s;background:#fff}.styled-select:focus,.styled-input:focus,.styled-textarea:focus{border-color:#6a11cb;box-shadow:0 0 0 3px #6a11cb1a}.slot-grid{display:flex;flex-wrap:wrap;gap:10px}.slot-btn{background:#e0e0e0;border:none;border-radius:8px;padding:8px 14px;cursor:pointer;transition:.2s;font-weight:500}.slot-btn:hover{background:#d0d0d0}.slot-btn.selected{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;font-weight:600;transform:scale(1.05)}.booking-summary{margin-top:25px;padding:15px 20px;background:linear-gradient(120deg,#eef2ff,#e0ecff);border-radius:12px;line-height:1.6;color:#333}.confirm-btn{margin-top:15px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:10px 20px;border-radius:10px;font-weight:600;transition:.2s;border:none}.confirm-btn:hover{transform:scale(1.05);opacity:.9}.prescriptions-page{padding:30px;background:#f8f9fd}.prescriptions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px;margin-top:20px}.prescription-card{display:flex;flex-direction:column;justify-content:space-between;background:rgba(219,218,223,.95);border-radius:18px;padding:22px 20px;box-shadow:0 4px 14px #0000000d;transition:transform .25s ease,box-shadow .25s ease}.prescription-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #00000014}.prescription-header{display:flex;align-items:center;margin-bottom:15px;border-bottom:2px solid white;padding-bottom:10px}.pill-icon{font-size:1.8rem;margin-right:10px}.prescription-title h3{font-size:1.2rem;font-weight:600;color:#222;margin:0}.prescription-title .date{font-size:.9rem;color:#777}.prescription-body{line-height:1.6;color:#444;margin-bottom:12px}.lab-test-alert{margin-top:12px;background:linear-gradient(90deg,#fff8e1,#fff3cd);padding:10px 12px;border-radius:10px;color:#795548;font-weight:500;border-left:4px solid #ffc107}.prescription-actions{display:flex;gap:10px;justify-content:flex-end}.btn{border:none;border-radius:8px;padding:8px 14px;cursor:pointer;font-weight:600;transition:.2s}.btn-primary{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff}.btn-secondary{background:#e0e0e0;color:#333}.btn:hover{opacity:.9;transform:scale(1.03)}.receptionist-dashboard{text-align:center;background:#f8faff;min-height:100vh;padding:40px 30px}.stats-grid.two-cards{display:flex;justify-content:center;gap:40px;margin:40px auto;max-width:900px}.stats-grid.two-cards .stat-card{flex:1;min-width:300px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100% 100%);color:#fff;border-radius:18px;padding:30px 20px;box-shadow:0 8px 20px #6a11cb33;transition:transform .25s ease,box-shadow .25s ease}.stats-grid.two-cards .stat-card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #6a11cb4d}.stats-grid.two-cards .stat-icon{font-size:2rem;margin-bottom:10px}.stats-grid.two-cards h3{font-size:1.2rem;margin:0;text-transform:uppercase;letter-spacing:.8px}.stats-grid.two-cards .stat-number{font-size:2rem;font-weight:700;margin-top:8px}.quick-actions{margin-top:50px;background:white;border-radius:16px;padding:25px;box-shadow:0 4px 15px #0000000d;max-width:900px;margin-left:auto;margin-right:auto}.quick-actions h3{margin-bottom:15px;font-weight:600;color:#333;border-bottom:2px solid #eef2ff;display:inline-block;padding-bottom:5px}.action-grid{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.action-btn{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:10px 20px;border-radius:10px;font-weight:600;cursor:pointer;transition:.3s}.action-btn:hover{transform:scale(1.05);opacity:.9}.checkbox-row{display:flex;align-items:center;gap:10px;margin-top:10px}.checkbox-row input[type=checkbox]{width:18px;height:18px;cursor:pointer}
