body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;height:100vh;justify-content:center}.login-form{background:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;max-width:400px;padding:2rem;width:100%}.login-form h2{color:#333;margin-bottom:2rem;text-align:center}.form-group{margin-bottom:1rem}.form-group label{color:#555;font-weight:700}.form-group input,.form-group select{border-radius:5px}button{background:#667eea;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem;transition:background .3s;width:100%}button:hover:not(:disabled){background:#5a6fd8}button:disabled{background:#ccc;cursor:not-allowed}.logo-container{display:flex;justify-content:center;margin-bottom:1.5rem}.login-logo{max-height:120px;max-width:120px;object-fit:contain}@media (max-width:768px){.login-logo{max-height:100px;max-width:100px}}.queue-management{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:2fr 1fr;min-height:600px}.queue-container{display:flex;flex-direction:column;gap:2rem}.add-to-queue-form{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:1.5rem}.add-to-queue-form h3{border-bottom:2px solid #f8f9fa;color:#2c3e50;font-size:1.2rem;margin:0 0 1.5rem;padding-bottom:.5rem}.add-to-queue-form form{display:flex;flex-direction:column;gap:1rem}.form-group input,.form-group select{background:#fff;border:2px solid #e1e5e9;border-radius:8px;font-size:1rem;padding:.75rem;transition:all .3s ease}.form-group input:focus,.form-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.add-to-queue-form button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:1rem;padding:1rem;transition:all .3s ease}.add-to-queue-form button:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.add-to-queue-form button:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.current-queue{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;flex:1 1;padding:1.5rem}.current-queue h3{border-bottom:2px solid #f8f9fa;color:#2c3e50;font-size:1.2rem;margin:0 0 1.5rem;padding-bottom:.5rem}.empty-queue{padding:3rem 2rem}.empty-queue p{font-size:1.1rem;font-style:italic}.queue-list{gap:1rem;max-height:500px;overflow-y:auto}.queue-item{align-items:flex-start;background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;gap:1rem;padding:1.25rem}.queue-item:hover{box-shadow:0 2px 8px #0000001a;transform:translateX(4px)}.queue-item-header{align-items:center;display:flex;gap:1rem;margin-bottom:.75rem}.queue-position{background:#2c3e50;border-radius:15px;color:#fff;font-size:.8rem;font-weight:700;min-width:40px;padding:.25rem .75rem;text-align:center}.patient-info{flex:1 1}.patient-info h4{font-size:1.1rem}.patient-id{font-size:.9rem;font-weight:500;margin:0 0 .5rem}.visit-reason{font-size:.95rem;margin:0 0 .5rem}.check-in-time{color:#6c757d;font-size:.8rem;margin:0}.queue-actions{gap:.5rem;min-width:100px}.remove-btn{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .3s ease}.remove-btn:hover{background:#c82333;transform:translateY(-1px)}.doctors-sidebar{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;height:-webkit-fit-content;height:fit-content;padding:1.5rem}.doctors-sidebar h3{border-bottom:2px solid #f8f9fa;color:#2c3e50;font-size:1.2rem;margin:0 0 1.5rem;padding-bottom:.5rem;text-align:center}.doctor-card{border-left:4px solid #6c757d;border-radius:8px;transition:all .3s ease}.doctor-card.busy{border-left-color:#ffc107}.doctor-card.offline{border-left-color:#6c757d;opacity:.6}.doctor-card:hover{box-shadow:0 2px 5px #0000001a;transform:translateX(2px)}.doctor-info p{color:#6c757d;margin:0 0 .5rem}.current-patients{color:#495057;font-weight:500}.status-indicator{border-radius:15px;color:#fff;font-size:.8rem;margin-top:.5rem;padding:.25rem .75rem;text-align:center}.status-indicator.free{background:#28a745}.status-indicator.busy{background:#ffc107;color:#212529}.status-indicator.offline{background:#6c757d}.queue-list::-webkit-scrollbar{width:6px}.queue-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.queue-list::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.queue-list::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width:1024px){.queue-management{gap:1.5rem;grid-template-columns:1fr}.doctors-sidebar{order:-1}}@media (max-width:768px){.queue-item{flex-direction:column;gap:1rem}.queue-actions{flex-direction:row;justify-content:flex-end;width:100%}.add-to-queue-form,.current-queue,.doctors-sidebar,.queue-container{padding:1rem}}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.queue-item{animation:slideIn .3s ease}.waiting-time{background:#f8f9fa;border-radius:4px;display:inline-block;font-family:Courier New,monospace;font-size:14px;font-weight:700;margin-top:5px;padding:4px 8px}.arrival-time{color:#6c757d;font-size:13px;margin:2px 0}.queue-item .patient-info p{margin:3px 0}.file-upload-hint{color:#666;display:block;font-size:.85em;margin-top:5px}.files-list{background-color:#f9f9f9;border:1px solid #ddd;border-radius:4px;margin-top:10px;padding:10px}.remove-file-btn{border-radius:3px;font-size:.8em;padding:4px 8px}.remove-file-btn:hover:not(:disabled){background:#c82333}.remove-file-btn:disabled{background:#6c757d;cursor:not-allowed}.clear-all-files-btn{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85em;margin-top:10px;padding:6px 12px}.clear-all-files-btn:hover:not(:disabled){background:#5a6268}.clear-all-files-btn:disabled{background:#a0a0a0;cursor:not-allowed}.document-badge{background:#17a2b8;color:#fff;font-size:.8em;margin-left:5px;padding:2px 6px}.document-actions{gap:5px;margin-top:5px}.view-document-btn{align-items:center;background:#17a2b8;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:.8em;gap:4px;padding:4px 8px}.view-document-btn:hover{background:#138496}.zip-btn{background:#28a745}.zip-btn:hover{background:#218838}.file-info{align-items:center;background:#fff;border:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:5px;padding:8px}.file-details p{font-size:.9em;margin:2px 0}.document-viewer-modal{align-items:center;background:#000c;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.document-viewer-content{background:#fff;border-radius:8px;display:flex;flex-direction:column;height:90%;overflow:hidden;width:90%}.document-viewer-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #eee;display:flex;flex-shrink:0;justify-content:space-between;padding:20px}.close-document-viewer{background:#ff0202;border:none;cursor:pointer;font-size:24px;padding:5px;width:10%}.close-document-viewer:hover{background:#e9ecef;border-radius:4px}.documents-tabs-container{display:flex;flex-direction:column;height:100%}.documents-tabs{background:#f8f9fa;flex-shrink:0;min-height:50px}.tab-button{background:none;border-bottom:3px solid #0000;flex-shrink:0}.tab-button:hover{background:#e9ecef}.tab-button.active{background:#fff;border-bottom-color:#007bff}.tab-content{flex:1 1;overflow:auto;padding:20px}.document-info{border-left:4px solid #007bff;margin-bottom:20px}.document-preview{background:#f8f9fa;border:1px solid #ddd;height:500px}.document-image{width:100%}.document-frame,.document-image{background:#fff;height:100%}.document-viewer-actions{background:#f8f9fa;border-top:1px solid #eee;flex-shrink:0;padding:20px;text-align:center}.document-error,.document-loading,.loading-documents,.unsupported-format{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;padding:40px;text-align:center}.download-btn,.load-now-btn,.retry-btn{font-size:14px;padding:8px 16px}.documents-tabs::-webkit-scrollbar{height:6px}.documents-tabs::-webkit-scrollbar-track{background:#f1f1f1}.documents-tabs::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.documents-tabs::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.edit-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.edit-modal{background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #0003;max-height:90vh;max-width:700px;overflow-y:auto;width:90%}.edit-modal-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #e0e0e0;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:20px}.edit-modal-header h3{color:#2c3e50;margin:0}.close-edit-modal{background:none;border:none;color:#6c757d;cursor:pointer;font-size:24px;transition:color .2s}.close-edit-modal:hover{color:#dc3545}.edit-modal-content{padding:20px}.patient-info-summary{background-color:#f8f9fa;border-left:4px solid #3498db;border-radius:6px;margin-bottom:20px;padding:15px}.patient-info-summary h4{color:#2c3e50;margin:0 0 10px}.patient-info-summary p{color:#555;margin:5px 0}.edit-modal-actions{border-top:1px solid #e0e0e0;display:flex;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:20px}.cancel-btn{background-color:#6c757d;transition:background-color .2s}.cancel-btn:hover:not(:disabled){background-color:#5a6268}.update-btn{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:10px 20px;transition:background-color .2s}.update-btn:hover:not(:disabled){background-color:#218838}.cancel-btn:disabled,.update-btn:disabled{cursor:not-allowed;opacity:.6}.queue-actions{display:flex;flex-direction:column;gap:8px;margin-top:10px}.queue-actions .update-btn{background-color:#17a2b8;font-size:14px;padding:8px 12px}.queue-actions .update-btn:hover{background-color:#138496}.queue-actions .view-document-btn{background-color:#6f42c1;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 12px;transition:background-color .2s}.queue-actions .view-document-btn:hover{background-color:#5a32a3}.queue-actions .remove-btn{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 12px;transition:background-color .2s}.queue-actions .remove-btn:hover{background-color:#c82333}.edit-modal-content form{max-height:60vh;overflow-y:auto;padding-right:10px}.edit-modal-content form::-webkit-scrollbar{width:6px}.edit-modal-content form::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.edit-modal-content form::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.edit-modal-content form::-webkit-scrollbar-thumb:hover{background:#555}.add-patient{margin:0 auto;max-width:800px;padding:20px}.tab-btn active{background:#2c5aa0}.add-patient-header{margin-bottom:30px;text-align:center}.add-patient-header h2{color:#2c5aa0;font-size:28px;margin-bottom:10px}.subtitle{color:#666;font-size:16px;line-height:1.5}.patient-form{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:30px}.form-section{border-bottom:1px solid #e0e0e0;margin-bottom:30px;padding-bottom:20px}.form-section:last-of-type{border-bottom:none}.form-section h3{border-bottom:2px solid #f0f0f0;color:#2c5aa0;font-size:20px;margin-bottom:20px;padding-bottom:10px}.form-row{grid-gap:20px}.form-group input,.form-group select,.form-group textarea{background:#fff;border:2px solid #e0e0e0;border-radius:6px;font-size:16px;padding:12px;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{box-shadow:0 0 0 3px #2c5aa01a}.form-group textarea{min-height:80px}.autocomplete-container{position:relative}.autocomplete-container input.with-suggestions{border-bottom-color:#ccc;border-bottom-left-radius:0;border-bottom-right-radius:0}.suggestions-dropdown{background:#fff;border:2px solid #ccc;border-radius:0 0 6px 6px;border-top:none;box-shadow:0 4px 12px #00000026;left:0;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.suggestions-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e0e0e0;color:#666;display:flex;font-size:14px;font-weight:600;justify-content:space-between;padding:10px 15px}.close-suggestions{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:flex;font-size:16px;height:20px;justify-content:center;padding:0;width:20px}.close-suggestions:hover{color:#666}.suggestion-item{border-bottom:1px solid #f0f0f0;cursor:pointer;padding:12px 15px;transition:background-color .2s ease}.suggestion-item:hover{background:#e3f2fd}.suggestion-item:last-child{border-bottom:none}.suggestion-main{align-items:center;display:flex;justify-content:space-between;margin-bottom:5px}.suggestion-main strong{color:#2c5aa0;font-size:16px}.patient-id{border-radius:12px;font-weight:600;padding:2px 8px}.suggestion-details{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:5px}.suggestion-details span{color:#666;font-size:13px}.suggestion-address{color:#888;font-size:13px;font-style:italic}.existing-patient-warning{align-items:center;background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;color:#856404;display:flex;font-size:14px;justify-content:space-between;margin-top:8px;padding:10px 15px}.clear-selection{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:4px 8px;transition:background .3s ease}.clear-selection:hover{background:#c82333}.form-actions{align-items:center;border-top:1px solid #e0e0e0;justify-content:space-between}.clear-btn{background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;padding:12px 24px;transition:background .3s ease}.clear-btn:hover:not(:disabled){background:#5a6268}.clear-btn:disabled{background:#a0a0a0;cursor:not-allowed}.submit-btn{align-items:center;background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;padding:12px 30px;transition:background .3s ease}.submit-btn:hover:not(:disabled){background:#218838}.submit-btn:disabled{background:#a0a0a0;cursor:not-allowed}.loading-spinner-small{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.quick-help{background:#f8f9fa;border-left:4px solid #2c5aa0;border-radius:6px;margin-top:30px;padding:20px}.quick-help h4{color:#2c5aa0;margin:0 0 10px}.quick-help ul{margin:0;padding-left:20px}.quick-help li{color:#555;line-height:1.4;margin-bottom:8px}.quick-help li:last-child{margin-bottom:0}@media (max-width:768px){.add-patient{padding:10px}.patient-form{padding:20px}.form-row{gap:0;grid-template-columns:1fr}.form-actions{flex-direction:column;gap:10px}.clear-btn,.submit-btn{justify-content:center;width:100%}.suggestion-details{flex-direction:column;gap:5px}.existing-patient-warning{align-items:flex-start;flex-direction:column;gap:10px}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.suggestions-dropdown{animation:slideDown .2s ease-out}.chat-interface{background:#fff;border:1px solid #e1e5e9;border-radius:15px;bottom:20px;box-shadow:0 10px 30px #0003;display:flex;flex-direction:column;height:500px;position:fixed;right:20px;width:350px;z-index:1000}.chat-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:15px 15px 0 0;color:#fff;display:flex;justify-content:space-between;padding:1rem}.chat-partner-info h3{font-size:1rem;margin:0}.chat-status{font-size:.8rem;opacity:.9}.close-chat-btn{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:30px;justify-content:center;padding:0;width:30px}.close-chat-btn:hover{background:#fff3}.chat-messages{background:#f8f9fa;display:flex;flex:1 1;flex-direction:column;gap:1rem;overflow-y:auto;padding:1rem}.chat-loading,.no-messages{align-items:center;color:#6c757d;display:flex;flex-direction:column;height:100%;justify-content:center}.loading-spinner{height:30px;width:30px}.message{display:flex;max-width:80%}.message.sent{align-self:flex-end}.message.received{align-self:flex-start}.message-content{background:#fff;border-radius:15px;box-shadow:0 2px 5px #0000001a;padding:.75rem 1rem;position:relative}.message.sent .message-content{background:#667eea;color:#fff}.message.received .message-content{background:#fff;border:1px solid #e1e5e9}.message-content p{word-wrap:break-word;margin:0 0 .25rem}.message-time{font-size:.7rem;opacity:.7}.chat-input-form{background:#fff;border-radius:0 0 15px 15px;border-top:1px solid #e1e5e9;padding:1rem}.input-group{display:flex;gap:.5rem}.input-group input{border:2px solid #e1e5e9;border-radius:25px;flex:1 1;font-size:.9rem;outline:none;padding:.75rem;transition:border-color .3s ease}.input-group input:focus{border-color:#667eea}.input-group button{background:#667eea;border:none;border-radius:25px;color:#fff;cursor:pointer;font-size:.9rem;padding:.75rem 1.5rem;transition:all .3s ease}.input-group button:hover:not(:disabled){background:#5a6fd8;transform:translateY(-1px)}.input-group button:disabled{background:#ccc;cursor:not-allowed;transform:none}@media (max-width:768px){.chat-interface{border-radius:0;bottom:0;height:100%;right:0;width:100%}}.connection-error-banner{align-items:center;background:#fff3cd;border-left:4px solid #ffc107;color:#856404;display:flex;justify-content:space-between;padding:8px 12px}.retry-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8em;padding:4px 8px}.retry-btn:hover{background:#0056b3}.fallback-badge{background:#ffc107;border-radius:4px;color:#000;font-size:.7em;margin-left:8px;padding:2px 6px}.fallback-notice{color:#666;font-style:italic}.fallback-warning{color:#ff9800;margin-top:5px;text-align:center}.contact-doctor{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.contact-header{background:linear-gradient(135deg,#00b4db,#0083b0);color:#fff;padding:1.5rem 2rem;text-align:center}.contact-header h2{font-size:1.5rem;margin:0 0 .5rem}.contact-header p{font-size:.9rem;margin:0;opacity:.9}.contact-container{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr;min-height:500px;padding:2rem}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-group label{font-size:.9rem;margin-bottom:.5rem}.form-group select,.form-group textarea{background:#fff;border:2px solid #e1e5e9;border-radius:8px;font-family:inherit;font-size:1rem;padding:.75rem;transition:all .3s ease}.form-group select:focus,.form-group textarea:focus{border-color:#00b4db;box-shadow:0 0 0 3px #00b4db1a;outline:none}.form-group textarea{min-height:120px}.form-actions{margin-top:auto}.form-actions button{background:linear-gradient(135deg,#00b4db,#0083b0);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem;transition:all .3s ease;width:100%}.form-actions button:hover:not(:disabled){box-shadow:0 4px 12px #00b4db4d;transform:translateY(-2px)}.form-actions button:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.no-doctors-warning{color:#dc3545;font-size:.9rem;font-style:italic;margin-top:.5rem}.doctors-status{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:1.5rem}.doctors-status h3{border-bottom:2px solid #dee2e6;color:#2c3e50;font-size:1.2rem;margin:0 0 1.5rem;padding-bottom:.5rem;text-align:center}.doctor-status-card{background:#fff;box-shadow:0 1px 3px #0000001a}.doctor-info h4{font-size:1rem}.specialization{color:#6c757d;font-size:.9rem;font-weight:500;margin:0 0 .5rem}.current-patients{color:#6c757d;font-size:.8rem;margin:0}.status-badge{color:#fff;min-width:80px;padding:.5rem 1rem;text-align:center}.status-badge.free{background:#28a745}.status-badge.busy{background:#ffc107;color:#212529}.no-doctors{color:#6c757d}.no-doctors p{margin:0 0 1rem}.offline-message{font-style:italic}@media (max-width:768px){.contact-container{gap:1.5rem;grid-template-columns:1fr;padding:1.5rem}.contact-header{padding:1rem 1.5rem}.doctor-status-card{flex-direction:column;gap:1rem;text-align:center}.status-badge{align-self:stretch}}.doctor-status-card:has(+.new-message){animation:pulse 2s infinite}.contact-forms{display:flex;flex-direction:column;gap:2rem}.quick-message-form{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:1.5rem}.quick-message-form h3{border-bottom:2px solid #f8f9fa;color:#2c3e50;font-size:1.2rem;margin:0 0 1.5rem;padding-bottom:.5rem}.doctor-actions{align-items:center;display:flex;flex-direction:column;gap:.5rem}.chat-btn{background:#28a745;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .3s ease;white-space:nowrap}.chat-btn:hover{background:#218838;transform:translateY(-1px)}.doctor-status-card{align-items:center;background:#f8f9fa;border-left:4px solid #6c757d;border-radius:8px;display:flex;justify-content:space-between;padding:1rem;transition:all .3s ease}.doctor-status-card.free{border-left-color:#28a745}.doctor-status-card.busy{border-left-color:#ffc107}.doctor-status-card:hover{box-shadow:0 2px 8px #00000026;transform:translateX(4px)}.user-warning{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;color:#856404;font-size:.9rem;margin-top:1rem;padding:.75rem}.doctor-actions button:disabled{background:#ccc;cursor:not-allowed;transform:none}.doctor-actions button:disabled:hover{background:#ccc;transform:none}.analytics{background:#f8f9fa;min-height:100vh;padding:20px}.analytics-header{align-items:flex-start;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;display:flex;justify-content:space-between;margin-bottom:30px;padding:25px}.header-content h1{color:#2c3e50;font-size:28px;margin:0 0 8px}.header-content p{color:#7f8c8d;font-size:16px;margin:0}.header-controls{gap:15px}.time-range-select{background:#fff;border:1px solid #ddd;cursor:pointer;padding:10px 15px}.refresh-btn,.time-range-select{border-radius:8px;font-size:14px}.refresh-btn{background:#3498db;padding:10px 20px}.refresh-btn:hover{background:#2980b9}.summary-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:30px}.summary-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;display:flex;gap:20px;padding:25px;transition:transform .3s ease}.summary-card:hover{transform:translateY(-2px)}.card-icon{align-items:center;background:#f8f9fa;border-radius:12px;display:flex;font-size:40px;height:60px;justify-content:center;width:60px}.summary-card.patients .card-icon{background:#e3f2fd}.summary-card.revenue .card-icon{background:#e8f5e8}.summary-card.completed .card-icon{background:#fff3e0}.summary-card.efficiency .card-icon{background:#f3e5f5}.card-content h3{color:#2c3e50;font-size:16px;font-weight:600;margin:0 0 8px}.card-value{color:#2c3e50;font-size:32px;font-weight:700;margin:8px 0}.card-subtitle{color:#7f8c8d;display:flex;flex-direction:column;font-size:14px;gap:4px}.growth{font-size:12px;font-weight:600}.growth.positive{color:#27ae60}.growth.negative{color:#e74c3c}.analytics-content{display:flex;flex-direction:column;gap:30px}.analytics-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:25px}.analytics-section h3{border-bottom:2px solid #ecf0f1;color:#2c3e50;font-size:20px;margin:0 0 20px;padding-bottom:10px}.section-header{margin-bottom:20px}.section-subtitle{color:#7f8c8d;font-size:14px}.revenue-chart{display:flex;flex-direction:column;gap:20px}.revenue-total h4{color:#2c3e50;font-size:18px;margin:0}.revenue-bars{display:flex;flex-direction:column;gap:15px}.revenue-bar-item{gap:15px}.bar-label,.revenue-bar-item{align-items:center;display:flex}.bar-label{color:#2c3e50;font-weight:600;gap:8px;width:120px}.color-dot{border-radius:50%;height:12px;width:12px}.bar-container{background:#ecf0f1;border-radius:10px;flex:1 1;height:20px;overflow:hidden}.bar-fill{border-radius:10px;height:100%;transition:width .5s ease}.bar-value{color:#7f8c8d;font-size:14px;text-align:right;width:120px}.doctors-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.doctor-card{border-left:4px solid #3498db;border-radius:12px;padding:20px}.doctor-header{align-items:center;display:flex;gap:15px;margin-bottom:15px}.doctor-rank{background:#3498db;color:#fff;font-size:14px;height:30px;width:30px}.doctor-info h4{color:#2c3e50;margin:0 0 4px}.doctor-specialty{color:#7f8c8d;font-size:14px}.performance-score{margin-left:auto}.score-circle{align-items:center;background:#27ae60;border-radius:50%;color:#fff;display:flex;font-size:16px;font-weight:700;height:50px;justify-content:center;width:50px}.doctor-metrics{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:15px}.metric{align-items:center;background:#fff;border-radius:6px;display:flex;justify-content:space-between;padding:8px}.metric-label{color:#7f8c8d;font-size:12px}.metric-value{color:#2c3e50;font-weight:600}.doctor-revenue{align-items:center;border-top:1px solid #ecf0f1;display:flex;justify-content:space-between;padding-top:15px}.revenue-label{color:#7f8c8d;font-size:14px}.revenue-value{color:#27ae60;font-size:16px;font-weight:700}.trends-chart{display:flex;flex-direction:column;gap:20px}.chart-container{background:#f8f9fa;border-radius:8px;gap:10px;min-height:200px;padding:20px}.chart-container,.trend-bars{align-items:flex-end;display:flex}.trend-bars{gap:15px;height:150px;width:100%}.trend-bar{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:8px;position:relative}.trend-bar:hover .bar-tooltip{opacity:1}.bar-tooltip{background:#2c3e50;border-radius:6px;color:#fff;font-size:12px;opacity:0;padding:10px;position:absolute;top:-80px;transition:opacity .3s ease;white-space:nowrap;z-index:10}.trend-bar-visits{background:#3498db;border-radius:4px 4px 0 0;transition:height .5s ease;width:60%}.trend-bar-revenue{background:#27ae60;border-radius:0 0 4px 4px;transition:height .5s ease;width:40%}.trend-label{color:#7f8c8d;font-size:12px;text-align:center}.chart-legend{display:flex;gap:20px;justify-content:center}.legend-item{align-items:center;color:#7f8c8d;display:flex;font-size:14px;gap:8px}.legend-color{border-radius:4px;height:16px;width:16px}.legend-color.visits{background:#3498db}.legend-color.revenue{background:#27ae60}.reports-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.report-card{background:#f8f9fa;border:1px solid #ecf0f1;border-radius:12px;padding:20px}.report-card h4{color:#2c3e50;font-size:16px;margin:0 0 15px}.report-content{margin-bottom:20px}.report-content p{color:#2c3e50;font-size:14px;margin:8px 0}.report-content strong{color:#2c3e50}.top-doctor{background:#fff;border-radius:6px;gap:10px;margin-bottom:8px;padding:8px}.top-doctor,.top-doctor .rank{align-items:center;display:flex}.top-doctor .rank{background:#3498db;border-radius:50%;color:#fff;font-size:12px;font-weight:700;height:24px;justify-content:center;width:24px}.top-doctor .name{flex:1 1;font-weight:600}.top-doctor .score{color:#27ae60;font-weight:700}.download-btn{background:#3498db;border:none;border-radius:8px;cursor:pointer;font-size:14px;padding:12px;transition:background .3s ease;width:100%}.download-btn:hover{background:#2980b9}.loading-state{color:#7f8c8d;padding:60px}.loading-spinner{border:3px solid #f3f3f3;border-top-color:#3498db}.no-data{color:#7f8c8d;padding:40px;text-align:center}@media (max-width:768px){.analytics-header{flex-direction:column;gap:20px}.doctors-grid,.reports-grid,.summary-cards{grid-template-columns:1fr}.chart-container{overflow-x:auto}.trend-bars{min-width:600px}}.export-btn{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;margin-left:10px;padding:8px 16px}.export-btn:disabled{background:#6c757d;cursor:not-allowed}.export-btn:hover:not(:disabled){background:#218838}.export-buttons{background:#f8f9fa;border-radius:8px;margin:20px 0;padding:15px}.export-options{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.export-option{background:#17a2b8;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:8px 12px}.export-option:hover{background:#138496}.table-header{background:#343a40;color:#fff;font-weight:700}.table-row:nth-child(2n){background:#f8f9fa}.table-row:hover{background:#e9ecef}.export-progress{background:#e9f7fe;border-radius:4px;margin:10px 0;padding:10px;text-align:center}.progress-bar{background:#dee2e6;border-radius:2px;height:4px;margin-bottom:8px;width:100%}.progress-fill{animation:progressAnimation 2s infinite;background:#007bff}@keyframes progressAnimation{0%{transform:translateX(-100%)}to{transform:translateX(400%)}}.export-error{background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;margin:10px 0;padding:10px}.export-success{background:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724;margin:10px 0;padding:10px}.line-chart-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px}.chart{align-items:flex-end;border-bottom:1px solid #e0e0e0;display:flex;gap:10px;height:220px;margin-bottom:10px;padding:20px 0}.chart-column{align-items:center;display:flex;flex:1 1;flex-direction:column}.chart-bars{align-items:flex-end;display:flex;gap:2px;height:200px}.chart-bar{border-radius:2px 2px 0 0;transition:all .3s ease;width:20px}.chart-bar.visits{background:#4caf50}.chart-bar.revenue{background:#2196f3}.chart-label{color:#666;font-size:10px;margin-top:5px;text-align:center}.top-doctors-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.top-doctor-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;gap:15px;padding:15px}.doctor-rank,.top-doctor-card{align-items:center;display:flex}.doctor-rank{background:gold;border-radius:50%;color:#333;font-size:18px;font-weight:700;height:40px;justify-content:center;width:40px}.doctor-info h4{margin:0 0 8px}.doctor-stats{display:flex;flex-direction:column;gap:4px}.stat{display:flex;font-size:12px;justify-content:space-between}.stat-label{color:#666}.stat-value{color:#333;font-weight:600}.visit-details-table-container{overflow:show}.visit-details-table{width:100%}.status-badge{text-transform:capitalize}.status-badge.in-progress{background:#cce7ff;color:#004085}.document-badge{background:#e9ecef}.pagination{align-items:center;display:flex;gap:15px;justify-content:center;margin-top:20px;padding:15px}.pagination button{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;padding:8px 16px}.pagination button:disabled{cursor:not-allowed;opacity:.5}.pagination span{color:#666}.priority-badge.emergency{background-color:#ffebee;border:1px solid #ffcdd2;color:#c62828}.priority-badge.high{background-color:#fff3e0;border:1px solid #ffe0b2;color:#ef6c00}.priority-badge.normal{background-color:#e8f5e8;border:1px solid #c8e6c9;color:#2e7d32}.priority-badge.low{background-color:#f3e5f5;border:1px solid #e1bee7;color:#7b1fa2}.document-badge{background-color:#e3f2fd;border:1px solid #bbdefb;border-radius:4px;color:#1565c0;font-size:12px}.document-badge.clickable{transition:background-color .2s}.document-badge.clickable:hover{background-color:#bbdefb}.no-documents{color:#757575;font-size:12px}.view-details-btn,.view-report-btn{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:11px;padding:4px 8px;transition:all .2s}.view-report-btn:hover{background-color:#e8f5e8;border-color:#4caf50}.view-details-btn:hover{background-color:#e3f2fd;border-color:#2196f3}.status-badge.waiting{background-color:#fff3e0;color:#ef6c00}.status-badge.in-progress{background-color:#e3f2fd;color:#1565c0}.status-badge.completed{background-color:#e8f5e8;color:#2e7d32}.status-badge.cancelled{background-color:#ffebee;color:#c62828}.modal-content{background:#fff;border-radius:8px;box-shadow:0 10px 30px #0000004d;max-height:80vh;max-width:600px;overflow:hidden;width:90%}.modal-header{border-bottom:1px solid #eee;justify-content:between}.modal-header h3{flex:1 1}.modal-body{max-height:60vh;overflow-y:auto;padding:20px}.modal-footer{border-top:1px solid #eee;justify-content:flex-end}.document-item{background:#f9f9f9;border:1px solid #ddd;padding:15px}.document-name{font-weight:700;margin-bottom:5px}.document-meta{color:#666}.document-actions{gap:10px}.delete-btn,.download-btn{border:none;border-radius:3px;cursor:pointer;font-size:12px;padding:5px 10px}.download-btn{background:#4caf50;color:#fff}.delete-btn{background:#f44336;color:#fff}.delete-warning{background:#fff3cd;border:1px solid #ffeaa7;border-radius:5px;padding:15px}.visit-to-delete{border:1px solid #ddd;border-radius:3px;padding:10px}.admin-pin-input{margin-top:20px}.admin-pin-input label{display:block;font-weight:700;margin-bottom:5px}.pin-input{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:10px;width:100%}.confirm-delete-btn{background:#f44336;border-radius:4px;padding:10px 20px}.confirm-delete-btn:disabled{background:#ccc}.action-buttons{flex-wrap:wrap}.delete-visit-btn,.view-details-btn,.view-report-btn{border:none;border-radius:3px;cursor:pointer;font-size:11px;padding:4px 8px;white-space:nowrap}.view-report-btn{background:#2196f3}.view-details-btn{background:#ff9800}.visit-details-modal{max-height:90vh;max-width:800px;overflow-y:auto}.visit-details-body{padding:20px}.details-section{background:#f8f9fa;border-left:4px solid #3498db;border-radius:10px;margin-bottom:30px;padding:20px}.details-section h3{align-items:center;color:#2c3e50;display:flex;font-size:1.2rem;gap:8px;margin:0 0 15px}.info-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.amount{color:#27ae60;font-weight:700}.timeline{padding-left:20px;position:relative}.timeline:before{background:#3498db;bottom:0;content:"";left:0;position:absolute;top:0;width:2px}.timeline-item{align-items:flex-start;margin-bottom:20px;position:relative}.timeline-marker{background:#3498db;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 2px #3498db;height:12px;left:-25px;position:absolute;top:5px;width:12px}.timeline-content{flex:1 1}.timeline-content label{color:#555;display:block;font-weight:600;margin-bottom:5px}.timeline-content span{color:#333;display:block;margin-bottom:3px}.timeline-content small{color:#7f8c8d;font-size:.8rem}.priority-badge,.status-badge{border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;padding:4px 12px;text-transform:capitalize}.documents-section{display:flex;flex-direction:column;gap:10px}.document-item{background:#fff;border:1px solid #e1e8ed;border-radius:5px}.document-type{color:#555;font-weight:600}.view-docs-btn,.view-report-btn{background:#3498db;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.9rem;padding:8px 15px;transition:background .3s}.view-docs-btn:hover,.view-report-btn:hover{background:#2980b9}.notes-content{background:#fff;border:1px solid #e1e8ed;border-radius:5px;color:#333;line-height:1.5;padding:15px}.visit-meta{align-items:center;gap:15px;margin-top:5px}.visit-id{color:#7f8c8d;font-size:.9rem}.details-loading{align-items:center;color:#7f8c8d;display:flex;justify-content:center;padding:40px}@media (max-width:768px){.visit-details-modal{margin:20px;max-height:95vh}.info-grid{grid-template-columns:1fr}.document-item{align-items:flex-start;flex-direction:column;gap:10px}}.protected-section{background:#fff5f5;border-left-color:#e74c3c}.protected-section h3{border-bottom-color:#e74c3c;color:#c0392b}.protected-content{background:#fdf2f2;border:1px solid #fadbd8;border-radius:5px;padding:15px}.protected-content h4{color:#c0392b;font-size:1.1rem;margin-bottom:10px}.vital-item.protected{background:#fdf2f2;border:1px solid #fadbd8;color:#7f8c8d}.protected-recommendation,.protected-scan-info,.protected-summary{background:#fff;border:1px dashed #f0b3b0;border-radius:3px;color:#7f8c8d;font-style:italic;padding:10px}.patient-info-section{background:#f0fff4;border-left-color:#27ae60}.patient-info-section h3{border-bottom-color:#27ae60;color:#27ae60}.info-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.info-item{gap:5px}.info-item span{font-size:1rem}@media print{.protected-section{background:#f9f9f9!important;border:1px solid #ddd!important}.protected-content{background:#fff!important;border:1px solid #eee!important}.clinic-header h1{color:#2c3e50}.clinic-info p{color:#666}.footer-notes{border-left:3px solid #e74c3c;padding-left:10px}.footer-notes p{font-size:.75rem;margin:2px 0}}.status-completed{background:#d4f5e1;border-radius:12px;color:#27ae60;font-size:.8rem;font-weight:600;padding:2px 8px}.export-btn,.export-table-btn{background:#27ae60;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.9rem;margin-left:10px;padding:8px 15px;transition:background .3s}.export-btn:hover:not(:disabled),.export-table-btn:hover:not(:disabled){background:#219a52}.export-btn:disabled,.export-table-btn:disabled{background:#95a5a6;cursor:not-allowed;opacity:.6}.export-progress{align-items:center;color:#7f8c8d;display:flex;font-size:.8rem;gap:10px;margin-left:10px}.progress-bar{background:#ecf0f1;border-radius:3px;height:6px;overflow:hidden;width:100px}.progress-fill{background:#3498db;height:100%;transition:width .3s ease}.progress-text{font-weight:700;min-width:40px}.header-controls{align-items:center;display:flex;flex-wrap:wrap;gap:10px}@media (max-width:768px){.header-controls{align-items:stretch;flex-direction:column}.export-btn,.export-table-btn{margin-left:0;margin-top:5px}.export-progress{justify-content:center;margin-left:0}}.visit-details-table-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;max-width:100%;overflow-x:auto;overflow-y:hidden}.visit-details-table{border-collapse:collapse;min-width:1200px;table-layout:auto;width:auto}.visit-details-table th{background:#f8f9fa;border-bottom:1px solid #e0e0e0;color:#333;font-weight:600;padding:12px;position:-webkit-sticky;position:sticky;text-align:left;top:0;white-space:nowrap;z-index:10}.visit-details-table td{border-bottom:1px solid #f0f0f0;padding:12px;white-space:nowrap}.visit-details-table tr:hover{background:#f8f9fa}.timestamp-cell{font-size:12px;line-height:1.2}.timestamp-cell .date{color:#666;font-size:11px}.timestamp-cell .time{color:#333;font-weight:600}.timestamp-cell .no-time{color:#999}.patient-info{display:flex;flex-direction:column;min-width:120px}.patient-info strong{font-size:14px;margin-bottom:2px}.patient-info small{color:#666;font-size:11px}.exam-info{min-width:150px}.exam-info .exam-type{font-size:14px;font-weight:600;margin-bottom:2px}.exam-info .exam-reason{color:#666;display:block;font-size:11px;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-info .medical-aid{color:#666;display:block;font-size:11px;margin-top:2px}.amount-info{text-align:right}.amount-info .amount-paid{font-size:14px;font-weight:600}.amount-info .amount-claimed{color:#666;display:block;font-size:11px;margin-top:2px}.action-buttons{gap:4px;min-width:140px}.delete-visit-btn,.view-details-btn{border:none;border-radius:3px;cursor:pointer;flex:1 1;font-size:11px;padding:4px 8px;white-space:nowrap}.view-details-btn{background:#2196f3;color:#fff}.delete-visit-btn{background:#f44336}.priority-badge,.status-badge{border-radius:12px;font-size:11px;font-weight:700;padding:4px 8px;text-transform:uppercase;white-space:nowrap}.status-badge.completed{background:#4caf50}.status-badge.waiting{background:#ff9800;color:#fff}.status-badge.in-progress{background:#2196f3}.priority-badge.emergency{background:#f44336}.priority-badge.high{background:#ff9800}.priority-badge.normal{background:#4caf50}.priority-badge.low{background:#9e9e9e}.document-badge{background:#e3f2fd;white-space:nowrap}.document-badge:hover{background:#bbdefb}.no-documents{color:#999;font-size:11px}.visit-details-table-container::-webkit-scrollbar{height:8px}.visit-details-table-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.visit-details-table-container::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.visit-details-table-container::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width:768px){.visit-details-table-container{border-radius:4px}.visit-details-table{min-width:1000px}.visit-details-table td,.visit-details-table th{font-size:12px;padding:8px 10px}.action-buttons{flex-direction:column;gap:2px}.delete-visit-btn,.view-details-btn{font-size:10px;padding:3px 6px}}.report-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.report-modal{border-radius:8px;box-shadow:0 4px 20px #00000026;max-height:90vh;max-width:900px;overflow-y:auto;width:100%}.report-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #e0e0e0;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:20px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.report-header h2{color:#333;font-size:1.5em;margin:0}.report-actions{display:flex;gap:10px}.close-btn,.edit-btn,.print-btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:.9em;gap:5px;padding:8px 16px;transition:background-color .3s ease}.print-btn{background-color:#28a745}.print-btn:hover{background-color:#218838}.edit-btn{background-color:#007bff;color:#fff}.edit-btn:hover{background-color:#0056b3}.close-btn{background-color:#6c757d}.close-btn:hover{background-color:#545b62}.report-content{padding:30px}.report-header-section{border-bottom:2px solid #e0e0e0;padding-bottom:20px}.report-header-section h1{color:#333;font-size:2em;font-weight:700;margin:0}.report-header-section h2{color:#666;font-size:1.5em;font-weight:400;margin:10px 0}.report-meta{display:flex;font-size:.9em;justify-content:space-between;margin-top:10px}.report-section{margin-bottom:30px;page-break-inside:avoid}.report-section h3{border-bottom:1px solid #e0e0e0;color:#333;font-size:1.2em}.info-grid{grid-gap:15px;gap:15px}.info-item{background-color:#f8f9fa;border-radius:4px;padding:10px}.info-item.full-width{grid-column:1/-1}.info-item label{font-size:.9em;margin-bottom:5px}.info-item span{color:#333;font-size:1em}.timeline{gap:10px}.timeline-item{border-left:4px solid #007bff;padding:12px}.timeline-item label{color:#555;font-weight:700}.timeline-item span{color:#333;font-weight:500}.edit-form{background-color:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;flex-direction:column;padding:20px}.edit-form,.edit-form .form-row{display:flex;gap:15px}.edit-form .form-group{display:flex;flex:1 1;flex-direction:column}.edit-form .form-group label{color:#333;font-weight:700;margin-bottom:5px}.edit-form .form-group input,.edit-form .form-group select,.edit-form .form-group textarea{border:1px solid #ccc;border-radius:4px;font-size:1em;padding:8px 12px;transition:border-color .3s ease}.edit-form .form-group input:focus,.edit-form .form-group select:focus,.edit-form .form-group textarea:focus{border-color:#007bff;outline:none}.edit-form .form-actions{display:flex;justify-content:flex-end;margin-top:20px}.save-btn{background-color:#28a745;font-size:1em;transition:background-color .3s ease}.save-btn:hover:not(:disabled){background-color:#218838}.save-btn:disabled{background-color:#6c757d}.edit-history{display:flex;flex-direction:column;gap:15px}.edit-record{background-color:#f8f9fa;border-left:4px solid #007bff;border-radius:4px;padding:15px}.edit-record p{line-height:1.4;margin:5px 0}.edit-record strong{color:#333}.report-footer{align-items:flex-end;border-top:2px solid #e0e0e0;page-break-before:avoid}.signature-section{flex:1 1}.signature-section p{color:#666;font-size:.9em;margin:0}.report-footer-meta{font-size:.9em}.status-badge{display:inline-block}.status-badge.waiting{background-color:#fff3cd}.status-badge.in-progress{background-color:#d1ecf1}.status-badge.completed{background-color:#d4edda}.status-badge.cancelled{background-color:#f8d7da;color:#721c24}.currency{font-family:Courier New,monospace;font-weight:700}@media print{.report-overlay{background:none;display:block;padding:0;position:static}.report-modal{border-radius:0;box-shadow:none;margin:0;max-height:none;max-width:none;padding:0}.report-header{display:none!important}.report-content{padding:0}.no-print{display:none!important}.report-section{margin-bottom:20px}.info-item,.timeline-item{background-color:initial!important;border:1px solid #ddd!important}body{background:#fff!important;color:#000!important}.report-section{page-break-inside:avoid}.report-footer{page-break-before:avoid}}@media (max-width:768px){.report-overlay{padding:10px}.report-modal{max-height:95vh}.report-header{flex-direction:column;gap:10px;text-align:center}.report-actions{justify-content:center;width:100%}.info-grid{grid-template-columns:1fr}.edit-form .form-row,.report-footer{flex-direction:column}.report-footer{gap:20px}.report-footer,.signature-section{text-align:center}.signature-line{margin:0 auto 5px}}@keyframes modalAppear{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.report-modal{animation:modalAppear .3s ease-out}.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center}.loading-spinner{animation:spin 2s linear infinite;border-top-color:#007bff;margin-bottom:20px}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;margin:10px 0;padding:10px 15px}.success-message{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724;margin:10px 0;padding:10px 15px}.report-modal::-webkit-scrollbar{width:8px}.report-modal::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.report-modal::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.report-modal::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.vital-signs-section{background:#f8f9fa;border-left:3px solid #2c5aa0;border-radius:5px;margin:15px 0;padding:15px}.vital-signs-section h4{border-bottom:1px solid #ddd;color:#2c5aa0;margin-bottom:15px;padding-bottom:5px}.vital-signs-grid{grid-gap:10px;gap:10px;margin-top:10px}.vital-sign-item{border:1px solid #e9ecef;border-radius:4px;display:flex;flex-direction:column;padding:8px}.vital-sign-item label{color:#555;font-size:12px;font-weight:700;margin-bottom:4px}.vital-value{color:#333;font-size:14px}.bmi-category{border-radius:3px;font-size:11px;font-weight:700;margin-left:5px;padding:2px 6px}.bmi-category.overweight{background:#ffe6cc;color:#663c00}.bmi-category.obese{background:#f8d7da}.vital-signs-display{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:20px 0;padding:20px}.vital-signs-display h4{border-bottom:2px solid #007bff;color:#2c3e50;margin-bottom:15px;padding-bottom:8px}.vital-signs-grid{grid-gap:15px;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.vital-sign-item{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:15px;text-align:center}.vital-sign-item label{color:#495057;display:block;font-size:.9em;font-weight:600;margin-bottom:8px}.vital-value{color:#007bff;display:block;font-size:1.3em;font-weight:700;margin-bottom:5px}.bmi-category{border-radius:15px;display:inline-block;font-size:.8em;font-weight:600;margin-top:5px;padding:4px 12px}.bmi-category.underweight{background:#fff3cd;color:#856404}.bmi-category.normal{background:#d1edff;color:#004085}.bmi-category.overweight{background:#ffeaa7;color:#856404}.bmi-category.obese{background:#fcc;color:#721c24}@media (max-width:768px){.vital-signs-grid{grid-template-columns:1fr}}.patient-info{max-height:calc(100vh - 200px);overflow-y:auto;padding:20px}.patient-info-header{border-bottom:2px solid #e0e0e0;margin-bottom:20px;padding-bottom:15px}.patient-info-header h2{color:#2c5aa0;font-size:24px;margin:0 0 15px}.search-container{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:15px}.search-bar{align-items:center;display:flex;margin-bottom:10px;position:relative}.search-input{background:#fff;border:2px solid #ddd;border-radius:25px;font-size:16px;padding:12px 45px 12px 15px;transition:all .3s ease;width:100%}.search-input:focus{border-color:#2c5aa0;box-shadow:0 0 0 3px #2c5aa01a;outline:none}.clear-search-btn{align-items:center;background:#6c757d;border-radius:50%;color:#fff;display:flex;font-size:14px;height:30px;justify-content:center;right:10px;transition:background .3s ease;width:30px}.clear-search-btn:hover{background:#5a6268}.search-stats{align-items:center;color:#666;display:flex;font-size:14px;justify-content:space-between}.search-results{color:#2c5aa0;font-weight:500}.total-patients{color:#28a745;font-weight:500}.patient-info-content{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 2fr;min-height:600px}.patients-list-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;max-height:700px;overflow-y:auto;padding:20px}.section-header{border-bottom:1px solid #e0e0e0;padding-bottom:10px}.section-header h3{color:#2c5aa0;font-size:18px;margin:0}.refresh-btn{background:#17a2b8;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:8px 12px;transition:background .3s ease}.refresh-btn:hover:not(:disabled){background:#138496}.refresh-btn:disabled{background:#6c757d}.patients-grid{grid-gap:15px;display:grid;gap:15px}.patient-card{background:#f8f9fa;border:2px solid #e0e0e0;cursor:pointer;position:relative;transition:all .3s ease}.patient-card:hover{border-color:#2c5aa0;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.patient-card.selected{background:#e3f2fd;border-color:#2c5aa0}.patient-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:10px}.patient-card-header h4{color:#2c5aa0;flex:1 1;font-size:16px;margin:0}.patient-id{background:#2c5aa0;border-radius:4px;color:#fff;font-size:12px;font-weight:700;padding:4px 8px}.patient-card-details{margin-bottom:10px}.patient-card-details p{color:#555;font-size:14px;margin:5px 0}.patient-card-actions{display:flex;justify-content:flex-end}.edit-btn{background:#ffc107;border:none;border-radius:4px;color:#212529;cursor:pointer;font-size:12px;padding:6px 12px;transition:background .3s ease}.edit-btn:hover{background:#e0a800}.patient-details-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;max-height:700px;overflow-y:auto;padding:20px}.edit-patient-form{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:20px;padding:20px}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr;margin-bottom:15px}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1/-1}.form-group label{font-weight:500;margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#2c5aa0;outline:none}.form-actions{margin-top:20px}.save-btn{background:#28a745;font-size:14px;transition:background .3s ease}.save-btn:hover{background:#218838}.cancel-btn{transition:background .3s ease}.patient-details{margin-bottom:20px}.details-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.detail-item{background:#f8f9fa;border-radius:4px;display:flex;flex-direction:column;padding:10px}.detail-item.full-width{grid-column:1/-1}.detail-item label{color:#666;font-size:14px;font-weight:500;margin-bottom:5px}.detail-item span{color:#333;font-size:15px}.patient-visits-section{border-top:1px solid #e0e0e0;margin-top:20px;padding-top:20px}.patient-visits-section h4{color:#2c5aa0;margin:0 0 15px}.no-visits{color:#666;font-style:italic;padding:20px;text-align:center}.visits-list{grid-gap:10px;display:grid;gap:10px;max-height:300px;overflow-y:auto}.visit-item{align-items:flex-start;background:#f8f9fa;border-radius:6px;padding:15px}.visit-info{flex:1 1}.visit-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.visit-date{color:#333;font-weight:500}.visit-status{border-radius:4px;font-size:12px;font-weight:500;padding:4px 8px}.visit-status.waiting{background:#fff3cd;color:#856404}.visit-status.in-progress{background:#d1ecf1;color:#0c5460}.visit-status.completed{background:#d4edda;color:#155724}.visit-details p{color:#555;font-size:14px;margin:3px 0}.view-report-btn{background:#2c5aa0;border:none;border-radius:4px;cursor:pointer;font-size:12px;padding:8px 12px;transition:background .3s ease}.view-report-btn:hover{background:#1e3d6f}.loading-state{color:#666;padding:40px;text-align:center}.loading-spinner{border-top-color:#2c5aa0;margin:0 auto 15px}.empty-state{color:#666;font-style:italic;padding:40px;text-align:center}@media (max-width:1024px){.patient-info-content{grid-template-columns:1fr}.patient-details-section,.patients-list-section{max-height:none}}@media (max-width:768px){.patient-info{padding:10px}.details-grid,.form-row{grid-template-columns:1fr}.visit-item{flex-direction:column;gap:10px}.visit-actions{align-self:flex-end}}.chat-panel{background:#fff;border-left:1px solid #e1e5e9;box-shadow:-5px 0 15px #0000001a;display:flex;flex-direction:column;height:100vh;position:fixed;right:0;top:0;width:350px;z-index:1001}.chat-panel-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:1.5rem}.panel-title h3{font-size:1.2rem;margin:0}.online-count{display:block;font-size:.8rem;margin-top:.25rem;opacity:.9}.panel-actions{display:flex;gap:.5rem}.close-panel-btn,.refresh-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:35px;justify-content:center;transition:all .3s ease;width:35px}.close-panel-btn:hover,.refresh-btn:hover{background:#ffffff4d}.refresh-btn:disabled{cursor:not-allowed;opacity:.5}.chat-panel-content{flex:1 1;overflow-y:auto;padding:1rem}.loading-state,.no-users{align-items:center;color:#6c757d;display:flex;flex-direction:column;height:100%;justify-content:center;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:40px;margin-bottom:1rem;width:40px}.offline-message{font-size:.9rem;margin-top:.5rem;opacity:.7}.users-list{display:flex;flex-direction:column;gap:.75rem}.user-card{align-items:center;background:#f8f9fa;border:1px solid #0000;border-radius:10px;cursor:pointer;display:flex;gap:1rem;padding:1rem;transition:all .3s ease}.user-card:hover{background:#e9ecef;border-color:#667eea;transform:translateX(-2px)}.user-avatar{align-items:center;display:flex;justify-content:center;position:relative}.role-icon{font-size:1.5rem}.status-dot{border:2px solid #fff;border-radius:50%;bottom:-2px;height:12px;position:absolute;right:-2px;width:12px}.user-info{flex:1 1}.user-info h4{color:#2c3e50;font-size:.95rem;margin:0 0 .25rem}.user-meta{display:flex;flex-wrap:wrap;font-size:.8rem;gap:.5rem}.user-role{background:#667eea;border-radius:10px;padding:.2rem .5rem}.user-role,.user-status{text-transform:capitalize}.user-status{color:#6c757d}.user-specialization{color:#495057;font-style:italic}.user-actions{align-items:center;gap:.5rem}.start-chat-btn{align-items:center;background:#28a745;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:35px;justify-content:center;transition:all .3s ease;width:35px}.start-chat-btn:hover{background:#218838;transform:scale(1.1)}@media (max-width:768px){.chat-panel{width:100%}}.user-card.active{background:#e3f2fd;border-color:#2196f3;box-shadow:0 2px 8px #2196f34d}.chat-error{background:#f8d7da;border-radius:8px;color:#dc3545;margin:1rem;padding:2rem;text-align:center}.notification{background:#fff;box-shadow:0 4px 6px #0000001a;min-width:300px;transform:translateX(400px);transition:transform .3s ease}.notification.visible{transform:translateX(0)}.notification-content span{flex:1 1;margin-right:1rem}.close-btn{color:#666;font-size:1.5rem;width:auto}.close-btn:hover{color:#333}.notification.overlay{box-shadow:0 4px 12px #0000004d;max-width:400px;min-width:300px;position:fixed;right:20px;top:20px;z-index:10000}.receptionist-dashboard{background:#f5f5f5;background:#f8f9fa;min-height:100vh}.dashboard-nav{background:#fff;border-bottom:1px solid #e9ecef;display:flex;gap:0;padding:0 2rem}.nav-btn{color:#6c757d;font-size:.95rem;transition:all .3s}.nav-btn:hover{background:#f8f9fa;color:#495057}.nav-btn.active{background:#f8f9fa;border-bottom-color:#1976d2;color:#1976d2}.dashboard-main{margin:0 auto;max-width:1400px;padding:2rem}.dashboard-header h1{color:#333;margin:0}.user-info{gap:1rem}.logout-btn{width:auto}.dashboard-content{max-width:1200px}.add-patient-form{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.add-patient-form h3{color:#333;margin-bottom:1rem}.form-row{gap:1rem}.form-row input{border:1px solid #ddd;border-radius:5px;flex:1 1;font-size:1rem;padding:.75rem}.form-row button{padding:.75rem 2rem;width:auto}.overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.doctor-selection-modal{background:#fff;border-radius:10px;max-width:400px;padding:2rem;text-align:center;width:90%}.doctor-selection-modal h2{color:#4caf50;margin-bottom:1rem}.close-modal-btn{background:#667eea;border:none;border-radius:5px;color:#fff;cursor:pointer;margin-top:1rem;padding:.75rem 2rem;width:auto}.close-modal-btn:hover{background:#5a6fd8}.dashboard-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:2fr 1fr}.doctors-panel{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;height:-webkit-fit-content;height:fit-content;padding:1.5rem}.doctors-panel h3{border-bottom:2px solid #667eea;color:#333;margin-bottom:1rem;padding-bottom:.5rem}.doctors-list{display:flex;flex-direction:column;gap:1rem}.doctor-card{align-items:center;background:#f8f9fa;border-left:4px solid #667eea;border-radius:5px;display:flex;justify-content:space-between;padding:1rem}.doctor-card.free{border-left-color:#28a745}.doctor-card.busy{border-left-color:#dc3545}.doctor-info h4{color:#333;margin:0 0 .25rem}.doctor-info p{color:#666;font-size:.9rem;margin:0}.status-badge{border-radius:15px;font-size:.8rem;padding:.25rem .75rem}.status-badge.free{background:#d4edda;color:#155724}.status-badge.busy{background:#f8d7da;color:#721c24}.no-doctors{color:#666;font-style:italic;padding:2rem;text-align:center}.online-doctors{background:#e9ecef;background:#e3f2fd;border:1px solid #bbdefb;border-radius:5px;border-radius:20px;color:#495057;color:#1976d2;font-size:.9rem;padding:.5rem 1rem}.logout-btn{background:#dc3545;border:none;padding:.5rem 1.5rem;transition:background .3s}.logout-btn:hover{background:#c82333}.connection-status{align-items:center;display:flex;gap:8px}.status-indicator{border-radius:12px;font-size:.8em;font-weight:700}.offline-mode-badge{background:#6c757d;border-radius:8px;color:#fff;font-size:.7em;padding:2px 6px}.online-doctors{align-items:center;display:flex;font-size:14px;gap:10px}.doctor-count{border-radius:12px;font-size:12px;font-weight:600;padding:2px 8px}.doctor-count.free{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.doctor-count.busy{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.doctor-count.total{background:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.doctor-count.offline{background:#e2e3e5;border:1px solid #d6d8db;color:#383d41}.connection-status{margin-top:5px}.status-indicator{border-radius:10px;font-size:12px;padding:2px 8px}.status-indicator.connected{background:#d4edda;color:#155724}.status-indicator.connecting,.status-indicator.reconnecting{background:#fff3cd;color:#856404}.status-indicator.disconnected,.status-indicator.error,.status-indicator.failed{background:#f8d7da;color:#721c24}.report-queue-container{max-width:1200px}.report-queue-header{border-bottom:2px solid #e0e0e0;margin-bottom:30px}.report-queue-header h2{color:#2c5aa0}.waiting-count{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;min-width:120px;padding:15px;text-align:center}.waiting-count .count{color:#e67e22;font-size:2em}.waiting-count .label{color:#666;font-size:.9em}.empty-queue{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a}.empty-icon{font-size:4em;margin-bottom:20px}.empty-queue h3{color:#666;margin-bottom:10px}.empty-queue p{color:#999;margin:0}.queue-list{display:flex;flex-direction:column;gap:15px}.queue-item{align-items:center;background:#fff;border-left:4px solid #2c5aa0;border-radius:10px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;padding:20px;transition:all .3s ease}.queue-item:hover{box-shadow:0 4px 15px #00000026;transform:translateY(-2px)}.queue-item.new{animation:pulse 2s infinite;background:#fff5f5;border-left-color:#e74c3c}.queue-item-info{flex:1 1}.exam-type{margin:0}.queue-meta{display:flex;flex-direction:column;gap:5px;margin-top:10px}.generated-time,.printed-time{color:#95a5a6;font-size:.85em}.queue-item-actions{align-items:center;display:flex;gap:15px}.status-badge{border-radius:20px;font-size:.8em;padding:5px 12px}.status-badge.printed{background:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.print-btn{background:#2c5aa0;border:none;border-radius:5px;cursor:pointer;font-weight:700;padding:10px 20px;transition:background .3s ease}.print-btn:hover{background:#1e3d72}.report-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.report-modal{background:#fff;border-radius:10px;box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;height:90%;width:90%}.report-modal-header{background:#f8f9fa;border-bottom:1px solid #e0e0e0;border-radius:10px 10px 0 0}.report-modal-header h3{color:#2c5aa0;margin:0}.close-btn{background:#6c757d;border-radius:5px;color:#fff;padding:10px 20px}.close-btn:hover{background:#545b62}.report-content{flex:1 1;padding:20px}.loading{font-size:1.1em}@media (max-width:768px){.report-queue-header{flex-direction:column;gap:15px;text-align:center}.queue-item{align-items:flex-start;flex-direction:column;gap:15px}.queue-item-actions{justify-content:space-between;width:100%}.report-modal{height:95%;width:95%}}.filters-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:20px;margin-bottom:20px;padding:15px}.filter-group label{font-size:.9em;font-weight:700}.visits-list{display:flex;flex-direction:column;gap:15px}.visit-item{align-items:center;background:#fff;border-left:4px solid #2c5aa0;border-radius:10px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;padding:20px;transition:all .3s ease}.visit-item:hover{box-shadow:0 4px 15px #00000026;transform:translateY(-2px)}.visit-item-info{flex:1 1}.patient-info h4{color:#2c3e50;font-size:1.2em;margin:0 0 5px}.exam-type{color:#7f8c8d;font-weight:500;margin:0 0 5px}.visit-reason{color:#95a5a6;font-size:.9em;margin:0}.visit-meta{display:flex;flex-direction:column;gap:3px;margin-top:10px}.check-in-time,.check-out-time,.doctor-accept-time{color:#95a5a6;font-size:.8em}.visit-item-actions{align-items:center;display:flex;gap:10px}.manage-btn{background:#6c757d;border:none;border-radius:5px;cursor:pointer;font-size:.9em;padding:8px 15px}.manage-btn:hover{background:#545b62}.modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:10px;box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;max-height:90%;max-width:90%;width:500px}.modal-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e0e0e0;border-radius:10px 10px 0 0;display:flex;justify-content:space-between;padding:20px}.modal-header h3{color:#2c5aa0;margin:0}.modal-header .close-btn{background:none;border:none;color:#666;cursor:pointer;font-size:1.5em}.modal-content{flex:1 1;overflow-y:auto;padding:20px}.visit-details{background:#f8f9fa;border-radius:5px;margin-bottom:20px;padding:15px}.visit-details p{margin:5px 0}.action-buttons{flex-direction:column}.restart-btn{background:#ffc107;border:none;border-radius:5px;color:#212529;cursor:pointer;font-weight:700;padding:12px}.restart-btn:hover:not(:disabled){background:#e0a800}.restart-btn:disabled{background:#6c757d}.cancel-btn{background:#dc3545;border-radius:5px;font-weight:700;padding:12px}.cancel-btn:hover{background:#c82333}.modal-footer{border-top:1px solid #e0e0e0;padding:15px 20px}.total-count{background:#e9ecef;border:1px solid #dee2e6;border-radius:8px;min-width:120px;padding:15px;text-align:center}.total-count .count{color:#495057;font-size:2em}.total-count .label{color:#666;font-size:.9em}@media (max-width:768px){.filters-section,.visit-item{flex-direction:column}.visit-item{align-items:flex-start;gap:15px}.visit-item-actions{justify-content:space-between;width:100%}.action-buttons{flex-direction:column}}.timestamp-cell .check-out-time{color:#7f8c8d;font-size:11px;margin-top:2px}.actions-cell{min-width:120px}.manage-btn,.print-btn{border:none;border-radius:4px;cursor:pointer;font-size:12px;padding:6px 10px;transition:all .2s}@media (max-width:768px){.report-queue-container{padding:10px}.report-queue-header{align-items:flex-start;flex-direction:column;gap:15px}.queue-stats{justify-content:space-between;width:100%}.enhanced-filters-section{align-items:stretch;flex-direction:column}.search-group{min-width:auto}.visits-table{font-size:12px}.visits-table td,.visits-table th{padding:8px 4px}.action-buttons{flex-direction:column;gap:3px}.manage-btn,.print-btn{font-size:10px;padding:4px 6px}.info-grid{grid-template-columns:1fr}.report-modal{margin:10px;width:calc(100% - 20px)}}.report-queue-container{margin:0 auto;max-width:1400px;overflow-x:auto;padding:20px}.report-queue-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.report-queue-header h2{color:#2c3e50;margin:0}.queue-stats{display:flex;gap:20px}.total-count,.waiting-count{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:10px 15px;text-align:center}.waiting-count .count{color:#e74c3c}.total-count .count,.waiting-count .count{display:block;font-size:24px;font-weight:700}.total-count .count{color:#2c5aa0}.queue-stats .label{color:#6c757d;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.enhanced-filters-section{align-items:end;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px;padding:20px}.search-group{flex:1 1;min-width:300px}.search-input-group{display:flex;position:relative}.search-category-select{background:#fff;border:1px solid #ddd;border-radius:4px 0 0 4px;border-right:none;min-width:140px;padding:8px 12px}.search-input{border:1px solid #ddd;border-radius:0 4px 4px 0;flex:1 1;font-size:14px;padding:8px 12px}.clear-search-btn{background:none;border:none;color:#999;cursor:pointer;padding:4px;position:absolute;right:8px;top:50%;transform:translateY(-50%)}.clear-search-btn:hover{color:#666}.filter-group{display:flex;flex-direction:column;gap:5px}.filter-group label{color:#555;font-size:12px;font-weight:600}.filter-group select{background:#fff;border:1px solid #ddd;border-radius:4px;min-width:120px;padding:8px 12px}.reset-filters-btn{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.reset-filters-btn:hover{background:#5a6268}.enhanced-visits-table{-webkit-overflow-scrolling:touch;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden;overflow-x:auto}.visits-table{border-collapse:collapse;min-width:1200px;width:100%}.visits-table th{background:#2c5aa0;color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;padding:12px 8px;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;z-index:10}.visits-table th.sortable{cursor:pointer;transition:background-color .2s;-webkit-user-select:none;user-select:none}.visits-table th.sortable:hover{background:#1e3d6f}.visits-table td{border-bottom:1px solid #e9ecef;font-size:14px;padding:12px 8px;white-space:nowrap}.visits-table tr.visit-row:hover{background:#f8f9fa}.timestamp-cell{min-width:120px;white-space:nowrap}.timestamp-cell .date{color:#2c3e50;font-weight:500}.timestamp-cell .time{color:#7f8c8d;font-size:11px;margin-top:2px}.timestamp-cell .no-time{color:#bdc3c7;font-style:italic}.patient-cell{min-width:180px}.patient-cell .patient-name{color:#2c3e50;font-weight:600}.patient-cell .patient-id{color:#7f8c8d;font-size:11px;margin:2px 0}.patient-cell .visit-reason{color:#5a6268;font-size:12px;font-style:italic}.exam-cell{min-width:150px}.exam-cell .exam-type{color:#2c3e50;font-weight:500}.exam-cell .exam-priority{background:#e9ecef;border-radius:10px;display:inline-block;font-size:11px;margin-top:4px;padding:2px 6px}.doctor-cell{min-width:150px}.doctor-cell .doctor-name{font-weight:500}.doctor-cell .referring-doctor{color:#7f8c8d;font-size:11px;margin-top:2px}.status-cell{min-width:120px}.report-cell{min-width:100px;text-align:center}.report-available{color:#27ae60;font-weight:500}.report-pending{color:#f39c12;font-style:italic}.actions-cell{min-width:200px}.action-buttons{flex-wrap:nowrap;gap:5px}.delete-visit-btn,.manage-btn,.print-btn,.view-report-btn{border:none;border-radius:4px;cursor:pointer;font-size:12px;padding:6px 10px;transition:all .2s;white-space:nowrap}.print-btn{background:#27ae60}.print-btn:hover{background:#219653}.manage-btn{background:#3498db;color:#fff}.manage-btn:hover{background:#2980b9}.view-report-btn{background:#9b59b6;color:#fff}.view-report-btn:hover{background:#8e44ad}.delete-visit-btn{background:#e74c3c;color:#fff}.delete-visit-btn:hover{background:#c0392b}.status-badge{border-radius:12px;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}.status-badge.waiting{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.status-badge.in-progress{background:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.status-badge.completed{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.status-badge.unknown{background:#e2e3e5;border:1px solid #d6d8db;color:#383d41}.priority-badge{font-size:11px;letter-spacing:.5px;padding:4px 8px;white-space:nowrap}.priority-badge.low{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.priority-badge.normal{background:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.priority-badge.high{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.priority-badge.emergency{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.document-badge{background:#e8f4fd;border:1px solid #bee5eb;border-radius:12px;color:#2980b9;cursor:pointer;font-size:11px;font-weight:600;padding:4px 8px;transition:all .2s}.document-badge:hover{background:#d1ecf1;transform:translateY(-1px)}.document-badge.clickable{cursor:pointer}.no-documents{color:#bdc3c7}.payment-info{min-width:100px}.medical-aid{color:#7f8c8d;display:block;font-size:11px;margin-top:2px}.amount-info{min-width:80px}.amount-paid{color:#27ae60;font-weight:600}.amount-claimed{color:#e67e22;display:block;font-size:11px;margin-top:2px}.not-assigned{color:#bdc3c7;font-style:italic}.empty-queue{color:#6c757d;padding:60px 20px;text-align:center}.empty-icon{font-size:48px;margin-bottom:16px}.empty-queue h3{color:#495057;margin:0 0 8px}.empty-queue p{margin:0 0 16px}.filter-help{background:#e7f3ff;border-left:4px solid #3498db;border-radius:6px;padding:12px}.filter-help p{font-size:14px;margin:4px 0}.loading{color:#6c757d;font-size:16px}.modal-overlay,.report-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal,.report-modal{background:#fff;border-radius:8px;max-height:90vh;max-width:500px;overflow:auto;width:90%}.report-modal{max-width:800px}.modal-header,.report-modal-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:20px}.report-modal-actions{display:flex;gap:10px}.modal-header h3,.report-modal-header h3{color:#2c3e50;margin:0}.close-btn{align-items:center;background:none;border:none;color:#6c757d;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;width:30px}.close-btn:hover{color:#495057}.modal-content,.report-content{padding:20px}.modal-footer{border-top:1px solid #e9ecef;padding:20px;text-align:right}.visit-details p{margin:8px 0}.action-buttons{display:flex;gap:10px;margin-top:20px}.cancel-btn,.restart-btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:10px 15px}.restart-btn{background:#3498db;color:#fff}.restart-btn:hover:not(:disabled){background:#2980b9}.restart-btn:disabled{background:#bdc3c7;cursor:not-allowed}.cancel-btn{background:#e74c3c}.cancel-btn:hover{background:#c0392b}.report-header-section{margin-bottom:30px;text-align:center}.report-header-section h1{color:#2c5aa0;margin-bottom:10px}.report-header-section h2{color:#333;margin-bottom:15px}.report-meta{color:#666;font-size:14px}.report-section{margin-bottom:25px}.report-section h3{border-bottom:1px solid #ddd;color:#2c5aa0;margin-bottom:15px;padding-bottom:5px}.info-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.info-item{margin-bottom:8px}.info-item label{color:#555;display:block;font-weight:700;margin-bottom:2px}.timeline{display:flex;flex-direction:column;gap:8px}.timeline-item{background-color:#f8f9fa;border-left:3px solid #2c5aa0;border-radius:4px;padding:8px}.report-footer,.timeline-item{display:flex;justify-content:space-between}.report-footer{border-top:2px solid #2c5aa0;margin-top:40px;padding-top:20px}.signature-section{text-align:center}.signature-line{border-bottom:1px solid #333;margin-bottom:5px;width:200px}.report-footer-meta{color:#666;font-size:12px;text-align:right}.full-width{grid-column:1/-1}.enhanced-visits-table::-webkit-scrollbar{height:8px}.enhanced-visits-table::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.enhanced-visits-table::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.enhanced-visits-table::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width:768px){.report-queue-container{overflow-x:auto;padding:10px}.report-queue-header{align-items:flex-start;flex-direction:column;gap:15px}.queue-stats{flex-wrap:wrap;justify-content:space-between;width:100%}.enhanced-filters-section{align-items:stretch;flex-direction:column}.search-group{min-width:auto}.visits-table{font-size:12px;min-width:1000px}.visits-table td,.visits-table th{padding:8px 4px}.action-buttons{flex-direction:column;gap:3px;min-width:120px}.delete-visit-btn,.manage-btn,.print-btn,.view-report-btn{font-size:10px;padding:4px 6px}.info-grid{grid-template-columns:1fr}.report-modal{margin:10px;width:calc(100% - 20px)}.visits-table th{position:-webkit-sticky;position:sticky;top:0;z-index:10}}@media (max-width:480px){.visits-table{min-width:800px}.visits-table td,.visits-table th{font-size:11px;padding:6px 3px}.action-buttons{min-width:100px}.queue-stats{gap:10px}.total-count,.waiting-count{min-width:80px;padding:8px 12px}.total-count .count,.waiting-count .count{font-size:18px}}@media print{.enhanced-visits-table{overflow-x:visible!important}.visits-table{min-width:auto!important;width:100%!important}}.admin-pin-section{margin-top:20px;text-align:center}.admin-pin-section label{color:#2c3e50;display:block;font-size:14px;font-weight:600;margin-bottom:15px}.pin-input-container{display:flex;gap:10px;justify-content:center;margin-bottom:10px}.pin-digit-input{background:#fff;border:2px solid #ddd;border-radius:8px;font-size:18px;font-weight:700;height:50px;text-align:center;transition:all .2s ease;width:50px}.pin-digit-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none;transform:translateY(-2px)}.pin-digit-input:not(:placeholder-shown){background-color:#f8fff9;border-color:#27ae60}.pin-hint{color:#7f8c8d;font-size:12px;margin-bottom:15px}.clear-pin-btn{background:#95a5a6;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:8px 16px;transition:background .2s}.clear-pin-btn:hover{background:#7f8c8d}.delete-warning{background:#fff3f3;border:1px solid #ffcdd2;border-radius:8px;margin-bottom:20px;padding:20px;text-align:center}.warning-icon{font-size:2em;margin-bottom:10px}.delete-warning p{color:#c0392b;margin:8px 0}.visit-to-delete{background:#fff;border:1px solid #e74c3c;border-radius:6px;margin-top:10px;padding:15px}.visit-to-delete strong{color:#2c3e50;font-size:1.1em}.modal-footer{display:flex;gap:10px;justify-content:space-between}.cancel-btn{background:#95a5a6;border-radius:6px;font-size:14px;padding:12px 24px;transition:background .2s}.cancel-btn:hover{background:#7f8c8d}.confirm-delete-btn{align-items:center;background:#e74c3c;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:14px;gap:8px;justify-content:center;padding:12px 24px;transition:background .2s}.confirm-delete-btn:hover:not(:disabled){background:#c0392b}.confirm-delete-btn:disabled{background:#bdc3c7;cursor:not-allowed;opacity:.6}@media (max-width:480px){.pin-digit-input{font-size:16px;height:45px;width:45px}.pin-input-container{gap:8px}.modal-footer{flex-direction:column}}.report-details{max-width:100%}.report-text-content{background:#f8f9fa;border-left:4px solid #3498db;border-radius:6px;line-height:1.5;margin-top:8px;padding:15px;white-space:pre-wrap}.report-text-content pre{font-family:inherit;margin:0;white-space:pre-wrap}.no-report{color:#6c757d;padding:40px 20px;text-align:center}.no-report-icon{font-size:48px;margin-bottom:16px}.no-report h3{color:#495057;margin:0 0 8px}.document-item{border-left:3px solid #3498db;border-radius:4px;padding:10px}.document-meta{font-size:12px}@media print{.modal-overlay{background:#fff;position:static}.modal{box-shadow:none;max-width:none;width:100%}.modal-header,.report-modal-actions{display:none}.report-content{padding:0}}.scan-results-table{border-collapse:collapse;box-shadow:0 1px 3px #0000001a;font-size:14px;margin:15px 0;width:100%}.scan-results-table th{background:#2c5aa0;color:#fff;font-size:13px;font-weight:600;padding:12px 15px;text-align:left}.scan-results-table td{border-bottom:1px solid #e9ecef;padding:12px 15px;vertical-align:top}.scan-results-table tr:nth-child(2n){background:#f8f9fa}.scan-results-table tr:hover{background:#e8f4fd}@media print{.scan-results-table{box-shadow:none;font-size:11px}.scan-results-table td,.scan-results-table th{padding:8px 10px}.close-btn,.report-modal-actions{display:none!important}}.documents-list{display:flex;flex-direction:column;gap:10px}.document-item{align-items:center;background:#f8f9fa;border-left:4px solid #3498db;display:flex;justify-content:space-between;padding:12px 15px;transition:all .2s ease}.document-item:hover{background:#e8f4fd;transform:translateY(-1px)}.document-type{color:#2c5aa0;display:block;font-weight:700;margin-bottom:4px}.document-name{display:block;font-weight:500;margin-bottom:2px}.document-date{color:#7f8c8d;font-size:.85em}.preview-doc-btn{background:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85em;padding:8px 12px;transition:background .2s;white-space:nowrap}.preview-doc-btn:hover{background:#2980b9}@media print{.preview-doc-btn{display:none}.document-item{background:#f8f9fa!important;border-left:3px solid #3498db!important}}.clinic-header{align-items:center;display:flex;gap:15px}.clinic-logo{height:60px;object-fit:contain;width:60px}.clinic-info h1{color:#2c5aa0;font-size:1.5em;margin:0}.clinic-info p{color:#666;font-size:.9em;margin:0}.documents-list{margin:15px 0}.document-item{border-radius:6px;box-shadow:0 2px 8px #0000001a;margin:20px 0;overflow:hidden}.document-header{background:#2c5aa0;color:#fff;font-size:1.1em;font-weight:700;padding:12px 15px}.document-content{background:#fff;min-height:200px;padding:0}.document-image{height:auto;max-height:600px;padding:15px}.document-pdf-frame{border:none;height:600px;width:100%}.document-unavailable{background:#f8f9fa;color:#6c757d;font-style:italic;padding:40px 20px;text-align:center}.document-unavailable a{color:#3498db;text-decoration:none}.document-unavailable a:hover{text-decoration:underline}@media print{.document-item{border:1px solid #ddd;box-shadow:none;page-break-inside:avoid}.document-pdf-frame{height:500px}.document-image{max-height:400px}}.report-modal-header{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;padding:20px}.report-content{max-height:calc(100vh - 200px);overflow-y:auto}.status-badge{border-radius:4px;font-size:12px;font-weight:700;margin-left:8px;padding:4px 8px}.status-badge.waiting{background-color:#ffc107;color:#000}.status-badge.in-progress{background-color:#17a2b8;color:#fff}.status-badge.completed{background-color:#28a745;color:#fff}.status-badge.has-report{background-color:#6f42c1;color:#fff}.restart-warning{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;color:#856404;margin-top:15px;padding:10px}.restart-warning p{margin:5px 0}.has-report{color:#28a745;font-weight:700}.user-profile{margin:0 auto;max-width:800px;padding:20px}.profile-header{margin-bottom:30px}.profile-header h2{color:#333;margin-bottom:20px}.profile-tabs{border-bottom:1px solid #ddd;display:flex;gap:10px;padding-bottom:10px}.profile-tabs button{background:none;border:none;border-radius:4px 4px 0 0;color:#666;cursor:pointer;font-size:14px;padding:10px 20px}.profile-tabs button.active{background:#007bff;border-bottom:2px solid #0056b3;color:#fff}.profile-section{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:30px}.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-weight:600;margin-bottom:8px}.form-group input,.form-group select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;width:100%}.form-group input.disabled-input{background-color:#f5f5f5;cursor:not-allowed}.form-row{display:flex;gap:20px;margin-bottom:20px}.form-row .form-group{flex:1 1;margin-bottom:0}.form-actions{margin-top:30px;text-align:right}.btn-primary{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:10px 30px}.btn-primary:hover{background:#0056b3}.alert{border-radius:4px;margin-bottom:20px;padding:15px}.alert-success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.alert-error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.alert-info{background-color:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.profile-loading{color:#666;padding:40px;text-align:center}.referral-document-section{background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;margin:15px 0;padding:15px}.referral-document-section h4{color:#007bff;margin:0 0 10px}.referral-link-container{display:flex;flex-direction:column;gap:5px}.referral-link{align-items:center;background:#007bff;border-radius:6px;color:#fff;display:inline-flex;font-weight:500;gap:8px;padding:10px 15px;text-decoration:none;transition:background-color .2s}.referral-link:hover{background:#0056b3;color:#fff;text-decoration:none}.examination-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.examination-form{background:#fff;border-radius:10px;max-height:90vh;max-width:90%;overflow-y:auto;padding:30px;width:800px}.examination-header{border-bottom:2px solid #e9ecef;margin-bottom:20px;padding-bottom:15px}.patient-info-header{margin-top:15px}.patient-info-header p{color:#555;margin:5px 0}.form-section{border:1px solid #e9ecef;border-radius:8px;margin-bottom:25px;padding:15px}.scan-results-container{border:1px solid #ddd;border-radius:6px;overflow:hidden}.scan-results-header{background:#f8f9fa;border-bottom:1px solid #ddd;display:grid;font-weight:700;grid-template-columns:1fr 1fr 80px;padding:10px 15px}.scan-results-list{max-height:400px;overflow-y:auto}.scan-result-item{grid-gap:10px;border-bottom:1px solid #eee;display:grid;gap:10px;grid-template-columns:1fr 1fr 80px;padding:15px}.scan-result-item:last-child{border-bottom:none}.result-column,.scan-data-column{display:flex;flex-direction:column}.result-column textarea,.scan-data-column textarea{border:1px solid #ddd;border-radius:4px;font-family:inherit;padding:8px;resize:vertical;width:100%}.action-column{align-items:flex-start}.action-column,.remove-item-btn{display:flex;justify-content:center}.remove-item-btn{align-items:center;background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;height:30px;width:30px}.remove-item-btn:hover:not(:disabled){background:#c82333}.remove-item-btn:disabled{background:#6c757d;cursor:not-allowed}.add-item-btn{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 15px}.add-item-btn:hover{background:#218838}.form-group{margin-bottom:15px}.form-group textarea{border:1px solid #ddd;border-radius:4px;font-family:inherit;padding:10px;resize:vertical;width:100%}.file-upload-area{border:2px dashed #ddd;border-radius:6px;padding:20px;text-align:center;transition:border-color .3s}.file-upload-area:hover{border-color:#007bff}.file-upload-label{background:#f8f9fa;border-radius:4px;cursor:pointer;display:block;padding:10px 20px;transition:background-color .3s}.file-upload-label:hover{background:#e9ecef}.file-upload-area input[type=file]{display:none}.file-info{background:#e9ecef;border-radius:4px;margin-top:10px;padding:10px}.remove-file-btn{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:5px;padding:5px 10px}.remove-file-btn:hover{background:#c82333}.file-help{color:#6c757d;display:block;margin-top:5px}.form-actions{border-top:1px solid #e9ecef;display:flex;gap:10px;justify-content:flex-end;margin-top:25px;padding-top:20px}.cancel-btn{border-radius:4px;padding:10px 20px}.save-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:10px 20px}.save-btn:hover:not(:disabled){background:#0056b3}.save-btn:disabled{background:#6c757d;cursor:not-allowed}.referral-documents-section{background:#f8f9fa;border:1px solid #e9ecef;margin-top:15px}.referral-documents-section h4{color:#2c3e50;font-size:1.1em;margin:0 0 15px}.download-all-section{background:#fff;border:1px dashed #dee2e6;border-radius:6px;margin-bottom:15px;padding:10px;text-align:center}.download-all-btn{border-radius:6px;font-size:.95em;margin-bottom:8px;padding:10px 20px}.referral-documents-list{display:flex;flex-direction:column;gap:10px}.referral-document-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:6px;display:flex;justify-content:space-between;padding:12px;transition:all .2s ease}.referral-document-item:hover{border-color:#007bff;box-shadow:0 2px 4px #0000001a}.document-info{align-items:center;display:flex;flex:1 1;gap:12px}.document-icon{font-size:1.5em}.document-details{display:flex;flex-direction:column}.document-name{color:#2c3e50;font-weight:600;margin-bottom:4px}.document-meta{color:#6c757d;font-size:.85em}.document-actions{display:flex;gap:8px}.download-doc-btn,.view-doc-btn{background:#fff;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;font-size:.85em;padding:6px 12px;transition:all .2s ease}.view-doc-btn:hover{background:#007bff;border-color:#007bff;color:#fff}.download-doc-btn:hover{background:#28a745;border-color:#28a745;color:#fff}@media (max-width:768px){.referral-document-item{align-items:flex-start;flex-direction:column;gap:10px}.document-actions{align-self:stretch;justify-content:space-between}.download-doc-btn,.view-doc-btn{flex:1 1;text-align:center}}.referral-documents-section{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;margin:20px 0;padding:15px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.download-all-btn{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 15px}.download-all-btn:hover{background:#218838}.loading-documents{color:#666;padding:20px;text-align:center}.documents-tabs-container{border:1px solid #ddd;border-radius:8px;overflow:hidden}.documents-tabs{background:#f5f5f5;border-bottom:1px solid #ddd;display:flex;overflow-x:auto}.tab-button{background:#0359b524;border:none;border-right:1px solid #ddd;cursor:pointer;flex:1 1;min-width:120px;padding:12px 20px;transition:background-color .2s;white-space:nowrap}.tab-button:hover{background:#e9e9e9}.tab-button.active{background:#1135b6;border-bottom:2px solid #007bff;font-weight:700}.tab-content{background:#fff;min-height:400px}.document-viewer{padding:20px}.document-info{background:#f8f9fa;border-radius:4px;margin-bottom:15px;padding:15px}.document-info p{font-size:14px;margin:5px 0}.document-preview{border:1px solid #e0e0e0;border-radius:4px;overflow:hidden}.document-image{display:block;margin:0 auto;max-height:500px}.document-frame{border:none;height:500px;width:100%}.document-error,.document-loading,.unsupported-format{color:#666;padding:40px;text-align:center}.download-btn,.load-now-btn,.retry-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;margin-top:10px;padding:10px 20px;text-decoration:none}.download-btn:hover,.load-now-btn:hover,.retry-btn:hover{background:#0056b3}@media (max-width:768px){.documents-tabs{flex-direction:column}.tab-button{border-bottom:1px solid #ddd;border-right:none}.document-frame{height:300px}}.doctor-dashboard{background:#f5f5f5;min-height:100vh}.dashboard-content{grid-gap:2rem;display:grid;gap:2rem;margin:0 auto;max-width:800px;padding:2rem}.current-appointment,.pending-patients{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.current-appointment h3,.pending-patients h3{border-bottom:2px solid #667eea;color:#333;margin-bottom:1rem;padding-bottom:.5rem}.no-appointment{color:#666;font-style:italic;text-align:center}.appointment-card{align-items:center;border-left:4px solid #4caf50;border-radius:5px;justify-content:space-between;padding:1rem}.patient-details h4{color:#333;margin:0 0 .5rem}.complete-btn{background:#4caf50;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:.75rem 1.5rem;width:auto}.complete-btn:hover{background:#45a049}.patients-list{display:flex;flex-direction:column;gap:1rem}.patient-card{align-items:center;border-radius:5px;padding:1rem}.patient-info h4{color:#333;margin:0 0 .5rem}.accept-btn{background:#28a745;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:.75rem 1.5rem;width:auto}.accept-btn:hover{background:#218838}.status{font-size:.9rem}.status.free{background:#d4edda;color:#155724}.status.busy{background:#f8d7da;color:#721c24}.ringing-overlay{align-items:center;background:#ff6b6be6;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.ringing-animation{color:#fff;text-align:center}.ring-circle{animation:ringPulse 1.5s infinite;border:5px solid #fff;border-radius:50%;height:100px;margin:0 auto 2rem;width:100px}.ringing-animation h2{font-size:2.5rem;margin-bottom:1rem;text-shadow:2px 2px 4px #0000004d}.ringing-animation p{font-size:1.2rem;opacity:.9}@keyframes ringPulse{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.patient-info-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin:1rem 0}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-item label{color:#6c757d;font-size:.9rem;font-weight:600}.info-item span{color:#495057}.priority-tag{border-radius:15px;color:#fff;font-size:.8rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.priority-tag.emergency{background:#dc3545}.priority-tag.high{background:#fd7e14}.priority-tag.normal{background:#20c997}.priority-tag.low{background:#6c757d}.appointment-actions{display:flex;gap:1rem;margin-top:1rem}.examine-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.examine-btn:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.cancel-btn{background:#6c757d;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;padding:.75rem 1.5rem;transition:all .3s ease}.cancel-btn:hover{background:#5a6268}.patient-meta{gap:1rem;margin:.5rem 0}.priority-badge{border-radius:15px;color:#fff;font-size:.8rem;font-weight:600;padding:.25rem .75rem}.priority-badge.emergency{background:#dc3545}.priority-badge.high{background:#fd7e14}.priority-badge.normal{background:#20c997}.priority-badge.low{background:#6c757d}.waiting-time{color:#6c757d;font-size:.9rem;margin:.5rem 0 0}.no-patients{align-items:center;display:flex;justify-content:center;padding:3rem 2rem}.no-patients-content{color:#6c757d;text-align:center}.no-patients-content h3{color:#495057;margin-bottom:1rem}.stop-ringing-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;margin-top:1rem;padding:.75rem 1.5rem;transition:all .3s ease}.stop-ringing-btn:hover{background:#ffffff4d}.appointment-card{background:#f8f9fa;border-left:4px solid #28a745;border-radius:10px;display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.patient-card{align-items:flex-start;animation:pulse 2s infinite;background:#fff3cd;border:1px solid #ffeaa7;display:flex;gap:1rem;justify-content:space-between;padding:1.25rem}.patient-card.ringing{background:#ffeaea;border-color:#ff6b6b}@keyframes pulse{0%{box-shadow:0 0 0 0 #ff6b6bb3}70%{box-shadow:0 0 0 10px #ff6b6b00}to{box-shadow:0 0 0 0 #ff6b6b00}}.header-actions{align-items:center;display:flex;gap:1rem}.chat-indicator-btn{align-items:center;background:#28a745;border:none;border-radius:20px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:.5rem 1rem;position:relative;transition:all .3s ease}.chat-indicator-btn:hover{background:#218838;transform:translateY(-1px)}.unread-badge{align-items:center;background:#dc3545;border-radius:50%;color:#fff;display:flex;font-size:.7rem;font-weight:700;height:20px;justify-content:center;position:absolute;right:-5px;top:-5px;width:20px}.chat-requests{background:#fff;border-left:4px solid #667eea;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-top:2rem;padding:1.5rem}.chat-requests h4{color:#2c3e50;font-size:1.1rem;margin:0 0 1rem}.requests-list{display:flex;flex-direction:column;gap:1rem}.chat-request{background:#f8f9fa;border-left:3px solid #28a745;border-radius:8px;padding:1rem}.chat-request p{color:#495057;margin:0 0 .5rem}.chat-request small{color:#6c757d;font-size:.8rem}.dashboard-header{align-items:center;background:#fff;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;padding:1rem 2rem}.header-left h1{color:#2c3e50;font-size:1.5rem;margin:0}.user-role{color:#fff;font-size:.9rem}.user-info{gap:1.5rem}.status-indicator,.user-info{align-items:center;display:flex}.status-indicator{font-weight:600;gap:.5rem}.status{border-radius:15px;color:#fff;font-size:.8rem;font-weight:700;padding:.25rem .75rem;text-transform:capitalize}.status.free{background:#28a745}.status.busy{background:#ffc107;color:#212529}@media (max-width:768px){.dashboard-header{text-align:center}.dashboard-header,.user-info{flex-direction:column;gap:1rem}.header-actions{justify-content:center}}.status-select{background:#fff;border:1px solid #ddd;border-radius:4px;font-size:.8rem;margin-left:.5rem;padding:.25rem .5rem}.chat-panel-btn{align-items:center;background:#28a745;border:none;border-radius:20px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:.5rem 1rem;position:relative;transition:all .3s ease}.chat-panel-btn:hover{background:#218838;transform:translateY(-1px)}.patient-card .waiting-time{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;display:inline-block;font-family:Courier New,monospace;font-size:14px;font-weight:700;margin-top:5px;padding:4px 8px}.patient-card .arrival-time{color:#6c757d;font-size:13px;margin:2px 0}.patient-info p{margin:3px 0}.patient-meta{align-items:center;display:flex;gap:10px;margin-bottom:8px}.patient-id{color:#6c757d;font-size:13px}.visit-reason{color:#495057;margin:5px 0}.patient-card{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:15px;padding:15px}.patient-card.ringing{animation:pulse-ring 2s infinite;border-color:#dc3545}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 #dc3545b3}70%{box-shadow:0 0 0 10px #dc354500}to{box-shadow:0 0 0 0 #dc354500}}.priority-badge{border-radius:12px;font-size:12px;font-weight:700;padding:2px 8px;text-transform:uppercase}.priority-badge.emergency{background-color:#dc3545;color:#fff}.priority-badge.high{background-color:#fd7e14;color:#fff}.priority-badge.normal{background-color:#20c997;color:#fff}.priority-badge.low{background-color:#6c757d;color:#fff}.alert-overlay{align-items:center;animation:pulse-alert 2s infinite;background:#ff0000e6;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.alert-overlay.critical{background:#dc3545f2}@keyframes pulse-alert{0%{background-color:#dc3545e6}50%{background-color:#dc3545b3}to{background-color:#dc3545e6}}.alert-modal{background:#fff;border:5px solid #dc3545;border-radius:10px;box-shadow:0 0 50px #00000080;max-width:500px;padding:30px;text-align:center;width:90%}.alert-header h2{color:#dc3545;font-size:24px;margin-bottom:20px}.alert-content{margin:20px 0}.alert-message{background:#f8f9fa;border-left:4px solid #dc3545;border-radius:5px;margin-bottom:20px;padding:15px;text-align:left}.alert-actions{margin-top:20px}.dismiss-alert-btn{background:#dc3545;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;padding:15px 30px;transition:background .3s}.dismiss-alert-btn:hover{background:#c82333}.alerts-panel{background:#fff3cd;border:2px solid #ffc107;border-radius:8px;box-shadow:0 4px 12px #00000026;max-width:300px;padding:15px;position:fixed;right:20px;top:100px;z-index:1000}.alerts-panel h3{color:#856404;font-size:16px;margin:0 0 10px}.alert-item{align-items:center;background:#fff;border-left:3px solid #dc3545;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:8px;padding:8px}.alert-info p{font-size:12px;margin:2px 0}.dismiss-btn{background:#6c757d;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:11px;padding:4px 8px}.dismiss-btn:hover{background:#5a6268}.admin-dashboard{background-color:#f5f5f5;min-height:100vh}.admin-header{background:linear-gradient(135deg,#000,#4b5dd0);box-shadow:0 2px 10px #0000001a;color:#fff;padding:1rem 2rem}.location-filter{margin-right:20px}.location-select{background-color:#fff;border:1px solid #ddd;border-radius:4px;color:#333;font-size:14px;padding:8px 12px}.location-select:focus{border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e233;outline:none}.admin-header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px}.admin-header h1{font-size:1.8rem;font-weight:600;margin:0}.admin-actions{align-items:center;display:flex;gap:1rem}.logout-btn{background:rgba(250,4,4,.976);border:1px solid #ffffff4d;border-radius:5px;color:#fff;cursor:pointer;padding:.5rem 1rem;transition:all .3s ease}.logout-btn:hover{background:#ffffff4d}.admin-nav{background:#fff;box-shadow:0 2px 5px #0000001a;display:flex;gap:0;padding:0 2rem}.nav-btn{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:.9rem;font-weight:500;padding:1rem 1.5rem;transition:all .3s ease}.nav-btn:hover{background-color:#f8f9fa;color:#333}.nav-btn.active{background-color:#f8f9fa;border-bottom-color:#667eea;color:#667eea}.admin-content{margin:0 auto;max-width:1200px;min-height:calc(100vh - 120px);padding:2rem}.loading-overlay{align-items:center;color:#666;display:flex;flex-direction:column;justify-content:center;padding:3rem}.spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:40px;margin-bottom:1rem;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.notification{border-radius:5px;box-shadow:0 4px 12px #00000026;max-width:400px;padding:1rem;position:fixed;right:20px;top:20px;z-index:1000}.notification.info{background-color:#e3f2fd;border-left:4px solid #2196f3;color:#1565c0}.notification.success{background-color:#e8f5e8;border-left:4px solid #4caf50;color:#2e7d32}.notification.error{background-color:#ffebee;border-left:4px solid #f44336;color:#c62828}.notification.warning{background-color:#fff8e1;border-left:4px solid #ff9800;color:#f57f17}.notification-content{align-items:center;display:flex;gap:1rem;justify-content:between}.notification-message{flex:1 1}.notification-close{background:none;border:none;color:inherit;cursor:pointer;font-size:1.2rem;opacity:.7}.notification-close:hover{opacity:1}.user-management{padding:20px}.management-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.management-header h2{color:#333}.user-form{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin-bottom:30px;padding:30px}.user-form h3,.users-list h3{color:#333;margin-bottom:20px}.users-table{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.table-header{background:#f8f9fa;border-bottom:1px solid #ddd;color:#333;font-weight:600}.table-header,.table-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;padding:15px 20px}.table-row{align-items:center;border-bottom:1px solid #eee}.table-row:last-child{border-bottom:none}.table-row:hover{background-color:#f8f9fa}.user-info{line-height:1.4}.user-info strong{color:#333;display:block}.user-info div{color:#666;font-size:13px}.role-badge{border-radius:12px;font-size:12px;font-weight:600;padding:4px 8px}.role-admin{background-color:#dc3545;color:#fff}.role-doctor{background-color:#007bff;color:#fff}.role-receptionist{background-color:#28a745;color:#fff}.user-actions{display:flex;gap:10px}.btn-edit{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px}.btn-edit:hover{background:#0056b3}.btn-delete{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px}.btn-delete:hover{background:#c82333}.loading{color:#666;padding:40px;text-align:center}.seniority-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:4px 8px}.seniority-badge.senior{background-color:gold;color:#333}.seniority-badge.junior{background-color:#e0e0e0;color:#666}.report-print-page{background:#f8fafc;font-family:Segoe UI,Inter,-apple-system,BlinkMacSystemFont,sans-serif;margin:0 auto;max-width:1200px;padding:20px}.control-panel{align-items:center;background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #0000000d;border-radius:16px;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;gap:16px;margin-bottom:40px;padding:24px}.control-panel-buttons{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;width:100%}.control-panel button{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:10px;justify-content:center;letter-spacing:.3px;min-width:180px;padding:14px 28px;transition:all .3s cubic-bezier(.4,0,.2,1)}.print-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 4px 12px #3b82f64d;color:#fff}.print-btn:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 6px 16px #3b82f666;transform:translateY(-2px)}.print-btn:disabled{background:#94a3b8;box-shadow:none;cursor:not-allowed;opacity:.7}.back-btn{background:linear-gradient(135deg,#64748b,#475569);box-shadow:0 4px 12px #64748b4d;color:#fff}.back-btn:hover{background:linear-gradient(135deg,#475569,#334155);box-shadow:0 6px 16px #64748b66;transform:translateY(-2px)}.printable-report{background:#fff;border-radius:20px;box-shadow:0 10px 40px #0000001a;overflow:hidden;padding:60px 80px;position:relative}.printable-report:before{background:linear-gradient(90deg,#3b82f6,#8b5cf6,#10b981);content:"";height:4px;left:0;position:absolute;right:0;top:0}@media print{.printable-report{background:#fff;border-radius:0;box-shadow:none;margin:0;padding:0;width:100%}.printable-report:before{display:none}.no-print{display:none!important}body{background:#fff!important;margin:0;padding:0}}.report-header.printable{align-items:flex-start;border-bottom:3px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:60px;padding-bottom:40px;position:relative}.report-header.printable:after{background:linear-gradient(90deg,#3b82f6,#8b5cf6);bottom:-3px;content:"";height:3px;left:0;position:absolute;width:120px}.logo-container{flex:1 1}.logo-container img{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));height:100px;max-width:300px;object-fit:contain}.clinic-info{flex:1 1;text-align:right}.clinic-info h1{color:#1e293b;font-size:32px;font-weight:700;letter-spacing:-.5px;line-height:1.2;margin:0 0 12px}.clinic-info .tagline{color:#64748b;font-size:18px;font-style:normal;font-weight:500;margin-bottom:25px}.contact-info{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-left:auto;max-width:500px;padding:20px;text-align:left}.contact-info p{align-items:center;color:#475569;display:flex;font-size:15px;gap:10px;margin:8px 0}.contact-info p:before{background:#3b82f6;border-radius:50%;content:"";display:inline-block;height:6px;width:6px}.report-title{margin:60px 0 80px;position:relative;text-align:center}.report-title h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1e40af);-webkit-background-clip:text;background-clip:text;color:#1e293b;font-size:42px;font-weight:800;letter-spacing:-.8px;margin-bottom:16px}.report-title .patient-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;color:#64748b;display:inline-block;font-size:18px;font-weight:500;padding:20px}.section.printable{margin-bottom:60px;page-break-inside:avoid}.section-title{align-items:center;background:linear-gradient(135deg,#1e293b,#334155);border-radius:12px;color:#fff;display:flex;font-size:20px;font-weight:700;gap:12px;letter-spacing:.5px;margin-bottom:30px;overflow:hidden;padding:20px 30px;position:relative}.section-title:before{background:linear-gradient(180deg,#3b82f6,#8b5cf6);content:"";height:100%;left:0;position:absolute;top:0;width:6px}.vital-signs-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(4,1fr);margin:30px 0}.vital-item{background:#fff;border:1px solid #f1f5f9;border-radius:16px;box-shadow:0 4px 20px #0000000f;overflow:hidden;padding:30px 20px;position:relative;text-align:center;transition:all .3s ease}.vital-item:before{background:linear-gradient(90deg,#3b82f6,#10b981);content:"";height:4px;left:0;position:absolute;right:0;top:0}.vital-item:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-5px)}.vital-label{color:#64748b;font-size:15px;font-weight:600;letter-spacing:1px;margin-bottom:15px;text-transform:uppercase}.vital-value{color:#1e293b;font-size:36px;font-weight:800;line-height:1;margin:0}.scan-results{grid-gap:20px;display:grid;gap:20px}.scan-result{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:12px;margin:10px 0;padding:25px}.scan-result p{color:#475569;font-size:16px;line-height:1.6;margin:12px 0}.scan-result strong{color:#1e293b;font-weight:600}.no-results{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;color:#94a3b8;font-style:italic;padding:40px;text-align:center}.text-content{grid-gap:30px;display:grid;gap:30px}.recommendations-box,.summary-box{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:16px;padding:30px;position:relative}.recommendations-box:before,.summary-box:before{background:linear-gradient(180deg,#3b82f6,#8b5cf6);content:"";height:100%;left:0;position:absolute;top:0;width:4px}.recommendations-box p,.summary-box p{color:#475569;font-size:17px;line-height:1.7;margin:0}.recommendations-box strong,.summary-box strong{color:#1e293b;display:inline-block;font-size:18px;font-weight:700;margin-bottom:15px}.documents-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin:30px 0}.document-grid-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 16px #00000014;break-inside:avoid;overflow:hidden;page-break-inside:avoid;transition:all .3s ease}.document-grid-item:hover{box-shadow:0 8px 25px #0000001f;transform:translateY(-4px)}.document-image-container{align-items:center;background:#f8fafc;display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:20px}.document-image{border-radius:8px;box-shadow:0 2px 8px #0000001a;max-height:280px;max-width:100%;object-fit:contain}.document-caption{background:#fff;border-top:1px solid #e2e8f0;padding:16px;text-align:center;width:100%}.document-caption small{color:#64748b;font-size:14px;font-weight:500}.signature-footer{align-items:flex-end;border-top:2px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:40px;justify-content:space-between;margin-top:100px;padding-top:40px}.doctor-signature{flex:1 1;min-width:300px}.signature-line{margin-top:40px;padding-top:10px;position:relative}.signature-line:before{background:linear-gradient(90deg,#1e293b,#0000);content:"";height:1px;left:0;position:absolute;top:0;width:100%}.signature-label{color:#64748b;font-size:16px;font-weight:600;margin-bottom:10px}.signature-field{border-bottom:2px solid #cbd5e1;color:#1e293b;font-size:18px;margin-top:8px;min-height:24px;padding-bottom:4px}.report-date{flex:1 1;min-width:300px;text-align:right}.date-field{color:#475569;font-size:16px;font-weight:600;margin-top:10px}.footer-note.printable{border-top:2px solid #e5e7eb;color:#64748b;font-size:14px;line-height:1.6;margin-top:60px;padding-top:30px;text-align:center}.footer-note.printable p{margin:8px 0}.footer-note.printable strong{color:#1e293b}.loading-docs{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:16px;padding:60px;text-align:center}.loading-docs p{align-items:center;color:#64748b;display:flex;font-size:18px;gap:12px;justify-content:center}.no-documents{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;color:#94a3b8;font-style:italic;padding:40px;text-align:center}@media print{@page{size:A4;margin:20mm}.documents-grid{gap:16px!important;grid-template-columns:repeat(2,1fr)!important}.document-image-container{min-height:200px!important;padding:10px!important}.document-image{max-height:180px!important}.vital-signs-grid{gap:16px!important}.vital-item{padding:20px 10px!important}.vital-value{font-size:28px!important}.printable-report{padding:0!important}.signature-footer{margin-top:60px!important;page-break-inside:avoid}}@media (max-width:1024px){.printable-report{padding:40px}.documents-grid,.vital-signs-grid{grid-template-columns:repeat(2,1fr)}.report-header.printable{flex-direction:column;gap:30px;text-align:center}.clinic-info{text-align:center}.contact-info{margin:0 auto}}@media (max-width:768px){.printable-report{padding:20px}.documents-grid,.vital-signs-grid{grid-template-columns:1fr}.signature-footer{flex-direction:column;text-align:center}.report-date{text-align:center}.report-title h2{font-size:32px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.printable-report *{animation:fadeIn .5s ease-out}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.loading{align-items:center;color:#667eea;display:flex;font-size:1.5rem;height:100vh;justify-content:center}.App{min-height:100vh}
/*# sourceMappingURL=main.1909609c.css.map*/