*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{min-width:320px;font-family:Segoe UI,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f0f4f8}#root{min-height:100vh}.new-patient-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.new-patient-modal{background-color:#fff;border-radius:8px;padding:24px;width:90%;max-width:480px;box-shadow:0 4px 20px #00000026}.new-patient-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.new-patient-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#1a365d}.new-patient-close{background:none;border:none;font-size:1.25rem;cursor:pointer;color:#6b7280;padding:4px 8px;border-radius:4px}.new-patient-close:hover{background-color:#f3f4f6;color:#374151}.new-patient-close:disabled{cursor:not-allowed;opacity:.5}.new-patient-row{display:flex;gap:16px;margin-bottom:16px}.new-patient-field{flex:1;display:flex;flex-direction:column}.new-patient-field.full-width{flex:none;width:50%}.new-patient-field label{font-size:.875rem;font-weight:500;color:#374151;margin-bottom:6px}.new-patient-field .required{color:#dc2626}.new-patient-field input,.new-patient-field select{padding:10px 12px;font-size:1rem;border:1px solid #d1d5db;border-radius:4px;background-color:#fff;color:#1f2937}.new-patient-field input:focus,.new-patient-field select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f640}.new-patient-field input:disabled,.new-patient-field select:disabled{background-color:#f3f4f6;color:#9ca3af;cursor:not-allowed}.new-patient-error{background-color:#fef2f2;color:#dc2626;padding:10px 12px;border-radius:4px;margin-bottom:16px;font-size:.9rem;border:1px solid #fecaca}.new-patient-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #e5e7eb}.new-patient-actions .btn-cancel{padding:10px 20px;font-size:1rem;background-color:#f9fafb;color:#374151;border:1px solid #d1d5db;border-radius:4px;cursor:pointer}.new-patient-actions .btn-cancel:hover:not(:disabled){background-color:#f3f4f6}.new-patient-actions .btn-cancel:disabled{cursor:not-allowed;opacity:.5}.new-patient-actions .btn-create{padding:10px 20px;font-size:1rem;background-color:#059669;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:500}.new-patient-actions .btn-create:hover:not(:disabled){background-color:#047857}.new-patient-actions .btn-create:disabled{background-color:#9ca3af;cursor:not-allowed}.patient-search{position:relative;width:300px}.patient-search-input{width:100%;padding:8px 32px 8px 12px;border:1px solid #ccc;border-radius:4px;font-size:14px;background:#fff}.patient-search-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.patient-search-input::placeholder{color:#9ca3af}.search-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:14px;pointer-events:none}.search-loading{position:absolute;top:100%;left:0;right:0;padding:8px 12px;background:#fff;border:1px solid #ccc;border-top:none;border-radius:0 0 4px 4px;font-size:13px;color:#6b7280}.search-error{position:absolute;top:100%;left:0;right:0;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-top:none;border-radius:0 0 4px 4px;font-size:13px;color:#dc2626}.search-dropdown{position:absolute;top:100%;left:0;right:0;max-height:300px;overflow-y:auto;background:#fff;border:1px solid #ccc;border-top:none;border-radius:0 0 4px 4px;box-shadow:0 4px 6px #0000001a;z-index:1000}.search-mode-header{padding:8px 12px;font-size:13px;color:#6b7280;background:#f9fafb;border-bottom:1px solid #e5e7eb}.search-mode-section{padding:4px 0}.search-mode-category{padding:6px 12px 4px;font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em}.search-mode-option{padding:8px 12px 8px 24px;font-size:14px;color:#374151;cursor:pointer}.search-mode-option:hover{background:#f3f4f6}.search-mode-option.selected{background:#eff6ff;color:#2563eb}.search-result-item{padding:10px 12px;cursor:pointer;border-bottom:1px solid #f3f4f6}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background:#f9fafb}.result-name{font-weight:600;font-size:14px;color:#111827;margin-bottom:4px}.result-details{display:flex;gap:12px;font-size:12px;color:#6b7280}.result-id{font-size:11px;color:#9ca3af;margin-top:4px}.search-no-results{padding:12px;text-align:center;font-size:13px;color:#6b7280}.search-new-patient{display:flex;align-items:center;gap:8px;padding:10px 12px;font-size:14px;font-weight:500;color:#059669;background:#ecfdf5;cursor:pointer;border-top:1px solid #d1fae5}.search-new-patient:hover{background:#d1fae5}.new-patient-icon{font-size:12px}.feature-request-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;font-size:.85rem;background-color:#fff3cd;color:#856404;border:1px solid #ffc107;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .2s}.feature-request-btn:hover{background-color:#ffc107;color:#212529}.feature-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.feature-modal{background-color:#fff;border-radius:8px;padding:24px;width:90%;max-width:500px;max-height:90vh;overflow:auto;box-shadow:0 4px 20px #00000026}.feature-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.feature-modal-title{margin:0;font-size:1.25rem;font-weight:600;color:#333}.feature-modal-close{background:none;border:none;font-size:1.25rem;cursor:pointer;color:#666;padding:4px 8px;border-radius:4px}.feature-modal-close:hover{background-color:#f0f0f0;color:#333}.feature-modal-close:disabled{cursor:not-allowed;opacity:.5}.feature-field{margin-bottom:16px}.feature-label{display:block;margin-bottom:6px;font-weight:500;color:#333;font-size:.9rem}.feature-required{color:#dc3545}.feature-input{width:100%;padding:10px 12px;font-size:1rem;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;background-color:#fff;color:#333}.feature-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.feature-input:disabled{background-color:#e9ecef;color:#6c757d;cursor:not-allowed}.feature-textarea{width:100%;padding:10px 12px;font-size:1rem;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;resize:vertical;font-family:inherit;background-color:#fff;color:#333}.feature-textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.feature-textarea:disabled{background-color:#e9ecef;color:#6c757d;cursor:not-allowed}.feature-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.feature-btn-cancel{padding:10px 20px;font-size:1rem;background-color:#f8f9fa;color:#333;border:1px solid #ccc;border-radius:4px;cursor:pointer}.feature-btn-cancel:hover:not(:disabled){background-color:#e9ecef}.feature-btn-cancel:disabled{cursor:not-allowed;opacity:.5}.feature-btn-submit{padding:10px 20px;font-size:1rem;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer}.feature-btn-submit:hover:not(:disabled){background-color:#0056b3}.feature-btn-submit:disabled{background-color:#6c757d;cursor:not-allowed}.feature-error{background-color:#f8d7da;color:#721c24;padding:10px 12px;border-radius:4px;margin-bottom:16px;font-size:.9rem;border:1px solid #f5c6cb}.feature-success{background-color:#d4edda;color:#155724;padding:20px;border-radius:4px;text-align:center;font-size:1.1rem;font-weight:500;border:1px solid #c3e6cb}.staff-message-bar{position:relative;display:flex;align-items:center;margin-left:12px}.smb-alert{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#fffffff2;border-radius:6px;box-shadow:0 2px 8px #00000026;max-width:400px}.smb-icon{font-size:16px;flex-shrink:0}.smb-flash{animation:flash-icon .6s ease-in-out infinite}@keyframes flash-icon{0%,to{filter:brightness(1) drop-shadow(0 0 2px #ffffff)}50%{filter:brightness(1.2) drop-shadow(0 0 6px #3b82f6)}}.smb-content{display:flex;gap:6px;flex:1;min-width:0;color:#1a365d;font-size:13px}.smb-from{font-weight:600;white-space:nowrap}.smb-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.smb-actions{display:flex;gap:4px;flex-shrink:0}.smb-quick-btn{padding:4px 8px;font-size:11px;font-weight:600;background:#3b82f6;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background .15s}.smb-quick-btn:hover{background:#2563eb}.smb-dismiss-btn{padding:4px 6px;font-size:12px;background:#ef4444;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background .15s}.smb-dismiss-btn:hover{background:#dc2626}.smb-compose-btn{display:flex;align-items:center;gap:4px;padding:6px 10px;font-size:14px;background:#ffffff26;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background .15s}.smb-compose-btn:hover{background:#ffffff40}.smb-online-dot{font-size:10px;margin-left:2px}.smb-online-dot.online{color:#22c55e}.smb-online-dot.offline{color:#6b7280}.smb-online-count{font-size:10px;font-weight:700;background:#22c55e;color:#fff;padding:2px 6px;border-radius:10px;margin-left:4px;min-width:16px;text-align:center}.smb-compose-dropdown{position:absolute;top:100%;left:0;margin-top:8px;width:280px;background:#fff;border-radius:8px;box-shadow:0 4px 16px #0003;z-index:1000;overflow:hidden}.smb-compose-header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#1a365d;color:#fff;font-size:13px;font-weight:600}.smb-close-btn{background:transparent;border:none;color:#fff;font-size:14px;cursor:pointer;padding:2px 6px}.smb-close-btn:hover{background:#fff3;border-radius:4px}.smb-compose-body{padding:12px;display:flex;flex-direction:column;gap:10px}.smb-input{width:100%;padding:8px;font-size:13px;border:1px solid #e2e8f0;border-radius:4px;box-sizing:border-box}.smb-input:focus{outline:none;border-color:#3b82f6}.smb-compose-actions{display:flex;justify-content:flex-end}.smb-send-btn{padding:8px 16px;font-size:13px;font-weight:600;background:#22c55e;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background .15s}.smb-send-btn:hover:not(:disabled){background:#16a34a}.smb-send-btn:disabled{background:#94a3b8;cursor:not-allowed}.header{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 16px;background-color:#1a365d;color:#fff;box-shadow:0 2px 4px #0000001a}.header-left{display:flex;align-items:center;gap:16px}.header-right{display:flex;align-items:center;gap:12px}.header-logo{cursor:pointer;padding:8px 12px}.logo-text{font-size:18px;font-weight:600;letter-spacing:.5px}.nav-item{padding:8px 16px;background:transparent;border:none;color:#ffffffd9;font-size:14px;font-weight:500;cursor:pointer;border-radius:4px;transition:background-color .2s,color .2s}.nav-item:hover{background-color:#ffffff1a;color:#fff}.nav-item.active{background-color:#fff3;color:#fff}.header-search{width:280px}.search-input{width:100%;padding:8px 12px;border:none;border-radius:4px;font-size:14px;background-color:#ffffffe6}.search-input::placeholder{color:#718096}.search-input:focus{outline:2px solid #4299e1;background-color:#fff}.patient-banner{display:flex;gap:12px;padding:0 16px}.banner-item{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;background:#ffffff26;color:#fff;border:none;cursor:pointer;transition:transform .15s,box-shadow .15s}.banner-item:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0003}.banner-item:active{transform:translateY(0)}.banner-item.status-ready{background:#22c55e;animation:pulse-ready 2s infinite}.banner-item.status-ready:hover{animation:none;background:#16a34a}.banner-item.status-with-doc{background:#3b82f6}.banner-item.status-with-doc:hover{background:#2563eb}.banner-item.status-in-room{background:#f59e0b}.banner-item.status-in-room:hover{background:#d97706}.banner-item.status-waiting{background:#fff3}.banner-item.status-waiting:hover{background:#ffffff4d}@keyframes pulse-ready{0%,to{box-shadow:0 0 #22c55e66}50%{box-shadow:0 0 0 4px #22c55e00}}.banner-icon{font-size:14px}.banner-id{font-weight:600}.banner-room{padding:2px 6px;background:#0003;border-radius:3px;font-size:11px}.banner-status{opacity:.9;font-size:12px}.banner-time{font-family:monospace;font-size:12px;opacity:.9}.tag-alert-banner{display:flex;gap:12px;padding:0 16px}.tag-alert-item{position:relative;display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:6px;font-size:13px;font-weight:500;background:#fbbf24;color:#1a1a1a;animation:pulse-tag 2s infinite}@keyframes pulse-tag{0%,to{box-shadow:0 0 #fbbf2480}50%{box-shadow:0 0 0 4px #fbbf2400}}.tag-alert-icon{font-size:14px}.tag-alert-text{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-alert-assign{width:22px;height:22px;border-radius:50%;background:#22c55e;color:#fff;font-size:12px;font-weight:700;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-left:4px}.tag-alert-assign:hover{background:#16a34a}.tag-alert-dismiss{width:22px;height:22px;border-radius:50%;background:#dc3545;color:#fff;font-size:16px;font-weight:700;line-height:1;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}.tag-alert-dismiss:hover{background:#c82333}.tag-assign-dropdown{position:absolute;top:100%;left:0;margin-top:4px;min-width:220px;max-height:300px;overflow-y:auto;background:#fff;border-radius:8px;box-shadow:0 4px 12px #0003;z-index:1000}.tag-assign-header{padding:10px 12px;font-size:12px;font-weight:600;color:#666;border-bottom:1px solid #eee;text-transform:uppercase}.tag-assign-list{max-height:250px;overflow-y:auto}.tag-assign-option{width:100%;display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:none;border:none;border-bottom:1px solid #f0f0f0;cursor:pointer;text-align:left;transition:background .15s}.tag-assign-option:hover{background:#f5f5f5}.tag-assign-option:last-child{border-bottom:none}.tag-assign-name{font-size:13px;font-weight:500;color:#333}.tag-assign-time{font-size:11px;color:#888}.tag-assign-empty{padding:16px 12px;text-align:center;color:#888;font-size:13px}@media(max-width:900px){.patient-banner,.tag-alert-banner{display:none}}.sidebar{width:220px;background:#f8fafc;border-right:1px solid #e2e8f0;flex-shrink:0;overflow-y:auto;display:flex;flex-direction:column;transition:width .3s ease}.sidebar-minimized{width:40px}.sidebar-toggle{padding:12px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:flex-end}.minimize-toggle{background:transparent;border:none;cursor:pointer;font-size:12px;color:#64748b;padding:4px;border-radius:3px;line-height:1;min-width:20px;display:flex;align-items:center;justify-content:center}.minimize-toggle:hover{background:#e2e8f0;color:#475569}.provider-toggle{padding:8px 12px;border-bottom:1px solid #e2e8f0;background:#f1f5f9}.provider-toggle label{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:12px}.provider-toggle input[type=checkbox]{cursor:pointer;width:14px;height:14px}.provider-toggle .prov-label{font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.5px}.provider-toggle input[type=checkbox]:checked+.prov-label{color:#1d4ed8}.sidebar-section{margin-bottom:8px}.sidebar-section:last-child{margin-bottom:0}.section-header{padding:0}.section-toggle{width:100%;background:transparent;border:none;cursor:pointer;padding:12px 16px;display:flex;align-items:center;gap:8px;font-family:inherit;border-bottom:1px solid #e2e8f0}.section-toggle:hover{background:#f1f5f9}.toggle-icon{font-size:10px;color:#64748b;transition:transform .2s ease;display:flex;align-items:center;justify-content:center;width:12px}.toggle-icon.collapsed{transform:rotate(-90deg)}.section-toggle h3{margin:0;font-size:14px;color:#1e293b;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.section-content{padding:8px 0}.queue-list{display:flex;flex-direction:column;gap:2px;padding:0 12px}.queue-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:transparent;border:none;border-radius:4px;cursor:pointer;text-align:left;font-size:13px;color:#475569;transition:all .15s}.queue-item:hover{background:#e2e8f0}.queue-item.active{background:#dbeafe;color:#1d4ed8;border-left:3px solid #3b82f6}.queue-label{flex:1}.queue-count{background:#e2e8f0;color:#64748b;padding:2px 6px;border-radius:10px;font-size:11px;font-weight:500;min-width:18px;text-align:center}.queue-item.active .queue-count{background:#3b82f6;color:#fff}.workflow-list{display:flex;flex-direction:column;gap:2px;padding:0 12px}.workflow-item{display:flex;align-items:center;padding:10px 12px;background:transparent;border:none;border-radius:4px;cursor:pointer;text-align:left;font-size:13px;color:#475569;transition:all .15s;width:100%}.workflow-item:hover:not(.disabled){background:#e2e8f0}.workflow-item.active{background:#fef3c7;color:#92400e;border-left:3px solid #f59e0b}.workflow-item.disabled{color:#94a3b8;cursor:not-allowed}.workflow-label{flex:1}.report-list{display:flex;flex-direction:column;gap:2px;padding:0 12px}.report-item{display:flex;align-items:center;padding:10px 12px;background:transparent;border:none;border-radius:4px;cursor:pointer;text-align:left;font-size:13px;color:#475569;transition:all .15s;width:100%}.report-item:hover:not(.disabled){background:#e2e8f0}.report-item.active{background:#dbeafe;color:#1d4ed8;border-left:3px solid #3b82f6}.report-item.disabled{color:#94a3b8;cursor:not-allowed}.report-label{flex:1}.clinical-list{display:flex;flex-direction:column;gap:2px;padding:0 12px}.clinical-item{display:flex;align-items:center;padding:10px 12px;background:transparent;border:none;border-radius:4px;cursor:pointer;text-align:left;font-size:13px;color:#475569;transition:all .15s;width:100%}.clinical-item:hover{background:#e2e8f0}.clinical-item.active{background:#dcfce7;color:#166534;border-left:3px solid #22c55e}.clinical-label{flex:1}.sidebar-minimized .provider-toggle,.sidebar-minimized .section-toggle h3,.sidebar-minimized .queue-label,.sidebar-minimized .queue-count,.sidebar-minimized .workflow-label,.sidebar-minimized .report-label,.sidebar-minimized .clinical-label,.sidebar-minimized .section-content{display:none}.sidebar-minimized .section-toggle{padding:8px;justify-content:center;border-bottom:none}.sidebar-minimized .toggle-icon{transform:none}.sidebar-minimized .sidebar-section{margin-bottom:4px}.layout{display:flex;flex-direction:column;height:100vh;width:100vw;overflow:hidden}.layout-body{display:flex;flex:1;overflow:hidden}.layout-content{flex:1;display:flex;overflow:auto;background-color:#f7fafc}.appointment-modal{background:#fff;border-radius:8px;width:100%;max-width:440px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 20px #00000026}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid #e0e0e0;background:#f8f9fa}.modal-header h2{margin:0;font-size:15px;font-weight:600;color:#333}.close-btn{background:none;border:none;font-size:20px;color:#666;cursor:pointer;padding:0;line-height:1}.close-btn:hover{color:#333}.modal-body{padding:10px 12px;overflow-y:auto;flex:1}.error-message{background:#ffebee;color:#c62828;padding:6px 8px;border-radius:4px;margin-bottom:8px;font-size:12px}.form-section{margin-bottom:8px}.form-section:last-child{margin-bottom:0}.form-section h3{display:none}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:6px}.form-group label{font-size:10px;font-weight:600;color:#555;margin-bottom:1px;text-transform:uppercase}.form-group input,.form-group select,.form-group textarea{padding:5px 6px;border:1px solid #ccc;border-radius:4px;font-size:13px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 2px #1a73e833}.form-group input:disabled{background:#f5f5f5;color:#666}.form-group textarea{resize:none;min-height:28px}.form-group select{cursor:pointer}.patient-search-group{position:relative}.patient-search-results{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ccc;border-top:none;border-radius:0 0 4px 4px;max-height:150px;overflow-y:auto;z-index:10;box-shadow:0 4px 8px #0000001a}.patient-result-item{padding:6px 8px;cursor:pointer;display:flex;align-items:center;gap:8px;border-bottom:1px solid #eee;transition:background .15s}.patient-result-item:last-child{border-bottom:none}.patient-result-item:hover{background:#f0f7ff}.patient-result-item .patient-id{font-weight:600;color:#1a73e8;font-size:11px;min-width:50px}.patient-result-item .patient-name{flex:1;font-size:12px;color:#333}.patient-result-item .patient-dob{font-size:10px;color:#666}.search-status{padding:8px;text-align:center;color:#666;font-size:11px}.selected-patient{display:flex;align-items:center;gap:4px;padding:4px 8px;background:#e8f5e9;border-radius:4px;margin-top:4px}.selected-patient .label{font-size:10px;color:#666}.selected-patient .patient-info{flex:1;font-size:12px;font-weight:500;color:#2e7d32}.selected-patient .clear-btn{background:none;border:none;color:#666;cursor:pointer;padding:1px 4px;font-size:12px;border-radius:4px}.selected-patient .clear-btn:hover{background:#c8e6c9;color:#333}.modal-footer{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-top:1px solid #e0e0e0;background:#f8f9fa}.footer-right{display:flex;gap:6px}.modal-footer button{padding:5px 12px;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.cancel-btn{background:#fff;border:1px solid #ccc;color:#333}.cancel-btn:hover:not(:disabled){background:#f5f5f5;border-color:#999}.save-btn{background:#1a73e8;border:1px solid #1a73e8;color:#fff}.save-btn:hover:not(:disabled){background:#1557b0}.save-btn:disabled,.cancel-btn:disabled{opacity:.6;cursor:not-allowed}.delete-btn{background:#fff;border:1px solid #d32f2f;color:#d32f2f}.delete-btn:hover:not(:disabled){background:#ffebee}.delete-btn.confirm{background:#d32f2f;color:#fff}.delete-btn.confirm:hover:not(:disabled){background:#b71c1c}.quick-date-row{margin-top:2px}.quick-date-row .form-group label{display:none}.quick-date-buttons{display:flex;gap:4px;flex-wrap:wrap}.quick-date-buttons button{padding:2px 6px;font-size:10px;background:#e8f4f8;border:1px solid #b8d4e3;border-radius:3px;cursor:pointer;transition:background .2s}.quick-date-buttons button:hover{background:#d0e8f0}@media(max-width:480px){.appointment-modal{margin:8px;max-height:calc(100vh - 16px)}.form-row{grid-template-columns:1fr}.modal-footer{flex-direction:column;gap:8px}.delete-btn,.footer-right{width:100%}.footer-right button{flex:1}}.weekly-calendar{display:flex;flex-direction:column;height:100%;background:#fff;border-radius:8px;overflow:hidden}.calendar-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#f8f9fa;border-bottom:1px solid #e0e0e0}.calendar-nav{display:flex;gap:8px}.nav-btn{padding:6px 12px;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer;font-size:13px;transition:all .2s}.nav-btn:hover{background:#e9ecef;border-color:#999}.today-btn{background:#1a73e8;color:#fff;border-color:#1a73e8}.today-btn:hover{background:#1557b0}.week-label{margin:0;font-size:18px;font-weight:500;color:#333}.calendar-actions{display:flex;align-items:center;gap:12px}.sabbath-indicator{font-size:12px;color:#666;padding:4px 8px;background:#f0f0f0;border-radius:4px}.refresh-btn{padding:6px 12px;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer;font-size:13px}.refresh-btn:hover:not(:disabled){background:#e9ecef}.calendar-error{padding:12px 16px;background:#ffebee;color:#c62828;display:flex;align-items:center;justify-content:space-between}.calendar-error button{padding:4px 12px;background:#c62828;color:#fff;border:none;border-radius:4px;cursor:pointer}.calendar-grid{flex:1;display:flex;flex-direction:column;overflow:auto}.calendar-header-row{display:grid;grid-template-columns:70px repeat(7,1fr);border-bottom:2px solid #e0e0e0;position:sticky;top:0;background:#fff;z-index:10}.time-column-header{padding:8px;font-size:11px;color:#666;text-align:center;border-right:1px solid #e0e0e0}.day-header{padding:8px;text-align:center;border-right:1px solid #e0e0e0}.day-header:last-child{border-right:none}.day-header.today{background:#e3f2fd}.day-name{display:block;font-size:12px;font-weight:600;color:#333;text-transform:uppercase}.day-date{display:block;font-size:11px;color:#666;margin-top:2px}.day-header.today .day-name,.day-header.today .day-date{color:#1a73e8}.calendar-body{flex:1}.time-row{display:grid;grid-template-columns:70px repeat(7,1fr);min-height:36px;border-bottom:1px solid #f0f0f0}.time-row.half-hour{border-bottom:1px solid #e0e0e0}.time-label{padding:2px 8px;font-size:11px;color:#666;text-align:right;border-right:1px solid #e0e0e0;background:#fafafa;display:flex;align-items:flex-start;justify-content:flex-end}.time-slot{border-right:1px solid #eee;padding:1px;cursor:pointer;transition:background .15s;min-height:36px;position:relative}.time-slot:last-child{border-right:none}.time-slot:hover{background:#f5f5f5}.time-slot.today{background:#fafafa}.time-slot.today:hover{background:#f0f0f0}.time-slot.half-hour{border-bottom-color:#e0e0e0}.time-slot.sabbath{background:repeating-linear-gradient(-45deg,#e8e8e8,#e8e8e8 4px,#f2f2f2 4px 8px);cursor:pointer}.time-slot.sabbath:hover{background:repeating-linear-gradient(-45deg,#ddd,#ddd 4px,#e8e8e8 4px 8px)}.time-slot.sabbath.today{background:repeating-linear-gradient(-45deg,#d4e5f7,#d4e5f7 4px,#e3f0fc 4px 8px)}.appointment-cell{padding:2px 4px;border-radius:3px;color:#fff;font-size:10px;margin-bottom:1px;cursor:pointer;overflow:hidden;transition:transform .1s,box-shadow .1s}.appointment-cell:hover{transform:scale(1.02);box-shadow:0 2px 8px #0003;z-index:5;position:relative}.appointment-time{font-weight:600;font-size:9px;opacity:.9}.appointment-title{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px}.appointment-patient{font-size:9px;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:1024px){.calendar-header-row,.time-row{grid-template-columns:60px repeat(7,1fr)}.time-label{font-size:10px;padding:2px 4px}.day-name{font-size:11px}.day-date{font-size:10px}}.settings-container{max-width:800px;margin:0 auto;padding:24px}.settings-container h2{margin:0 0 20px;color:#1a365d;font-size:24px;font-weight:600}.settings-tab-bar{display:flex;gap:4px;margin-bottom:20px;border-bottom:2px solid #e0e0e0;flex-wrap:wrap}.settings-tab-btn{padding:10px 16px;background:#f5f5f5;border:1px solid #ddd;border-bottom:none;border-radius:6px 6px 0 0;cursor:pointer;font-size:.9rem;color:#555;transition:all .2s;white-space:nowrap}.settings-tab-btn:hover{background:#e8e8e8}.settings-tab-btn.active{background:#fff;color:#1a365d;border-color:#e0e0e0;border-bottom:2px solid white;margin-bottom:-2px;font-weight:500}.settings-tab-content{animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.settings-loading{padding:48px;text-align:center;color:#666}.settings-error{background:#fee2e2;border:1px solid #ef4444;color:#b91c1c;padding:12px 16px;border-radius:6px;margin-bottom:16px}.settings-success{background:#dcfce7;border:1px solid #22c55e;color:#15803d;padding:12px 16px;border-radius:6px;margin-bottom:16px}.settings-form{display:flex;flex-direction:column;gap:24px}.settings-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:20px}.settings-section h3{margin:0 0 16px;color:#334155;font-size:16px;font-weight:600;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.section-header h3{margin:0;padding:0;border:none}.section-description{margin:0 0 16px;font-size:13px;color:#64748b;line-height:1.5}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#64748b;cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.toggle-label{font-weight:500;color:#475569}.toggle-label input[type=checkbox]{width:18px;height:18px;accent-color:#2563eb}.form-group{margin-bottom:16px}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#475569}.form-group input,.form-group select{width:100%;padding:10px 12px;font-size:14px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#1e293b;transition:border-color .15s,box-shadow .15s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input::placeholder{color:#94a3b8}.form-group input[type=number]{max-width:150px}.form-row{display:flex;gap:16px}.form-row .form-group{flex:1}.form-row .form-group-small{flex:0 0 100px}.form-hint{margin:8px 0 0;font-size:12px;color:#94a3b8}.form-actions{display:flex;justify-content:flex-end;padding-top:8px}.btn-save{padding:12px 24px;font-size:14px;font-weight:500;color:#fff;background:#2563eb;border:none;border-radius:6px;cursor:pointer;transition:background .15s}.btn-save:hover{background:#1d4ed8}.btn-save:disabled{background:#94a3b8;cursor:not-allowed}.sabbath-section{border-color:#e2e8f0}.sabbath-section .section-header h3{color:#334155}.eod-section{background:#f8fafc;border-color:#e2e8f0}.tx-summary{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:12px 16px;margin-bottom:16px}.summary-empty{color:#64748b;font-style:italic;margin:0}.summary-row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #f1f5f9}.summary-row:last-child{border-bottom:none}.summary-label{font-weight:500;color:#475569}.summary-value{color:#1e293b}.summary-synced{color:#15803d;font-weight:500}.summary-warning{background:#fef3c7;margin:8px -16px -12px;padding:8px 16px;border-radius:0 0 6px 6px}.summary-warning .summary-label,.summary-warning .summary-value{color:#92400e}.loading-text{color:#64748b;font-style:italic}.btn-archive{padding:12px 24px;font-size:14px;font-weight:500;color:#fff;background:#dc2626;border:none;border-radius:6px;cursor:pointer;transition:background .15s}.btn-archive:hover:not(:disabled){background:#b91c1c}.btn-archive:disabled{background:#94a3b8;cursor:not-allowed}.archive-result{padding:12px 16px;border-radius:6px;margin-bottom:16px}.archive-result.success{background:#dcfce7;border:1px solid #22c55e;color:#15803d}.archive-result.info{background:#dbeafe;border:1px solid #3b82f6;color:#1d4ed8}.archive-result p{margin:0 0 8px}.archive-result p:last-child{margin-bottom:0}.archive-result a{color:inherit;font-weight:500;text-decoration:underline}.archive-result a:hover{text-decoration:none}.archive-warning{margin-top:8px;padding-top:8px;border-top:1px solid rgba(0,0,0,.1);color:#92400e;font-size:13px}.services-section{margin-top:0}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin:1rem 0}.service-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1rem}.service-card.placeholder-card{border-style:dashed;background:#fafafa}.service-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid #f0f0f0}.service-name{font-weight:600;font-size:.95rem}.service-status{font-size:.8rem;padding:.25rem .5rem;border-radius:12px}.service-status.running{background:#e8f5e9;color:#2e7d32}.service-status.stopped{background:#fafafa;color:#999}.service-status.placeholder{background:#f0f0f0;color:#888}.service-details{font-size:.85rem}.service-row{display:flex;justify-content:space-between;padding:.25rem 0;border-bottom:1px solid #f5f5f5}.service-row:last-child{border-bottom:none}.service-row span:first-child{color:#666}.service-row span:last-child{font-weight:500;color:#333}.service-hint{color:#666;font-size:.8rem;margin:.5rem 0 0}.service-hint code{background:#f5f5f5;padding:.125rem .375rem;border-radius:3px;font-size:.75rem}.btn-refresh-services{margin-top:.5rem;padding:.5rem 1rem;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.875rem}.btn-refresh-services:hover{background:#f5f5f5}.placeholder-section{background:#fafafa}.placeholder-content{text-align:center;padding:40px 20px;color:#666}.placeholder-icon{font-size:48px;margin-bottom:16px}.placeholder-content p{margin:8px 0}.placeholder-details{font-size:.85rem;color:#888;max-width:400px;margin:12px auto 0}.placeholder-feature-list{text-align:left;max-width:400px;margin:20px auto;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px 20px}.placeholder-feature-list p{margin:0 0 10px;font-size:.9rem;color:#334155}.placeholder-feature-list ul{margin:0;padding:0;list-style:none}.placeholder-feature-list li{padding:6px 0;font-size:.875rem;color:#4a5568;border-bottom:1px solid #f1f5f9}.placeholder-feature-list li:last-child{border-bottom:none}.role-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:.7rem;font-weight:600;text-transform:uppercase;margin-left:8px}.role-badge.admin{background:#fef3c7;color:#92400e}.role-badge.provider{background:#dbeafe;color:#1e40af}.role-badge.staff{background:#e0e7ff;color:#4338ca}.environment-indicator{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border-radius:8px;margin-top:20px;font-size:.9rem}.environment-indicator span{color:#666}.environment-indicator strong{font-size:1rem}.environment-indicator.sandbox{background:#fef3c7;border:1px solid #fbbf24}.environment-indicator.sandbox strong{color:#92400e}.environment-indicator.production{background:#dcfce7;border:1px solid #22c55e}.environment-indicator.production strong{color:#15803d}.environment-indicator.development{background:#dbeafe;border:1px solid #3b82f6}.environment-indicator.development strong{color:#1e40af}.credentials-table{width:100%;border-collapse:collapse;margin:1rem 0}.credentials-table td{padding:.75rem;border-bottom:1px solid #e5e7eb}.cred-label{font-weight:500;color:#6b7280;width:140px}.cred-value{font-family:monospace;color:#1f2937}.cred-phone .cred-e164{margin-left:1rem;color:#9ca3af;font-size:.85rem}.cred-hint{margin-left:.5rem;color:#9ca3af;font-size:.85rem}.masked-value{letter-spacing:2px}.visibility-toggle{background:none;border:none;cursor:pointer;margin-left:.5rem;font-size:1rem;opacity:.7}.visibility-toggle:hover{opacity:1}.credentials-actions{display:flex;gap:.75rem;margin-top:1rem}.test-result{margin-top:1rem;padding:.75rem;border-radius:6px}.test-result.success{background:#d1fae5;color:#065f46}.test-result.error{background:#fee2e2;color:#991b1b}.credentials-edit{max-width:500px}.cred-form-group{margin-bottom:1rem}.cred-form-group label{display:block;font-weight:500;margin-bottom:.25rem;color:#374151}.cred-form-group input{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:4px;font-family:monospace}.cred-form-group .form-hint{display:block;font-size:.8rem;color:#9ca3af;margin-top:.25rem}.env-urls-section{margin-top:1.5rem;padding:1rem;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.env-urls-section h4{margin:0 0 1rem;font-size:1rem;color:#495057}.env-urls-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem}.env-url-item{display:flex;flex-direction:column;gap:.25rem}.env-url-item label{font-size:.8rem;color:#6c757d;font-weight:500}.env-url-link{font-family:Monaco,Consolas,monospace;font-size:.85rem;color:#0d6efd;text-decoration:none;word-break:break-all}.env-url-link:hover{text-decoration:underline;color:#0a58ca}.section-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.section-header-row h3{margin:0;padding:0;border:none}.btn-edit{padding:6px 12px;background:#fff;border:1px solid #cbd5e1;border-radius:4px;cursor:pointer;font-size:.85rem}.btn-edit:hover{background:#f1f5f9}.environment-status-card{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:#f8fafc;border-radius:8px;margin-bottom:1rem}.env-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:6px;font-weight:600;text-transform:capitalize}.env-badge.development{background:#dbeafe;color:#1e40af}.env-badge.production{background:#dcfce7;color:#15803d}.env-badge.staging{background:#fef3c7;color:#92400e}.env-details{display:flex;gap:1rem;color:#64748b;font-size:.9rem}.environment-display{margin-top:1rem}.env-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem 1.5rem}.env-item{display:flex;flex-direction:column;gap:.25rem;padding:.5rem 0;border-bottom:1px solid #f1f5f9}.env-item.full-width{grid-column:1 / -1}.env-item label{font-size:.8rem;color:#64748b;font-weight:500}.env-value{font-size:.95rem;color:#1e293b}.env-value.monospace{font-family:Monaco,Consolas,monospace}.env-auto-detect-notice{display:flex;align-items:flex-start;gap:.5rem;margin-top:1rem;padding:.75rem;background:#eff6ff;border-radius:6px;border-left:3px solid #3b82f6;font-size:.85rem;color:#1e40af}.notice-icon{flex-shrink:0}.clinical-ref-section{margin-top:24px;background:#f8fafc}.ref-sync-bar{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;margin-bottom:16px}.ref-sync-status{display:flex;gap:24px}.sync-stat{font-size:13px;color:#475569}.sync-stat strong{color:#1e293b}.ref-sync-buttons{display:flex;gap:8px}.btn-sync{padding:8px 16px;font-size:13px;font-weight:500;color:#fff;background:#2563eb;border:none;border-radius:4px;cursor:pointer;transition:background .15s}.btn-sync:hover:not(:disabled){background:#1d4ed8}.btn-sync:disabled{background:#94a3b8;cursor:not-allowed}.btn-sync-pull{background:#059669}.btn-sync-pull:hover:not(:disabled){background:#047857}.ref-table-section{margin-bottom:16px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.ref-table-header{display:flex;align-items:center;padding:12px 16px;background:#f1f5f9;cursor:pointer;-webkit-user-select:none;user-select:none}.ref-table-header:hover{background:#e2e8f0}.collapse-icon{width:20px;font-size:12px;color:#64748b}.ref-table-header h4{margin:0;font-size:14px;font-weight:600;color:#334155;flex:1}.ref-table-actions{display:flex;gap:8px;align-items:center}.filter-select{padding:6px 10px;font-size:12px;border:1px solid #cbd5e1;border-radius:4px;background:#fff;color:#475569;cursor:pointer}.filter-select:focus{outline:none;border-color:#3b82f6}.btn-add{padding:6px 12px;font-size:12px;font-weight:500;color:#fff;background:#22c55e;border:none;border-radius:4px;cursor:pointer;transition:background .15s}.btn-add:hover{background:#16a34a}.ref-table{width:100%;border-collapse:collapse;font-size:13px}.ref-table thead{background:#f8fafc}.ref-table th{padding:10px 12px;text-align:left;font-weight:600;color:#475569;border-bottom:1px solid #e2e8f0}.ref-table td{padding:10px 12px;color:#1e293b;border-bottom:1px solid #f1f5f9}.ref-table tbody tr:hover{background:#f8fafc}.code-cell{font-family:monospace;font-size:12px;color:#64748b}.category-badge{display:inline-block;padding:2px 8px;font-size:11px;font-weight:500;color:#1e40af;background:#dbeafe;border-radius:10px}.route-badge{display:inline-block;padding:2px 8px;font-size:11px;font-weight:500;color:#065f46;background:#d1fae5;border-radius:10px}.action-cell{white-space:nowrap}.btn-edit{padding:4px 10px;font-size:12px;color:#2563eb;background:transparent;border:1px solid #2563eb;border-radius:4px;cursor:pointer;margin-right:6px;transition:all .15s}.btn-edit:hover{color:#fff;background:#2563eb}.btn-delete{padding:4px 8px;font-size:14px;font-weight:700;color:#dc2626;background:transparent;border:1px solid #dc2626;border-radius:4px;cursor:pointer;transition:all .15s}.btn-delete:hover{color:#fff;background:#dc2626}.modal-content{background:#fff;border-radius:8px;padding:24px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-content h4{margin:0 0 20px;font-size:18px;font-weight:600;color:#1e293b}.modal-form{display:flex;flex-direction:column;gap:16px}.modal-form .form-group{margin-bottom:0}.modal-form .form-group label{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:#475569}.modal-form .form-group input,.modal-form .form-group select{width:100%;padding:10px 12px;font-size:14px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#1e293b;transition:border-color .15s,box-shadow .15s}.modal-form .form-group input:focus,.modal-form .form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.modal-form .form-group input:disabled{background:#f1f5f9;color:#64748b;cursor:not-allowed}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid #e2e8f0}.btn-cancel{padding:10px 20px;font-size:14px;font-weight:500;color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:background .15s}.modal-actions .btn-save{padding:10px 20px;font-size:14px;font-weight:500;color:#fff;background:#2563eb;border:none;border-radius:6px;cursor:pointer;transition:background .15s}.modal-actions .btn-save:hover{background:#1d4ed8}@media(max-width:768px){.ref-sync-bar{flex-direction:column;gap:12px}.ref-table-header{flex-wrap:wrap;gap:8px}.ref-table-actions{width:100%;justify-content:flex-end}.ref-table{font-size:12px}.ref-table th,.ref-table td{padding:8px 6px}}.snippets-manager{padding:1rem}.snippets-manager h3{margin:0 0 1rem;color:#1a365d}.snippets-manager .msg-error{background:#fed7d7;color:#c53030;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem}.snippets-manager .msg-success{background:#c6f6d5;color:#276749;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem}.snippets-manager .sync-bar{display:flex;justify-content:space-between;align-items:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem}.snippets-manager .sync-info{display:flex;gap:1.5rem;align-items:center;font-size:.875rem;color:#4a5568}.snippets-manager .sync-info .version{color:#718096;font-family:monospace}.snippets-manager .sync-info .updated{color:#718096}.snippets-manager .sheet-status{font-weight:500}.snippets-manager .sheet-status.exists{color:#38a169}.snippets-manager .sheet-status.missing{color:#e53e3e}.snippets-manager .sync-actions{display:flex;gap:.5rem}.snippets-manager .btn-sync{padding:.5rem 1rem;border:1px solid #3182ce;background:#fff;color:#3182ce;border-radius:4px;cursor:pointer;font-size:.875rem}.snippets-manager .btn-sync:hover:not(:disabled){background:#ebf8ff}.snippets-manager .btn-sync:disabled{opacity:.5;cursor:not-allowed}.snippets-manager .snippets-table-section{border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.snippets-manager .snippets-table-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#edf2f7;cursor:pointer;-webkit-user-select:none;user-select:none}.snippets-manager .snippets-table-header h4{margin:0;flex:1;font-size:.95rem;color:#2d3748}.snippets-manager .collapse-icon{color:#718096;font-size:.75rem}.snippets-manager .snippets-table-actions{display:flex;gap:.5rem;align-items:center}.snippets-manager .search-input{padding:.375rem .75rem;border:1px solid #cbd5e0;border-radius:4px;font-size:.875rem;width:180px}.snippets-manager .filter-select{padding:.375rem .75rem;border:1px solid #cbd5e0;border-radius:4px;font-size:.875rem;background:#fff}.snippets-manager .btn-add{padding:.375rem .75rem;background:#38a169;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem}.snippets-manager .btn-add:hover{background:#2f855a}.snippets-manager .snippets-table{width:100%;border-collapse:collapse;font-size:.875rem;table-layout:fixed}.snippets-manager .snippets-table th{text-align:left;padding:.625rem .75rem;background:#f7fafc;border-bottom:1px solid #e2e8f0;font-weight:600;color:#4a5568}.snippets-manager .snippets-table td{padding:.625rem .75rem;border-bottom:1px solid #e2e8f0;vertical-align:middle}.snippets-manager .snippet-row{cursor:pointer;transition:background-color .15s}.snippets-manager .snippet-row:hover{background:#edf2f7}.snippets-manager .snippet-row.expanded{background:#ebf8ff;border-bottom:none}.snippets-manager .snippet-row.expanded td{border-bottom:none}.snippets-manager .expand-cell{color:#718096;font-size:.7rem;text-align:center}.snippets-manager .code-cell{font-family:monospace;color:#2b6cb0;font-weight:500;white-space:nowrap}.snippets-manager .label-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.snippets-manager .content-preview{color:#718096;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.snippets-manager .category-badge{display:inline-block;padding:.125rem .5rem;background:#e2e8f0;color:#4a5568;border-radius:3px;font-size:.75rem}.snippets-manager .no-data{text-align:center;color:#a0aec0;padding:2rem!important}.snippets-manager .expanded-row{background:#f7fafc}.snippets-manager .expanded-row td{padding:0}.snippets-manager .expanded-content{padding:1rem 1.5rem 1.25rem;border-top:1px dashed #cbd5e0;border-bottom:2px solid #3182ce}.snippets-manager .edit-fields{display:flex;flex-direction:column;gap:1rem}.snippets-manager .edit-row{display:flex;gap:1rem}.snippets-manager .edit-field{display:flex;flex-direction:column;gap:.25rem}.snippets-manager .edit-field label{font-size:.75rem;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.025em}.snippets-manager .edit-field input,.snippets-manager .edit-field select{padding:.5rem .75rem;border:1px solid #cbd5e0;border-radius:4px;font-size:.875rem;background:#fff}.snippets-manager .edit-field input:focus,.snippets-manager .edit-field select:focus,.snippets-manager .edit-field textarea:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 2px #3182ce33}.snippets-manager .edit-field .input-disabled{background:#edf2f7;color:#718096;cursor:not-allowed}.snippets-manager .edit-field.full-width{width:100%}.snippets-manager .edit-field textarea{width:100%;padding:.75rem;border:1px solid #cbd5e0;border-radius:4px;font-size:.875rem;font-family:inherit;line-height:1.5;resize:vertical;min-height:150px;background:#fff}.snippets-manager .expanded-actions{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.snippets-manager .actions-right{display:flex;gap:.5rem}.snippets-manager .btn-delete-expanded{padding:.5rem 1rem;background:#fff5f5;color:#c53030;border:1px solid #feb2b2;border-radius:4px;cursor:pointer;font-size:.875rem}.snippets-manager .btn-delete-expanded:hover{background:#fed7d7}.snippets-manager .btn-cancel{padding:.5rem 1rem;background:#fff;color:#4a5568;border:1px solid #cbd5e0;border-radius:4px;cursor:pointer;font-size:.875rem}.snippets-manager .btn-cancel:hover{background:#f7fafc}.snippets-manager .btn-save{padding:.5rem 1rem;background:#3182ce;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem}.snippets-manager .btn-save:hover{background:#2b6cb0}.snippets-manager .btn-save:disabled{background:#a0aec0;cursor:not-allowed}.snippets-manager .modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.snippets-manager .modal-content{background:#fff;border-radius:8px;padding:1.5rem;width:700px;max-width:95vw;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #00000026}.snippets-manager .modal-content h4{margin:0 0 1rem;color:#1a365d}.snippets-manager .modal-form{display:flex;flex-direction:column;gap:1rem}.snippets-manager .form-row{display:flex;gap:1rem}.snippets-manager .form-group{flex:1;display:flex;flex-direction:column;gap:.25rem}.snippets-manager .form-group.full-width{flex:none;width:100%}.snippets-manager .form-group label{font-size:.875rem;font-weight:500;color:#4a5568}.snippets-manager .form-group input,.snippets-manager .form-group select{padding:.5rem .75rem;border:1px solid #cbd5e0;border-radius:4px;font-size:.875rem}.snippets-manager .form-group textarea{padding:.5rem .75rem;border:1px solid #cbd5e0;border-radius:4px;font-size:.875rem;font-family:inherit;resize:vertical;min-height:200px}.snippets-manager .modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.bx-fields-section{margin-top:24px;border:1px solid #ddd;border-radius:6px;background:#fafafa}.bx-fields-header{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;background:linear-gradient(to right,#f5f0ff,#fafafa);border-radius:6px 6px 0 0;border-bottom:1px solid #e0d0f0}.bx-fields-header:hover{background:linear-gradient(to right,#ebe0ff,#f5f5f5)}.bx-fields-header h4{margin:0;font-size:14px;color:#6b4c9a}.bx-fields-hint{font-size:12px;color:#888;margin-left:auto}.bx-fields-content{padding:16px}.bx-fields-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media(max-width:900px){.bx-fields-grid{grid-template-columns:1fr}}.bx-field-editor{background:#fff;border:1px solid #ddd;border-radius:4px;padding:12px}.bx-field-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.bx-field-header h5{margin:0;font-size:13px;color:#333}.bx-field-meta{font-size:11px;color:#888}.bx-field-textarea{width:100%;min-height:200px;padding:8px;border:1px solid #ccc;border-radius:4px;font-family:monospace;font-size:12px;line-height:1.4;resize:vertical}.bx-field-textarea:focus{outline:none;border-color:#6b4c9a;box-shadow:0 0 0 2px #6b4c9a1a}.bx-field-actions{display:flex;justify-content:flex-end;margin-top:8px}.bx-modifiers-info{margin-top:16px;padding:8px 12px;background:#f0f0f0;border-radius:4px;font-size:11px;color:#666}.loading-text{text-align:center;color:#888;padding:24px}.stripe-settings{max-width:800px}.stripe-mode-section{display:flex;align-items:center;gap:1.5rem;padding:1rem;background:#f8f9fa;border-radius:8px;margin-bottom:1.5rem}.mode-indicator{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:6px;font-weight:600;font-size:1rem}.mode-indicator.sandbox{background:#fff3cd;color:#856404;border:2px solid #ffc107}.mode-indicator.live{background:#f8d7da;color:#721c24;border:2px solid #dc3545}.mode-icon{font-size:1.25rem}.mode-toggle-btn{padding:.5rem 1rem;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.mode-toggle-btn.to-live{background:#dc3545;color:#fff;border:2px solid #dc3545}.mode-toggle-btn.to-live:hover:not(:disabled){background:#c82333;border-color:#c82333}.mode-toggle-btn.to-sandbox{background:#ffc107;color:#212529;border:2px solid #ffc107}.mode-toggle-btn.to-sandbox:hover:not(:disabled){background:#e0a800;border-color:#e0a800}.mode-toggle-btn:disabled{opacity:.6;cursor:not-allowed}.stripe-credentials{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.stripe-credentials h4{margin:0 0 .75rem;font-size:.95rem;color:#495057}.account-id-display{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:#e7f3ff;border:1px solid #b8daff;border-radius:6px;margin-bottom:1rem}.account-id-label{font-weight:600;color:#004085;font-size:.85rem}.account-id-value{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.85rem;background:#fff;padding:.2rem .5rem;border-radius:4px;border:1px solid #b8daff;color:#004085}.credentials-subsection{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem;transition:all .2s}.credentials-subsection.active-mode{border-color:#007bff;border-width:2px;background:#f0f7ff}.credentials-subsection:last-of-type{margin-bottom:.5rem}.subsection-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.subsection-title{font-weight:600;font-size:.9rem;color:#495057;display:flex;align-items:center;gap:.5rem}.active-badge{font-size:.65rem;font-weight:700;background:#007bff;color:#fff;padding:.15rem .4rem;border-radius:3px;text-transform:uppercase;letter-spacing:.5px}.edit-btn{padding:.25rem .6rem;font-size:.8rem;background:#fff;border:1px solid #ced4da;border-radius:4px;cursor:pointer;transition:all .2s}.edit-btn:hover{background:#e9ecef;border-color:#adb5bd}.credentials-display{padding-left:.25rem}.credential-row{display:flex;align-items:center;gap:.75rem;padding:.35rem 0;border-bottom:1px solid #e9ecef}.credential-row:last-of-type{border-bottom:none}.credential-label{font-weight:500;color:#6c757d;min-width:120px;font-size:.85rem}.credential-value{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.8rem;background:#fff;padding:.2rem .5rem;border-radius:4px;border:1px solid #e9ecef}.credential-value.masked{color:#6c757d}.credential-hint{font-size:.8rem;color:#999;margin:.75rem 0 0}.edit-form{padding:.5rem 0}.form-row{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.form-row label{font-weight:500;font-size:.85rem;color:#495057}.credential-input{padding:.5rem .75rem;font-family:SF Mono,Monaco,Consolas,monospace;font-size:.85rem;border:1px solid #ced4da;border-radius:4px;width:100%;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}.credential-input:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 3px #007bff26}.credential-input::placeholder{color:#adb5bd}.form-hint{font-size:.8rem;color:#6c757d;margin:.25rem 0 0;font-style:italic}.form-actions{display:flex;gap:.5rem;margin-top:.5rem}.save-btn{padding:.4rem .9rem;background:#28a745;color:#fff;border:none;border-radius:4px;font-weight:500;font-size:.85rem;cursor:pointer;transition:background .2s}.save-btn:hover:not(:disabled){background:#218838}.save-btn:disabled{opacity:.6;cursor:not-allowed}.cancel-btn{padding:.4rem .9rem;background:#fff;color:#6c757d;border:1px solid #ced4da;border-radius:4px;font-weight:500;font-size:.85rem;cursor:pointer;transition:all .2s}.cancel-btn:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}.cancel-btn:disabled{opacity:.6;cursor:not-allowed}.stripe-terminal-status{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.stripe-terminal-status h4{margin:0 0 .75rem;font-size:.95rem;color:#495057}.terminal-info{display:flex;flex-direction:column;margin-bottom:.75rem}.terminal-row{display:flex;align-items:center;gap:.75rem;padding:.4rem 0}.terminal-label{font-weight:500;color:#6c757d;min-width:120px}.terminal-value{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.85rem}.terminal-value.readers-found{color:#28a745;font-weight:600}.terminal-value.no-readers{color:#dc3545}.readers-list{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #f0f0f0}.reader-item{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:#f8f9fa;border-radius:4px;margin-bottom:.5rem}.reader-label{font-weight:500;min-width:80px}.reader-status{font-size:.75rem;padding:.2rem .5rem;border-radius:4px;text-transform:uppercase;font-weight:600}.reader-status.online{background:#d4edda;color:#155724}.reader-status.offline{background:#f8d7da;color:#721c24}.reader-id{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.75rem;color:#6c757d;background:#e9ecef;padding:.15rem .4rem;border-radius:3px;margin-left:auto}.terminal-hint{font-size:.85rem;color:#6c757d;margin:.5rem 0 0;font-style:italic}.reader-id-note{display:flex;align-items:flex-start;gap:.5rem;background:#e7f3ff;padding:.6rem .75rem;border-radius:4px;border-left:3px solid #007bff;margin-top:.75rem;font-size:.85rem;color:#004085}.reader-id-note .note-icon{flex-shrink:0}.stripe-connection-test{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:1rem}.stripe-connection-test h4{margin:0 0 .75rem;font-size:.95rem;color:#495057}.test-connection-btn{padding:.5rem 1rem;background:#007bff;color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:background .2s}.test-connection-btn:hover:not(:disabled){background:#0056b3}.test-connection-btn:disabled{opacity:.6;cursor:not-allowed}.connection-result{margin-top:1rem;padding:.75rem 1rem;border-radius:6px;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.connection-result.success{background:#d4edda;border:1px solid #c3e6cb}.connection-result.failure{background:#f8d7da;border:1px solid #f5c6cb}.result-icon{font-size:1.1rem}.result-message{font-weight:500}.balance-info{width:100%;margin-top:.5rem;padding-top:.5rem;border-top:1px solid rgba(0,0,0,.1);display:flex;align-items:center;gap:.5rem}.balance-label{color:#666}.balance-value{font-weight:600;color:#28a745}.result-error{width:100%;margin:.5rem 0 0;color:#721c24;font-size:.85rem}.fee-schedule-settings{padding:1rem 0}.fee-schedule-settings h3{margin:0 0 .5rem;color:#333}.fee-schedule-settings .section-description{color:#666;margin-bottom:1.5rem}.fee-schedule-error{background:#fee2e2;border:1px solid #ef4444;color:#b91c1c;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem}.fee-schedule-success{background:#dcfce7;border:1px solid #22c55e;color:#15803d;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem}.fee-schedule-loading{padding:2rem;text-align:center;color:#666}.fee-schedule-section{margin-bottom:2rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem}.fee-schedule-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.fee-schedule-section h4{margin:0;color:#374151;font-size:1rem}.fee-schedule-table{width:100%;border-collapse:collapse;font-size:.875rem}.fee-schedule-table th{text-align:left;padding:.5rem .75rem;background:#f9fafb;border-bottom:2px solid #e5e7eb;font-weight:600;color:#374151}.fee-schedule-table td{padding:.5rem .75rem;border-bottom:1px solid #e5e7eb;vertical-align:middle}.fee-schedule-table tr:hover{background:#f9fafb}.fee-schedule-table tr.inactive{opacity:.5;background:#f3f4f6}.fee-schedule-table tr.new-row{background:#fffbeb}.fee-schedule-table .code-cell{font-family:monospace;font-size:.8rem;color:#6b7280}.fee-schedule-table input[type=text]{padding:.375rem .5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem}.fee-schedule-table input[type=text]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.fee-schedule-table .input-code{width:100px;font-family:monospace}.fee-schedule-table .input-label{width:150px}.fee-schedule-table .input-price{width:80px;text-align:right}.fee-schedule-table input[type=checkbox]{width:16px;height:16px;cursor:pointer}.fee-schedule-table .actions{white-space:nowrap}.btn-add{padding:.375rem .75rem;background:#3b82f6;color:#fff;border:none;border-radius:4px;font-size:.875rem;cursor:pointer}.btn-add:hover:not(:disabled){background:#2563eb}.btn-add:disabled{opacity:.5;cursor:not-allowed}.btn-edit{padding:.25rem .5rem;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:4px;font-size:.75rem;cursor:pointer;margin-right:.25rem}.btn-edit:hover{background:#e5e7eb}.btn-delete{padding:.25rem .5rem;background:#fee2e2;color:#b91c1c;border:1px solid #fca5a5;border-radius:4px;font-size:.75rem;cursor:pointer}.btn-delete:hover{background:#fecaca}.btn-save{padding:.25rem .5rem;background:#22c55e;color:#fff;border:none;border-radius:4px;font-size:.75rem;cursor:pointer;margin-right:.25rem}.btn-save:hover{background:#16a34a}.btn-cancel{padding:.25rem .5rem;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:4px;font-size:.75rem;cursor:pointer}.btn-cancel:hover{background:#e5e7eb}.fee-schedule-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.fee-schedule-footer .hint{color:#9ca3af;font-size:.875rem;margin:0}.ccda-import{padding:20px;background:#fff;border-radius:8px;margin-top:20px}.ccda-import h3{margin:0 0 8px;color:#333;font-size:18px}.ccda-description{color:#666;font-size:14px;margin-bottom:20px}.ccda-message{padding:12px 16px;border-radius:6px;margin-bottom:16px;font-size:14px}.ccda-message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.ccda-message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.ccda-dropzone{border:2px dashed #ccc;border-radius:8px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .2s ease;margin-bottom:20px;position:relative}.ccda-dropzone:hover{border-color:#06c;background:#f8f9fa}.ccda-dropzone.drag-over{border-color:#06c;background:#e7f3ff}.dropzone-content{pointer-events:none}.dropzone-icon{font-size:48px;display:block;margin-bottom:12px}.dropzone-content p{margin:0;color:#666;font-size:14px}.file-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.ccda-status{margin-top:20px}.status-row{display:flex;gap:16px;margin-bottom:20px}.status-card{flex:1;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:16px;text-align:center}.status-card.clickable{cursor:pointer;transition:all .2s ease}.status-card.clickable:hover{background:#e7f3ff;border-color:#06c}.status-number{display:block;font-size:32px;font-weight:700;color:#06c}.status-label{display:block;font-size:12px;color:#666;margin-top:4px;text-transform:uppercase}.ccda-actions{display:flex;gap:12px;margin-bottom:20px}.btn-harvest,.btn-harvest-save{padding:12px 24px;font-size:14px;font-weight:500;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease}.btn-harvest{background:#6c757d;color:#fff}.btn-harvest:hover:not(:disabled){background:#5a6268}.btn-harvest-save{background:#06c;color:#fff}.btn-harvest-save:hover:not(:disabled){background:#0052a3}.btn-harvest:disabled,.btn-harvest-save:disabled{opacity:.6;cursor:not-allowed}.ccda-files-list{margin-top:20px}.ccda-files-list h4{margin:0 0 12px;font-size:14px;color:#333}.ccda-table{width:100%;border-collapse:collapse;font-size:13px}.ccda-table th,.ccda-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #e9ecef}.ccda-table th{background:#f8f9fa;font-weight:600;color:#333;position:sticky;top:0}.ccda-table tbody tr:hover{background:#f8f9fa}.btn-delete-small{background:#dc3545;color:#fff;border:none;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:12px}.btn-delete-small:hover{background:#c82333}.ccda-data-view{margin-top:20px}.view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.view-header h4{margin:0;font-size:16px;color:#333}.btn-back{background:#f8f9fa;border:1px solid #ddd;color:#333;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px}.btn-back:hover{background:#e9ecef}.ccda-data-view .ccda-table{display:block;max-height:400px;overflow-y:auto}.ccda-data-view .ccda-table thead,.ccda-data-view .ccda-table tbody,.ccda-data-view .ccda-table tr{display:table;width:100%;table-layout:fixed}.patient-import-container{display:flex;gap:20px;min-height:400px}.patient-import-list{flex:1;max-height:500px;overflow-y:auto;border:1px solid #e9ecef;border-radius:8px}.patient-import-list .ccda-table{font-size:12px;display:table;max-height:none}.patient-import-list .ccda-table th{position:sticky;top:0;z-index:1}.patient-import-list .ccda-table tr.selected{background:#e7f3ff}.patient-import-list .ccda-table tr.selected:hover{background:#d0e8ff}.filename-cell{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-preview{background:#06c;color:#fff;border:none;border-radius:4px;padding:4px 10px;cursor:pointer;font-size:11px;white-space:nowrap}.btn-preview:hover:not(:disabled){background:#0052a3}.btn-preview:disabled{opacity:.6;cursor:not-allowed}.patient-import-preview{flex:1.5;border:1px solid #e9ecef;border-radius:8px;background:#f8f9fa;padding:16px;min-height:400px;display:flex;flex-direction:column}.preview-placeholder{display:flex;align-items:center;justify-content:center;height:100%;color:#999;font-style:italic;font-size:14px}.preview-content{height:100%;display:flex;flex-direction:column}.preview-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid #e9ecef;margin-bottom:12px}.preview-header h5{margin:0;font-size:16px;color:#333}.ehr-status{font-size:11px;padding:4px 10px;border-radius:12px;font-weight:500}.ehr-status.exists{background:#d4edda;color:#155724}.ehr-status.new{background:#fff3cd;color:#856404}.preview-demographics{display:flex;gap:20px;margin-bottom:12px;font-size:13px}.preview-demographics p{margin:0;color:#666}.preview-demographics strong{color:#333}.preview-clinical{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:12px;overflow-y:auto}.preview-section{background:#fff;border-radius:6px;padding:12px;border:1px solid #e9ecef}.preview-section h6{margin:0 0 8px;font-size:12px;color:#333;display:flex;align-items:center;gap:8px}.nkda-badge{background:#d4edda;color:#155724;font-size:10px;padding:2px 6px;border-radius:4px;font-weight:600}.preview-section ul{margin:0;padding:0 0 0 16px;font-size:12px;color:#666}.preview-section li{margin-bottom:4px}.preview-section li.active{color:#333}.preview-section li.inactive{color:#999;text-decoration:line-through}.preview-section li.more{color:#666;font-style:italic}.preview-section p.none{color:#999;font-size:12px;font-style:italic;margin:0}.import-result{margin-top:12px;padding:12px;border-radius:6px;font-size:13px}.import-result.success{background:#d4edda;border:1px solid #c3e6cb}.import-result.error{background:#f8d7da;border:1px solid #f5c6cb}.import-result p{margin:0 0 8px;font-weight:500}.import-stats{display:flex;gap:16px;margin:0;padding:0;list-style:none;font-size:12px;color:#155724}.preview-actions{margin-top:12px;padding-top:12px;border-top:1px solid #e9ecef}.btn-import{width:100%;padding:12px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-import.create{background:#28a745;color:#fff}.btn-import.create:hover:not(:disabled){background:#218838}.btn-import.update{background:#06c;color:#fff}.btn-import.update:hover:not(:disabled){background:#0052a3}.btn-import:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.status-row,.ccda-actions{flex-direction:column}.ccda-table{font-size:12px}.ccda-table th,.ccda-table td{padding:8px}.patient-import-container{flex-direction:column}.patient-import-list{max-height:250px}.preview-demographics{flex-direction:column;gap:8px}.preview-clinical{grid-template-columns:1fr}}.autocheck-container{background:#fff;border:1px solid #ddd;border-radius:8px;padding:16px;margin-bottom:16px}.autocheck-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #eee}.autocheck-header h4{margin:0;color:#333}.autocheck-actions{display:flex;gap:8px}.autocheck-run-btn{padding:8px 16px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem}.autocheck-run-btn:hover{background:#0056b3}.autocheck-run-btn:disabled{background:#6c757d;cursor:not-allowed}.autocheck-apply-btn{padding:8px 16px;background:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem}.autocheck-apply-btn:hover{background:#218838}.autocheck-apply-btn:disabled{background:#6c757d;cursor:not-allowed}.autocheck-loading{text-align:center;padding:20px;color:#6c757d}.autocheck-error{background:#f8d7da;color:#721c24;padding:10px 14px;border-radius:4px;margin-bottom:12px;border:1px solid #f5c6cb}.autocheck-summary{display:flex;align-items:center;gap:20px;margin-bottom:16px;padding:12px 16px;background:#f8f9fa;border-radius:6px;flex-wrap:wrap}.autocheck-overall{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;font-weight:600}.autocheck-overall.status-green{background:#d4edda;color:#155724}.autocheck-overall.status-orange{background:#fff3cd;color:#856404}.autocheck-overall.status-red{background:#f8d7da;color:#721c24}.overall-icon{font-size:1.2rem}.autocheck-counts{display:flex;gap:12px;font-size:.95rem}.autocheck-timestamp{margin-left:auto;font-size:.85rem;color:#6c757d}.autocheck-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.autocheck-card{border:1px solid #e0e0e0;border-radius:6px;padding:12px;background:#fafafa;border-left:4px solid #6c757d}.autocheck-card.status-green{border-left-color:#28a745;background:#f8fff8}.autocheck-card.status-orange{border-left-color:#ffc107;background:#fffef8}.autocheck-card.status-red{border-left-color:#dc3545;background:#fff8f8}.check-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.check-icon{font-size:1.1rem}.check-name{font-weight:600;color:#333;font-size:.9rem}.check-hipaa{font-family:monospace;font-size:.8rem;color:#666;background:#e9ecef;padding:2px 6px;border-radius:3px;display:inline-block;margin-bottom:4px}.check-cfr{font-size:.75rem;color:#888;margin-bottom:8px}.check-details{font-size:.85rem;color:#555;line-height:1.4}.autocheck-empty{text-align:center;padding:30px 20px;color:#6c757d;background:#f8f9fa;border-radius:6px}.autocheck-empty p{margin:0}@media(max-width:768px){.autocheck-header{flex-direction:column;align-items:flex-start;gap:12px}.autocheck-summary{flex-direction:column;align-items:flex-start}.autocheck-timestamp{margin-left:0}.autocheck-grid{grid-template-columns:1fr}}.hipaa-loading{text-align:center;padding:40px;color:#6c757d;font-size:1.1rem}.hipaa-error{background:#f8d7da;color:#721c24;padding:12px 16px;border-radius:6px;margin-bottom:16px;border:1px solid #f5c6cb}.hipaa-summary-section{background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.hipaa-summary-grid{display:grid;grid-template-columns:200px 1fr;gap:24px;margin-top:16px}.hipaa-overall-score{display:flex;flex-direction:column;align-items:center;gap:16px}.hipaa-score-circle{width:140px;height:140px;border-radius:50%;border:8px solid #28a745;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;box-shadow:0 2px 8px #0000001a}.hipaa-score-value{font-size:2rem;font-weight:700;color:#333}.hipaa-score-label{font-size:.85rem;color:#6c757d}.hipaa-score-breakdown{font-size:.9rem;display:flex;flex-direction:column;gap:4px}.hipaa-score-breakdown div{display:flex;align-items:center;gap:6px}.status-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.status-dot.compliant{background:#28a745}.status-dot.partial{background:#ffc107}.status-dot.non-compliant{background:#dc3545}.status-dot.not-assessed{background:#6c757d}.hipaa-category-progress{display:flex;flex-direction:column;gap:12px}.hipaa-progress-item{display:flex;flex-direction:column;gap:4px}.hipaa-progress-label{display:flex;justify-content:space-between;font-size:.9rem;color:#333}.hipaa-progress-bar{height:12px;background:#e9ecef;border-radius:6px;overflow:hidden}.hipaa-progress-fill{height:100%;border-radius:6px;transition:width .3s ease}.hipaa-filters-section{padding:12px 16px!important}.hipaa-filters{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.hipaa-filter-group{display:flex;align-items:center;gap:8px}.hipaa-filter-group label{font-size:.9rem;color:#555}.hipaa-filter-group select{padding:6px 12px;border:1px solid #ccc;border-radius:4px;font-size:.9rem}.hipaa-refresh-btn{padding:6px 16px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem}.hipaa-refresh-btn:hover{background:#0056b3}.hipaa-refresh-btn:disabled{background:#6c757d;cursor:not-allowed}.hipaa-items-section{padding:0!important;background:transparent!important;box-shadow:none!important}.hipaa-category-accordion{margin-bottom:8px;border:1px solid #ddd;border-radius:6px;overflow:hidden;background:#fff}.hipaa-category-header{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#f8f9fa;cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid transparent}.hipaa-category-header:hover{background:#e9ecef}.hipaa-category-header.expanded{border-bottom-color:#ddd}.hipaa-category-toggle{color:#666;font-size:.8rem}.hipaa-category-name{font-weight:600;color:#333;flex:1}.hipaa-category-count{font-size:.85rem;color:#6c757d}.hipaa-category-items{padding:8px;display:flex;flex-direction:column;gap:8px}.hipaa-item-card{border:1px solid #e0e0e0;border-radius:6px;padding:12px 16px;background:#fafafa;border-left:4px solid #6c757d}.hipaa-item-card.status-compliant{border-left-color:#28a745;background:#f8fff8}.hipaa-item-card.status-non_compliant{border-left-color:#dc3545;background:#fff8f8}.hipaa-item-card.status-partial{border-left-color:#ffc107;background:#fffef8}.hipaa-item-card.status-not_applicable{border-left-color:#adb5bd;background:#f8f9fa;opacity:.7}.hipaa-item-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.hipaa-item-icon{font-size:1.1rem}.hipaa-item-id{font-family:monospace;font-size:.85rem;color:#666;background:#e9ecef;padding:2px 6px;border-radius:3px}.hipaa-item-requirement{font-weight:600;color:#333;flex:1}.hipaa-item-required{font-size:.75rem;font-weight:500}.hipaa-item-priority{font-size:.7rem;color:#fff;padding:2px 8px;border-radius:10px;text-transform:uppercase}.hipaa-item-cfr{font-size:.8rem;color:#666;font-style:italic;margin-bottom:6px}.hipaa-item-description{font-size:.9rem;color:#555;line-height:1.4;margin-bottom:10px}.hipaa-item-footer{display:flex;align-items:center;gap:16px;font-size:.85rem;color:#666;flex-wrap:wrap}.hipaa-item-status strong{color:#333}.hipaa-edit-btn{margin-left:auto;padding:4px 12px;background:#6c757d;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.8rem}.hipaa-edit-btn:hover{background:#5a6268}.hipaa-item-notes{margin-top:8px;padding:8px 12px;background:#fff3cd;border-radius:4px;font-size:.85rem;color:#856404}.hipaa-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.hipaa-modal{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 20px #0003}.hipaa-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #ddd;background:#f8f9fa}.hipaa-modal-header h4{margin:0;color:#333}.hipaa-modal-close{background:none;border:none;font-size:1.5rem;color:#666;cursor:pointer;padding:0;line-height:1}.hipaa-modal-close:hover{color:#333}.hipaa-modal-body{padding:20px;overflow-y:auto;flex:1}.hipaa-modal-requirement{font-size:1.1rem;color:#333;margin-bottom:4px}.hipaa-modal-cfr{font-size:.85rem;color:#666;font-style:italic;margin-bottom:8px}.hipaa-modal-description{font-size:.9rem;color:#666;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #eee}.hipaa-form-group{margin-bottom:16px}.hipaa-form-group label{display:block;font-size:.9rem;color:#555;margin-bottom:6px;font-weight:500}.hipaa-form-group select,.hipaa-form-group input,.hipaa-form-group textarea{width:100%;padding:10px 12px;border:1px solid #ccc;border-radius:4px;font-size:.95rem}.hipaa-form-group textarea{resize:vertical;min-height:80px}.hipaa-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #ddd;background:#f8f9fa}.hipaa-btn-cancel{padding:10px 20px;background:#6c757d;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.95rem}.hipaa-btn-cancel:hover{background:#5a6268}.hipaa-btn-save{padding:10px 24px;background:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.95rem;font-weight:500}.hipaa-btn-save:hover{background:#218838}.hipaa-btn-save:disabled{background:#6c757d;cursor:not-allowed}@media(max-width:768px){.hipaa-summary-grid{grid-template-columns:1fr}.hipaa-overall-score{flex-direction:row;justify-content:center;gap:24px}.hipaa-item-header,.hipaa-item-footer{flex-direction:column;align-items:flex-start}.hipaa-edit-btn{margin-left:0;margin-top:8px}}.accounting-tab{padding:1rem}.accounting-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #e0e0e0}.accounting-header h2{margin:0;font-size:1.5rem;color:#333}.accounting-stats{display:flex;align-items:center;gap:1.5rem}.accounting-stats .stat{font-size:.9rem;color:#666}.accounting-stats .stat.warning{color:#e67e22}.accounting-stats .stat strong{color:#333}.refresh-btn{padding:.4rem .6rem;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer;font-size:1rem;transition:all .2s}.refresh-btn:hover:not(:disabled){background:#f0f0f0;transform:rotate(180deg)}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.accounting-error{background:#fee;border:1px solid #fcc;color:#c00;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem}.accounting-success{background:#efe;border:1px solid #cfc;color:#060;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem}.integrity-warning{display:flex;align-items:center;gap:.75rem;background:#fff3cd;border:1px solid #ffc107;border-left:4px solid #ff9800;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem}.integrity-warning .warning-icon{font-size:1.25rem}.integrity-warning .warning-text{flex:1;font-size:.9rem;color:#856404}.integrity-warning .warning-text strong{color:#664d03}.integrity-warning .resync-btn{padding:.4rem .75rem;background:#ff9800;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.85rem;font-weight:500;transition:background .2s}.integrity-warning .resync-btn:hover:not(:disabled){background:#f57c00}.integrity-warning .resync-btn:disabled{opacity:.6;cursor:not-allowed}.accounting-views{display:flex;gap:.5rem;margin-bottom:1rem}.view-btn{padding:.5rem 1rem;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s}.view-btn:hover{background:#f5f5f5}.view-btn.active{background:#2196f3;color:#fff;border-color:#2196f3}.sync-status-bar{display:flex;justify-content:space-between;align-items:center;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:4px;padding:.75rem 1rem;margin-bottom:1rem}.sync-info{display:flex;align-items:center;gap:1rem}.sync-badge{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.sync-badge.connected{background:#d4edda;color:#155724}.sync-badge.warning,.sync-badge.disconnected{background:#fff3cd;color:#856404}.sync-detail{font-size:.85rem;color:#666}.sync-actions{display:flex;gap:.5rem}.sync-btn{padding:.4rem .75rem;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer;font-size:.85rem;transition:all .2s}.sync-btn:hover:not(:disabled){background:#f0f0f0}.sync-btn:disabled{opacity:.5;cursor:not-allowed}.sync-btn.primary{background:#4caf50;color:#fff;border-color:#4caf50}.sync-btn.primary:hover:not(:disabled){background:#43a047}.sync-btn.secondary{background:#2196f3;color:#fff;border-color:#2196f3}.sync-btn.secondary:hover:not(:disabled){background:#1976d2}.sync-btn.setup{background:#ff9800;color:#fff;border-color:#ff9800}.sync-btn.setup:hover:not(:disabled){background:#f57c00}.ledger-view{margin-top:1rem}.ledger-filters{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.ledger-filters label{font-weight:500;color:#555}.ledger-filters select{padding:.4rem .75rem;border:1px solid #ccc;border-radius:4px;font-size:.9rem}.ledger-filters .entry-count{margin-left:auto;font-size:.85rem;color:#666}.empty-state{text-align:center;padding:3rem;color:#888;background:#f9f9f9;border-radius:4px}.ledger-entries{display:flex;flex-direction:column;gap:.75rem}.journal-entry{border:1px solid #e0e0e0;border-radius:4px;background:#fff;overflow:hidden}.journal-entry.unsynced{border-left:3px solid #ff9800}.journal-entry.synced{border-left:3px solid #4caf50}.entry-header{display:flex;align-items:center;gap:1rem;padding:.5rem .75rem;background:#f5f5f5;border-bottom:1px solid #e0e0e0}.entry-id{font-family:monospace;font-size:.85rem;color:#666}.entry-date{font-weight:500;color:#333}.sync-indicator{margin-left:auto;font-size:1rem}.sync-indicator.synced{color:#4caf50}.sync-indicator.unsynced{color:#ff9800}.entry-lines{padding:.5rem .75rem}.entry-line{display:grid;grid-template-columns:60px 1fr 100px 100px;gap:.5rem;padding:.25rem 0;font-size:.9rem}.entry-line .account-code{font-family:monospace;color:#666}.entry-line .account-name{color:#333}.entry-line .debit,.entry-line .credit{text-align:right;font-family:monospace}.entry-line .debit{color:#333}.entry-line .credit{color:#2196f3}.entry-footer{display:flex;justify-content:space-between;padding:.5rem .75rem;background:#fafafa;border-top:1px solid #e0e0e0;font-size:.85rem}.entry-memo{color:#555;font-style:italic}.entry-source{color:#888;font-family:monospace}.trial-balance-view{margin-top:1rem}.tb-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:1rem}.tb-header h3{margin:0;font-size:1.2rem}.tb-date{color:#666}.tb-status{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.tb-status.balanced{background:#d4edda;color:#155724}.tb-status.unbalanced{background:#f8d7da;color:#721c24}.tb-table{width:100%;border-collapse:collapse;font-size:.9rem}.tb-table th,.tb-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid #e0e0e0}.tb-table th{background:#f5f5f5;font-weight:600;color:#333}.tb-table th.amount,.tb-table td.amount{text-align:right;font-family:monospace}.tb-table td.debit{color:#333}.tb-table td.credit{color:#2196f3}.tb-table td.code{font-family:monospace;color:#666}.tb-table tfoot tr.totals{background:#f5f5f5}.tb-table tfoot tr.totals td{border-top:2px solid #333;font-weight:600}.coa-view{margin-top:1rem}.coa-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:1rem}.coa-header h3{margin:0;font-size:1.2rem}.coa-count{color:#666;font-size:.9rem}.coa-table{width:100%;border-collapse:collapse;font-size:.9rem}.coa-table th,.coa-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid #e0e0e0}.coa-table th{background:#f5f5f5;font-weight:600;color:#333}.coa-table td.code{font-family:monospace;color:#666}.coa-table tr.inactive{opacity:.6}.coa-table .badge{padding:.2rem .5rem;border-radius:10px;font-size:.75rem;font-weight:500}.coa-table .badge.active{background:#d4edda;color:#155724}.coa-table .badge.inactive{background:#e2e3e5;color:#383d41}.loading-spinner{text-align:center;padding:3rem;color:#666}.cash-position-view{margin-top:1rem}.cash-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:1.5rem}.cash-header h3{margin:0;font-size:1.3rem}.cash-date{color:#666;font-size:.9rem}.cash-summary{max-width:500px}.cash-card{padding:1.5rem;border-radius:8px;margin-bottom:1.5rem;text-align:center}.cash-card.primary{background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff}.cash-card-label{font-size:.9rem;opacity:.9;margin-bottom:.5rem}.cash-card-value{font-size:2.5rem;font-weight:700;margin-bottom:.25rem}.cash-card-sublabel{font-size:.8rem;opacity:.7}.cash-breakdown{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:1rem;margin-bottom:1rem}.cash-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #e0e0e0}.cash-row:last-child{border-bottom:none}.cash-row.total{border-top:2px solid #333;margin-top:.5rem;padding-top:.75rem;font-weight:600}.cash-row.pending{background:#fff3cd;margin:.5rem -1rem -1rem;padding:.75rem 1rem;border-radius:0 0 8px 8px}.cash-label{color:#555}.cash-value{font-family:monospace;font-size:1rem}.cash-value.positive{color:#2e7d32}.cash-value.negative{color:#c62828}.cash-note{background:#e3f2fd;border-left:4px solid #2196f3;padding:.75rem 1rem;font-size:.85rem;color:#555;border-radius:0 4px 4px 0;margin-top:1rem}.payout-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:flex-start;padding-top:5vh;z-index:1000}.payout-modal{background:#fff;border-radius:12px;width:100%;max-width:480px;box-shadow:0 20px 50px #0000004d;max-height:90vh;overflow-y:auto}.payout-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;background:#1e40af;border-radius:12px 12px 0 0}.payout-modal-header h2{margin:0;font-size:1.25rem;color:#fff}.payout-close-btn{background:none;border:none;font-size:1.5rem;color:#fff;cursor:pointer;opacity:.8;padding:0;line-height:1}.payout-close-btn:hover{opacity:1}.payout-modal-body{padding:1.5rem}.payout-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e0e0e0;background:#f9fafb;border-radius:0 0 12px 12px}.payout-fetch-section{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px dashed #ddd}.payout-fetch-btn{padding:.625rem 1rem;font-size:.9rem;background:#f0f9ff;color:#0369a1;border:1px solid #0369a1;border-radius:6px;cursor:pointer;font-weight:500;transition:background .2s}.payout-fetch-btn:hover:not(:disabled){background:#e0f2fe}.payout-fetch-btn:disabled{opacity:.6;cursor:not-allowed}.payout-or-text{font-size:.85rem;color:#888}.payout-form{display:flex;flex-direction:column;gap:1rem}.payout-form-group{display:flex;flex-direction:column;gap:.25rem}.payout-form-group label{font-size:.875rem;font-weight:600;color:#374151}.payout-form-group .required{color:#ef4444}.payout-form-group input{padding:.625rem .75rem;font-size:.9rem;border:1px solid #d1d5db;border-radius:6px;outline:none;transition:border-color .2s}.payout-form-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.payout-amount-wrapper{display:flex;align-items:stretch}.payout-currency-prefix{padding:.625rem .75rem;background:#f3f4f6;border:1px solid #d1d5db;border-right:none;border-radius:6px 0 0 6px;color:#666;display:flex;align-items:center}.payout-amount-wrapper input{flex:1;border-radius:0 6px 6px 0}.payout-field-hint{font-size:.75rem;color:#888;margin-top:.125rem}.payout-preview{margin-top:1.25rem;padding:1rem;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.payout-preview h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:#374151}.payout-preview-table{font-size:.85rem}.payout-preview-row{display:grid;grid-template-columns:1fr 80px 80px;padding:.25rem 0}.payout-preview-account{font-family:monospace;color:#555}.payout-preview-debit{text-align:right;color:#059669}.payout-preview-credit{text-align:right;color:#dc2626}.payout-cancel-btn{padding:.625rem 1.25rem;font-size:.9rem;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:background .2s}.payout-cancel-btn:hover{background:#f3f4f6}.payout-submit-btn{padding:.625rem 1.5rem;font-size:.9rem;background:#059669;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;transition:background .2s}.payout-submit-btn:hover:not(:disabled){background:#047857}.payout-submit-btn:disabled{opacity:.6;cursor:not-allowed}.payout-mode-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.payout-mode-header h4{margin:0;font-size:.95rem;color:#374151}.payout-back-btn{padding:.375rem .75rem;font-size:.8rem;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:4px;cursor:pointer}.payout-back-btn:hover{background:#e5e7eb}.payout-list{display:flex;flex-direction:column;gap:.5rem;max-height:280px;overflow-y:auto}.payout-item{padding:.875rem;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb;cursor:pointer;transition:all .15s}.payout-item:hover{background:#f0f9ff;border-color:#3b82f6}.payout-item-main{display:flex;justify-content:space-between;margin-bottom:.25rem}.payout-item-amount{font-size:1.1rem;font-weight:600;color:#059669}.payout-item-date{font-size:.875rem;color:#666}.payout-item-id{font-size:.75rem;font-family:monospace;color:#888}.payout-item-status{font-size:.75rem;color:#059669}.payout-item-desc{display:block;font-size:.75rem;color:#666;margin-top:.25rem}.payout-hint{font-size:.8rem;color:#888;text-align:center;margin-top:1rem}.payout-empty{text-align:center;padding:2rem;color:#888}.payout-success{padding:2.5rem 1.5rem;text-align:center}.payout-success-icon{width:60px;height:60px;border-radius:50%;background:#d1fae5;color:#059669;font-size:2rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem}.payout-success h3{font-size:1.25rem;color:#059669;margin:0 0 .75rem}.payout-success p{font-size:.9rem;color:#666;line-height:1.6;margin:0}.payout-done-btn{margin-top:1.5rem;padding:.625rem 2rem;font-size:.9rem;background:#059669;color:#fff;border:none;border-radius:6px;cursor:pointer}.payout-done-btn:hover{background:#047857}.payout-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:.625rem .875rem;border-radius:6px;margin-bottom:1rem;font-size:.875rem}.geotraqr-subsection{margin-top:20px;padding-top:16px;border-top:1px solid #e5e7eb}.geotraqr-subsection h4{margin:0 0 12px;font-size:14px;color:#374151}.geotraqr-subsection h5{margin:12px 0 8px;font-size:13px;color:#6b7280}.geotraqr-table{width:100%;border-collapse:collapse;font-size:13px}.geotraqr-table th,.geotraqr-table td{padding:8px 12px;text-align:left;border-bottom:1px solid #e5e7eb}.geotraqr-table th{background:#f9fafb;font-weight:600;color:#374151}.geotraqr-table code{background:#f3f4f6;padding:2px 6px;border-radius:4px;font-size:12px}.geotraqr-table .timestamp{font-size:11px;color:#6b7280}.device-type-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500}.device-type-badge.badge{background:#dbeafe;color:#1d4ed8}.device-type-badge.asset{background:#d1fae5;color:#047857}.discovered-section{background:#fffbeb;margin:20px -16px -16px;padding:16px;border-radius:0 0 8px 8px}.discovered-section h4{color:#92400e}.section-hint{font-size:12px;color:#92400e;margin:0 0 12px}.geotraqr-table.discovered{background:#fff;border-radius:6px}.geotraqr-table.discovered tr.selected{background:#fef3c7}.inline-input{padding:4px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:12px;width:120px}.inline-input.zone{width:100px;font-family:monospace}.inline-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.btn-icon{padding:4px 8px;border:none;background:#e5e7eb;border-radius:4px;cursor:pointer;margin-right:4px;font-size:12px}.btn-icon:hover{background:#d1d5db}.btn-icon.edit{background:#dbeafe}.btn-icon.edit:hover{background:#bfdbfe}.btn-icon.save{background:#d1fae5}.btn-icon.save:hover{background:#a7f3d0}.btn-icon.cancel{background:#fee2e2}.btn-icon.cancel:hover{background:#fecaca}.btn-icon.dismiss{background:transparent;color:#9ca3af}.btn-icon.dismiss:hover{color:#ef4444}.discovered-actions{margin-top:12px;padding-top:12px;border-top:1px solid #fcd34d}.portal-tab{max-width:900px}.portal-section{margin-bottom:24px}.portal-section h3{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid #e0e0e0}.section-description{font-size:13px;color:#666;margin-bottom:16px}.feature-toggles{display:flex;flex-direction:column;gap:12px}.feature-toggle{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;transition:background .2s,border-color .2s}.feature-toggle:hover{background:#f0f4f8;border-color:#06c}.feature-toggle input[type=checkbox]{width:18px;height:18px;margin-top:2px;cursor:pointer}.feature-toggle input[type=checkbox]:disabled{cursor:not-allowed}.toggle-label{display:flex;flex-direction:column;gap:2px;flex:1}.toggle-label strong{font-size:14px;color:#333}.toggle-description{font-size:12px;color:#666}.beta-badge{display:inline-block;font-size:10px;font-weight:600;background:#8e44ad;color:#fff;padding:2px 8px;border-radius:10px;margin-left:8px;vertical-align:middle}.coming-badge{display:inline-block;font-size:10px;font-weight:500;background:#ffc107;color:#333;padding:2px 8px;border-radius:10px;margin-left:8px;vertical-align:middle}.feature-divider{display:flex;align-items:center;margin:8px 0;color:#999;font-size:11px;text-transform:uppercase;letter-spacing:1px}.feature-divider:before,.feature-divider:after{content:"";flex:1;height:1px;background:#ddd}.feature-divider span{padding:0 12px}.future-feature{opacity:.7;background:#fafafa;border-style:dashed}.future-feature:hover{opacity:1}.saving-indicator{font-size:12px;font-weight:400;color:#06c;font-style:italic}.features-loading{padding:20px;text-align:center;color:#666}.features-error{padding:12px 16px;background:#fee;border:1px solid #fcc;border-radius:4px;color:#c00;font-size:13px;margin-bottom:16px}.portal-field{margin-bottom:12px}.portal-field label{display:block;font-size:11px;font-weight:600;color:#666;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.portal-field input{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-family:Consolas,Monaco,monospace;font-size:13px;background:#f8f9fa;color:#333}.portal-field input:read-only{cursor:default}.portal-field-row{display:flex;gap:8px}.portal-field-row input{flex:1}.portal-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.portal-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}@media(max-width:768px){.portal-grid-2,.portal-grid-3{grid-template-columns:1fr}}.copy-btn,.open-btn{padding:8px 12px;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;font-size:14px;transition:background .2s}.copy-btn:hover,.open-btn:hover{background:#f0f0f0}.health-check-btn{padding:8px 16px;border:1px solid #0066cc;border-radius:4px;background:#06c;color:#fff;cursor:pointer;font-size:13px;transition:background .2s}.health-check-btn:hover:not(:disabled){background:#0052a3}.health-check-btn:disabled{opacity:.6;cursor:not-allowed}.external-link-btn{padding:8px 16px;border:1px solid #666;border-radius:4px;background:#fff;color:#333;cursor:pointer;font-size:13px;margin-top:12px;transition:background .2s}.external-link-btn:hover{background:#f5f5f5}.portal-health-row{display:flex;align-items:center;gap:16px;margin-top:12px}.health-status{font-size:13px;font-weight:500}.health-status.online{color:#28a745}.health-status.offline{color:#dc3545}.highlight-field{background:#fff3cd!important;border-color:#ffc107!important}.field-hint{font-weight:400;font-size:11px;color:#888}.cloudflare-features{margin-top:16px}.cloudflare-features label:first-child{display:block;font-size:11px;font-weight:600;color:#666;margin-bottom:8px;text-transform:uppercase}.feature-checkboxes{display:flex;gap:24px;padding:12px;background:#f8f9fa;border-radius:4px}.feature-checkboxes label{display:flex;align-items:center;gap:6px;font-size:13px;color:#333}.feature-checkboxes input[type=checkbox]{width:16px;height:16px}.display-only-badge{font-size:10px;font-weight:400;background:#6c757d;color:#fff;padding:2px 8px;border-radius:10px;margin-left:8px}.coming-soon-badge{font-size:10px;font-weight:400;background:#ffc107;color:#333;padding:2px 8px;border-radius:10px;margin-left:8px}.edit-hint{font-size:12px;color:#666;margin-top:16px;padding:8px 12px;background:#e9ecef;border-radius:4px}.edit-hint code{font-family:Consolas,Monaco,monospace;background:#fff;padding:2px 6px;border-radius:3px;font-size:11px}.copy-feedback{position:fixed;top:80px;right:20px;background:#28a745;color:#fff;padding:10px 20px;border-radius:4px;font-size:13px;z-index:1000;animation:fadeInOut 2s ease-in-out}@keyframes fadeInOut{0%{opacity:0;transform:translateY(-10px)}15%{opacity:1;transform:translateY(0)}85%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.phase2-section{border:2px dashed #ffc107;background:#fffdf5}.phase2-placeholder{text-align:center;padding:20px}.phase2-placeholder .placeholder-icon{font-size:48px;margin-bottom:12px}.phase2-placeholder p{margin:8px 0;color:#666}.sap-config{text-align:left;max-width:500px;margin:20px auto;padding:16px;background:#fff;border:1px solid #ddd;border-radius:8px}.sap-toggle{display:flex;align-items:center;gap:8px;font-weight:600;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #eee}.sap-toggle.disabled{opacity:.6}.sap-description{font-size:12px;font-weight:600;color:#666;margin-bottom:8px}.sap-checkboxes{display:flex;flex-direction:column;gap:8px}.sap-item{display:flex;align-items:flex-start;gap:8px;font-size:13px;padding:6px 8px;background:#f8f9fa;border-radius:4px}.sap-item.locked{background:#fee;color:#999}.sap-item strong{color:#06c;font-size:14px}.sap-item.locked strong{color:#999}.sap-note{font-size:11px;color:#888;font-style:italic;margin-top:12px}.endpoint-hint{font-size:12px;color:#666;margin-top:16px}.endpoint-hint code{font-family:Consolas,Monaco,monospace;background:#e9ecef;padding:2px 6px;border-radius:3px;font-size:11px}.searchable-dropdown{position:relative;width:100%}.searchable-dropdown.disabled{opacity:.6;pointer-events:none}.searchable-dropdown-input-wrapper{position:relative;display:flex;align-items:center}.searchable-dropdown-input{width:100%;padding:8px 50px 8px 10px;border:1px solid #ccc;border-radius:4px;font-size:14px;outline:none}.searchable-dropdown-input:focus{border-color:#4a90a4;box-shadow:0 0 0 2px #4a90a433}.searchable-dropdown-clear{position:absolute;right:28px;background:none;border:none;font-size:18px;color:#999;cursor:pointer;padding:0 4px}.searchable-dropdown-clear:hover{color:#666}.searchable-dropdown-arrow{position:absolute;right:10px;font-size:10px;color:#666;pointer-events:none}.searchable-dropdown-list{position:absolute;top:100%;left:0;right:0;margin:2px 0 0;padding:0;list-style:none;background:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 4px 12px #00000026;max-height:250px;overflow-y:auto;z-index:1000}.searchable-dropdown-item{padding:8px 12px;cursor:pointer;font-size:14px;border-bottom:1px solid #f0f0f0}.searchable-dropdown-item:last-child{border-bottom:none}.searchable-dropdown-item:hover,.searchable-dropdown-item.highlighted{background-color:#e8f4f8}.searchable-dropdown-item.selected{background-color:#d0e8f0;font-weight:500}.searchable-dropdown-no-results{padding:12px;color:#888;font-style:italic;text-align:center}.biopsy-log{padding:20px;height:100%;display:flex;flex-direction:column}.biopsy-log-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.biopsy-log-header h2{margin:0;color:#1a365d}.btn-add-biopsy{background:#2e7d32;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-weight:500}.btn-add-biopsy:hover{background:#1b5e20}.biopsy-filters{display:flex;flex-wrap:wrap;gap:15px;align-items:flex-end;margin-bottom:15px;padding:12px;background:#f7fafc;border-radius:6px;border:1px solid #e2e8f0}.filter-group{display:flex;flex-direction:column;gap:4px}.filter-group label{font-size:12px;font-weight:500;color:#4a5568}.filter-group input,.filter-group select{padding:6px 10px;border:1px solid #cbd5e0;border-radius:4px;font-size:13px}.filter-group input[type=date]{width:140px}.filter-group select{min-width:80px}.filter-group input[type=text]{width:120px}.btn-refresh{background:#3182ce;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-weight:500;height:fit-content}.btn-refresh:hover{background:#2c5282}.biopsy-table-container{flex:1;overflow:auto;border:1px solid #e2e8f0;border-radius:6px}.biopsy-table{width:100%;border-collapse:collapse;font-size:12px;min-width:1800px}.biopsy-table thead{position:sticky;top:0;z-index:1}.biopsy-table th{background:#d9ead3;padding:8px 6px;text-align:left;font-weight:600;color:#1a365d;border-bottom:2px solid #93c47d;white-space:nowrap}.biopsy-table td{padding:6px;border-bottom:1px solid #e2e8f0;vertical-align:top}.biopsy-table tbody tr:hover{background:#f0f7ff}.biopsy-table tbody tr:nth-child(2n){background:#fafafa}.biopsy-table tbody tr:nth-child(2n):hover{background:#f0f7ff}.biopsy-table tr.highlight-warning{background:#fff3cd!important}.biopsy-table tr.highlight-warning:hover{background:#ffe69c!important}.name-cell{white-space:nowrap;max-width:150px;overflow:hidden;text-overflow:ellipsis}.path-report-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comments-cell{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tx-highlight{background:#fff176;font-weight:500}.btn-edit{background:transparent;border:none;cursor:pointer;padding:2px 6px;font-size:14px}.btn-edit:hover{background:#e2e8f0;border-radius:4px}.no-entries{text-align:center;padding:40px!important;color:#718096;font-style:italic}.biopsy-footer{margin-top:10px;padding:8px;font-size:13px;color:#718096;text-align:right}.loading,.error{padding:40px;text-align:center}.error{color:#c53030}.biopsy-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.biopsy-table th.sortable:hover{background-color:#3a5a40}.sort-indicator{font-size:.75rem;margin-left:4px;opacity:.4}.sort-indicator.active{opacity:1}.modal-content.biopsy-modal{background:#fff;border-radius:8px;width:100%;max-width:550px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 20px #00000026}.modal-content.biopsy-modal form{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e0e0e0;background:#1a365d;color:#fff;flex-shrink:0}.modal-header h3{margin:0;font-size:18px;font-weight:600}.modal-close{background:none;border:none;font-size:24px;color:#fff;cursor:pointer;padding:0;line-height:1}.modal-close:hover{opacity:.8}.modal-body{padding:20px;overflow-y:auto;flex:1;min-height:0}.form-error{background:#ffebee;color:#c62828;padding:10px 12px;border-radius:4px;margin-bottom:16px;font-size:13px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.form-group{display:flex;flex-direction:column}.form-group label{font-size:12px;font-weight:500;color:#555;margin-bottom:4px}.modal-body .form-group input,.modal-body .form-group select,.modal-body .form-group textarea{padding:8px 10px;border:1px solid #ccc;border-radius:4px;font-size:14px;transition:border-color .2s,box-shadow .2s}.modal-body .form-group input:focus,.modal-body .form-group select:focus,.modal-body .form-group textarea:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 2px #1a73e833}.modal-body .form-group input:disabled{background:#f5f5f5;color:#666}.modal-body .form-group textarea{resize:vertical;min-height:60px}.modal-body .form-group select{cursor:pointer}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:16px 20px;border-top:1px solid #e0e0e0;background:#f8f9fa;flex-shrink:0}.modal-content.biopsy-modal .modal-footer .btn-cancel,.modal-content.biopsy-modal .modal-footer .btn-save{padding:10px 20px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;min-width:90px;text-align:center;height:40px;line-height:1;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center}.modal-content.biopsy-modal .modal-footer .btn-cancel{background:#fff;border:1px solid #ccc;color:#333}.modal-content.biopsy-modal .modal-footer .btn-cancel:hover{background:#f5f5f5;border-color:#999}.modal-content.biopsy-modal .modal-footer .btn-save{background:#1a73e8;border:1px solid #1a73e8;color:#fff}.modal-content.biopsy-modal .modal-footer .btn-save:hover:not(:disabled){background:#1557b0}.modal-content.biopsy-modal .modal-footer .btn-save:disabled,.modal-content.biopsy-modal .modal-footer .btn-cancel:disabled{opacity:.6;cursor:not-allowed}@media(max-width:600px){.modal-content.biopsy-modal{margin:16px;max-height:calc(100vh - 32px)}.form-row{grid-template-columns:1fr}}.modifier-row{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin-bottom:8px;padding:6px 8px;background:#f8f9fa;border-radius:4px}.modifier-group-label{font-size:11px;font-weight:600;color:#666;margin-right:4px;min-width:40px}.modifier-checkbox{display:inline-flex;align-items:center;gap:4px;cursor:pointer;font-size:13px;padding:2px 6px;border-radius:3px;transition:background .15s}.modifier-checkbox:hover{background:#e9ecef}.modifier-checkbox input[type=checkbox]{width:14px;height:14px;margin:0;cursor:pointer}.modifier-checkbox span{-webkit-user-select:none;user-select:none}.dropdown-other-row{display:flex;gap:8px;align-items:flex-start}.dropdown-wrapper{flex:1;min-width:200px}.other-input{width:120px;padding:8px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.other-input:focus{outline:none;border-color:#4a90d9;box-shadow:0 0 0 2px #4a90d933}.other-input::placeholder{color:#999;font-style:italic}.form-info{padding:8px 12px;background:#e7f3ff;border:1px solid #b3d7ff;border-radius:4px;color:#06c;font-size:13px;margin-bottom:12px}.biopsy-modal{max-width:700px;width:95%}.patient-list-container{padding:20px;max-width:1400px}.patient-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.patient-list-header h2{margin:0;font-size:24px;color:#1e293b}.patient-list-count{font-size:14px;color:#64748b;background:#f1f5f9;padding:6px 12px;border-radius:4px}.patient-list-filters{display:flex;gap:12px;margin-bottom:16px;align-items:center}.patient-list-filters label{font-size:13px;color:#475569}.patient-list-filters select{padding:6px 10px;border:1px solid #cbd5e1;border-radius:4px;font-size:13px;background:#fff}.patient-list-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.patient-list-table th,.patient-list-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #e2e8f0}.patient-list-table th{background:#f8fafc;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#475569;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.patient-list-table th:hover{background:#f1f5f9}.patient-list-table th.sorted{color:#1d4ed8;background:#eff6ff}.sort-indicator{margin-left:4px;font-size:10px}.patient-list-table td{font-size:14px;color:#334155}.patient-list-table tr:hover td{background:#f8fafc}.patient-list-table tr:last-child td{border-bottom:none}.patient-id-link{color:#2563eb;font-weight:500;cursor:pointer}.patient-id-link:hover{text-decoration:underline}.status-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500;text-transform:uppercase}.status-badge.active{background:#dcfce7;color:#166534}.status-badge.inactive{background:#fee2e2;color:#991b1b}.status-badge.deceased{background:#e2e8f0;color:#475569}.patient-list-loading,.patient-list-empty{text-align:center;padding:40px;color:#64748b}.patient-list-error{text-align:center;padding:40px;color:#dc2626;background:#fef2f2;border-radius:8px}.patient-banner{background:linear-gradient(135deg,#1a5276,#2874a6);color:#fff;padding:10px 16px;border-radius:8px;margin-bottom:16px;box-shadow:0 2px 8px #00000026;position:relative}.patient-banner-row{display:flex;align-items:center;gap:14px;flex-wrap:nowrap}.patient-avatar{width:44px;height:44px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem;flex-shrink:0;border:2px solid rgba(255,255,255,.4)}.patient-banner-name{font-size:1.25rem;font-weight:600;white-space:nowrap;flex-shrink:0}.patient-banner-preferred{font-weight:400;font-style:italic;color:#ffffffd9;margin-left:8px}.patient-banner-note-icon{background:#ffffff26;border:2px solid rgba(255,255,255,.3);color:#ffffff80;width:28px;height:28px;border-radius:4px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.patient-banner-note-icon:hover{background:#ffffff40;border-color:#ffffff80;color:#fffc}.patient-banner-note-icon.has-note{background:#f39c12;border-color:#e67e22;color:#fff}.patient-banner-note-icon.has-note:hover{background:#e67e22;border-color:#d35400}.patient-banner-field{display:flex;align-items:center;gap:4px;white-space:nowrap;flex-shrink:0;font-size:.88rem}.patient-banner-label{color:#ffffffb3;font-size:.82rem}.patient-banner-value{font-weight:500}.patient-banner-empty{color:#ffffff80}.patient-banner-icon{font-size:.95rem}.patient-banner-phone{color:#fff;text-decoration:none;font-weight:500}.patient-banner-phone:hover{text-decoration:underline}.patient-banner-selfpay{background:#27ae60;color:#fff;padding:2px 8px;border-radius:4px;font-size:.8rem;font-weight:600;letter-spacing:.5px;white-space:nowrap}.patient-banner-close{margin-left:auto;background:#fff3;border:none;color:#fff;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:.95rem;display:flex;align-items:center;justify-content:center;transition:background-color .2s;flex-shrink:0}.patient-banner-close:hover{background:#ffffff4d}.patient-banner-room-wrapper{position:relative;flex-shrink:0}.patient-banner-room-badge{background:#e67e22;color:#fff;border:none;padding:3px 10px;border-radius:4px;font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s;display:flex;align-items:center;gap:4px}.patient-banner-room-badge:hover:not(:disabled){background:#d35400}.patient-banner-room-badge:disabled{opacity:.7;cursor:not-allowed}.patient-banner-room-dropdown{position:absolute;top:calc(100% + 4px);left:0;background:#fff;border-radius:6px;box-shadow:0 4px 16px #00000040;z-index:200;min-width:160px;overflow:hidden}.patient-banner-room-option{display:block;width:100%;padding:8px 14px;background:none;border:none;text-align:left;cursor:pointer;font-size:.9rem;color:#333;transition:background .1s}.patient-banner-room-option:hover{background:#f0f4f8}.patient-banner-room-option.active{background:#eaf4fb;color:#1a5276;font-weight:600}.banner-note-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:flex-start;justify-content:center;padding-top:120px;z-index:1000}.banner-note-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000004d;width:400px;max-width:90vw;color:#333}.banner-note-modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #e0e0e0;background:#f39c12;border-radius:8px 8px 0 0}.banner-note-modal-header h3{margin:0;font-size:1.1rem;color:#fff;font-weight:600}.banner-note-modal-close{background:#fff3;border:none;color:#fff;width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.banner-note-modal-close:hover{background:#ffffff4d}.banner-note-modal-body{padding:16px;min-height:100px}.banner-note-display{font-size:.95rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.banner-note-empty{color:#999;font-style:italic}.banner-note-textarea{width:100%;min-height:100px;padding:10px;font-size:.95rem;font-family:inherit;border:1px solid #ccc;border-radius:4px;resize:vertical;box-sizing:border-box}.banner-note-textarea:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db33}.banner-note-modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid #e0e0e0;background:#f9f9f9;border-radius:0 0 8px 8px}.banner-note-btn{padding:8px 16px;font-size:.9rem;border-radius:4px;cursor:pointer;font-weight:500;transition:all .2s}.banner-note-btn:disabled{opacity:.6;cursor:not-allowed}.banner-note-btn-edit{background:#3498db;border:none;color:#fff}.banner-note-btn-edit:hover{background:#2980b9}.banner-note-btn-save{background:#27ae60;border:none;color:#fff}.banner-note-btn-save:hover:not(:disabled){background:#219a52}.banner-note-btn-cancel{background:#e0e0e0;border:none;color:#333}.banner-note-btn-cancel:hover:not(:disabled){background:#d0d0d0}.patient-banner-prearrival-btn{background:#6366f1;color:#fff;border:none;padding:4px 12px;border-radius:4px;cursor:pointer;font-size:.82rem;font-weight:600;white-space:nowrap;transition:background .15s;flex-shrink:0}.patient-banner-prearrival-btn:hover{background:#4f46e5}@media(max-width:1100px){.patient-banner-row{flex-wrap:wrap;gap:10px}.patient-banner-name{font-size:1.1rem}}.patient-tabs{display:flex;gap:4px;background:#f5f6fa;padding:8px 12px;border-radius:6px;margin-bottom:16px}.patient-tab-container{position:relative}.patient-tab{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;color:#333;transition:all .15s ease}.patient-tab:hover{background:#e8f4fc;border-color:#2874a6}.patient-tab-active{background:#2874a6;color:#fff;border-color:#2874a6}.patient-tab-active:hover{background:#1a5276}.patient-tab-open{background:#e8f4fc;border-color:#2874a6}.patient-tab-arrow{font-size:.65rem;opacity:.7;transition:transform .15s ease}.patient-tab-open .patient-tab-arrow{transform:rotate(180deg)}.patient-tab-dropdown{position:absolute;top:100%;left:0;margin-top:4px;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 12px #00000026;min-width:220px;z-index:100;overflow:hidden}.patient-tab-action{display:block;width:100%;padding:10px 14px;text-align:left;background:#fff;border:none;cursor:pointer;font-size:.85rem;color:#333;transition:background-color .1s ease}.patient-tab-action:hover{background:#f0f7fc}.patient-tab-action-active{background:#e8f4fc;color:#1a5276;font-weight:500}.patient-tab-action:not(:last-child){border-bottom:1px solid #eee}@media(max-width:900px){.patient-tabs{flex-wrap:wrap}.patient-tab{padding:6px 10px;font-size:.85rem}}.fax-queue-view{display:flex;flex-direction:column;height:100%;padding:20px;background:#f8fafc}.fax-queue-header{display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}.fax-queue-header h2{margin:0;color:#1e293b}.fax-queue-header p{color:#64748b;margin:0;flex:1}.fax-queue-header .refresh-btn{padding:8px 16px;background:#e2e8f0;border:none;border-radius:6px;cursor:pointer;font-size:14px;color:#475569}.fax-queue-header .refresh-btn:hover{background:#cbd5e1}.loading-state,.error-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;background:#fff;border-radius:8px;color:#64748b}.error-state{color:#dc2626}.error-state button{margin-top:16px;padding:8px 20px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer}.empty-state{color:#22c55e;font-size:18px}.send-result{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;margin-bottom:16px;border-radius:8px;font-size:14px}.send-result.success{background:#dcfce7;color:#166534;border:1px solid #86efac}.send-result.error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.send-result button{background:transparent;border:none;font-size:18px;cursor:pointer;color:inherit;padding:0 4px}.fax-queue-content{display:flex;gap:20px;flex:1;min-height:0}.queue-list-panel{flex:1;background:#fff;border-radius:8px;padding:16px;display:flex;flex-direction:column;min-width:300px;max-width:400px}.queue-list-panel h3{margin:0 0 12px;color:#1e293b;font-size:16px}.queue-entries{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.queue-entry{position:relative;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .15s}.queue-entry:hover{background:#f1f5f9;border-color:#cbd5e1}.queue-entry.selected{background:#dbeafe;border-color:#3b82f6}.entry-patient{font-weight:600;color:#1e293b;margin-bottom:4px}.entry-medication{color:#475569;font-size:14px;margin-bottom:4px}.entry-pharmacy{color:#64748b;font-size:13px}.entry-error{color:#dc2626;font-size:12px;margin-top:4px}.entry-time{color:#94a3b8;font-size:11px;margin-top:4px}.remove-btn{position:absolute;top:8px;right:8px;width:24px;height:24px;padding:0;background:#fee2e2;border:none;border-radius:4px;color:#dc2626;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center}.remove-btn:hover{background:#fecaca}.resolution-panel{flex:2;background:#fff;border-radius:8px;padding:20px;display:flex;flex-direction:column;gap:20px}.resolution-panel h3{margin:0;color:#1e293b;font-size:18px;border-bottom:1px solid #e2e8f0;padding-bottom:12px}.resolution-panel h4{margin:0 0 12px;color:#475569;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.rx-details{background:#f8fafc;padding:16px;border-radius:6px}.detail-row{display:flex;gap:12px;padding:6px 0;border-bottom:1px solid #e2e8f0}.detail-row:last-child{border-bottom:none}.detail-row label{width:100px;color:#64748b;font-size:13px;flex-shrink:0}.detail-row span{color:#1e293b;font-size:14px}.pharmacy-resolution{flex:1;display:flex;flex-direction:column;gap:16px}.pharmacy-search{display:flex;gap:8px}.pharmacy-search input{flex:1;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.pharmacy-search button{padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px}.pharmacy-search button:disabled{background:#93c5fd;cursor:not-allowed}.pharmacy-results{max-height:200px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:6px}.pharmacy-result{padding:12px;border-bottom:1px solid #e2e8f0;cursor:pointer}.pharmacy-result:last-child{border-bottom:none}.pharmacy-result:hover{background:#f1f5f9}.pharm-name{font-weight:500;color:#1e293b}.pharm-address{font-size:13px;color:#64748b}.pharm-fax{font-size:13px;color:#3b82f6;margin-top:4px}.manual-fax{display:flex;flex-direction:column;gap:6px}.manual-fax label{font-size:13px;color:#475569;font-weight:500}.manual-fax input{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.manual-fax input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.resolution-actions{display:flex;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid #e2e8f0}.send-btn{flex:1;padding:12px 24px;background:#22c55e;color:#fff;border:none;border-radius:6px;font-size:15px;font-weight:500;cursor:pointer}.send-btn:hover:not(:disabled){background:#16a34a}.send-btn:disabled{background:#86efac;cursor:not-allowed}.cancel-btn{padding:12px 24px;background:#e2e8f0;color:#475569;border:none;border-radius:6px;font-size:15px;cursor:pointer}.cancel-btn:hover{background:#cbd5e1}.inbound-fax-queue{padding:1.5rem;height:100%;display:flex;flex-direction:column}.inbound-fax-header{margin-bottom:1rem}.inbound-fax-header h2{margin:0 0 .25rem;font-size:1.5rem;color:#1a1a2e}.inbound-fax-header p{margin:0 0 .75rem;color:#666;font-size:.9rem}.header-actions{display:flex;gap:.5rem}.refresh-btn:hover:not(:disabled){background:#f5f5f5}.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.spam-log-btn{padding:.5rem 1rem;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;font-size:.875rem;transition:background-color .2s}.spam-log-btn:hover{background:#f5f5f5}.poll-result{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem;font-size:.9rem}.poll-result.success{background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.poll-result.info{background:#e3f2fd;color:#1565c0;border:1px solid #90caf9}.poll-result button{background:none;border:none;font-size:1.25rem;cursor:pointer;color:inherit;padding:0 .25rem}.loading-state,.error-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#666}.empty-state p{margin:.25rem 0}.empty-state .hint{font-size:.85rem;color:#999}.error-state{color:#c62828}.error-state button{margin-top:1rem;padding:.5rem 1rem;background:#fff;border:1px solid #c62828;border-radius:4px;color:#c62828;cursor:pointer}.inbound-fax-content{display:flex;gap:1.5rem;flex:1;min-height:0}.queue-list-panel{width:320px;flex-shrink:0;display:flex;flex-direction:column;background:#fff;border:1px solid #e0e0e0;border-radius:8px}.queue-list-panel h3{margin:0;padding:.75rem 1rem;font-size:1rem;border-bottom:1px solid #e0e0e0;background:#fafafa;border-radius:8px 8px 0 0}.queue-entries{flex:1;overflow-y:auto}.queue-entry{padding:.75rem 1rem;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background-color .15s}.queue-entry:hover{background:#f5f5f5}.queue-entry.selected{background:#e3f2fd;border-left:3px solid #2196f3}.entry-from{margin-bottom:.25rem}.entry-from .label{font-size:.75rem;color:#999;margin-right:.25rem}.entry-from .value{font-weight:500;color:#333}.entry-meta{font-size:.8rem;color:#666}.entry-meta .separator{margin:0 .5rem;color:#ccc}.preview-panel{flex:1;display:flex;flex-direction:column;background:#fff;border:1px solid #e0e0e0;border-radius:8px;min-width:0}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid #e0e0e0;background:#fafafa;border-radius:8px 8px 0 0}.preview-header h3{margin:0;font-size:1rem}.preview-actions{display:flex;gap:.5rem}.assign-btn{padding:.5rem 1rem;background:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;transition:background-color .2s}.assign-btn:hover{background:#43a047}.spam-btn{padding:.5rem .75rem;background:#fff;color:#c62828;border:1px solid #ef9a9a;border-radius:4px;cursor:pointer;font-size:.875rem;transition:all .2s}.spam-btn:hover{background:#ffebee;border-color:#c62828}.fax-details{padding:.75rem 1rem;background:#fafafa;border-bottom:1px solid #e0e0e0;display:flex;gap:1.5rem;flex-wrap:wrap}.detail-row{display:flex;align-items:center;gap:.5rem}.detail-row label{font-size:.8rem;color:#666}.detail-row span{font-size:.9rem;color:#333}.preview-frame-container{flex:1;padding:1rem;min-height:400px}.preview-frame{width:100%;height:100%;min-height:400px;border:1px solid #e0e0e0;border-radius:4px}.no-preview,.no-selection{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:300px;color:#999}.no-preview .hint,.no-selection .hint{font-size:.85rem;margin-top:.5rem}.modal-content.assign-modal{background:#fff;border-radius:8px;width:90%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #00000026}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #e0e0e0}.modal-header h3{margin:0;font-size:1.25rem}.modal-body{flex:1;padding:1.5rem;overflow-y:auto}.form-error{background:#ffebee;color:#c62828;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem;border:1px solid #ef9a9a}.assign-layout{display:flex;gap:1.5rem}.assign-form{flex:1;min-width:300px}.assign-preview{width:350px;flex-shrink:0}.assign-preview label{display:block;font-weight:500;margin-bottom:.5rem;color:#333}.preview-iframe{width:100%;height:400px;border:1px solid #e0e0e0;border-radius:4px}.no-preview-small{width:100%;height:400px;display:flex;align-items:center;justify-content:center;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:4px;color:#999}.fax-summary{background:#f5f5f5;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem}.summary-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.summary-row:last-child{margin-bottom:0}.summary-row label{font-size:.8rem;color:#666;width:50px}.summary-row span{font-size:.9rem;color:#333}.form-group{margin-bottom:1rem}.form-group label{display:block;font-weight:500;margin-bottom:.5rem;color:#333}.form-group input,.form-group select{width:100%;padding:.625rem .75rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.form-group input:focus,.form-group select:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 2px #2196f31a}.search-hint{font-size:.8rem;color:#666;margin-top:.25rem}.patient-results{border:1px solid #ddd;border-radius:4px;margin-top:.5rem;max-height:200px;overflow-y:auto}.patient-result{padding:.625rem .75rem;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background-color .15s}.patient-result:last-child{border-bottom:none}.patient-result:hover{background:#f5f5f5}.patient-name{display:block;font-weight:500;color:#333}.patient-info{display:block;font-size:.8rem;color:#666;margin-top:.125rem}.selected-patient{margin-top:.5rem;padding:.5rem .75rem;background:#e8f5e9;border:1px solid #a5d6a7;border-radius:4px;color:#2e7d32;font-size:.9rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e0e0e0}.btn-cancel{padding:.625rem 1.25rem;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.9rem}.btn-cancel:hover{background:#f5f5f5}.btn-assign{padding:.625rem 1.25rem;background:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s}.btn-assign:hover:not(:disabled){background:#43a047}.btn-assign:disabled{opacity:.6;cursor:not-allowed}.spam-confirm-modal{background:#fff;border-radius:8px;padding:1.5rem;width:90%;max-width:400px;box-shadow:0 4px 20px #00000026}.spam-confirm-modal h3{margin:0 0 1rem;font-size:1.25rem;color:#c62828}.spam-confirm-modal p{margin:0 0 .5rem;color:#333}.spam-note{font-size:.85rem;color:#666;background:#f5f5f5;padding:.5rem .75rem;border-radius:4px;margin-top:.75rem}.spam-confirm-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}.btn-delete-spam{padding:.625rem 1.25rem;background:#c62828;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s}.btn-delete-spam:hover:not(:disabled){background:#b71c1c}.btn-delete-spam:disabled{opacity:.6;cursor:not-allowed}.spam-log-modal{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #00000026}.spam-log-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #e0e0e0}.spam-log-header h3{margin:0;font-size:1.25rem}.spam-log-subtitle{margin:0;padding:.75rem 1.5rem;background:#f5f5f5;font-size:.9rem;color:#666;border-bottom:1px solid #e0e0e0}.spam-log-subtitle a{color:#1976d2;text-decoration:none}.spam-log-subtitle a:hover{text-decoration:underline}.spam-log-content{flex:1;overflow-y:auto;padding:1rem 1.5rem}.spam-log-loading,.spam-log-empty{text-align:center;padding:2rem;color:#999}.spam-log-table{width:100%;border-collapse:collapse}.spam-log-table th,.spam-log-table td{padding:.75rem;text-align:left;border-bottom:1px solid #e0e0e0}.spam-log-table th{font-weight:600;color:#333;background:#fafafa;font-size:.85rem}.spam-log-table td{font-size:.9rem;color:#333}.phone-cell{display:flex;flex-direction:column}.phone-formatted{font-weight:500}.phone-raw{font-size:.75rem;color:#999;font-family:monospace}.actions-cell{display:flex;gap:.5rem}.btn-copy{padding:.375rem .625rem;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .2s}.btn-copy:hover{background:#f5f5f5}.btn-copy.copied{background:#e8f5e9;border-color:#a5d6a7;color:#2e7d32}.btn-remove{padding:.375rem .625rem;background:#fff;border:1px solid #a5d6a7;border-radius:4px;cursor:pointer;font-size:.8rem;color:#2e7d32;transition:all .2s}.btn-remove:hover{background:#e8f5e9}@media(max-width:768px){.inbound-fax-content{flex-direction:column}.queue-list-panel{width:100%;max-height:250px}.assign-layout{flex-direction:column}.assign-preview{width:100%}.preview-iframe{height:300px}.preview-actions{flex-direction:column;gap:.25rem}.actions-cell{flex-direction:column}}.doximity-queue{height:100%;display:flex;flex-direction:column;background:#f5f5f5}.doximity-queue.loading,.doximity-queue.error{display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:#666}.doximity-queue.error{flex-direction:column;gap:1rem}.doximity-queue.error button{padding:.5rem 1rem;background:#06c;color:#fff;border:none;border-radius:4px;cursor:pointer}.doximity-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid #ddd}.doximity-header h2{margin:0;font-size:1.25rem;color:#333}.doximity-controls{display:flex;gap:.5rem;align-items:center}.filter-select{padding:.4rem .75rem;border:1px solid #ccc;border-radius:4px;font-size:.9rem;background:#fff}.refresh-btn{padding:.4rem .6rem;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer;font-size:1rem}.refresh-btn:hover{background:#f0f0f0}.doximity-content{flex:1;display:flex;overflow:hidden}.notes-list{width:350px;min-width:300px;background:#fff;border-right:1px solid #ddd;overflow-y:auto}.empty-state{padding:2rem;text-align:center;color:#999}.note-item{padding:.75rem 1rem;border-bottom:1px solid #eee;cursor:pointer;transition:background .15s}.note-item:hover{background:#f8f8f8}.note-item.selected{background:#e6f0ff;border-left:3px solid #0066cc}.note-item.pending_review{border-left:3px solid #ff9800}.note-item.reviewed{border-left:3px solid #4caf50}.note-item.archived{border-left:3px solid #999;opacity:.7}.note-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}.note-date{font-size:.8rem;color:#666}.status-badge{font-size:.7rem;padding:.15rem .4rem;border-radius:3px;text-transform:capitalize}.status-badge.pending_review{background:#fff3e0;color:#e65100}.status-badge.reviewed{background:#e8f5e9;color:#2e7d32}.status-badge.archived{background:#f5f5f5;color:#757575}.note-preview{font-size:.85rem;color:#444;line-height:1.4}.note-visit-date{font-size:.75rem;color:#888;margin-top:.25rem}.note-detail{flex:1;background:#fff;overflow-y:auto;display:flex;flex-direction:column}.no-selection{flex:1;display:flex;align-items:center;justify-content:center;color:#999;font-size:1rem}.detail-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #eee;background:#fafafa}.detail-header h3{margin:0;font-size:1.1rem}.detail-actions{display:flex;gap:.5rem;align-items:center}.status-select{padding:.35rem .5rem;border:1px solid #ccc;border-radius:4px;font-size:.85rem}.delete-btn{padding:.35rem .5rem;border:1px solid #f44336;border-radius:4px;background:#fff;cursor:pointer;color:#f44336}.delete-btn:hover{background:#ffebee}.detail-body{padding:1.5rem;flex:1}.detail-meta{background:#f9f9f9;padding:1rem;border-radius:6px;margin-bottom:1.5rem}.detail-meta p{margin:.35rem 0;font-size:.9rem}.detail-meta a{color:#06c;text-decoration:none}.detail-meta a:hover{text-decoration:underline}.detail-section{margin-bottom:1.5rem}.detail-section h4{margin:0 0 .5rem;font-size:.95rem;color:#333;padding-bottom:.25rem;border-bottom:1px solid #eee}.detail-section p{margin:0;font-size:.9rem;line-height:1.5;color:#444}.detail-section pre{margin:0;font-family:inherit;font-size:.9rem;line-height:1.5;color:#444;white-space:pre-wrap;word-wrap:break-word}.raw-content{background:#f5f5f5;padding:1rem;border-radius:4px;max-height:400px;overflow-y:auto}.scribe-queue{height:100%;display:flex;flex-direction:column;background:#f5f5f5}.scribe-queue.loading,.scribe-queue.error{display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:#666}.scribe-queue.error{flex-direction:column;gap:1rem}.scribe-queue.error button{padding:.5rem 1rem;background:#06c;color:#fff;border:none;border-radius:4px;cursor:pointer}.scribe-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid #ddd}.scribe-header h2{margin:0;font-size:1.25rem;color:#333}.scribe-controls{display:flex;gap:.5rem;align-items:center}.scribe-queue .filter-select{padding:.4rem .75rem;border:1px solid #ccc;border-radius:4px;font-size:.9rem;background:#fff}.scribe-queue .refresh-btn{padding:.4rem .6rem;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer;font-size:1rem}.scribe-queue .refresh-btn:hover{background:#f0f0f0}.scribe-content{flex:1;display:flex;overflow:hidden}.scribe-queue .notes-list{width:350px;min-width:300px;background:#fff;border-right:1px solid #ddd;overflow-y:auto}.scribe-queue .empty-state{padding:2rem;text-align:center;color:#999}.scribe-queue .note-item{padding:.75rem 1rem;border-bottom:1px solid #eee;cursor:pointer;transition:background .15s}.scribe-queue .note-item:hover{background:#f8f8f8}.scribe-queue .note-item.selected{background:#e6f0ff;border-left:3px solid #0066cc}.scribe-queue .note-item.pending_review{border-left:3px solid #ff9800}.scribe-queue .note-item.reviewed{border-left:3px solid #4caf50}.scribe-queue .note-item.archived{border-left:3px solid #999;opacity:.7}.scribe-queue .note-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}.scribe-queue .note-date{font-size:.8rem;color:#666}.scribe-queue .status-badge{font-size:.7rem;padding:.15rem .4rem;border-radius:3px;text-transform:capitalize}.scribe-queue .status-badge.pending_review{background:#fff3e0;color:#e65100}.scribe-queue .status-badge.reviewed{background:#e8f5e9;color:#2e7d32}.scribe-queue .status-badge.archived{background:#f5f5f5;color:#757575}.scribe-queue .note-preview{font-size:.85rem;color:#444;line-height:1.4;font-weight:500}.scribe-queue .note-visit-date{font-size:.75rem;color:#888;margin-top:.25rem}.scribe-queue .note-diagnoses-preview{font-size:.75rem;color:#06c;margin-top:.25rem;font-style:italic}.scribe-queue .note-detail{flex:1;background:#fff;overflow-y:auto;display:flex;flex-direction:column}.scribe-queue .no-selection{flex:1;display:flex;align-items:center;justify-content:center;color:#999;font-size:1rem}.scribe-queue .detail-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #eee;background:#fafafa}.scribe-queue .detail-header h3{margin:0;font-size:1.1rem}.scribe-queue .detail-actions{display:flex;gap:.5rem;align-items:center}.scribe-queue .status-select{padding:.35rem .5rem;border:1px solid #ccc;border-radius:4px;font-size:.85rem}.scribe-queue .delete-btn{padding:.35rem .5rem;border:1px solid #f44336;border-radius:4px;background:#fff;cursor:pointer;color:#f44336}.scribe-queue .delete-btn:hover{background:#ffebee}.scribe-queue .detail-body{padding:1.5rem;flex:1}.scribe-queue .detail-meta{background:#f9f9f9;padding:1rem;border-radius:6px;margin-bottom:1.5rem}.scribe-queue .detail-meta p{margin:.35rem 0;font-size:.9rem}.scribe-queue .detail-meta a{color:#06c;text-decoration:none}.scribe-queue .detail-meta a:hover{text-decoration:underline}.scribe-queue .detail-section{margin-bottom:1.5rem}.scribe-queue .detail-section h4{margin:0 0 .5rem;font-size:.95rem;color:#333;padding-bottom:.25rem;border-bottom:1px solid #eee}.scribe-queue .detail-section p{margin:0;font-size:.9rem;line-height:1.5;color:#444}.scribe-queue .detail-section pre{margin:0;font-family:inherit;font-size:.9rem;line-height:1.5;color:#444;white-space:pre-wrap;word-wrap:break-word}.scribe-queue .diagnoses-section{background:#f8fafc;padding:1rem;border-radius:6px;border:1px solid #e2e8f0}.scribe-queue .diagnosis-item{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}.scribe-queue .diagnosis-item:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.scribe-queue .diagnosis-header{display:flex;gap:.5rem;margin-bottom:.5rem}.scribe-queue .diagnosis-number{font-weight:600;color:#06c}.scribe-queue .diagnosis-name{font-weight:600;color:#1a202c;text-transform:uppercase;font-size:.9rem}.scribe-queue .diagnosis-plan{margin-left:1.25rem;padding-left:.75rem;border-left:2px solid #cbd5e0}.scribe-queue .diagnosis-plan pre{margin:0;font-family:inherit;font-size:.85rem;line-height:1.5;color:#4a5568;white-space:pre-wrap;word-wrap:break-word}.scribe-queue .raw-section{margin-top:1.5rem}.scribe-queue .raw-section summary{cursor:pointer;padding:.5rem;background:#f5f5f5;border-radius:4px;font-size:.9rem;color:#666}.scribe-queue .raw-section summary:hover{background:#eee}.scribe-queue .raw-content{background:#f5f5f5;padding:1rem;border-radius:4px;max-height:400px;overflow-y:auto;margin-top:.5rem;font-size:.8rem;color:#666}.franks-queue{padding:1.5rem;height:100%;display:flex;flex-direction:column}.franks-header{margin-bottom:1rem}.franks-header h2{margin:0 0 .75rem;font-size:1.5rem;color:#1a1a2e}.franks-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem}.franks-stats{display:flex;gap:1rem;align-items:center}.franks-stats .stat{font-size:.9rem;color:#666}.franks-stats .stat strong{color:#333}.skipped-stat{display:flex;align-items:center;gap:.25rem}.clear-skips-btn{background:none;border:1px solid #ccc;border-radius:3px;cursor:pointer;font-size:.7rem;color:#999;padding:0 .3rem;line-height:1.2;margin-left:.25rem}.clear-skips-btn:hover{background:#f5f5f5;color:#666}.franks-actions{display:flex;gap:.5rem;align-items:center}.type-filter{padding:.5rem .75rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem;background:#fff;cursor:pointer}.type-filter:focus{outline:none;border-color:#2196f3}.run-all-btn{padding:.5rem 1rem;background:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;transition:background-color .2s}.run-all-btn:hover:not(:disabled){background:#43a047}.run-all-btn:disabled{opacity:.6;cursor:not-allowed}.refresh-btn{padding:.5rem 1rem;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;font-size:.875rem;transition:background-color .2s}.refresh-btn:hover{background:#f5f5f5}.franks-status{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem;font-size:.9rem}.franks-status.success{background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.franks-status.info{background:#e3f2fd;color:#1565c0;border:1px solid #90caf9}.franks-status.error{background:#ffebee;color:#c62828;border:1px solid #ef9a9a}.franks-status button{background:none;border:none;font-size:1.25rem;cursor:pointer;color:inherit;padding:0 .25rem}.franks-loading,.franks-error,.franks-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#666}.franks-empty p{margin:.25rem 0}.franks-empty .hint{font-size:.85rem;color:#999}.franks-error{color:#c62828}.franks-error button{margin-top:1rem;padding:.5rem 1rem;background:#fff;border:1px solid #c62828;border-radius:4px;color:#c62828;cursor:pointer}.franks-patient-list{flex:1;overflow-y:auto}.franks-patient-group{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:.75rem}.patient-group-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#fafafa;border-bottom:1px solid #e0e0e0;border-radius:8px 8px 0 0}.patient-label{font-weight:600;color:#333;flex:1}.patient-item-count{font-size:.8rem;color:#999}.run-patient-btn{padding:.375rem .75rem;background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7;border-radius:4px;cursor:pointer;font-size:.8rem;transition:background-color .2s}.run-patient-btn:hover:not(:disabled){background:#c8e6c9}.run-patient-btn:disabled{opacity:.6;cursor:not-allowed}.patient-items{padding:0}.franks-item{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;border-bottom:1px solid #f0f0f0;font-size:.9rem}.franks-item:last-child{border-bottom:none}.franks-item.conflict{background:#fff8e1}.item-icon{flex-shrink:0;width:1.25rem;text-align:center}.item-type{flex:1;color:#333}.item-date{color:#666;font-size:.85rem;width:100px}.item-actions{flex-shrink:0;min-width:100px;text-align:right;display:flex;gap:.375rem;align-items:center;justify-content:flex-end}.generate-btn{padding:.375rem .75rem;background:#2196f3;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.8rem;transition:background-color .2s}.generate-btn:hover:not(:disabled){background:#1976d2}.generate-btn:disabled{opacity:.6;cursor:not-allowed}.conflict-badge{display:inline-block;padding:.25rem .5rem;background:#fff3e0;color:#e65100;border:1px solid #ffcc80;border-radius:4px;font-size:.75rem;font-weight:500}.skip-btn{padding:.25rem .5rem;background:#fff;color:#999;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.75rem;transition:all .2s}.skip-btn:hover{background:#f5f5f5;color:#666}.skip-badge{display:inline-block;padding:.25rem .5rem;background:#f5f5f5;color:#999;border:1px solid #e0e0e0;border-radius:4px;font-size:.75rem}@media(max-width:768px){.franks-toolbar{flex-direction:column;align-items:flex-start}.franks-actions{flex-wrap:wrap}.item-date{display:none}}.franks-log-stats{display:flex;gap:16px;font-size:12px;color:#666;padding:4px 0}.scan-mode-toggle{display:flex;border:1px solid #ccc;border-radius:4px;overflow:hidden}.scan-mode-btn{padding:4px 10px;border:none;background:#f5f5f5;cursor:pointer;font-size:12px;color:#555}.scan-mode-btn.active{background:#4a90d9;color:#fff}.scan-mode-btn:hover:not(.active){background:#e0e0e0}.date-picker-modal{background:#fff;border-radius:8px;padding:20px;width:320px;max-width:90vw;box-shadow:0 4px 20px #0000004d}.date-picker-modal h3{margin:0 0 10px;color:#1a365d;font-size:1.1rem}.picker-patient{margin:0 0 5px;font-weight:600;color:#2d3748}.picker-original{margin:0 0 15px;font-size:.85rem;color:#718096}.calendar-container{border:1px solid #e2e8f0;border-radius:6px;padding:10px;margin-bottom:15px}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.calendar-header .nav-btn{background:#f7fafc;border:1px solid #e2e8f0;border-radius:4px;padding:5px 12px;cursor:pointer;font-size:1rem;color:#4a5568;transition:all .2s}.calendar-header .nav-btn:hover{background:#edf2f7;border-color:#cbd5e0}.month-year{font-weight:600;color:#2d3748}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:5px}.weekday{text-align:center;font-size:.75rem;font-weight:600;color:#718096;padding:5px 0}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-day{text-align:center;padding:8px 0;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .15s}.calendar-day:not(.empty):not(.past):hover{background:#ebf8ff;color:#2b6cb0}.calendar-day.empty{cursor:default}.calendar-day.today{background:#3182ce;color:#fff;font-weight:600}.calendar-day.today:hover{background:#2b6cb0;color:#fff}.calendar-day.past{color:#cbd5e0;cursor:not-allowed}.calendar-day.past:hover{background:transparent;color:#cbd5e0}.day-view-modal{background:#fff;border-radius:8px;padding:20px;width:400px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #0000004d}.day-view-modal h3{margin:0 0 10px;color:#1a365d;font-size:1.1rem}.picker-date{margin:0 0 15px;font-size:.95rem;color:#4a5568;font-weight:500}.slots-container{flex:1;overflow-y:auto;border:1px solid #e2e8f0;border-radius:6px;margin-bottom:15px;max-height:400px}.loading-slots{padding:30px;text-align:center;color:#718096}.slots-list{display:flex;flex-direction:column}.time-slot{display:flex;align-items:center;padding:10px 15px;border-bottom:1px solid #e2e8f0;cursor:pointer;transition:all .15s}.time-slot:last-child{border-bottom:none}.time-slot:not(.occupied):not(.past):hover{background:#ebf8ff}.time-slot.occupied{background:#fed7d7;cursor:not-allowed}.time-slot.past{background:#f7fafc;cursor:not-allowed;opacity:.6}.slot-time{width:80px;font-weight:600;color:#2d3748;font-size:.9rem}.slot-appointment{flex:1;color:#c53030;font-size:.85rem;font-weight:500}.slot-available{flex:1;color:#38a169;font-size:.85rem}.time-slot.past .slot-time,.time-slot.past .slot-available{color:#a0aec0}.day-view-buttons{display:flex;gap:10px}.back-btn{flex:1;padding:10px;background:#edf2f7;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:.9rem;color:#4a5568;transition:all .2s}.back-btn:hover{background:#e2e8f0}.day-view-buttons .modal-close{flex:1}.appt-confirmation-view{padding:1.5rem;max-width:900px;margin:0 auto}.appt-confirmation-header{margin-bottom:1.5rem}.appt-confirmation-header h2{margin:0 0 .5rem;color:#1e3a5f}.appt-confirmation-header p{margin:0 0 1rem;color:#666}.header-controls{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.days-selector{display:flex;align-items:center;gap:.25rem;font-size:.9rem;color:#555}.days-input{width:50px;padding:.3rem .5rem;border:1px solid #ccc;border-radius:4px;font-size:.9rem;text-align:center}.refresh-btn{padding:.5rem 1rem;background:#f0f0f0;border:1px solid #ddd;border-radius:4px;cursor:pointer}.refresh-btn:hover{background:#e0e0e0}.tab-bar{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid #e0e0e0;padding-bottom:.5rem;flex-wrap:wrap}.tab-btn{padding:.5rem 1rem;background:none;border:none;border-radius:4px 4px 0 0;cursor:pointer;font-size:.9rem;color:#666;transition:all .2s}.tab-btn:hover{background:#f5f5f5;color:#333}.tab-btn.active{background:#1e3a5f;color:#fff}.action-result{padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.action-result.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.action-result.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.action-result button{background:none;border:none;font-size:1.2rem;cursor:pointer;opacity:.7}.action-result button:hover{opacity:1}.empty-state{text-align:center;padding:3rem;color:#666;background:#f9f9f9;border-radius:8px}.loading-state,.error-state{text-align:center;padding:3rem}.error-state button{margin-top:1rem;padding:.5rem 1.5rem;background:#1e3a5f;color:#fff;border:none;border-radius:4px;cursor:pointer}.appt-list{display:flex;flex-direction:column;gap:1rem}.appt-card{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 1px 3px #0000000d}.appt-card:hover{border-color:#1e3a5f}.appt-info{flex:1}.appt-patient{font-weight:600;font-size:1.1rem;color:#1e3a5f;margin-bottom:.25rem}.appt-id,.appt-status{font-size:.85rem;color:#666}.appt-time{font-size:.95rem;color:#333;margin:.25rem 0}.appt-phone{font-size:.95rem;color:#333;font-weight:500}.appt-complaint{font-size:.9rem;color:#555;margin:.25rem 0}.appt-confirmed-info{font-size:.85rem;color:#666}.confirmation-method{margin-right:.5rem}.confirmed-at{color:#888}.confirmed-by{color:#666;font-style:italic}.callback-card{border-left:4px solid #f59e0b}.callback-attempts{font-size:.8rem;color:#888;margin-top:.25rem;font-style:italic}.appt-actions{display:flex;gap:.5rem;flex-wrap:wrap}.action-btn{padding:.4rem .75rem;border:none;border-radius:4px;cursor:pointer;font-size:.85rem;transition:all .2s}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-btn.confirm{background:#28a745;color:#fff}.action-btn.confirm:hover:not(:disabled){background:#218838}.action-btn.reschedule{background:#ffc107;color:#333}.action-btn.reschedule:hover:not(:disabled){background:#e0a800}.action-btn.cancel,.action-btn.unable{background:#dc3545;color:#fff}.action-btn.cancel:hover:not(:disabled),.action-btn.unable:hover:not(:disabled){background:#c82333}.action-btn.call{background:#17a2b8;color:#fff;font-size:.95rem;padding:.5rem 1rem}.action-btn.call:hover:not(:disabled){background:#138496}.action-btn.prearrival{background:#6366f1;color:#fff;font-size:.95rem;padding:.5rem 1rem}.action-btn.prearrival:hover:not(:disabled){background:#4f46e5}.confirmed-badge{color:#28a745;font-weight:500}.callback-modal{background:#fff;padding:1.5rem;border-radius:8px;width:90%;max-width:400px;box-shadow:0 4px 20px #00000026;max-height:90vh;overflow-y:auto}.callback-modal h3{margin:0 0 .5rem;color:#1e3a5f}.modal-phone{font-size:1.1rem;font-weight:500;color:#333;margin:0 0 .25rem}.modal-appt-time{font-size:.95rem;color:#555;margin:0 0 1rem}.modal-complaint{font-size:.9rem;color:#666;margin:0 0 1.5rem}.modal-section{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #eee}.modal-section:last-of-type{border-bottom:none}.modal-label{font-size:.85rem;color:#666;margin:0 0 .5rem}.initials-section{display:flex;align-items:center;gap:.75rem}.initials-section .modal-label{margin:0}.initials-input{width:60px;padding:.5rem;border:2px solid #1e3a5f;border-radius:4px;font-size:1rem;font-weight:600;text-align:center;text-transform:uppercase}.initials-input:focus{outline:none;border-color:#17a2b8}.modal-btn-row{display:flex;gap:.5rem}.modal-btn{flex:1;padding:.6rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s}.modal-btn:disabled{opacity:.5;cursor:not-allowed}.modal-btn.continue{background:#28a745;color:#fff;width:100%}.modal-btn.continue:hover:not(:disabled){background:#218838}.modal-btn.lvm{background:#6c757d;color:#fff}.modal-btn.lvm:hover:not(:disabled){background:#5a6268}.modal-btn.na{background:#f59e0b;color:#fff}.modal-btn.na:hover:not(:disabled){background:#d97706}.modal-btn.sms{background:#6366f1;color:#fff;width:100%}.modal-btn.sms:hover:not(:disabled){background:#4f46e5}.modal-btn.reschedule-later{background:#ffc107;color:#333}.modal-btn.reschedule-later:hover:not(:disabled){background:#e0a800}.modal-btn.reschedule-now{background:#17a2b8;color:#fff}.modal-btn.reschedule-now:hover:not(:disabled){background:#138496}.modal-btn.remove{background:#dc3545;color:#fff;width:100%}.modal-btn.remove:hover:not(:disabled){background:#c82333}.modal-close{width:100%;margin-top:1rem;padding:.6rem;background:#f0f0f0;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.9rem}.modal-close:hover{background:#e0e0e0}.confirm-modal{max-width:450px}.prearrival-queue{padding:24px;max-width:800px}.prearrival-queue-header{margin-bottom:24px}.prearrival-queue-header h2{font-size:1.4rem;font-weight:600;color:#1e293b;margin:0 0 4px}.prearrival-queue-header p{color:#64748b;font-size:.9rem;margin:0 0 12px}.btn-refresh{background:#e2e8f0;border:none;padding:6px 14px;border-radius:4px;cursor:pointer;font-size:.85rem;color:#475569;transition:background .15s}.btn-refresh:hover{background:#cbd5e1}.prearrival-loading,.prearrival-empty{color:#94a3b8;font-size:.95rem;padding:32px 0;text-align:center}.prearrival-error{color:#dc2626;font-size:.9rem;padding:16px;background:#fef2f2;border-radius:6px;border:1px solid #fecaca}.prearrival-list{display:flex;flex-direction:column;gap:10px}.prearrival-row{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #e2e8f0;border-left:4px solid #6366f1;border-radius:6px;padding:14px 16px;box-shadow:0 1px 3px #0000000d}.prearrival-patient-name{font-size:1rem;font-weight:600;color:#1e293b;margin-bottom:4px}.prearrival-patient-meta{font-size:.82rem;color:#64748b}.prearrival-row-actions{display:flex;gap:8px;align-items:center}.prearrival-review-btn{background:#6366f1;color:#fff;border:none;padding:8px 18px;border-radius:5px;cursor:pointer;font-size:.9rem;font-weight:500;white-space:nowrap;transition:background .15s}.prearrival-review-btn:hover{background:#4f46e5}.prearrival-dismiss-btn{background:#fff;color:#64748b;border:1px solid #cbd5e1;padding:8px 14px;border-radius:5px;cursor:pointer;font-size:.85rem;white-space:nowrap;transition:background .15s,color .15s}.prearrival-dismiss-btn:hover:not(:disabled){background:#fef2f2;color:#dc2626;border-color:#fecaca}.modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e9ecef}.modal-header h2{color:#fff;margin:0;font-size:1.25rem}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:0;line-height:1}.modal-body{padding:1.25rem}.card-agreement-modal{max-width:480px;width:90%}.card-agreement-form{display:flex;flex-direction:column;gap:1.5rem}.loading-state{text-align:center;padding:2rem;color:#666;font-style:italic}.cards-summary{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.current-card-summary{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f0f7ff;border:1px solid #b3d4fc;border-radius:6px;font-size:.9rem}.card-brand-small{background:#333;color:#fff;padding:.15rem .4rem;border-radius:3px;font-size:.7rem;font-weight:600}.card-type-badge{background:#6c757d;color:#fff;padding:.15rem .4rem;border-radius:3px;font-size:.65rem;font-weight:600;text-transform:uppercase}.card-type-badge.primary{background:#06c}.card-type-badge.backup{background:#6c757d}.card-type-badge.hsa{background:#28a745}.status-badge{padding:.15rem .5rem;border-radius:3px;font-size:.7rem;font-weight:600;text-transform:uppercase}.status-badge.active{background:#d4edda;color:#155724}.remaining-small{margin-left:auto;color:#28a745;font-weight:500}.mode-selection{text-align:center}.mode-instruction{margin:0 0 1rem;color:#555;font-size:.95rem}.mode-buttons{display:flex;gap:1rem;justify-content:center}.mode-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem 1.5rem;border:2px solid #e0e0e0;border-radius:12px;background:#fff;cursor:pointer;transition:all .2s ease;min-width:120px}.mode-btn:hover{border-color:#06c;background:#f8fbff}.mode-icon{font-size:1.75rem}.mode-label{font-weight:600;font-size:1rem;color:#333}.mode-desc{font-size:.75rem;color:#666}.mode-btn.mode-terminal:hover{border-color:#28a745;background:#f6fff8}.mode-btn.mode-manual:hover{border-color:#06c;background:#f8fbff}.mode-btn.mode-manage:hover{border-color:#6c757d;background:#fafafa}.capture-section{display:flex;flex-direction:column;gap:1rem}.capture-section h3{margin:0;font-size:1.1rem;color:#333}.back-btn{align-self:flex-start;background:none;border:none;color:#06c;cursor:pointer;font-size:.9rem;padding:0;margin-bottom:.5rem}.back-btn:hover{text-decoration:underline}.terminal-capture-form{display:flex;flex-direction:column;gap:1.5rem}.terminal-waiting{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem 0}.terminal-icon{font-size:2.5rem;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.7}}.terminal-waiting p{margin:0;font-weight:500;color:#1565c0}.manage-card-section{display:flex;flex-direction:column;gap:1.5rem}.card-list{display:flex;flex-direction:column;gap:.5rem}.card-list-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;transition:all .15s ease}.card-list-item:hover{border-color:#06c;background:#f8fbff}.card-list-item.selected{border-color:#06c;background:#e8f4ff}.card-list-header{display:flex;align-items:center;gap:.5rem;flex:1}.card-list-details{font-family:Courier New,monospace;font-size:.9rem}.card-list-balance{text-align:right;font-size:.85rem}.card-list-balance .remaining{font-weight:600;color:#28a745}.card-list-balance .remaining.low{color:#dc3545}.no-cards-message{text-align:center;padding:2rem;color:#666;font-style:italic}.selected-card-details{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:1rem;margin-top:1rem}.existing-card-info{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:1rem}.card-display{display:flex;align-items:center;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid #dee2e6;margin-bottom:.75rem}.card-brand{background:#333;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.card-number{font-family:Courier New,monospace;font-size:.95rem;letter-spacing:1px}.card-exp{color:#666;font-size:.85rem;margin-left:auto}.agreement-details{display:flex;flex-direction:column;gap:.5rem}.detail-row{display:flex;justify-content:space-between;font-size:.9rem}.detail-label{color:#666}.detail-value{font-weight:500}.detail-remaining{color:#28a745;font-weight:600}.detail-value.status-active{color:#28a745}.detail-value.status-cancelled{color:#dc3545}.detail-value.status-expired{color:#856404}.detail-value.status-exhausted,.detail-value.status-invalid_card{color:#dc3545}.replace-hint{margin-top:1rem;font-size:.85rem;color:#666;font-style:italic}.form-section{display:flex;flex-direction:column;gap:.5rem}.form-label{font-weight:500;font-size:.9rem;color:#333}.form-hint{font-size:.8rem;color:#666;margin:0}.form-warning{font-size:.8rem;color:#856404;background:#fff3cd;border:1px solid #ffc107;border-radius:4px;padding:.5rem .75rem;margin:.25rem 0 0}.card-type-select{padding:.5rem .75rem;border:1px solid #ced4da;border-radius:6px;font-size:.95rem;background:#fff;cursor:pointer}.card-type-select:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.card-type-select:disabled{background:#e9ecef;cursor:not-allowed}.card-element-wrapper{border:1px solid #ced4da;border-radius:6px;padding:.75rem;background:#fff;transition:border-color .15s ease}.card-element-wrapper:focus-within{border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.limit-input-wrapper{display:flex;align-items:center;gap:.5rem}.limit-currency{font-size:1.1rem;color:#666}.limit-input{flex:0 0 120px;padding:.5rem .75rem;border:1px solid #ced4da;border-radius:6px;font-size:1rem;text-align:right}.limit-input:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.form-error{background:#fff0f0;border:1px solid #ffcdd2;color:#c62828;padding:.75rem;border-radius:6px;font-size:.9rem}.form-status{background:#e3f2fd;border:1px solid #bbdefb;color:#1565c0;padding:.75rem;border-radius:6px;font-size:.9rem;text-align:center}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem;border-top:1px solid #e9ecef}.btn-primary,.btn-secondary,.btn-danger{padding:.625rem 1.25rem;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-primary{background:#06c;color:#fff;border:none}.btn-primary:hover:not(:disabled){background:#0052a3}.btn-primary:disabled{background:#99c2e6;cursor:not-allowed}.btn-secondary{background:#fff;color:#666;border:1px solid #ced4da}.btn-secondary:hover:not(:disabled){background:#f8f9fa;color:#333}.btn-danger{background:#dc3545;color:#fff;border:none}.btn-danger:hover:not(:disabled){background:#c82333}.btn-danger:disabled{background:#e4606d;cursor:not-allowed}.quickview-card-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px}.quickview-card-info{display:flex;align-items:center;gap:.75rem}.quickview-card-brand{background:#333;color:#fff;padding:.2rem .4rem;border-radius:3px;font-size:.7rem;font-weight:600;text-transform:uppercase}.quickview-card-number{font-family:Courier New,monospace;font-size:.9rem}.quickview-card-exp{color:#666;font-size:.8rem}.quickview-card-balance{text-align:right}.quickview-card-remaining{font-weight:600;color:#28a745}.quickview-card-remaining.low-balance{color:#dc3545}.quickview-card-limit{font-size:.75rem;color:#666}.quickview-card-status{font-size:.75rem;padding:.15rem .4rem;border-radius:3px;text-transform:uppercase}.quickview-card-status.active{background:#d4edda;color:#155724}.quickview-card-status.expired{background:#fff3cd;color:#856404}.quickview-card-status.cancelled{background:#f8d7da;color:#721c24}.new-patient-intake{max-width:800px;margin:0 auto;padding:20px}.intake-header{margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e5e7eb}.intake-header h2{color:#1f2937;margin-bottom:4px}.intake-header p{color:#6b7280;font-size:14px}.intake-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;margin-bottom:16px}.intake-section h3{color:#374151;font-size:16px;margin-bottom:16px;display:flex;align-items:center;gap:8px}.caller-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media(max-width:600px){.caller-grid{grid-template-columns:1fr}}.qual-field{padding:16px;border:2px solid #e5e7eb;border-radius:8px;margin-bottom:12px;transition:all .2s ease}.qual-field-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.qual-field-header label{font-weight:600;color:#374151;font-size:14px}.qual-field.field-filled{border-color:#2563eb;background:#eff6ff}.qual-field.field-filled .qual-field-header label:after{content:" ✓";color:#2563eb}.qual-field.field-skipped{border-color:#f97316;background:#fff7ed}.qual-field.field-skipped .qual-field-header label:after{content:" (skipped)";color:#f97316;font-weight:400;font-size:12px}.btn-skip{padding:4px 12px;background:#fff;color:#6b7280;border:1px solid #d1d5db;border-radius:4px;font-size:12px;cursor:pointer;transition:all .15s ease}.btn-skip:hover{background:#f97316;color:#fff;border-color:#f97316}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.checkbox-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;cursor:pointer;font-size:13px;transition:all .15s ease}.checkbox-item:hover{background:#f3f4f6}.checkbox-item input[type=checkbox]{width:16px;height:16px;cursor:pointer}.checkbox-item input[type=checkbox]:checked+span{color:#2563eb;font-weight:500}.radio-group{display:flex;gap:20px;flex-wrap:wrap}.radio-item{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px}.radio-item input[type=radio]{width:16px;height:16px;cursor:pointer}.other-input{margin-top:10px;width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:4px;font-size:14px}.minor-flag{display:inline-block;margin-left:12px;color:#d97706;font-size:13px;font-weight:500}.pricing-check{background:transparent;border:none;padding:0}.medicare-note{display:block;margin-top:8px;color:#d97706;font-size:13px;font-weight:500}.decision-buttons{display:flex;gap:16px;flex-wrap:wrap}.btn-accept,.btn-reject{padding:14px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease;border:2px solid}.btn-accept{background:#ecfdf5;color:#059669;border-color:#059669}.btn-accept:hover:not(:disabled){background:#059669;color:#fff}.btn-accept:disabled{opacity:.4;cursor:not-allowed}.btn-reject{background:#fef2f2;color:#dc2626;border-color:#dc2626}.btn-reject:hover{background:#dc2626;color:#fff}.btn-reject:hover .btn-review,.btn-reject:hover .btn-review .btn-review{background:#f59e0b;color:#fff}.btn-reject:hover .btn-review .btn-review:hover{background:#d97706}.btn-reject:hover .btn-review{background:#f59e0b;color:#fff}.btn-reject:hover .btn-review:hover{background:#d97706}.btn-review{background:#f59e0b;color:#fff}.btn-review:hover{background:#d97706}.decision-hint{margin-top:12px;color:#9ca3af;font-size:13px;font-style:italic}.reject-section-full{background:#fef2f2;border-color:#fecaca}.reject-form{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.reject-form select,.reject-form textarea{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff}.reject-form textarea{resize:vertical}.logged-message{color:#059669;font-size:13px;font-weight:500;margin-bottom:12px}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:13px;font-weight:500;color:#374151}.form-group input,.form-group select,.qual-field select{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.form-group input:focus,.form-group select:focus,.qual-field select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.comm-prefs{display:flex;gap:24px;flex-wrap:wrap}.pref-item{display:flex;align-items:center;gap:8px;cursor:pointer}.pref-item input[type=checkbox]{width:18px;height:18px}.medicare-toggle{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fffbeb;border:1px solid #fcd34d;border-radius:6px;cursor:pointer}.medicare-toggle input[type=checkbox]{width:18px;height:18px}.error-message{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px 16px;border-radius:6px;margin-bottom:16px}.intake-actions{display:flex;gap:12px;margin-top:8px}.btn-primary{padding:12px 24px;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s ease}.btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary{padding:12px 24px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-secondary:hover{background:#f3f4f6}.success-section{background:#ecfdf5;border-color:#059669}.created-patient-info{background:#fff;padding:16px;border-radius:6px;margin-bottom:20px}.created-patient-info p{margin:6px 0;color:#374151}.medicare-flag{color:#d97706!important;font-weight:500;margin-top:12px!important}.next-steps{margin-bottom:20px}.next-steps h4{color:#374151;margin-bottom:12px}.step-buttons{display:flex;gap:12px;flex-wrap:wrap}.btn-step{padding:14px 20px;background:#fff;color:#2563eb;border:2px solid #2563eb;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-step:hover:not(:disabled){background:#2563eb;color:#fff}.btn-step.completed{background:#059669;border-color:#059669;color:#fff;cursor:default}.btn-step:disabled:not(.completed){opacity:.5;cursor:not-allowed}.merge-review-modal{background:#fff;border-radius:8px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.merge-modal-header{padding:1rem 1.5rem;border-bottom:1px solid #e2e8f0;text-align:center}.merge-modal-header h3{margin:0 0 .25rem;color:#1a365d;font-size:1.25rem}.merge-modal-header .patient-name{margin:0 0 .5rem;font-weight:600;color:#2d3748}.modal-hint{margin:0;font-size:.875rem;color:#718096;font-style:italic}.merge-column-headers{display:grid;grid-template-columns:1fr 140px 1fr;gap:.5rem;padding:.75rem 1rem;background:#f7fafc;border-bottom:2px solid #e2e8f0}.col-header{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#4a5568}.col-header.col-checkin{text-align:left;color:#2b6cb0}.col-header.col-action{text-align:center}.col-header.col-existing{text-align:right;color:#38a169}.merge-fields-container{flex:1;overflow-y:auto;padding:.5rem}.merge-section{margin-bottom:1rem}.section-header{font-size:.875rem;font-weight:700;color:#1a365d;padding:.5rem .75rem;background:#edf2f7;border-radius:4px;margin-bottom:.5rem}.merge-row{border:1px solid #e2e8f0;border-radius:6px;margin-bottom:.5rem;overflow:hidden}.merge-row.update{border-color:#90cdf4;background:#ebf8ff}.merge-row.clear{border-color:#feb2b2;background:#fff5f5}.field-label-row{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#f7fafc;border-bottom:1px solid #e2e8f0}.field-label{font-weight:600;font-size:.875rem;color:#2d3748}.same-badge{font-size:.625rem;text-transform:uppercase;padding:.125rem .375rem;background:#c6f6d5;color:#276749;border-radius:3px}.merge-columns{display:grid;grid-template-columns:1fr 140px 1fr;gap:.5rem;padding:.75rem;align-items:center}.col-value{padding:.5rem .75rem;border-radius:4px;font-size:.875rem;word-break:break-word;min-height:36px;display:flex;align-items:center}.col-value.col-checkin{background:#ebf8ff;border:2px solid transparent;justify-content:flex-start}.col-value.col-existing{background:#f0fff4;border:2px solid transparent;justify-content:flex-end;text-align:right}.col-value.selected{border-color:#3182ce;font-weight:600}.col-value.col-checkin.selected{border-color:#3182ce;background:#bee3f8}.col-value.col-existing.selected{border-color:#38a169;background:#c6f6d5}.empty-value{color:#a0aec0;font-style:italic}.col-actions{display:flex;flex-direction:column;gap:.25rem}.btn-action{padding:.375rem .5rem;font-size:.75rem;font-weight:500;border:1px solid #cbd5e0;border-radius:4px;cursor:pointer;transition:all .15s;background:#fff;color:#4a5568}.btn-action:hover:not(:disabled){background:#edf2f7}.btn-action:disabled{opacity:.4;cursor:not-allowed}.btn-action.active{font-weight:700}.btn-use-left.active{background:#3182ce;border-color:#3182ce;color:#fff}.btn-skip.active{background:#38a169;border-color:#38a169;color:#fff}.btn-clear.active{background:#e53e3e;border-color:#e53e3e;color:#fff}.merge-modal-footer{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;background:#f7fafc}.merge-modal-footer .modal-hint{text-align:center;margin-bottom:.75rem}.footer-buttons{display:flex;gap:.75rem;justify-content:center}.btn-primary{padding:.75rem 2rem;background:#38a169;color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-primary:hover:not(:disabled){background:#2f855a}.btn-primary:disabled{background:#a0aec0;cursor:not-allowed}.btn-discard{padding:.75rem 1.5rem;background:#fff;color:#718096;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .15s}.btn-discard:hover:not(:disabled){background:#fff5f5;border-color:#fc8181;color:#c53030}.merge-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#4a5568}.merge-loading .spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#3182ce;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.merge-no-data{text-align:center;padding:2rem}.merge-no-data .success-icon{font-size:3rem;color:#38a169;margin-bottom:.5rem}.merge-no-data p{margin:0;color:#2d3748}.merge-error{text-align:center;padding:2rem;background:#fff5f5;color:#c53030}.merge-error button{margin:.5rem}.btn-secondary{padding:.5rem 1rem;background:#edf2f7;border:1px solid #cbd5e0;border-radius:4px;cursor:pointer}.btn-link{background:none;border:none;color:#3182ce;text-decoration:underline;cursor:pointer}@media(max-width:600px){.merge-column-headers{display:none}.merge-columns{grid-template-columns:1fr;gap:.5rem}.col-value{justify-content:flex-start!important;text-align:left!important}.col-value.col-checkin:before{content:"Check-In: ";font-weight:600;color:#2b6cb0}.col-value.col-existing:before{content:"Existing: ";font-weight:600;color:#38a169}.col-actions{flex-direction:row;justify-content:center}}.patient-checkin-workflow{padding:1.5rem;max-width:1200px}.patient-checkin-workflow .workflow-header{margin-bottom:1.5rem}.patient-checkin-workflow .workflow-header h2{margin:0 0 .5rem;color:#1a365d}.patient-checkin-workflow .workflow-header p{margin:0;color:#666}.checkin-error{background:#fee2e2;border:1px solid #ef4444;color:#b91c1c;padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem}.checkin-content{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.checkin-selection{display:flex;flex-direction:column;gap:1.5rem}.checkin-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1rem}.checkin-section h3{margin:0 0 1rem;font-size:1rem;color:#1a365d;border-bottom:1px solid #e2e8f0;padding-bottom:.5rem}.appointment-list{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto}.appointment-item{display:grid;grid-template-columns:80px 1fr auto;gap:.75rem;align-items:center;padding:.75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;text-align:left;transition:all .15s ease}.appointment-item:hover:not(:disabled){background:#e0f2fe;border-color:#0ea5e9}.appointment-item.selected{background:#0ea5e9;border-color:#0284c7;color:#fff}.appointment-item:disabled{opacity:.5;cursor:not-allowed}.apt-time{font-weight:600;font-size:.9rem}.apt-name{font-weight:500}.apt-type{font-size:.8rem;opacity:.8}.no-appointments,.loading{color:#666;font-style:italic;padding:1rem;text-align:center}.search-row{display:flex;gap:.5rem}.search-input{flex:1;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem}.search-input:focus{outline:none;border-color:#0ea5e9;box-shadow:0 0 0 2px #0ea5e933}.search-input:disabled{background:#f3f4f6}.btn-search{padding:.5rem 1rem;background:#0ea5e9;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500}.btn-search:hover:not(:disabled){background:#0284c7}.btn-search:disabled{background:#94a3b8;cursor:not-allowed}.search-results{margin-top:.75rem;display:flex;flex-direction:column;gap:.25rem;max-height:200px;overflow-y:auto}.search-result-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;cursor:pointer;text-align:left}.search-result-item:hover{background:#e0f2fe;border-color:#0ea5e9}.patient-id{font-size:.8rem;color:#64748b}.checkin-workflow-panel{background:#fff;border:1px solid #e2e8f0;border-radius:8px;min-height:500px}.workflow-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:500px;color:#94a3b8;text-align:center}.placeholder-icon{font-size:4rem;margin-bottom:1rem}.workflow-panel{display:flex;flex-direction:column;height:100%;padding:1.5rem}.patient-header{border-bottom:1px solid #e2e8f0;padding-bottom:1rem;margin-bottom:1rem}.patient-name-large{font-size:1.5rem;font-weight:600;color:#1a365d}.patient-details{display:flex;gap:1rem;margin-top:.5rem;font-size:.9rem;color:#64748b}.apt-time-badge{background:#dbeafe;color:#1d4ed8;padding:.125rem .5rem;border-radius:4px;font-weight:500}.workflow-progress{display:flex;align-items:center;justify-content:center;gap:.25rem;padding:1rem 0;margin-bottom:1rem;border-bottom:1px solid #e2e8f0}.progress-step{display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:50px}.step-num{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.8rem;font-weight:600;background:#e2e8f0;color:#94a3b8;transition:all .2s ease}.progress-step.active .step-num{background:#0ea5e9;color:#fff}.progress-step.complete .step-num{background:#22c55e;color:#fff}.step-label{font-size:.7rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.025em}.progress-step.active .step-label,.progress-step.complete .step-label{color:#1a365d}.progress-connector{width:20px;height:2px;background:#e2e8f0;margin-bottom:1rem}.workflow-step{flex:1;display:flex;flex-direction:column;gap:1rem}.step-instructions{background:#f0fdf4;border:1px solid #86efac;border-radius:8px;padding:1rem}.step-instructions h4{margin:0 0 .5rem;color:#166534}.step-instructions p{margin:.25rem 0;color:#166534}.kiosk-note{font-size:.85rem;margin-top:.75rem!important}.kiosk-note code{background:#dcfce7;padding:.125rem .5rem;border-radius:4px;font-family:monospace}.step-status{text-align:center;padding:1.5rem;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0}.step-status.issuing{background:#fef3c7;border:1px solid #fcd34d}.step-status.monitoring{background:#dbeafe;border:1px solid #93c5fd}.step-status.complete{background:#dcfce7;border:1px solid #86efac}.status-icon{font-size:2.5rem;margin-bottom:.5rem}.step-status h4{margin:0 0 .5rem}.step-status p{margin:.25rem 0;color:#666}.step-status .hint{font-style:italic;color:#1d4ed8}.progress-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1rem}.progress-panel h5{margin:0 0 .75rem;font-size:.9rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.consent-list{display:flex;flex-direction:column;gap:.5rem}.consent-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:4px}.consent-item.complete{background:#dcfce7}.consent-item.pending{background:#f3f4f6}.consent-icon{font-size:1.1rem;width:1.5rem;text-align:center}.consent-item.complete .consent-icon{color:#16a34a}.consent-item.pending .consent-icon{color:#9ca3af}.consent-label{flex:1;font-weight:500}.consent-time{font-size:.8rem;color:#16a34a}.all-complete-badge{margin-top:.75rem;padding:.5rem;background:#16a34a;color:#fff;text-align:center;border-radius:4px;font-weight:600}.room-select-row{margin-bottom:.5rem}.room-select{width:100%;padding:.75rem;font-size:1rem;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer}.room-select:focus{outline:none;border-color:#0ea5e9;box-shadow:0 0 0 2px #0ea5e933}.room-change-link{text-align:center}.room-change-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:.75rem}.room-change-panel .room-select{margin-bottom:.5rem}.room-change-actions{display:flex;gap:.5rem;justify-content:flex-end}.btn-small{padding:.375rem .75rem;font-size:.85rem;background:#0ea5e9;color:#fff;border:none;border-radius:4px;cursor:pointer}.btn-small:hover{background:#0284c7}.btn-small.btn-cancel{background:#94a3b8}.btn-small.btn-cancel:hover{background:#64748b}.step-actions{text-align:center;margin-bottom:.5rem}.btn-primary{padding:1rem;background:#0ea5e9;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background .15s ease;width:100%}.btn-primary:hover:not(:disabled){background:#0284c7}.btn-primary:disabled{background:#94a3b8;cursor:not-allowed}.btn-secondary{padding:1rem;background:#f59e0b;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background .15s ease;width:100%}.btn-secondary:hover:not(:disabled){background:#d97706}.btn-link{padding:.5rem 1rem;background:transparent;color:#0ea5e9;border:none;cursor:pointer;font-size:.9rem;text-decoration:underline}.btn-link:hover{color:#0284c7}.btn-issue{padding:1rem;background:#0ea5e9;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background .15s ease}.btn-issue:hover{background:#0284c7}.btn-retrieve{padding:1rem;background:#f59e0b;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background .15s ease}.btn-retrieve:hover{background:#d97706}.btn-goto-patient{padding:1rem;background:#22c55e;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background .15s ease}.btn-goto-patient:hover{background:#16a34a}.workflow-footer{margin-top:auto;padding-top:1rem;border-top:1px solid #e2e8f0}.btn-reset{padding:.5rem 1rem;background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer}.btn-reset:hover{background:#e2e8f0}@media(max-width:900px){.checkin-content{grid-template-columns:1fr}.workflow-progress{gap:.125rem}.progress-step{min-width:40px}.step-num{width:24px;height:24px;font-size:.7rem}.step-label{font-size:.6rem}.progress-connector{width:12px}}.physician-queue-loading,.physician-queue-error{padding:2rem;text-align:center;color:#6b7280}.physician-queue-error{color:#dc2626}.physician-queue-error button{margin-top:1rem;padding:.5rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:4px;cursor:pointer}.physician-queue-content{padding:1rem;display:flex;flex-direction:column;gap:1.5rem}.queue-section{background:#f9fafb;border-radius:8px;padding:1rem}.queue-section-title{font-size:1rem;font-weight:600;margin:0 0 1rem;display:flex;align-items:center;gap:.75rem}.queue-section-title.ready{color:#059669}.queue-section-title.active{color:#2563eb}.queue-section-title.checkout{color:#d97706}.queue-section-title .queue-count{background:currentColor;color:#fff;font-size:.75rem;padding:.125rem .5rem;border-radius:9999px;font-weight:500}.queue-empty{color:#9ca3af;font-style:italic;padding:1rem;text-align:center}.queue-list{display:flex;flex-direction:column;gap:.5rem}.queue-item{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:.75rem 1rem}.queue-item.ready{border-left:4px solid #059669}.queue-item.active{border-left:4px solid #2563eb}.queue-item.checkout{border-left:4px solid #d97706}.queue-item-info{display:flex;flex-direction:column;gap:.25rem}.patient-name{font-weight:600;color:#111827}.patient-details{font-size:.875rem;color:#6b7280;display:flex;gap:1rem}.patient-details .room{color:#7c3aed;font-weight:500}.patient-details .wait-time{color:#d97706}.queue-item-actions{display:flex;gap:.5rem}.btn-start-visit{padding:.5rem 1rem;background:#059669;color:#fff;border:none;border-radius:4px;font-weight:500;cursor:pointer;transition:background .15s}.btn-start-visit:hover:not(:disabled){background:#047857}.btn-start-visit:disabled{background:#9ca3af;cursor:not-allowed}.btn-continue{padding:.5rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:4px;font-weight:500;cursor:pointer;transition:background .15s}.btn-continue:hover:not(:disabled){background:#2563eb}.btn-continue:disabled{background:#9ca3af;cursor:not-allowed}.btn-complete{padding:.5rem 1rem;background:#f59e0b;color:#fff;border:none;border-radius:4px;font-weight:500;cursor:pointer;transition:background .15s}.btn-complete:hover:not(:disabled){background:#d97706}.btn-complete:disabled{background:#9ca3af;cursor:not-allowed}.btn-fax-rx{padding:.5rem 1rem;background:#7c3aed;color:#fff;border:none;border-radius:4px;font-weight:500;cursor:pointer;transition:background .15s}.btn-fax-rx:hover:not(:disabled){background:#6d28d9}.btn-fax-rx:disabled{background:#9ca3af;cursor:not-allowed}.btn-checkout{padding:.5rem 1rem;background:#8b5cf6;color:#fff;border:none;border-radius:4px;font-weight:500;cursor:pointer;transition:background .15s}.btn-checkout:hover:not(:disabled){background:#7c3aed}.btn-checkout:disabled{background:#9ca3af;cursor:not-allowed}.btn-clear{padding:.5rem 1rem;background:#6b7280;color:#fff;border:none;border-radius:4px;font-weight:500;cursor:pointer;transition:background .15s}.btn-clear:hover:not(:disabled){background:#4b5563}.btn-clear:disabled{background:#9ca3af;cursor:not-allowed}.queue-footer{display:flex;align-items:center;gap:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.btn-refresh{padding:.5rem 1rem;background:#6b7280;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background .15s}.btn-refresh:hover{background:#4b5563}.auto-refresh-note{font-size:.75rem;color:#9ca3af}.patient-checkout-workflow{padding:1.5rem;background:#f8f9fa;min-height:calc(100vh - 60px)}.patient-checkout-workflow .workflow-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e67e22}.patient-checkout-workflow .workflow-header h2{color:#e67e22;margin:0 0 .5rem}.patient-checkout-workflow .workflow-header p{color:#666;margin:0}.checkout-error{background:#fee;border:1px solid #f88;color:#c00;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem}.checkout-content{display:flex;gap:1.5rem}.checkout-left-panel{flex:0 0 350px;display:flex;flex-direction:column;gap:1.5rem}.checkout-search-section,.checkout-queue-section{background:#fff;border-radius:8px;padding:1rem;box-shadow:0 1px 3px #0000001a}.checkout-search-section h3,.checkout-queue-section h3{margin:0 0 1rem;font-size:1rem;color:#333;border-bottom:1px solid #eee;padding-bottom:.5rem}.checkout-search-bar{display:flex;gap:.5rem}.checkout-search-bar input{flex:1;padding:.5rem .75rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.checkout-search-bar button{padding:.5rem 1rem;background:#3498db;color:#fff;border:none;border-radius:4px;cursor:pointer}.checkout-search-bar button:hover:not(:disabled){background:#2980b9}.checkout-search-bar button:disabled{background:#bdc3c7;cursor:not-allowed}.checkout-search-results{margin-top:.75rem;max-height:150px;overflow-y:auto}.checkout-patient-item{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem;border:1px solid #eee;border-radius:4px;margin-bottom:.5rem;cursor:pointer;background:#fafafa;transition:all .2s}.checkout-patient-item:hover{background:#fff3e0;border-color:#e67e22}.checkout-patient-item.selected{background:#fff3e0;border-color:#e67e22;border-width:2px}.checkout-patient-item .patient-name{flex:1 1 100%;font-weight:600;color:#333}.checkout-patient-item .patient-id{font-size:.85rem;color:#666}.checkout-patient-item .patient-room{font-size:.85rem;color:#e67e22;font-weight:500}.checkout-queue-list{max-height:300px;overflow-y:auto}.no-patients{color:#999;font-style:italic;text-align:center;padding:1rem}.checkout-right-panel{flex:1;background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.checkout-placeholder{display:flex;align-items:center;justify-content:center;min-height:300px;color:#999;font-style:italic}.checkout-form{display:flex;flex-direction:column;gap:1.5rem}.checkout-patient-header{display:flex;flex-wrap:wrap;align-items:baseline;gap:1rem;padding-bottom:1rem;border-bottom:2px solid #e67e22}.checkout-patient-header h3{margin:0;font-size:1.25rem;color:#333}.checkout-patient-header span{font-size:.9rem;color:#666}.checkout-form-field{display:flex;flex-direction:column;gap:.5rem}.checkout-form-field label{font-weight:500;color:#333}.checkout-form-field input{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;width:200px}.checkout-actions{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.checkout-actions button{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .2s}.btn-invoice{background:#3498db;color:#fff;width:fit-content}.btn-invoice:hover:not(:disabled){background:#2980b9}.btn-invoice:disabled{background:#bdc3c7;cursor:not-allowed}.btn-complete{background:#e67e22;color:#fff;width:fit-content}.btn-complete:hover:not(:disabled){background:#d35400}.btn-complete:disabled{background:#bdc3c7;cursor:not-allowed}.btn-secondary{background:#95a5a6;color:#fff;width:fit-content}.btn-secondary:hover:not(:disabled){background:#7f8c8d}.invoice-created{display:flex;align-items:center;gap:1rem;padding:.75rem;background:#e8f5e9;border:1px solid #4caf50;border-radius:4px;color:#2e7d32}.invoice-created a{color:#1976d2;text-decoration:none}.invoice-created a:hover{text-decoration:underline}.checkout-actions .btn-payment{width:100%;padding:12px;background:#16a34a;color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s;margin-top:8px}.checkout-actions .btn-payment:hover{background:#15803d}.collect-payment-workflow{padding:1.5rem;background:#f8f9fa;min-height:calc(100vh - 60px)}.collect-payment-workflow .workflow-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #27ae60}.collect-payment-workflow .workflow-header h2{color:#27ae60;margin:0 0 .5rem}.collect-payment-workflow .workflow-header p{color:#666;margin:0}.payment-error{background:#fee;border:1px solid #f88;color:#c00;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem}.payment-content{display:flex;gap:1.5rem}.payment-left-panel{flex:0 0 350px;display:flex;flex-direction:column;gap:1.5rem}.payment-search-section,.terminal-status-section{background:#fff;border-radius:8px;padding:1rem;box-shadow:0 1px 3px #0000001a}.payment-search-section h3,.terminal-status-section h3{margin:0 0 1rem;font-size:1rem;color:#333;border-bottom:1px solid #eee;padding-bottom:.5rem}.payment-search-bar{display:flex;gap:.5rem}.payment-search-bar input{flex:1;padding:.5rem .75rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.payment-search-bar button{padding:.5rem 1rem;background:#3498db;color:#fff;border:none;border-radius:4px;cursor:pointer}.payment-search-bar button:hover:not(:disabled){background:#2980b9}.payment-search-results{margin-top:.75rem;max-height:200px;overflow-y:auto}.payment-patient-item{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem;border:1px solid #eee;border-radius:4px;margin-bottom:.5rem;cursor:pointer;background:#fafafa;transition:all .2s}.payment-patient-item:hover{background:#e8f5e9;border-color:#27ae60}.payment-patient-item.selected{background:#e8f5e9;border-color:#27ae60;border-width:2px}.payment-patient-item .patient-name{flex:1 1 100%;font-weight:600;color:#333}.payment-patient-item .patient-id{font-size:.85rem;color:#666}.terminal-info{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border-radius:4px}.terminal-info.online{background:#e8f5e9;border:1px solid #4caf50}.terminal-info.offline{background:#ffebee;border:1px solid #f44336}.terminal-label{font-weight:500}.terminal-status{font-size:.85rem;text-transform:capitalize}.terminal-info.online .terminal-status{color:#2e7d32}.terminal-info.offline .terminal-status{color:#c62828}.no-terminal{color:#999;font-style:italic;text-align:center}.payment-right-panel{flex:1;background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.payment-placeholder{display:flex;align-items:center;justify-content:center;min-height:300px;color:#999;font-style:italic}.payment-form{display:flex;flex-direction:column;gap:1.5rem}.payment-patient-header{display:flex;flex-wrap:wrap;align-items:baseline;gap:1rem;padding-bottom:1rem;border-bottom:2px solid #27ae60}.payment-patient-header h3{margin:0;font-size:1.25rem;color:#333}.payment-patient-header span{font-size:.9rem;color:#666}.payment-balance-info{background:#f5f5f5;padding:1rem;border-radius:4px}.balance-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #eee}.balance-row:last-child{border-bottom:none}.balance-row .amount{font-weight:600;color:#27ae60}.payment-amount-field{display:flex;flex-direction:column;gap:.5rem}.payment-amount-field label{font-weight:500;color:#333}.amount-input{display:flex;align-items:center;width:200px}.amount-input .currency-symbol{padding:.75rem;background:#eee;border:1px solid #ddd;border-right:none;border-radius:4px 0 0 4px;color:#666}.amount-input input{flex:1;padding:.75rem;border:1px solid #ddd;border-radius:0 4px 4px 0;font-size:1rem}.payment-method-selection{display:flex;flex-direction:column;gap:.5rem}.payment-method-selection label{font-weight:500;color:#333}.method-buttons{display:flex;gap:1rem}.method-btn{flex:1;padding:1rem;border:2px solid #ddd;border-radius:8px;background:#fff;cursor:pointer;font-size:1rem;transition:all .2s}.method-btn:hover:not(:disabled){border-color:#27ae60;background:#f0fff4}.method-btn.selected{border-color:#27ae60;background:#e8f5e9}.method-btn:disabled{opacity:.5;cursor:not-allowed}.payment-actions{margin-top:1rem}.btn-process{padding:1rem 2rem;background:#27ae60;color:#fff;border:none;border-radius:4px;font-size:1.1rem;cursor:pointer;transition:background .2s}.btn-process:hover:not(:disabled){background:#219a52}.btn-process:disabled{background:#bdc3c7;cursor:not-allowed}.payment-result{padding:1rem;border-radius:4px;font-weight:500}.payment-result.success{background:#e8f5e9;border:1px solid #4caf50;color:#2e7d32}.payment-result.failure{background:#ffebee;border:1px solid #f44336;color:#c62828}.receipt-actions{margin-top:1rem;padding:1rem;background:#f5f5f5;border-radius:4px;border:1px solid #ddd}.receipt-id{display:block;font-size:.9rem;color:#666;margin-bottom:.75rem}.receipt-buttons{display:flex;gap:.75rem}.btn-receipt{padding:.5rem 1rem;background:#2196f3;color:#fff;border-radius:4px;text-decoration:none;font-size:.9rem;font-weight:500;display:inline-flex;align-items:center;gap:.25rem}.btn-receipt:hover{background:#1976d2}.btn-email{padding:.5rem 1rem;background:#9e9e9e;color:#fff;border:none;border-radius:4px;font-size:.9rem;font-weight:500;cursor:not-allowed}.btn-email:disabled{opacity:.7}.unpaid-invoices-section{background:#fff;border-radius:8px;padding:1rem;box-shadow:0 1px 3px #0000001a}.unpaid-invoices-section h3{margin:0 0 1rem;font-size:1rem;color:#333;border-bottom:1px solid #eee;padding-bottom:.5rem}.unpaid-list{max-height:200px;overflow-y:auto}.unpaid-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border:1px solid #eee;border-radius:4px;margin-bottom:.5rem;cursor:pointer;background:#fff8e1;transition:all .2s}.unpaid-item:hover{background:#ffecb3;border-color:#ffc107}.unpaid-item.selected{background:#ffecb3;border-color:#ffc107;border-width:2px}.unpaid-patient{font-weight:500;color:#333}.unpaid-date{font-size:.85rem;color:#666}.no-unpaid{color:#999;font-style:italic;text-align:center;padding:.5rem}.loading-text{color:#666;font-style:italic;text-align:center;padding:.5rem}.sync-actions{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e0e0e0}.sync-result{padding:.75rem;border-radius:4px;margin-bottom:1rem;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.sync-result.success{background:#e8f5e9;color:#2e7d32}.sync-result.failure{background:#ffebee;color:#c62828}.sync-link{color:#1565c0;text-decoration:none;margin-left:.5rem}.sync-link:hover{text-decoration:underline}.sync-buttons{display:flex;gap:1rem}.btn-sync{flex:1;padding:.75rem 1.5rem;background:#1565c0;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .2s}.btn-sync:hover:not(:disabled){background:#0d47a1}.btn-sync:disabled{background:#90caf9;cursor:not-allowed}.btn-close{flex:1;padding:.75rem 1.5rem;background:#f5f5f5;color:#424242;border:1px solid #bdbdbd;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .2s}.btn-close:hover{background:#eee}.btn-void-small{background:#dc3545;color:#fff;border:none;border-radius:3px;padding:2px 6px;font-size:12px;cursor:pointer;margin-left:auto}.btn-void-small:hover{background:#c82333}.unpaid-item{display:flex;align-items:center;gap:8px}.prescription-fax-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.prescription-fax-modal{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #00000026}.prescription-fax-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#7c3aed;color:#fff;border-radius:8px 8px 0 0}.prescription-fax-header h2{margin:0;font-size:1.25rem;font-weight:600}.prescription-fax-header .close-btn{background:transparent;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:0;line-height:1;opacity:.8;transition:opacity .15s}.prescription-fax-header .close-btn:hover:not(:disabled){opacity:1}.prescription-fax-header .close-btn:disabled{cursor:not-allowed;opacity:.5}.prescription-fax-patient{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;background:#f3f4f6;border-bottom:1px solid #e5e7eb}.prescription-fax-patient .patient-label{color:#6b7280;font-size:.875rem}.prescription-fax-patient .patient-value{font-weight:600;color:#111827}.prescription-fax-patient .patient-id{margin-left:auto;color:#6b7280;font-size:.875rem}.prescription-fax-pharmacy{padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb}.prescription-fax-pharmacy h3{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.pharmacy-loading{color:#6b7280;font-style:italic}.pharmacy-info{background:#f9fafb;padding:.75rem;border-radius:6px;border:1px solid #e5e7eb}.pharmacy-name{font-weight:600;color:#111827;margin-bottom:.25rem}.pharmacy-address{color:#6b7280;font-size:.875rem;margin-bottom:.25rem}.pharmacy-contact{display:flex;gap:1rem;font-size:.875rem;color:#6b7280}.pharmacy-none{color:#9ca3af;font-style:italic;padding:.5rem;background:#fef3c7;border-radius:4px;border:1px solid #fcd34d}.pharmacy-override{margin-top:.75rem}.override-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:#4b5563}.override-checkbox input{cursor:pointer}.override-fields{margin-top:.75rem;padding:.75rem;background:#faf5ff;border-radius:6px;border:1px solid #e9d5ff}.override-fields .form-row{margin-bottom:.5rem}.override-fields .form-row:last-child{margin-bottom:0}.override-fields label{display:block;font-size:.75rem;font-weight:500;color:#6b7280;margin-bottom:.25rem}.override-fields input{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem}.override-fields input:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 2px #7c3aed1a}.prescription-fax-form{padding:1rem 1.5rem}.prescription-fax-form h3{margin:0 0 1rem;font-size:.875rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.form-row{margin-bottom:1rem}.form-row:last-child{margin-bottom:0}.form-row label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.375rem}.form-row input,.form-row select,.form-row textarea{width:100%;padding:.625rem;border:1px solid #d1d5db;border-radius:6px;font-size:.9375rem;font-family:inherit}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.form-row input:disabled,.form-row select:disabled,.form-row textarea:disabled{background:#f3f4f6;cursor:not-allowed}.form-row textarea{resize:vertical;min-height:60px}.form-row-group{display:grid;grid-template-columns:1fr 120px 160px;gap:1rem;margin-bottom:1rem}@media(max-width:600px){.form-row-group{grid-template-columns:1fr}}.prescription-fax-error{margin:0 1.5rem 1rem;padding:.75rem;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:.875rem}.prescription-fax-success{margin:0 1.5rem 1rem;padding:.75rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;color:#16a34a;font-size:.875rem}.prescription-fax-actions{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb;border-radius:0 0 8px 8px}.btn-cancel{padding:.625rem 1.25rem;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;font-weight:500;cursor:pointer;transition:all .15s}.btn-cancel:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-send{padding:.625rem 1.5rem;background:#7c3aed;border:none;border-radius:6px;color:#fff;font-weight:500;cursor:pointer;transition:background .15s}.btn-send:hover:not(:disabled){background:#6d28d9}.btn-send:disabled{background:#a78bfa;cursor:not-allowed}.prescription-pad-workflow{display:flex;justify-content:center;align-items:flex-start;min-height:100%;padding:40px 20px;background:#f3f4f6}.pin-entry-card{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;padding:40px;width:100%;max-width:400px;text-align:center}.pin-header{margin-bottom:32px}.pin-icon{font-size:48px;display:block;margin-bottom:16px}.pin-header h2{color:#1f2937;font-size:24px;font-weight:600;margin:0 0 8px}.pin-header p{color:#6b7280;font-size:14px;margin:0}.pin-form{display:flex;flex-direction:column;align-items:center;gap:16px}.pin-input{width:160px;padding:16px;font-size:32px;text-align:center;letter-spacing:12px;border:2px solid #e5e7eb;border-radius:8px;outline:none;transition:border-color .15s}.pin-input:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.pin-input::placeholder{letter-spacing:8px;color:#d1d5db}.pin-error{color:#dc2626;font-size:14px;font-weight:500}.pin-submit-btn{width:160px;padding:12px 24px;background:#7c3aed;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:background .15s}.pin-submit-btn:hover:not(:disabled){background:#6d28d9}.pin-submit-btn:disabled{background:#a78bfa;cursor:not-allowed}.search-card{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;padding:32px;width:100%;max-width:600px}.search-header{text-align:center;margin-bottom:24px}.search-icon{font-size:40px;display:block;margin-bottom:12px}.search-header h2{color:#1f2937;font-size:22px;font-weight:600;margin:0 0 8px}.search-header p{color:#6b7280;font-size:14px;margin:0}.search-form{margin-bottom:16px}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-input{width:100%;padding:14px 16px;font-size:16px;border:2px solid #e5e7eb;border-radius:8px;outline:none;transition:border-color .15s}.search-input:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.search-input::placeholder{color:#9ca3af}.search-spinner{position:absolute;right:14px;font-size:18px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.search-error{margin-top:8px;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:14px}.search-results{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto}.no-results{text-align:center;padding:24px;color:#9ca3af;font-style:italic}.patient-result{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .15s;text-align:left}.patient-result:hover{background:#f3f0ff;border-color:#c4b5fd}.patient-result-info{display:flex;flex-direction:column;gap:4px}.patient-name{font-weight:600;color:#1f2937;font-size:15px}.patient-details{color:#6b7280;font-size:13px}.patient-id{color:#7c3aed;font-weight:600;font-size:14px;background:#f3f0ff;padding:4px 10px;border-radius:12px}.recent-selection{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding:12px 16px;background:#faf5ff;border:1px solid #e9d5ff;border-radius:8px;font-size:14px;color:#6b7280}.reopen-btn{padding:6px 12px;background:#7c3aed;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s}.reopen-btn:hover{background:#6d28d9}.bx-tabs{display:flex;gap:4px;margin-bottom:20px;border-bottom:2px solid #e2e8f0;padding-bottom:0}.bx-tab{padding:12px 20px;background:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:14px;font-weight:500;color:#64748b;display:flex;align-items:center;gap:8px;transition:all .2s;margin-bottom:-2px}.bx-tab:hover{color:#334155;background:#f8fafc}.bx-tab.active{color:#7c3aed;border-bottom-color:#7c3aed;background:#f5f3ff}.tab-count{background:#e2e8f0;color:#64748b;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600}.bx-tab.active .tab-count{background:#7c3aed;color:#fff}.bx-content{flex:1;overflow-y:auto;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.bx-table{width:100%;border-collapse:collapse}.bx-table th{background:#f8fafc;padding:12px 16px;text-align:left;font-weight:600;font-size:13px;color:#475569;border-bottom:2px solid #e2e8f0;position:sticky;top:0}.bx-table td{padding:12px 16px;border-bottom:1px solid #f1f5f9;font-size:14px;color:#334155}.bx-table tr:hover{background:#f8fafc}.patient-link{color:#2563eb;cursor:pointer;font-weight:500}.patient-link:hover{text-decoration:underline}.path-report-cell{max-width:200px}.path-report-preview{color:#059669;font-size:13px}.no-report{color:#94a3b8;font-style:italic}.status-cell{max-width:150px}.status-preview{color:#b45309;font-size:13px}.no-status{color:#94a3b8}.btn-action{padding:6px 12px;background:#7c3aed;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500}.btn-action:hover{background:#6d28d9}.btn-action:disabled{background:#cbd5e1;cursor:not-allowed}.bx-empty{padding:60px 20px;text-align:center;color:#94a3b8;font-size:16px}.bx-loading,.bx-error{padding:40px;text-align:center;color:#64748b}.bx-error button{margin-top:16px;padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:4px;cursor:pointer}.bx-footer{padding:16px 0;display:flex;justify-content:flex-end}.btn-refresh{padding:8px 16px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;cursor:pointer;font-size:14px;color:#475569}.btn-refresh:hover{background:#e2e8f0}.bx-action-result{padding:12px 16px;border-radius:6px;margin-bottom:16px;font-weight:500}.bx-action-result.success{background:#dcfce7;color:#166534;border:1px solid #86efac}.bx-action-result.error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.bx-detail-modal{background:#fff;border-radius:12px;width:500px;max-width:95vw;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.bx-detail-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#7c3aed;color:#fff}.bx-detail-modal .modal-header h3{margin:0;font-size:18px}.bx-detail-modal .modal-close{background:transparent;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0;line-height:1}.bx-detail-modal .modal-body{padding:20px;overflow-y:auto;flex:1}.detail-row{display:flex;margin-bottom:12px}.detail-row label{width:120px;font-weight:600;color:#64748b;font-size:13px}.detail-row span{flex:1;color:#334155}.detail-row.full-width{flex-direction:column}.detail-row.full-width label{width:100%;margin-bottom:6px}.detail-row textarea{width:100%;padding:10px;border:1px solid #e2e8f0;border-radius:6px;font-family:inherit;font-size:14px;resize:vertical}.detail-row select{width:100%;padding:10px;border:1px solid #e2e8f0;border-radius:6px;font-family:inherit;font-size:14px;background:#fff}.path-report-display{background:#f8fafc;padding:10px;border-radius:6px;display:block;white-space:pre-wrap;font-size:14px}.phone-link{color:#2563eb;text-decoration:none;font-weight:500}.phone-link:hover{text-decoration:underline}.no-phone{color:#94a3b8;font-style:italic}.view-documents-link{display:inline-block;margin-top:8px;padding:6px 12px;background:#dbeafe;color:#1d4ed8;text-decoration:none;border-radius:4px;font-size:13px;font-weight:500}.view-documents-link:hover{background:#bfdbfe;text-decoration:none}.view-folder-link{background:#f1f5f9;color:#64748b}.view-folder-link:hover{background:#e2e8f0}.call-history{background:#fef3c7;padding:8px 10px;border-radius:6px;display:block;font-size:13px;color:#92400e}.initials-row{margin-top:16px;padding-top:16px;border-top:1px solid #e2e8f0}.initials-input{width:80px;padding:8px;border:1px solid #e2e8f0;border-radius:4px;font-size:14px;text-transform:uppercase;text-align:center}.bx-detail-modal .modal-footer{padding:16px 20px;background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}.modal-hint{flex:1;color:#64748b;font-size:14px;margin:0}.btn-primary{padding:10px 20px;background:#7c3aed;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500}.btn-primary:hover{background:#6d28d9}.btn-primary:disabled{background:#cbd5e1;cursor:not-allowed}.btn-secondary{padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500}.btn-secondary:hover{background:#2563eb}.btn-cancel{padding:10px 20px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer}.btn-cancel:hover{background:#e2e8f0}.notify-actions{display:flex;flex-direction:column;gap:10px;flex:1}.call-outcome-row{display:flex;gap:8px}.btn-lvm{padding:8px 14px;background:#fbbf24;color:#78350f;border:none;border-radius:6px;cursor:pointer;font-weight:500;font-size:13px}.btn-lvm:hover{background:#f59e0b}.btn-lvm:disabled{background:#cbd5e1;color:#64748b;cursor:not-allowed}.btn-na{padding:8px 14px;background:#fb923c;color:#7c2d12;border:none;border-radius:6px;cursor:pointer;font-weight:500;font-size:13px}.btn-na:hover{background:#f97316}.btn-na:disabled{background:#cbd5e1;color:#64748b;cursor:not-allowed}.btn-notified{width:100%}.modal-footer .btn-cancel{padding:10px 20px!important;background:#6c757d!important;color:#fff!important;border:none!important;border-radius:6px!important;cursor:pointer;font-size:14px}.process-bx-tab{padding:20px;max-height:70vh;overflow-y:auto}.process-error{background:#fee;border:1px solid #c33;color:#c33;padding:10px;margin-bottom:15px;border-radius:4px;font-size:14px}.process-success{background:#efe;border:1px solid #3c3;color:#3c3;padding:10px;margin-bottom:15px;border-radius:4px;font-size:14px}.biopsy-details{background:#f8f9fa;border:1px solid #ddd;border-radius:6px;padding:15px;margin-bottom:20px}.biopsy-details h4{margin:0 0 12px;font-size:16px;color:#333;border-bottom:1px solid #ddd;padding-bottom:8px}.biopsy-details .detail-row{display:flex;margin-bottom:6px;font-size:14px}.biopsy-details .label{font-weight:600;width:100px;color:#666}.checklist-section{margin-bottom:20px}.checklist-item{display:flex;align-items:flex-start;padding:12px;margin-bottom:10px;border:1px solid #e0e0e0;border-radius:6px;background:#fff;transition:background-color .2s}.checklist-item:hover{background:#f8f9fa}.checklist-item.readonly{background:#f5f5f5;cursor:default}.checkbox-placeholder{font-size:18px;margin-right:12px;color:#999}.item-checkbox{width:20px;height:20px;margin-right:12px;margin-top:2px;cursor:pointer;flex-shrink:0}.item-checkbox:disabled{cursor:not-allowed;opacity:.5}.item-content{flex:1;display:flex;flex-direction:column;gap:8px}.item-label{font-size:15px;font-weight:500;color:#333}.item-info{font-size:14px;color:#06c;background:#e6f2ff;padding:6px 10px;border-radius:4px;font-family:Courier New,monospace}.item-input{display:flex;align-items:center;margin-top:4px}.courier-input{width:100%;max-width:400px;padding:8px 12px;font-size:14px;border:1px solid #ccc;border-radius:4px;font-family:Courier New,monospace}.courier-input:focus{outline:none;border-color:#06c;box-shadow:0 0 0 2px #0066cc1a}.item-actions{display:flex;gap:10px;margin-top:6px}.btn-camera,.btn-upload{display:inline-block;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;border:none}.btn-camera{background-color:#0ea5e9;color:#fff}.btn-camera:hover{background-color:#0284c7}.btn-upload{background-color:#64748b;color:#fff}.btn-upload:hover{background-color:#475569}.btn-print-facesheet{padding:8px 16px;background:#28a745;color:#fff;border:none;border-radius:4px;font-size:14px;cursor:pointer;transition:background-color .2s}.btn-print-facesheet:hover{background:#218838}.btn-print-facesheet:disabled{background:#ccc;cursor:not-allowed}.process-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:20px;border-top:1px solid #ddd;margin-top:20px}.btn-mark-ready{padding:12px 24px;background:#28a745;color:#fff;border:none;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer;transition:background-color .2s}.btn-mark-ready:hover{background:#218838}.btn-mark-ready:disabled{background:#ccc;cursor:not-allowed}.btn-cancel{padding:12px 24px;background:#6c757d;color:#fff;border:none;border-radius:6px;font-size:15px;cursor:pointer;transition:background-color .2s}.btn-cancel:hover{background:#5a6268}.btn-save-courier{padding:8px 16px;margin-left:8px;background-color:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;min-width:60px}.btn-save-courier:hover:not(:disabled){background-color:#45a049}.btn-save-courier:disabled{background-color:#ccc;cursor:not-allowed}.photo-instructions-overlay{position:fixed!important;inset:0!important;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:9999!important}.photo-instructions-modal{background:#fff;border-radius:12px;width:90%;max-width:400px;box-shadow:0 4px 20px #0000004d;overflow:hidden;z-index:10000}.photo-instructions-header{background:#6366f1;color:#fff;padding:16px 20px;display:flex;justify-content:space-between;align-items:center}.photo-instructions-header h3{margin:0;font-size:18px}.photo-instructions-header .modal-close{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0;line-height:1}.photo-instructions-body{padding:20px}.patient-highlight{background:#f0f9ff;border:2px solid #0ea5e9;border-radius:8px;padding:16px;margin-bottom:20px;text-align:center}.patient-label{display:block;font-size:12px;color:#666;margin-bottom:4px}.patient-name{display:block;font-size:24px;font-weight:700;color:#0369a1}.patient-id{font-size:14px;color:#666}.instructions-steps{font-size:16px;line-height:1.6}.instructions-steps ol{margin:10px 0;padding-left:24px}.instructions-steps li{margin-bottom:8px}.instructions-steps code{background:#f1f5f9;padding:2px 8px;border-radius:4px;font-family:monospace;font-size:18px;font-weight:700;color:#0369a1}.photo-instructions-footer{padding:16px 20px;background:#f8fafc;text-align:center}.btn-got-it{background:#6366f1;color:#fff;border:none;padding:12px 32px;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer}.btn-got-it:hover{background:#4f46e5}@media(max-width:600px){.process-bx-tab{padding:15px}.biopsy-details .detail-row{flex-direction:column}.biopsy-details .label{width:auto;margin-bottom:2px}.courier-input{max-width:100%}.item-actions{flex-direction:column}.btn-camera,.btn-upload{width:100%;text-align:center}.process-actions{flex-direction:column-reverse}.btn-mark-ready,.btn-cancel{width:100%}.photo-instructions-modal{width:95%;margin:10px}}.prearrival-review{padding:24px;max-width:1000px;margin:0 auto}.prearrival-review-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.prearrival-review-title{display:flex;align-items:center;gap:12px}.prearrival-review-title h2{margin:0;color:#6366f1;font-size:1.5rem}.prearrival-review-icon{font-size:1.5rem}.prearrival-back-btn{padding:8px 16px;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;cursor:pointer;font-size:.9rem;color:#475569}.prearrival-back-btn:hover{background:#e2e8f0}.prearrival-submitted-at{color:#64748b;font-size:.9rem;margin-bottom:16px}.prearrival-review-loading{text-align:center;padding:48px;color:#64748b}.prearrival-review-error{text-align:center;padding:48px;color:#dc2626}.prearrival-review-error button{margin-top:16px;padding:10px 24px;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;cursor:pointer}.prearrival-review-error button:hover{background:#e2e8f0}.prearrival-no-changes{text-align:center;padding:48px;color:#64748b}.prearrival-no-changes p{margin-bottom:16px}.prearrival-error-message{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px 16px;border-radius:6px;margin-top:16px}.prearrival-controls{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding:12px 16px;background:#f8fafc;border-radius:6px}.prearrival-count{color:#64748b;font-size:.9rem}.prearrival-select-btns{display:flex;gap:8px}.prearrival-select-btns button{padding:6px 12px;background:#fff;border:1px solid #cbd5e1;border-radius:4px;cursor:pointer;font-size:.85rem;color:#475569}.prearrival-select-btns button:hover{background:#f1f5f9}.prearrival-table{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;margin-bottom:24px}.prearrival-table-header{display:grid;grid-template-columns:40px 180px 1fr 1fr;background:#f8fafc;font-weight:600;color:#475569;font-size:.85rem;border-bottom:1px solid #e2e8f0}.prearrival-table-header>div{padding:12px}.prearrival-table-row{display:grid;grid-template-columns:40px 180px 1fr 1fr;border-bottom:1px solid #e2e8f0;cursor:pointer;transition:background .15s}.prearrival-table-row:last-child{border-bottom:none}.prearrival-table-row:hover{background:#f8fafc}.prearrival-table-row.selected{background:#eef2ff}.prearrival-table-row.selected:hover{background:#e0e7ff}.prearrival-col-check{padding:12px;display:flex;align-items:center;justify-content:center}.prearrival-col-check input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#6366f1}.prearrival-col-field{padding:12px;display:flex;align-items:center;font-weight:500;color:#334155}.prearrival-col-current{padding:12px;display:flex;align-items:center;color:#64748b;font-size:.9rem;border-left:1px solid #e2e8f0}.prearrival-col-submitted{padding:12px;display:flex;align-items:center;color:#6366f1;font-weight:500;font-size:.9rem;border-left:1px solid #e2e8f0;background:#fafafa}.prearrival-table-row.selected .prearrival-col-submitted{background:#e0e7ff}.prearrival-actions{display:flex;gap:12px;justify-content:flex-end}.prearrival-accept-btn{padding:12px 24px;background:#6366f1;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500}.prearrival-accept-btn:hover:not(:disabled){background:#4f46e5}.prearrival-accept-btn:disabled{background:#a5b4fc;cursor:not-allowed}.prearrival-dismiss-btn{padding:12px 24px;background:#fff;color:#64748b;border:1px solid #cbd5e1;border-radius:6px;cursor:pointer;font-size:1rem}.prearrival-dismiss-btn:hover:not(:disabled){background:#f1f5f9;color:#475569}.prearrival-dismiss-btn:disabled{opacity:.5;cursor:not-allowed}.patient-quickview{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:1200px}.quickview-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.quickview-section-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f8f9fa;border-bottom:1px solid #e0e0e0}.quickview-section-header h3{margin:0;font-size:.95rem;font-weight:600;color:#333}.quickview-section-content{padding:16px}.quickview-header-buttons{display:flex;gap:8px;align-items:center}.quickview-loading{color:#666;font-style:italic}.quickview-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quickview-contact-item{display:flex;flex-direction:column;gap:2px}.quickview-contact-label{font-size:.75rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.quickview-contact-value{font-size:.9rem;color:#333}.quickview-empty{color:#999;font-style:italic}.quickview-prefs{display:flex;flex-wrap:wrap;gap:6px}.quickview-pref-badge{display:inline-block;padding:2px 8px;background:#d4edda;color:#155724;border-radius:12px;font-size:.75rem;font-weight:500}.quickview-edit-btn{padding:4px 12px;background:#2874a6;color:#fff;border:none;border-radius:4px;font-size:.8rem;cursor:pointer;transition:background .15s}.quickview-edit-btn:hover{background:#1a5276}.quickview-log-btn{padding:4px 12px;background:#17a2b8;color:#fff;border:none;border-radius:4px;font-size:.8rem;cursor:pointer;transition:background .15s}.quickview-log-btn:hover{background:#138496}.quickview-view-btn{padding:4px 12px;background:#6f42c1;color:#fff;border:none;border-radius:4px;font-size:.8rem;cursor:pointer;transition:background .15s;white-space:nowrap}.quickview-view-btn:hover{background:#59359a}.quickview-link-btn{padding:0;background:none;border:none;color:#2874a6;font-size:.85rem;cursor:pointer;text-decoration:underline}.quickview-link-btn:hover{color:#1a5276}.quickview-action-btn{padding:8px 16px;background:#fff;border:1px solid #ddd;border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .15s}.quickview-action-btn:hover:not(:disabled){background:#f0f7fc;border-color:#2874a6}.quickview-action-btn:disabled{opacity:.5;cursor:not-allowed}.quickview-notes{width:100%;min-height:80px;padding:10px;border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:.9rem;resize:vertical}.quickview-notes:focus{outline:none;border-color:#2874a6}.quickview-table{width:100%;border-collapse:collapse}.quickview-table th,.quickview-table td{padding:8px 12px;text-align:left;border-bottom:1px solid #eee}.quickview-table th{font-weight:500;color:#666;font-size:.85rem}.quickview-amount{text-align:right;font-family:Monaco,Consolas,monospace}.quickview-total-row{background:#f8f9fa}.quickview-card-list{min-height:40px}.quickview-empty-state{color:#888;font-style:italic;font-size:.9rem}.quickview-actions{display:flex;gap:8px;margin-bottom:8px}.quickview-hint{margin:0;color:#888;font-size:.85rem}.quickview-privacy-list{display:flex;flex-direction:column;gap:10px}.quickview-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.9rem}.quickview-checkbox input{width:16px;height:16px}.quickview-na{color:#888}.quickview-footer{grid-column:1 / -1;display:flex;gap:32px;padding:12px 16px;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px}.quickview-footer-item{display:flex;align-items:center;gap:8px}.quickview-footer-label{font-weight:500;color:#666}.quickview-status{padding:2px 8px;border-radius:4px;font-size:.85rem;font-weight:500}.quickview-status-active{background:#d4edda;color:#155724}.quickview-status-inactive{background:#f8d7da;color:#721c24}@media(max-width:800px){.patient-quickview{grid-template-columns:1fr}.quickview-footer{flex-direction:column;gap:12px}.quickview-contact-grid{grid-template-columns:1fr}}.quickview-notes-actions{display:flex;gap:8px}.quickview-cancel-btn{padding:4px 12px;background:#6c757d;color:#fff;border:none;border-radius:4px;font-size:.8rem;cursor:pointer;transition:background .15s}.quickview-cancel-btn:hover:not(:disabled){background:#5a6268}.quickview-cancel-btn:disabled{opacity:.6;cursor:not-allowed}.quickview-save-btn{padding:4px 12px;background:#28a745;color:#fff;border:none;border-radius:4px;font-size:.8rem;cursor:pointer;transition:background .15s}.quickview-save-btn:hover:not(:disabled){background:#218838}.quickview-save-btn:disabled{opacity:.6;cursor:not-allowed}.quickview-notes-editing{border-color:#2874a6;background:#fefefe;box-shadow:0 0 0 2px #2874a626}.quickview-appointments-summary{grid-column:1 / -1;background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:16px}.quickview-appointments-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.quickview-appointments-column h4{margin:0 0 12px;font-size:.9rem;font-weight:600;color:#333;padding-bottom:8px;border-bottom:1px solid #eee}.quickview-appointments-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.quickview-appointment-item{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#f8f9fa;border-radius:4px;border-left:3px solid #ddd}.quickview-appointment-past{border-left-color:#6c757d}.quickview-appointment-upcoming{border-left-color:#28a745;flex-wrap:wrap}.quickview-appt-date{font-weight:500;color:#333;min-width:90px}.quickview-appt-time{color:#666;font-size:.9rem;min-width:70px}.quickview-appt-type{color:#555;font-size:.85rem;flex:1}.quickview-appt-info{display:flex;align-items:center;gap:12px;flex:1}.quickview-appt-actions{display:flex;gap:8px;margin-left:auto}.quickview-appt-link{padding:2px 8px;background:none;border:1px solid #2874a6;border-radius:3px;color:#2874a6;font-size:.75rem;cursor:pointer;transition:all .15s}.quickview-appt-link:hover{background:#2874a6;color:#fff}.quickview-appt-cancel{border-color:#dc3545;color:#dc3545}.quickview-appt-cancel:hover{background:#dc3545;color:#fff}@media(max-width:800px){.quickview-appointments-grid{grid-template-columns:1fr;gap:16px}.quickview-appointment-upcoming{flex-direction:column;align-items:flex-start}.quickview-appt-actions{margin-left:0;margin-top:8px}}.commlog-modal{max-width:500px;width:95%}.commlog-form{display:flex;flex-direction:column;gap:16px}.commlog-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.commlog-field{display:flex;flex-direction:column;gap:4px}.commlog-field label{font-size:.85rem;font-weight:500;color:#333}.commlog-field select,.commlog-field input{padding:8px 10px;border:1px solid #ddd;border-radius:4px;font-size:.9rem;font-family:inherit}.commlog-field select:focus,.commlog-field input:focus{outline:none;border-color:#2874a6}.commlog-field textarea{padding:8px 10px;border:1px solid #ddd;border-radius:4px;font-size:.9rem;font-family:inherit;resize:vertical}.commlog-field textarea:focus{outline:none;border-color:#2874a6}.commlog-field-full{grid-column:1 / -1}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-height:90vh;overflow:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e0e0e0}.modal-header h2{margin:0;font-size:1.1rem;font-weight:600;display:flex;align-items:center;gap:10px}.modal-close{background:none;border:none;font-size:1.5rem;color:#666;cursor:pointer;padding:0;line-height:1}.modal-close:hover{color:#333}.modal-body{padding:20px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #e0e0e0;background:#f8f9fa}.btn-primary{padding:8px 20px;background:#2874a6;color:#fff;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:background .15s}.btn-primary:hover:not(:disabled){background:#1a5276}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{padding:8px 20px;background:#fff;color:#333;border:1px solid #ddd;border-radius:4px;font-size:.9rem;cursor:pointer;transition:all .15s}.btn-secondary:hover{background:#f0f0f0;border-color:#ccc}@media(max-width:600px){.commlog-row{grid-template-columns:1fr}}.commlog-viewer-modal{max-width:650px;width:95%}.commlog-viewer-count{font-size:.8rem;font-weight:400;color:#6c757d;background:#e9ecef;padding:2px 8px;border-radius:10px}.commlog-entry-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.commlog-entry{border:1px solid #e0e0e0;border-radius:6px;padding:10px 14px;background:#fafafa}.commlog-entry-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.commlog-entry-direction{font-size:.8rem;font-weight:600;padding:2px 8px;border-radius:4px;min-width:46px;text-align:center}.commlog-direction-inbound{background:#d1ecf1;color:#0c5460}.commlog-direction-outbound{background:#d4edda;color:#155724}.commlog-entry-method{font-size:.85rem;font-weight:500;color:#333}.commlog-entry-outcome{font-size:.8rem;color:#555;background:#f0f0f0;padding:2px 7px;border-radius:4px}.commlog-entry-datetime{font-size:.8rem;color:#888;margin-left:auto}.commlog-entry-staff{font-size:.8rem;color:#888}.commlog-entry-notes{margin-top:6px;font-size:.875rem;color:#444;padding-top:6px;border-top:1px solid #eee}.commlog-entry-duration{margin-top:4px;font-size:.8rem;color:#888}.quickview-hint-text{font-size:.75rem;color:#6b7280;font-style:italic;cursor:help}.quickview-checkbox-overridable{cursor:pointer}.quickview-checkbox-overridable:hover{background-color:#f3f4f6;border-radius:4px}.quickview-checkbox-overridable input[type=checkbox]{cursor:pointer}.initials-modal{max-width:360px}.initials-modal-message{margin-bottom:1rem;color:#374151}.initials-modal-instruction{margin-bottom:.5rem;font-size:.875rem;color:#6b7280}.initials-input{width:80px;padding:.5rem .75rem;font-size:1.25rem;font-weight:600;text-align:center;text-transform:uppercase;border:2px solid #d1d5db;border-radius:6px;outline:none;transition:border-color .15s ease}.initials-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.initials-input::placeholder{color:#9ca3af;font-weight:400}.patient-registration{padding:20px;max-width:1200px;margin:0 auto}.patient-registration h2{margin:0 0 20px;color:#333;font-size:1.5rem}.registration-section{background:#fff;border:1px solid #ddd;border-radius:4px;margin-bottom:12px}.registration-section-header{display:flex;align-items:center;padding:12px 16px;background:#f5f5f5;cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid #ddd}.registration-section-header:hover{background:#eee}.registration-section-toggle{font-size:.75rem;margin-right:10px;color:#666;width:12px}.registration-section-title{margin:0;font-size:1rem;font-weight:600;color:#333}.registration-section-content{padding:16px}.form-row{display:flex;gap:16px;margin-bottom:12px}.form-group{flex:1;display:flex;flex-direction:column}.form-group.half{flex:0 0 calc(50% - 8px)}.form-group.third{flex:0 0 calc(33.333% - 11px)}.form-group.quarter{flex:0 0 calc(25% - 12px)}.form-group label{font-size:.8rem;font-weight:500;color:#555;margin-bottom:4px}.form-group input,.form-group select,.form-group textarea{padding:8px 10px;border:1px solid #ccc;border-radius:4px;font-size:.9rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 2px #2196f31a}.form-group input:disabled,.form-group select:disabled{background:#f5f5f5;color:#888}.toggle-group{display:flex;gap:8px}.toggle-btn{padding:6px 16px;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer;font-size:.85rem}.toggle-btn:hover{background:#f5f5f5}.toggle-btn.active{background:#2196f3;color:#fff;border-color:#2196f3}.checkbox-group{display:flex;align-items:center;gap:8px;margin-bottom:8px}.checkbox-group input[type=checkbox]{width:16px;height:16px}.checkbox-group label{margin-bottom:0;font-size:.9rem}.contacts-table{width:100%;border-collapse:collapse;margin-bottom:12px}.contacts-table th,.contacts-table td{padding:8px 12px;text-align:left;border-bottom:1px solid #ddd}.contacts-table th{background:#f9f9f9;font-weight:600;font-size:.8rem;color:#555}.contacts-table td{font-size:.9rem}.btn-add{padding:8px 16px;background:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.85rem}.btn-add:hover{background:#43a047}.btn-save{padding:10px 24px;background:#2196f3;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;margin-top:20px}.btn-save:hover{background:#1976d2}.section-note{font-size:.8rem;color:#888;font-style:italic;margin-top:8px}.upload-placeholder{width:150px;height:100px;border:2px dashed #ccc;border-radius:4px;display:flex;align-items:center;justify-content:center;color:#999;font-size:.8rem;cursor:pointer}.upload-placeholder:hover{border-color:#2196f3;color:#2196f3}.snippet-picker{display:inline-block;position:relative}.snippet-picker-btn{background:#f5f5f5;border:1px solid #ddd;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:14px;line-height:1;transition:background .2s}.snippet-picker-btn:hover{background:#e8e8e8;border-color:#ccc}.snippet-picker-dropdown{position:absolute;top:100%;right:0;z-index:1000;width:400px;max-height:400px;background:#fff;border:1px solid #ccc;border-radius:6px;box-shadow:0 4px 12px #00000026;margin-top:4px;display:flex;flex-direction:column}.snippet-picker-header{display:flex;gap:8px;padding:8px;border-bottom:1px solid #eee}.snippet-picker-search{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.snippet-picker-search:focus{outline:none;border-color:#06c}.snippet-picker-close{background:none;border:none;font-size:16px;cursor:pointer;color:#666;padding:4px 8px}.snippet-picker-close:hover{color:#333}.snippet-picker-list{flex:1;overflow-y:auto;max-height:340px}.snippet-picker-loading,.snippet-picker-empty{padding:20px;text-align:center;color:#666;font-size:14px}.snippet-picker-item{padding:10px 12px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background .15s}.snippet-picker-item:hover,.snippet-picker-item.highlighted{background:#f5f8ff}.snippet-picker-item:last-child{border-bottom:none}.snippet-picker-item-header{display:flex;gap:8px;align-items:baseline;margin-bottom:4px}.snippet-code{font-family:monospace;font-size:12px;color:#06c;background:#e8f4ff;padding:2px 6px;border-radius:3px}.snippet-label{font-size:13px;font-weight:500;color:#333}.snippet-preview{font-size:12px;color:#666;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.new-visit-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.new-visit-modal{background:#fff;border-radius:8px;width:1625px;max-width:95vw;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.new-visit-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e0e0e0}.new-visit-header h2{margin:0;font-size:18px;color:#333}.new-visit-header .close-button{background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:0;line-height:1}.new-visit-header .close-button:hover{color:#333}.new-visit-content{padding:20px;max-height:calc(90vh - 140px);overflow-y:auto}.new-visit-actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #e0e0e0}.new-visit-actions .btn-cancel{padding:10px 20px;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer;font-size:14px}.new-visit-actions .btn-cancel:hover{background:#f5f5f5}.new-visit-actions .btn-upload{padding:10px 20px;border:none;background:#06c;color:#fff;border-radius:4px;cursor:pointer;font-size:14px}.new-visit-actions .btn-upload:hover{background:#05a}.new-visit-actions .btn-upload:disabled{background:#ccc;cursor:not-allowed}.new-visit-content .form-group{margin-bottom:0}.new-visit-content .form-group label{display:block;font-weight:500;font-size:14px;color:#333;margin-bottom:6px}.new-visit-content .form-group input,.new-visit-content .form-group select,.new-visit-content .form-group textarea{width:100%;padding:8px 12px;border:1px solid #ccc;border-radius:4px;font-size:14px;box-sizing:border-box}.new-visit-content .form-group input:focus,.new-visit-content .form-group select:focus,.new-visit-content .form-group textarea:focus{outline:none;border-color:#06c}.upload-status{padding:12px 16px;border-radius:4px;margin-top:12px}.upload-status.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.upload-status.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.upload-status.uploading{background:#e7f3ff;color:#004085;border:1px solid #b8daff}.spinner{width:20px;height:20px;border:2px solid #004085;border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}.patient-chart{display:flex;height:calc(100vh - 200px);background:#f5f5f5}.patient-chart.patient-chart-no-sidebar{display:block}.patient-chart-no-sidebar .chart-content{height:100%}.chart-sidebar{width:60px;background:#2c3e50;display:flex;flex-direction:column;padding:8px 0;flex-shrink:0}.sidebar-icon{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 4px;color:#bdc3c7;background:transparent;border:none;cursor:pointer;transition:all .2s ease;font-size:11px}.sidebar-icon:hover{background:#34495e;color:#fff}.sidebar-icon.active{background:#3498db;color:#fff}.sidebar-icon-symbol{font-size:20px;margin-bottom:4px}.sidebar-icon-label{font-size:10px;text-align:center}.chart-content{flex:1;overflow-y:auto;padding:16px}.chart-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;height:100%}.chart-summary-left{display:flex;flex-direction:column;gap:16px}.summary-box{background:#fff;border:1px solid #ddd;border-radius:4px;overflow:hidden}.summary-box-header{background:#f8f9fa;padding:10px 12px;font-weight:600;font-size:14px;color:#333;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;align-items:center}.summary-box-content{padding:12px;font-size:13px}.summary-box-content ul{list-style:none;padding:0;margin:0}.summary-box-content li{padding:4px 0;border-bottom:1px solid #f0f0f0}.summary-box-content li:last-child{border-bottom:none}.med-item{display:flex;align-items:flex-start;padding:6px 0;border-bottom:1px solid #f0f0f0}.med-item:last-child{border-bottom:none}.med-indicator{width:8px;height:8px;border-radius:50%;margin-right:8px;margin-top:4px;flex-shrink:0}.med-indicator.active{background:#27ae60}.med-indicator.inactive{background:#95a5a6}.med-name{font-size:13px;color:#333}.activity-panel{background:#fff;border:1px solid #ddd;border-radius:4px;height:100%;display:flex;flex-direction:column}.activity-tabs{display:flex;border-bottom:1px solid #ddd}.activity-tab{flex:1;padding:12px 16px;background:transparent;border:none;cursor:pointer;font-size:13px;color:#666;border-bottom:2px solid transparent}.activity-tab:hover{background:#f8f9fa}.activity-tab.active{color:#3498db;border-bottom-color:#3498db;font-weight:500}.activity-content{flex:1;padding:16px;overflow-y:auto}.visit-entry{margin-bottom:20px}.visit-entry-header{color:#3498db;font-size:14px;margin-bottom:4px;cursor:pointer}.visit-entry-header:hover{text-decoration:underline}.visit-entry-provider{font-size:12px;color:#666;margin-bottom:8px}.visit-entry-diagnosis{font-weight:600;font-size:13px;margin-bottom:4px}.visit-entry-description{font-size:13px;color:#333;margin-bottom:8px}.visit-entry-notes{font-size:12px;color:#555;line-height:1.5}.visit-entry-notes p{margin:4px 0}.visit-entry-change{background:#fff8e6;padding:8px;margin-top:8px;font-size:12px;border-left:3px solid #f1c40f}.followup-box{background:#fff;border:1px solid #ddd;border-radius:4px;margin-top:16px}.followup-header{padding:10px 12px;font-weight:600;font-size:14px;border-bottom:1px solid #ddd}.followup-content{padding:12px;font-size:13px;color:#666}.expanded-view{background:#fff;border:1px solid #ddd;border-radius:4px;height:100%;display:flex;flex-direction:column}.expanded-view-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #ddd;background:#f8f9fa}.expanded-view-title{font-size:16px;font-weight:600;display:flex;align-items:center;gap:8px}.expanded-view-actions{display:flex;gap:8px}.expanded-view-close{background:transparent;border:none;font-size:20px;cursor:pointer;color:#666;padding:4px 8px}.expanded-view-close:hover{color:#333}.expanded-view-content{flex:1;padding:16px;overflow-y:auto}.add-btn{background:transparent;border:1px solid #3498db;color:#3498db;padding:4px 12px;border-radius:4px;cursor:pointer;font-size:12px}.add-btn:hover{background:#3498db;color:#fff}.historical-badge{background:#e0e0e0;color:#666;padding:2px 8px;border-radius:10px;font-size:11px;margin-left:8px}.chart-search-input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;margin-bottom:16px}.chart-search-input:focus{outline:none;border-color:#3498db}.empty-state{text-align:center;padding:40px;color:#999;font-size:14px}.chart-table{width:100%;border-collapse:collapse}.chart-table th,.chart-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #eee}.chart-table th{background:#f8f9fa;font-weight:600;font-size:12px;color:#666}.chart-table td{font-size:13px}.chart-table tr:hover{background:#f8f9fa}.find-view{display:flex;flex-direction:column;height:100%}.find-view .expanded-view-header{padding:12px 16px}.find-view .expanded-view-title{flex:1;display:flex;align-items:center;gap:12px}.find-icon{font-size:24px;color:#666}.find-search-input{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;max-width:300px}.find-search-input:focus{outline:none;border-color:#3498db}.find-view-toggle{display:flex;border-bottom:1px solid #ddd;background:#f8f9fa}.toggle-btn{flex:1;padding:10px 16px;background:transparent;border:none;cursor:pointer;font-size:13px;color:#666;border-bottom:2px solid transparent;transition:all .2s ease}.toggle-btn:hover{background:#e2e8f0}.toggle-btn.active{color:#3498db;border-bottom-color:#3498db;font-weight:500;background:#fff}.find-view-content{flex:1;overflow-y:auto;padding:0}.category-list{display:flex;flex-direction:column}.category-group{border-bottom:1px solid #eee}.category-item{width:100%;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:transparent;border:none;cursor:pointer;font-size:14px;color:#333;text-align:left}.category-item:hover{background:#f8f9fa}.category-item.expanded{background:#e8f4fd;color:#1d4ed8}.category-label{flex:1}.category-arrow{color:#999;font-size:10px}.subcategory-list{background:#fafafa;border-top:1px solid #eee}.subcategory-group{border-bottom:1px solid #f0f0f0}.subcategory-group:last-child{border-bottom:none}.subcategory-item{width:100%;display:flex;justify-content:space-between;align-items:center;padding:10px 16px 10px 32px;background:transparent;border:none;cursor:pointer;font-size:13px;color:#555;text-align:left}.subcategory-item:hover{background:#f0f0f0}.subcategory-item.expanded{background:#e8f4fd;color:#1d4ed8}.subcategory-label{flex:1}.subcategory-documents{background:#fff;border-top:1px solid #eee}.document-list{display:flex;flex-direction:column}.document-item{display:flex;align-items:flex-start;padding:12px 16px;border-bottom:1px solid #eee;gap:12px}.document-item:hover{background:#f8f9fa}.document-item-nested{padding-left:48px}.document-item-indicator{color:#94a3b8;font-size:8px;margin-top:6px}.document-item-content{flex:1;min-width:0}.document-item-title{font-size:14px;color:#3498db;cursor:pointer}.document-item-title:hover{text-decoration:underline}.document-item-subtitle{font-size:12px;color:#666;margin-top:4px;line-height:1.4}.document-item-indent{padding-left:12px;color:#3498db}.document-item-date{font-size:12px;color:#999;white-space:nowrap}.patient-appointments{max-width:900px;padding:16px}.appointments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e0e0e0}.appointments-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#333}.appointments-summary{color:#666;font-size:.9rem}.appointments-loading,.appointments-error{padding:40px;text-align:center;color:#666;font-style:italic}.appointments-error{color:#dc3545}.appointments-section{margin-bottom:32px}.section-title{display:flex;align-items:center;gap:10px;margin:0 0 16px;font-size:1rem;font-weight:600;color:#333}.section-indicator{display:inline-block;width:12px;height:12px;border-radius:50%}.section-upcoming .section-indicator{background:#28a745}.section-past .section-indicator{background:#6c757d}.appointments-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.appointments-table thead{background:#f8f9fa}.appointments-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:.85rem;color:#555;border-bottom:1px solid #e0e0e0}.appointments-table td{padding:12px 16px;border-bottom:1px solid #eee}.appointments-table tbody tr:last-child td{border-bottom:none}.appointments-table tbody tr:hover{background:#f8f9fa}.appt-row-upcoming{border-left:3px solid #28a745}.appt-row-past{border-left:3px solid #6c757d}.appt-date{font-weight:500;color:#333;white-space:nowrap}.appt-time{color:#555;white-space:nowrap}.appt-type{color:#333}.status-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:.8rem;font-weight:500;text-transform:capitalize}.status-confirmed{background:#d4edda;color:#155724}.status-cancelled{background:#f8d7da;color:#721c24}.status-tentative{background:#fff3cd;color:#856404}.no-appointments{padding:24px;text-align:center;color:#888;font-style:italic;background:#f8f9fa;border-radius:8px;border:1px dashed #ddd}@media(max-width:600px){.appointments-header{flex-direction:column;align-items:flex-start;gap:8px}.appointments-table th,.appointments-table td{padding:10px 12px;font-size:.85rem}}.sms-history-container{padding:16px;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.sms-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.sms-history-header h3{margin:0;font-size:1.1rem;color:#1f2937}.sms-refresh-btn{padding:6px 12px;background:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;color:#4b5563;cursor:pointer;font-size:.875rem}.sms-refresh-btn:hover{background:#e5e7eb}.sms-history-loading,.sms-history-empty{padding:32px;text-align:center;color:#6b7280;font-style:italic}.sms-history-error{padding:16px;text-align:center;color:#dc2626;background:#fef2f2;border-radius:4px}.sms-history-table-wrapper{overflow-x:auto}.sms-history-table{width:100%;border-collapse:collapse;font-size:.875rem}.sms-history-table th{background:#f9fafb;padding:10px 12px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;white-space:nowrap}.sms-history-table td{padding:10px 12px;border-bottom:1px solid #f3f4f6;vertical-align:middle}.sms-history-table tbody tr:hover{background:#f9fafb}.sms-col-date{white-space:nowrap;color:#6b7280;min-width:140px}.sms-col-type{white-space:nowrap;font-size:.8rem;color:#4b5563}.sms-col-message{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1f2937}.sms-col-status{white-space:nowrap}.sms-col-replied{white-space:nowrap;color:#6b7280;font-size:.8rem}.sms-status-badge{display:inline-block;padding:4px 8px;border-radius:12px;font-size:.75rem;font-weight:500}.sms-status-confirmed{background:#d1fae5;color:#065f46}.sms-status-reschedule{background:#fef3c7;color:#92400e}.sms-status-cancelled{background:#fee2e2;color:#991b1b}.sms-status-pending{background:#e0e7ff;color:#3730a3}.sms-status-expired{background:#f3f4f6;color:#6b7280}.sms-status-unknown{background:#f3f4f6;color:#4b5563}.sms-history-legend{display:flex;gap:16px;margin-top:16px;padding-top:12px;border-top:1px solid #e5e7eb;font-size:.75rem;color:#6b7280}.sms-legend-item{display:flex;align-items:center;gap:4px}.sms-legend-item .sms-status-badge{padding:2px 6px;font-size:.7rem}.add-document-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.add-document-modal{background:#fff;border-radius:8px;width:500px;max-width:90vw;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.add-document-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e0e0e0;background:#f8f9fa;border-radius:8px 8px 0 0}.add-document-header h2{margin:0;font-size:18px;color:#333}.add-document-close{background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:0;line-height:1}.add-document-close:hover{color:#333}.add-document-body{padding:20px}.add-document-form{display:flex;flex-direction:column;gap:16px}.drop-zone{border:2px dashed #ccc;border-radius:8px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .2s ease;background:#fafafa}.drop-zone:hover{border-color:#06c;background:#f0f7ff}.drop-zone.drag-over{border-color:#06c;background:#e6f2ff}.drop-zone.has-file{border-color:#28a745;background:#f0fff4}.drop-zone-icon{font-size:48px;margin-bottom:12px}.drop-zone-text{color:#666;margin:0 0 8px}.drop-zone-hint{color:#999;font-size:12px;margin:0}.drop-zone-filename{color:#28a745;font-weight:500;margin:8px 0 0;word-break:break-all}.file-input-hidden{display:none}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-weight:500;color:#333;font-size:14px}.form-group input,.form-group select{padding:10px 12px;border:1px solid #ccc;border-radius:4px;font-size:14px}.form-group input:focus,.form-group select:focus{outline:none;border-color:#06c;box-shadow:0 0 0 2px #0066cc1a}.form-group .hint{font-size:12px;color:#666;margin:0}.add-document-actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #e0e0e0;background:#f8f9fa;border-radius:0 0 8px 8px}.btn-cancel{padding:10px 20px;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer;font-size:14px;color:#666}.btn-cancel:hover{background:#f0f0f0}.btn-upload{padding:10px 24px;border:none;background:#06c;color:#fff;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.btn-upload:hover:not(:disabled){background:#05a}.btn-upload:disabled{background:#ccc;cursor:not-allowed}.upload-status{padding:12px;border-radius:4px;text-align:center}.upload-status.uploading{background:#e6f2ff;color:#06c}.upload-status.success{background:#d4edda;color:#155724}.upload-status.error{background:#f8d7da;color:#721c24}.upload-progress{display:flex;align-items:center;gap:12px}.spinner{width:20px;height:20px;border:2px solid #0066cc;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.uploaded-link{display:block;margin-top:8px;color:#06c;text-decoration:none}.uploaded-link:hover{text-decoration:underline}.biopsy-selection{display:flex;flex-direction:column;gap:12px}.biopsy-selection-header h3{margin:0 0 8px;font-size:16px;color:#333}.biopsy-selection-header .hint{font-size:13px;color:#666;margin:0;line-height:1.4}.biopsy-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto;padding:4px}.biopsy-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;transition:all .2s ease;background:#fff}.biopsy-item:hover{border-color:#06c;background:#f8fbff}.biopsy-item.selected{border-color:#06c;background:#e6f2ff}.biopsy-item input[type=checkbox]{width:18px;height:18px;cursor:pointer;flex-shrink:0}.biopsy-info{flex:1;display:flex;flex-direction:column;gap:2px}.biopsy-date{font-weight:600;color:#333;font-size:14px}.biopsy-location{color:#06c;font-size:14px}.biopsy-details{color:#666;font-size:12px}.btn-same-date{padding:4px 8px;font-size:11px;background:#f0f0f0;border:1px solid #ccc;border-radius:4px;cursor:pointer;color:#666;white-space:nowrap;flex-shrink:0}.btn-same-date:hover{background:#e0e0e0;color:#333}.biopsy-link-success{color:#155724;font-weight:500;margin-top:8px}.biopsy-link-info{color:#666;font-style:italic;margin-top:8px}.sms-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.sms-modal{background:#fff;border-radius:8px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #00000026}.sms-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb;background:#f8fafc;border-radius:8px 8px 0 0}.sms-modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#1e293b}.sms-modal-close{background:none;border:none;font-size:1.5rem;color:#64748b;cursor:pointer;padding:0;line-height:1}.sms-modal-close:hover{color:#1e293b}.sms-modal-body{padding:1.5rem}.sms-patient-info{background:#f1f5f9;padding:1rem;border-radius:6px;margin-bottom:1.5rem}.sms-info-row{display:flex;gap:.5rem;margin-bottom:.5rem}.sms-info-row:last-child{margin-bottom:0}.sms-label{font-weight:600;color:#475569;min-width:60px}.sms-value{color:#1e293b}.sms-no-phone{color:#dc2626;font-style:italic}.sms-message-section{display:flex;flex-direction:column;gap:1rem}.sms-toggle-row{margin-bottom:.5rem}.sms-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:#475569}.sms-toggle input{width:16px;height:16px;cursor:pointer}.sms-template-select label,.sms-custom-message label,.sms-preview label{display:block;font-weight:600;color:#374151;margin-bottom:.5rem;font-size:.875rem}.sms-template-select select{width:100%;padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;background:#fff;cursor:pointer}.sms-template-select select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.sms-custom-message textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;font-family:inherit;resize:vertical;min-height:100px}.sms-custom-message textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.sms-char-count{text-align:right;font-size:.75rem;color:#6b7280;margin-top:.25rem}.sms-preview{margin-top:.5rem}.sms-preview-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:.75rem;font-size:.875rem;color:#334155;min-height:60px;line-height:1.5}.sms-preview-box em{color:#94a3b8}.sms-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:.75rem;border-radius:6px;font-size:.875rem;margin-top:1rem}.sms-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a;padding:.75rem;border-radius:6px;font-size:.875rem;margin-top:1rem;text-align:center;font-weight:500}.sms-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f8fafc;border-radius:0 0 8px 8px}.sms-btn{padding:.625rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.sms-btn:disabled{opacity:.6;cursor:not-allowed}.sms-btn-cancel{background:#fff;border:1px solid #d1d5db;color:#374151}.sms-btn-cancel:hover:not(:disabled){background:#f3f4f6}.sms-btn-send{background:#2563eb;border:1px solid #2563eb;color:#fff}.sms-btn-send:hover:not(:disabled){background:#1d4ed8}.ssl-error-banner{position:fixed;top:0;left:0;right:0;background-color:#fff3cd;border-bottom:2px solid #ffc107;padding:12px 20px;z-index:9999;box-shadow:0 2px 8px #00000026}.ssl-error-content{display:flex;align-items:center;gap:16px;max-width:1200px;margin:0 auto}.ssl-error-icon{font-size:24px;flex-shrink:0}.ssl-error-text{flex:1}.ssl-error-text strong{display:block;color:#856404;font-size:14px;margin-bottom:2px}.ssl-error-text p{margin:0;color:#856404;font-size:13px}.ssl-error-actions{display:flex;gap:8px;flex-shrink:0}.ssl-btn-revalidate{padding:8px 16px;font-size:13px;font-weight:500;background-color:#ffc107;color:#212529;border:none;border-radius:4px;cursor:pointer;transition:background-color .2s}.ssl-btn-revalidate:hover{background-color:#e0a800}.ssl-btn-retry{padding:8px 16px;font-size:13px;font-weight:500;background-color:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background-color .2s}.ssl-btn-retry:hover{background-color:#218838}.start-visit-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.start-visit-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000004d;width:400px;max-width:90vw}.start-visit-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e0e0e0;background:#f8f9fa;border-radius:8px 8px 0 0}.start-visit-modal-header h2{margin:0;font-size:18px;color:#333}.modal-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:0;line-height:1}.modal-close-btn:hover{color:#333}.start-visit-modal-body{padding:20px}.patient-info-section{background:#f0f7ff;border-radius:6px;padding:12px 16px;margin-bottom:20px}.patient-info-row{display:flex;justify-content:space-between;padding:4px 0}.info-label{color:#666;font-size:14px}.info-value{font-weight:500;color:#333;font-size:14px}.info-value.waiting-time{color:#d32f2f;font-weight:600}.role-selection-section{margin-bottom:16px}.role-prompt{margin:0 0 12px;font-weight:500;color:#333}.role-option{display:flex;align-items:center;padding:12px 16px;margin-bottom:8px;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;transition:all .2s ease}.role-option:hover{border-color:#1976d2;background:#f5f9ff}.role-option.selected{border-color:#1976d2;background:#e3f2fd}.role-option input[type=radio]{margin-right:12px;width:18px;height:18px;accent-color:#1976d2}.role-label{font-size:15px;color:#333}.staff-message{background:#fff3e0;border:1px solid #ffb74d;border-radius:6px;padding:12px 16px;color:#e65100;font-size:14px;text-align:center}.staff-hint{display:block;margin-top:8px;color:#666;font-size:13px}.start-visit-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #e0e0e0;background:#f8f9fa;border-radius:0 0 8px 8px}.btn-cancel{padding:10px 20px;border:1px solid #ccc;background:#fff;border-radius:6px;cursor:pointer;font-size:14px;color:#666}.btn-cancel:hover:not(:disabled){background:#f5f5f5}.btn-cancel:disabled{opacity:.6;cursor:not-allowed}.btn-cancel-visit{padding:10px 20px;border:none;background:#f44336;color:#fff;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-cancel-visit:hover:not(:disabled){background:#d32f2f}.btn-cancel-visit:disabled{background:#ffcdd2;cursor:not-allowed}.btn-start-visit{padding:10px 24px;border:none;background:#4caf50;color:#fff;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-start-visit:hover:not(:disabled){background:#43a047}.btn-start-visit:disabled{background:#c8e6c9;cursor:not-allowed}.checkout-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.checkout-modal{background:#fff;border-radius:8px;width:90%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #00000026}.checkout-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e0e0e0;background:#f97316;color:#fff;border-radius:8px 8px 0 0}.checkout-modal-header h2{margin:0;font-size:1.25rem;font-weight:600}.checkout-modal-header .modal-close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#fff;line-height:1;padding:0}.checkout-modal-header .modal-close-btn:hover{opacity:.8}.checkout-modal-body{padding:20px}.checkout-patient-info{background:#f8f9fa;border-radius:6px;padding:12px 16px;margin-bottom:20px}.checkout-patient-info .info-row{display:flex;margin-bottom:6px}.checkout-patient-info .info-row:last-child{margin-bottom:0}.checkout-patient-info .info-label{font-weight:500;color:#666;width:70px}.checkout-patient-info .info-value{color:#333;font-weight:500}.checkout-estimate-section{margin-bottom:20px}.estimate-label{display:block;font-weight:600;color:#333;margin-bottom:8px}.estimate-input{width:100%;padding:12px;font-size:1.25rem;border:2px solid #e0e0e0;border-radius:6px;box-sizing:border-box}.estimate-input:focus{outline:none;border-color:#f97316}.estimate-loading{padding:12px;color:#666;font-style:italic}.estimate-hint{margin:8px 0 0;font-size:.85rem;color:#888}.checkout-followup-section{margin-bottom:20px}.btn-schedule-followup{width:100%;padding:12px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-schedule-followup:hover{background:#2563eb}.checkout-fullworkflow-section{margin-bottom:20px;padding-top:16px;border-top:1px solid #e0e0e0}.btn-full-checkout{width:100%;padding:12px;background:#f97316;color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-full-checkout:hover{background:#ea580c}.fullworkflow-hint{margin:8px 0 0;font-size:.85rem;color:#888;text-align:center}.checkout-error{background:#fee2e2;border:1px solid #fca5a5;color:#dc2626;padding:12px;border-radius:6px;margin-top:16px}.checkout-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #e0e0e0;background:#f8f9fa;border-radius:0 0 8px 8px}.checkout-modal-footer .btn-cancel{padding:10px 20px;background:#e5e7eb;color:#374151;border:none;border-radius:6px;font-size:.95rem;cursor:pointer;transition:background .2s}.checkout-modal-footer .btn-cancel:hover:not(:disabled){background:#d1d5db}.checkout-modal-footer .btn-complete-checkout{padding:10px 24px;background:#16a34a;color:#fff;border:none;border-radius:6px;font-size:.95rem;font-weight:500;cursor:pointer;transition:background .2s}.checkout-modal-footer .btn-complete-checkout:hover:not(:disabled){background:#15803d}.checkout-modal-footer .btn-complete-checkout:disabled,.checkout-modal-footer .btn-cancel:disabled{opacity:.6;cursor:not-allowed}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f5}.placeholder{display:flex;align-items:center;justify-content:center;height:200px;background:#fff;border:2px dashed #e5e7eb;border-radius:8px;color:#9ca3af;font-size:16px;margin:20px}.patient-view{display:flex;flex-direction:column;height:100%}.patient-selected-banner{display:flex;align-items:center;gap:16px;padding:12px 20px;background:#2563eb;color:#fff}.patient-selected-banner strong{font-size:18px}.patient-selected-banner .patient-info{font-size:14px;opacity:.9}.close-patient-btn{margin-left:auto;background:transparent;border:none;color:#fff;font-size:18px;cursor:pointer;padding:4px 8px;border-radius:4px}.close-patient-btn:hover{background:#fff3}.workflow-view{display:flex;flex-direction:column;height:100%;padding:20px}.workflow-header{margin-bottom:20px}.workflow-header h2{color:#1f2937;margin-bottom:4px}.workflow-header p{color:#6b7280;font-size:14px}.workflow-view .placeholder{flex-direction:column;height:auto;padding:40px;margin:0}.workflow-view .placeholder h3{color:#d97706;margin-bottom:8px}.workflow-view .placeholder ul{list-style-type:disc;padding-left:20px;color:#6b7280}.workflow-view .placeholder li{margin:4px 0}.checkin-container{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;display:flex;justify-content:center;align-items:flex-start}.checkin-card{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;width:100%;max-width:800px;margin:20px auto;overflow:hidden}.checkin-header{background:linear-gradient(135deg,#1e3a5f,#2d5a87);color:#fff;padding:24px 32px;text-align:center}.checkin-header h1{margin:0 0 8px;font-size:28px;font-weight:600}.checkin-header p{margin:0;opacity:.9;font-size:16px}.checkin-content{padding:24px 32px;max-height:calc(100vh - 250px);overflow-y:auto}.checkin-scrollable{max-height:calc(100vh - 200px);overflow-y:auto;padding-right:8px}.checkin-footer{display:flex;justify-content:space-between;padding:20px 32px;background:#f8f9fa;border-top:1px solid #e9ecef}.checkin-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #e9ecef}.checkin-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.checkin-section-title{font-size:18px;font-weight:600;color:#1e3a5f;margin:0 0 16px}.checkin-section-subtitle{font-size:14px;color:#6b7280;margin:-8px 0 12px}.checkin-subsection{margin-top:16px;padding-top:16px;border-top:1px dashed #e9ecef}.checkin-form-group{margin-bottom:16px;flex:1}.checkin-inline{display:flex;align-items:center;gap:12px;margin:8px 0 8px 36px}.checkin-inline .checkin-label{margin-bottom:0;white-space:nowrap}.checkin-row{display:flex;gap:16px;flex-wrap:wrap}.checkin-row .checkin-form-group{min-width:150px}.checkin-label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:6px}.checkin-input,.checkin-textarea{width:100%;padding:14px 16px;font-size:16px;border:2px solid #e5e7eb;border-radius:8px;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.checkin-input:focus,.checkin-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.checkin-input:disabled{background-color:#f3f4f6;cursor:not-allowed}.checkin-input-small{width:80px;padding:10px 12px}.checkin-textarea{min-height:120px;resize:vertical;font-family:inherit}select.checkin-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236b7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:20px;padding-right:44px}.checkin-dob-fields{display:flex;align-items:center;gap:8px}.checkin-dob-input{width:70px;text-align:center;padding:14px 8px}.checkin-dob-input.checkin-dob-year{width:90px}.checkin-dob-separator{font-size:24px;font-weight:300;color:#9ca3af;-webkit-user-select:none;user-select:none}@media(pointer:coarse){.checkin-dob-input{width:80px;padding:16px 8px;font-size:20px}.checkin-dob-input.checkin-dob-year{width:100px}.checkin-dob-separator{font-size:28px}}.checkin-btn{padding:14px 28px;font-size:16px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s;min-height:50px}.checkin-btn:disabled{opacity:.6;cursor:not-allowed}.checkin-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.checkin-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.checkin-btn-secondary{background:#f3f4f6;color:#374151}.checkin-btn-secondary:hover:not(:disabled){background:#e5e7eb}.checkin-btn-small{padding:8px 16px;font-size:14px;min-height:auto}.checkin-checkbox-label,.checkin-radio-label{display:flex;align-items:flex-start;gap:12px;padding:12px;cursor:pointer;border-radius:8px;transition:background-color .2s}.checkin-checkbox-label:hover,.checkin-radio-label:hover{background-color:#f8f9fa}.checkin-checkbox-label input[type=checkbox],.checkin-radio-label input[type=radio]{width:22px;height:22px;margin:0;flex-shrink:0;cursor:pointer;accent-color:#667eea}.checkin-checkbox-label span,.checkin-radio-label span{font-size:15px;line-height:1.5;color:#374151}.checkin-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.checkin-checkbox{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.checkin-checkbox:hover{background:#f0f4ff;border-color:#c7d2fe}.checkin-checkbox.selected{background:#eef2ff;border-color:#667eea}.checkin-checkbox input[type=checkbox]{width:20px;height:20px;margin:0;flex-shrink:0;cursor:pointer;accent-color:#667eea}.checkin-checkbox span{font-size:14px;color:#374151;line-height:1.3}.consent-item{background:#f8f9fa;margin-bottom:8px;border:1px solid #e9ecef}.consent-item:hover{background:#f0f1f3}.checkin-alert{padding:16px 20px;border-radius:8px;margin-bottom:20px;font-size:15px}.checkin-alert-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.checkin-alert-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a}.checkin-text-center{text-align:center}.checkin-text-muted{color:#6b7280;font-size:14px}.required-indicator{color:#dc2626}.lookup-result-item{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;margin-bottom:12px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:12px;cursor:pointer;transition:all .2s}.lookup-result-item:hover{border-color:#667eea;background:#f0f4ff;transform:translate(4px)}.lookup-result-name{font-size:18px;font-weight:600;color:#1e3a5f}.lookup-result-details{font-size:14px;color:#6b7280;margin-top:4px}.checkin-complete{text-align:center;padding:60px 40px}.checkin-complete-icon{width:100px;height:100px;background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:48px;color:#fff;margin:0 auto 24px;box-shadow:0 8px 24px #22c55e4d}.checkin-complete h2{font-size:32px;color:#1e3a5f;margin:0 0 16px}.checkin-complete p{font-size:18px;color:#6b7280;margin:0;line-height:1.6}.signature-pad-container{margin-bottom:16px}.signature-pad-wrapper{position:relative}.signature-canvas{display:block;background:#fff}.signature-pad-line{position:absolute;bottom:40px;left:20px;right:20px;height:1px;background:#ccc;pointer-events:none}.signature-pad-actions{display:flex;align-items:center;margin-top:12px}.signature-status{font-size:14px;font-weight:500}.signature-instructions{margin:0}.verify-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.verify-section-header .checkin-section-title{margin:0}.verify-display-value{font-size:16px;color:#374151;line-height:1.6;margin:0;padding:12px 16px;background:#f8f9fa;border-radius:8px}.verify-edit-fields{padding:16px;background:#f0f4ff;border-radius:8px;border:1px solid #667eea}.medical-current-list{background:#f8f9fa;padding:16px 20px;border-radius:8px}.medical-current-list ul{margin:0;padding-left:20px}.medical-current-list li{padding:4px 0;font-size:15px}.medical-current-value{background:#f8f9fa;padding:16px 20px;border-radius:8px}.medical-update-choice{display:flex;gap:24px}.concerns-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}.concern-option{background:#f8f9fa;border:1px solid #e9ecef;margin:0}.concern-option:hover{background:#f0f1f3}.consent-legal-text{font-size:14px;line-height:1.6;color:#374151}.consent-legal-text h3{color:#1e3a5f}.consent-legal-text ul{margin:8px 0;padding-left:24px}.consent-legal-text li{margin-bottom:4px}.consent-sub-fields{background:#f8f9fa;padding:16px;border-radius:8px;margin-bottom:12px}.consent-fees-section{padding-left:16px;border-left:3px solid #e9ecef}@media(max-width:600px){.checkin-container{padding:10px}.checkin-card{margin:10px auto;border-radius:12px}.checkin-header{padding:20px}.checkin-header h1{font-size:24px}.checkin-content{padding:20px}.checkin-footer{padding:16px 20px;flex-direction:column;gap:12px}.checkin-footer .checkin-btn{width:100%}.checkin-row{flex-direction:column}.checkin-row .checkin-form-group{min-width:100%}.medical-update-choice{flex-direction:column;gap:8px}.concerns-grid{grid-template-columns:1fr}.verify-section-header{flex-direction:column;align-items:flex-start;gap:8px}.checkin-dob-fields{flex-wrap:wrap}.checkin-checkbox-grid{grid-template-columns:1fr}.checkin-inline{margin-left:0;flex-direction:column;align-items:flex-start}}@media(pointer:coarse){.checkin-btn{min-height:60px}.checkin-input,.checkin-textarea{padding:16px;font-size:18px}.checkin-checkbox-label input[type=checkbox],.checkin-radio-label input[type=radio]{width:28px;height:28px}.lookup-result-item{padding:20px 24px}.checkin-checkbox{padding:14px 16px}.checkin-checkbox input[type=checkbox]{width:24px;height:24px}.checkin-checkbox span{font-size:15px}}.setup-card{max-width:600px}.setup-subtitle{color:#6b7280;font-size:14px;margin-top:4px}.setup-content{padding:24px 0}.setup-status-section{background:#f9fafb;border-radius:8px;padding:20px;margin-bottom:24px}.setup-status-section h3{margin:0 0 12px;font-size:16px;color:#374151}.setup-status-row{display:flex;align-items:center;gap:12px}.setup-status-dot{font-size:24px;line-height:1}.setup-status-checking{color:#f59e0b;animation:pulse 1s infinite}.setup-status-connected{color:#10b981}.setup-status-error{color:#ef4444}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.setup-status-text{font-size:16px;color:#1f2937}.setup-error-message{margin-top:12px;padding:12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:14px}.setup-instructions{margin-bottom:24px}.setup-instructions h3{margin:0 0 12px;font-size:16px;color:#374151}.setup-instructions ol{margin:0;padding-left:24px;color:#4b5563;line-height:1.8}.setup-instructions li{margin-bottom:8px}.setup-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.setup-btn-cert{background:#f59e0b;color:#fff}.setup-btn-cert:hover{background:#d97706}.setup-btn-launch{font-size:20px;padding:20px 32px}.setup-btn-launch:disabled{background:#d1d5db;cursor:not-allowed}.setup-server-info{padding-top:16px;border-top:1px solid #e5e7eb;font-size:12px;color:#9ca3af}.setup-server-info p{margin:0}
