@charset "UTF-8";*,:after,:before{box-sizing:border-box}body,html{margin:0;max-width:100vw;overflow-x:hidden;padding:0;width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{align-items:center;background:linear-gradient(120deg,#89f7fe,#66a6ff);display:flex;justify-content:center;min-height:100vh;padding:1rem}.login-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffbf;border:1px solid #ffffff38;border-radius:18px;box-shadow:0 8px 32px 0 #1f26872b;max-width:400px;padding:2.5rem 2rem;transition:transform .2s,box-shadow .2s;width:100%}@media (max-width:768px){.login-card{border-radius:12px;max-width:100%;padding:2rem 1.5rem}}@media (max-width:480px){.login-card{padding:1.5rem 1rem}}@media (min-width:769px){.login-card:hover{box-shadow:0 16px 40px 0 #1f26873b;transform:translateY(-4px) scale(1.02)}}.login-header{margin-bottom:2rem;text-align:center}.login-header h1{color:#2980b9;font-size:2.2rem;font-weight:700;letter-spacing:1px;margin-bottom:.5rem;text-shadow:0 2px 8px #b3e0ff33}@media (max-width:768px){.login-header h1{font-size:1.8rem}}@media (max-width:480px){.login-header h1{font-size:1.5rem}.login-header{margin-bottom:1.5rem}}.login-header p{color:#7f8c8d;font-size:1.05rem;margin-bottom:.5rem}.login-form{display:flex;flex-direction:column;gap:1.5rem}@media (max-width:480px){.login-form{gap:1.25rem}}.form-group{gap:.5rem}.form-group label{color:#2c3e50;font-weight:600}.form-group input,.login-form input{background:#ffffffe6;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 8px #6495ed0a;font-size:1rem;outline:none;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s}@media (max-width:768px){.form-group input,.login-form input{font-size:1.1rem;padding:1rem 1.25rem}}@media (max-width:480px){.form-group input,.login-form input{border-radius:10px;font-size:1.15rem;padding:1.1rem 1.25rem}}.form-group input:focus,.login-form input:focus{border-color:#66a6ff;box-shadow:0 0 0 2px #89f7fe55;outline:none}.login-button,.login-form button[type=submit]{background-color:#2980b9;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem;transition:background-color .2s,transform .2s}@media (max-width:768px){.login-button,.login-form button[type=submit]{font-size:1.1rem;padding:1rem}}@media (max-width:480px){.login-button,.login-form button[type=submit]{border-radius:10px;font-size:1.15rem;padding:1.2rem}}button[type=submit]:focus,button[type=submit]:hover{background:linear-gradient(90deg,#89f7fe,#66a6ff);transform:scale(1.03)}@media (max-width:768px){button[type=submit]:focus,button[type=submit]:hover{transform:scale(1.01)}}.login-button:disabled,.login-form button[type=submit]:disabled{background-color:#95a5a6;cursor:not-allowed;transform:none}.error-message{background:#ffebee;background-color:#ffebee;border:1px solid #e57373;border-radius:6px;border-radius:4px;color:#c0392b;color:#c62828;font-size:1rem;font-size:.9rem;margin-bottom:.5rem;padding:.75rem;text-align:center}.password-input-wrapper input{padding-right:48px}.login-form .toggle-password{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:4px;position:absolute;right:12px;transition:color .2s}.login-form .toggle-password:hover{color:#2980b9}.language-switcher{background:#fff9;border:1px solid #0000000f;border-radius:10px;display:flex;gap:6px;padding:4px}.lang-btn{background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;font-size:12px;font-weight:600;letter-spacing:.5px;padding:8px 14px;transition:all .2s ease}.lang-btn:hover:not(:disabled){background:#4a6da71a;color:#4a6da7}.lang-btn.active{background:linear-gradient(135deg,#4a6da7,#2d9cdb);box-shadow:0 2px 8px #4a6da74d;color:#fff;cursor:default}.lang-btn:disabled{opacity:1}.change-password-modal{animation:modal-appear .2s ease-out;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;max-width:420px;overflow:hidden;width:100%}.change-password-header{align-items:center;background:linear-gradient(135deg,#4a6da7,#2d9cdb);color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.header-title{align-items:center;display:flex;gap:12px}.change-password-header h3{font-size:18px;font-weight:600;margin:0}.close-button{align-items:center;border-radius:4px;display:flex;justify-content:center;padding:4px;transition:background-color .2s}.close-button svg{stroke:#fff;color:#fff}.close-button:hover{background-color:#ffffff4d}.change-password-body{padding:24px}.error-message{background:#fee2e2;border-radius:8px;color:#dc2626;font-size:14px;margin-bottom:16px;padding:12px 16px}.form-group{margin-bottom:20px}.form-group:last-child{margin-bottom:0}.form-group label{display:block;font-size:14px;margin-bottom:8px}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-input-wrapper input{border:1px solid #d1d5db;border-radius:8px;font-size:14px;padding:12px 44px 12px 16px;transition:border-color .2s,box-shadow .2s;width:100%}.password-input-wrapper input:focus{border-color:#4a6da7;box-shadow:0 0 0 3px #4a6da71a;outline:none}.password-input-wrapper input:disabled{background:#f3f4f6;cursor:not-allowed}.toggle-password{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:4px;position:absolute;right:12px;transition:color .2s}.toggle-password:hover{color:#4a6da7}.hint{color:#6b7280}.field-error,.hint{display:block;font-size:12px;margin-top:6px}.field-error{color:#dc2626}.password-input-wrapper.input-error input,input.input-error{border-color:#dc2626}.password-input-wrapper.input-error input:focus,input.input-error:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.change-password-footer{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.change-password-footer .secondary-button{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.change-password-footer .secondary-button:hover:not(:disabled){background:#f3f4f6}.change-password-footer .secondary-button:disabled{cursor:not-allowed;opacity:.6}.change-password-footer .primary-button{background:linear-gradient(135deg,#4a6da7,#2d9cdb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.change-password-footer .primary-button:hover:not(:disabled){box-shadow:0 4px 12px #4a6da74d;transform:translateY(-1px)}.change-password-footer .primary-button:disabled{cursor:not-allowed;opacity:.6}.change-password-success{padding:40px 24px;text-align:center}.success-icon{align-items:center;background:#10b981;border-radius:50%;color:#fff;display:flex;font-size:28px;height:60px;justify-content:center;margin:0 auto 16px;width:60px}.change-password-success p{color:#333;font-size:16px;font-weight:500;margin:0}.user-menu-container{display:inline-block;position:relative}.menu-toggle-button{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:12px;box-shadow:0 4px 15px #0000001a;color:#fff;cursor:pointer;display:flex;height:44px;justify-content:center;transition:all .3s ease;width:44px}.menu-toggle-button:hover{background:#ffffff4d;box-shadow:0 6px 20px #00000026;transform:translateY(-2px)}.menu-toggle-button:active{transform:translateY(0)}.user-dropdown{animation:dropdown-appear .25s ease-out;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffffd9;border:1px solid #ffffff80;border-radius:16px;box-shadow:0 8px 32px #0000001f;overflow:hidden;position:absolute;right:0;top:calc(100% + 12px);width:300px;z-index:1100}@keyframes dropdown-appear{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.user-dropdown-header{background:linear-gradient(135deg,#4a6da71a,#2d9cdb1a);border-bottom:1px solid #0000000f;padding:24px 20px}.user-large-avatar{align-items:center;background:linear-gradient(135deg,#4a6da7,#2d9cdb);border-radius:16px;box-shadow:0 4px 12px #4a6da74d;color:#fff;display:flex;height:56px;justify-content:center;margin-right:16px;width:56px}.user-large-avatar span{font-size:22px;font-weight:600}.user-details{flex:1 1}.user-details h3{color:#1a1a2e;font-size:16px;font-weight:600;margin:0 0 4px}.user-details p{color:#64748b;font-size:13px;margin:0}.language-section{background:#ffffff80;border-bottom:1px solid #0000000f;padding:16px 20px}.language-section h4{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.menu-items{padding:8px}.menu-item{align-items:center;background:#0000;border:none;border-radius:10px;color:#334155;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.menu-item:hover{background:#4a6da71a}.menu-icon{align-items:center;background:#fffc;border-radius:8px;box-shadow:0 2px 6px #0000000f;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.menu-item:hover .menu-icon{transform:scale(1.05)}.menu-footer{background:#ffffff80;border-top:1px solid #0000000f;padding:12px}.logout-btn{align-items:center;background:#ef444414;border:1px solid #ef444433;border-radius:10px;color:#dc2626;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;padding:12px 16px;transition:all .2s ease;width:100%}.logout-btn:hover{background:#ef444426;border-color:#ef44444d}.logout-btn .menu-icon{background:#ef44441a;color:#dc2626}.dashboard-btn .menu-icon{background:#4a6da71a;color:#4a6da7}.patients-btn .menu-icon{background:#2d9cdb1a;color:#2d9cdb}.appointments-btn .menu-icon{background:#f59e0b1a;color:#f59e0b}.change-password-btn .menu-icon{background:#8b5cf61a;color:#8b5cf6}.dashboard-container{display:flex;flex-direction:column;min-height:100vh}.dashboard-header{align-items:center;background-color:#2980b9;box-shadow:0 2px 4px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:1rem 2rem}.dashboard-header h1{font-size:1.5rem;margin:0}.user-info{align-items:center;display:flex;gap:1rem}.logout-button{background-color:#fff3;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem 1rem;transition:background-color .2s}.logout-button:hover{background-color:#ffffff4d}.dashboard-content{background-color:#f8f9fa;flex:1 1;padding:2rem}.welcome-message{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin:0 auto;max-width:800px;padding:2rem}.welcome-message h2{color:#2c3e50;margin-bottom:1rem;margin-top:0}.welcome-message p{color:#7f8c8d;line-height:1.6}@media (max-width:768px){.dashboard-header{flex-wrap:wrap;gap:.5rem;padding:1rem}.dashboard-header h1{font-size:1.25rem}.dashboard-content{flex-direction:column!important;gap:20px!important;margin-top:16px!important;padding:1rem}.welcome-message{padding:1.5rem}.logout-button{font-size:.9rem;padding:.6rem 1rem}}@media (max-width:480px){.dashboard-header{padding:.75rem}.dashboard-header h1{font-size:1.1rem}.dashboard-content{margin-top:12px!important;padding:.75rem}.welcome-message{border-radius:12px;padding:1rem}.welcome-message h2{font-size:1.1rem}.welcome-message p{font-size:.95rem}.user-info{gap:.5rem}.logout-button{font-size:.85rem;padding:.5rem .75rem}}.dashboard-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr);width:100%}.dashboard-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:20px}.dashboard-error,.dashboard-loading{padding:40px;text-align:center;width:100%}.dashboard-error{color:#e74c3c}@media (max-width:768px){.dashboard-grid{gap:16px;grid-template-columns:1fr}.dashboard-card{padding:16px}}@media (max-width:480px){.dashboard-grid{gap:12px}.dashboard-card{-webkit-overflow-scrolling:touch;border-radius:8px;overflow-x:auto;padding:12px}}.chart-container{-webkit-overflow-scrolling:touch}.chart-container::-webkit-scrollbar{height:6px}.chart-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.chart-container::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.chart-container::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.modal-overlay{overflow:hidden;padding:0}.patient-info-container,.patient-modal-content{box-sizing:border-box;overflow-x:hidden}.patient-info-container{overflow-y:auto;padding:24px;width:100%}.patient-header{align-items:center;border-bottom:1px solid #eaeaea;display:flex;margin-bottom:24px;padding-bottom:16px}.patient-avatar.large{align-items:center;background-color:#3498db;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:2rem;height:80px;justify-content:center;margin-right:20px;width:80px}.patient-name-info h3{color:#2c3e50;font-size:1.8rem;margin:0 0 8px}.patient-dni,.patient-id{color:#7f8c8d;font-size:.9rem;margin:4px 0}.label{color:#34495e;font-weight:600}.patient-details{display:flex;flex-direction:column;gap:24px}.detail-section{background-color:#f8f9fa;border-radius:8px;box-shadow:0 1px 3px #0000000d;padding:16px}.detail-section h4{border-bottom:2px solid #3498db;color:#2c3e50;display:inline-block;font-size:1.1rem;margin:0 0 12px;padding-bottom:8px}.detail-grid{grid-gap:16px;box-sizing:border-box;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));width:100%}.detail-item{display:flex;flex-direction:column;gap:4px;overflow-wrap:break-word;word-break:break-word}.detail-item.full-width{grid-column:1/-1}.appointments-summary{display:flex;flex-wrap:wrap;gap:24px}.appointment-stat{align-items:center;background-color:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;min-width:120px;padding:12px 16px}.stat-value{color:#3498db;font-size:1.2rem;font-weight:600}.stat-label{color:#7f8c8d;font-size:.8rem;margin-top:4px}.patient-notes{background-color:#fff;border-left:3px solid #3498db;border-radius:4px;color:#555;line-height:1.5;padding:12px;white-space:pre-line}.primary-button:hover{background-color:#2980b9}.secondary-button:hover{background-color:#dfe6e9;color:#2c3e50}@media (max-width:768px){.patient-modal-content{max-height:95vh;width:95%}.modal-header{padding:14px 18px}.modal-header h2{font-size:1.3rem}.patient-info-container{padding:18px}.patient-header{align-items:flex-start;flex-direction:column}.patient-avatar.large{margin-bottom:16px;margin-right:0}.patient-name-info h3{font-size:1.5rem}.detail-grid{grid-template-columns:1fr}.appointments-summary{flex-direction:column;gap:12px}.appointment-stat{flex-direction:row;justify-content:space-between;padding:14px 16px;width:100%}.modal-footer{padding:14px 18px}.primary-button,.secondary-button{font-size:.95rem;padding:10px 18px}}@media (max-width:480px){.modal-overlay{left:0!important;overflow:hidden!important;right:0!important}.modal-overlay,.patient-modal-content{margin:0!important;max-width:100vw!important;padding:0!important;width:100vw!important}.patient-modal-content{border-radius:0!important;height:100vh!important;max-height:100vh!important;min-width:0!important;overflow-x:hidden!important}.modal-header{border-radius:0;box-sizing:border-box;flex-shrink:0;padding:12px 16px;width:100%}.modal-header h2{flex:1 1;font-size:1.15rem;min-width:0}.close-button{flex-shrink:0;font-size:1.75rem;padding:4px 8px}.patient-info-container{box-sizing:border-box;flex:1 1;overflow-x:hidden;overflow-y:auto;padding:16px;width:100%}.patient-header{margin-bottom:20px;padding-bottom:14px}.patient-avatar.large{font-size:1.5rem;height:64px;margin-bottom:12px;width:64px}.patient-name-info h3{font-size:1.25rem;margin-bottom:6px}.patient-dni,.patient-id{font-size:.85rem}.patient-details{gap:16px}.detail-section{border-radius:10px;box-sizing:border-box;overflow:hidden;padding:14px;width:100%}.detail-section h4{font-size:1rem;margin-bottom:10px;padding-bottom:6px}.detail-grid{gap:12px;grid-template-columns:1fr}.detail-item{font-size:.9rem}.detail-item span{word-break:break-word}.label{font-size:.85rem}.appointments-summary{gap:10px}.appointment-stat{border-radius:8px;padding:12px 14px}.stat-value{font-size:1.1rem}.stat-label{font-size:.75rem}.patient-notes{font-size:.9rem;padding:10px;word-break:break-word}.modal-footer{border-radius:0;box-sizing:border-box;flex-direction:column;flex-shrink:0;gap:10px;padding:12px 16px;width:100%}.primary-button,.secondary-button{border-radius:8px;font-size:1rem;padding:14px 20px;width:100%}.patient-details,.patient-header{box-sizing:border-box;width:100%}.patient-name-info{min-width:0;width:100%}}.modal-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background-color:#00000080;bottom:0;left:0;right:0;top:0}.patient-modal-content{animation:modal-appear .3s ease-out;background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow-y:auto;width:90%}@keyframes modal-appear{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{background-color:#f8f9fa;border-bottom:1px solid #eaeaea;border-radius:8px 8px 0 0;padding:16px 24px}.modal-header h2{color:#2c3e50;font-size:1.5rem;margin:0}.close-button{background:none;color:#7f8c8d;font-size:1.5rem;transition:color .2s}.close-button:hover{color:#e74c3c}.patient-form-container{overflow-y:auto;padding:24px}.form-error-message{background-color:#fee2e2;border-left:4px solid #ef4444;border-radius:6px;color:#b91c1c;margin-bottom:16px;padding:12px}.form-section{background-color:#f8f9fa;border-radius:8px;box-shadow:0 1px 3px #0000000d;margin-bottom:24px;padding:16px}.form-section h4{border-bottom:2px solid #3498db;color:#2c3e50;display:inline-block;font-size:1.1rem;margin:0 0 12px;padding-bottom:8px}.form-grid{grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.form-group{gap:6px}.form-group label{color:#34495e;font-size:.9rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{border:1px solid #dfe6e9;border-radius:4px;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.validation-error{color:#e74c3c;font-size:.8rem}.form-group textarea{min-height:80px;resize:vertical}.modal-footer{background-color:#f8f9fa;border-radius:0 0 8px 8px;border-top:1px solid #eaeaea;gap:12px;padding:16px 24px}.primary-button,.secondary-button{border-radius:4px;cursor:pointer;font-weight:500;padding:8px 16px;transition:all .2s}.primary-button{background-color:#3498db}.primary-button:hover:not(:disabled){background-color:#2980b9}.secondary-button{background-color:#ecf0f1;border:1px solid #dfe6e9;color:#7f8c8d}.secondary-button:hover:not(:disabled){background-color:#dfe6e9;color:#2c3e50}.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.patient-modal-content{max-height:95vh;width:95%}.form-grid{grid-template-columns:1fr}}.notification-modal{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0003;max-width:calc(100% - 32px);overflow:hidden;width:420px}.notification-header{align-items:center;color:#fff;display:flex;gap:12px;padding:14px 16px}.notification-header .icon{font-size:20px}.notification-header.success{background:#16a34a}.notification-header.error{background:#dc2626}.notification-header.info{background:#2563eb}.notification-header .title{font-size:16px;font-weight:600;margin:0}.notification-body{color:#111827;padding:16px}.modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.patient-edit-modal{background:#fff;border-radius:8px;box-shadow:0 10px 30px #0003;max-width:720px;overflow:hidden;width:90%}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:16px 20px}.close-button{background:#0000;border:none;cursor:pointer;font-size:22px}.patient-form-container{padding:16px 20px 8px}.form-section{margin-bottom:16px}.form-section h4{color:#444;font-size:14px;margin:0 0 10px;text-transform:uppercase}.form-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1/-1}.form-group label{color:#333;font-size:13px;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px}.validation-error{color:#c0392b;margin-top:6px}.modal-footer{display:flex;gap:10px;justify-content:flex-end;padding:12px 20px 20px}.primary-button{background:#2e7d32;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:10px 14px}.secondary-button{background:#f1f1f1;border:1px solid #e0e0e0;border-radius:6px;color:#333;cursor:pointer;padding:10px 14px}@media (max-width:768px){.patient-edit-modal{max-height:95vh;width:95%}.modal-header{padding:14px 18px}.patient-form-container{max-height:calc(95vh - 140px);overflow-y:auto;padding:14px 18px 8px}.form-grid{grid-template-columns:1fr}.form-group input,.form-group select,.form-group textarea{font-size:16px;padding:12px}.modal-footer{padding:12px 18px 18px}.primary-button,.secondary-button{font-size:.95rem;padding:12px 16px}}@media (max-width:480px){.modal-overlay{overflow:hidden!important;padding:0!important}.modal-overlay,.patient-edit-modal{margin:0!important;max-width:100vw!important;width:100vw!important}.patient-edit-modal{border-radius:0!important;display:flex;flex-direction:column;height:100vh!important;max-height:100vh!important;overflow:hidden}.modal-header{border-radius:0;flex-shrink:0;padding:12px 16px}.modal-header h2{flex:1 1;font-size:1.15rem;min-width:0}.close-button{flex-shrink:0;font-size:1.75rem;padding:4px 8px}.patient-form-container{flex:1 1;max-height:none;overflow-x:hidden;overflow-y:auto;padding:16px}.form-section{margin-bottom:20px}.form-section h4{font-size:13px;margin-bottom:12px}.form-grid{gap:14px}.form-group label{font-size:14px;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border-radius:8px;font-size:16px;padding:14px 12px}.form-group textarea{min-height:100px}.validation-error{font-size:13px;margin-top:8px}.modal-footer{border-radius:0;flex-direction:column;flex-shrink:0;gap:10px;padding:12px 16px 16px}.primary-button,.secondary-button{border-radius:8px;font-size:1rem;padding:14px 20px;width:100%}}@media (prefers-color-scheme:dark){.wmde-markdown,.wmde-markdown-var{--color-prettylights-syntax-comment:#8b949e;--color-prettylights-syntax-constant:#79c0ff;--color-prettylights-syntax-entity:#d2a8ff;--color-prettylights-syntax-storage-modifier-import:#c9d1d9;--color-prettylights-syntax-entity-tag:#7ee787;--color-prettylights-syntax-keyword:#ff7b72;--color-prettylights-syntax-string:#a5d6ff;--color-prettylights-syntax-variable:#ffa657;--color-prettylights-syntax-brackethighlighter-unmatched:#f85149;--color-prettylights-syntax-invalid-illegal-text:#f0f6fc;--color-prettylights-syntax-invalid-illegal-bg:#8e1519;--color-prettylights-syntax-carriage-return-text:#f0f6fc;--color-prettylights-syntax-carriage-return-bg:#b62324;--color-prettylights-syntax-string-regexp:#7ee787;--color-prettylights-syntax-markup-list:#f2cc60;--color-prettylights-syntax-markup-heading:#1f6feb;--color-prettylights-syntax-markup-italic:#c9d1d9;--color-prettylights-syntax-markup-bold:#c9d1d9;--color-prettylights-syntax-markup-deleted-text:#ffdcd7;--color-prettylights-syntax-markup-deleted-bg:#67060c;--color-prettylights-syntax-markup-inserted-text:#aff5b4;--color-prettylights-syntax-markup-inserted-bg:#033a16;--color-prettylights-syntax-markup-changed-text:#ffdfb6;--color-prettylights-syntax-markup-changed-bg:#5a1e02;--color-prettylights-syntax-markup-ignored-text:#c9d1d9;--color-prettylights-syntax-markup-ignored-bg:#1158c7;--color-prettylights-syntax-meta-diff-range:#d2a8ff;--color-prettylights-syntax-brackethighlighter-angle:#8b949e;--color-prettylights-syntax-sublimelinter-gutter-mark:#484f58;--color-prettylights-syntax-constant-other-reference-link:#a5d6ff;--color-fg-default:#c9d1d9;--color-fg-muted:#8b949e;--color-fg-subtle:#484f58;--color-canvas-default:#0d1117;--color-canvas-subtle:#161b22;--color-border-default:#30363d;--color-border-muted:#21262d;--color-neutral-muted:#6e768166;--color-accent-fg:#58a6ff;--color-accent-emphasis:#1f6feb;--color-attention-subtle:#bb800926;--color-danger-fg:#f85149;--color-danger-emphasis:#da3633;--color-attention-fg:#d29922;--color-attention-emphasis:#9e6a03;--color-done-fg:#a371f7;--color-done-emphasis:#8957e5;--color-success-fg:#3fb950;--color-success-emphasis:#238636;--color-copied-active-bg:#2e9b33;color-scheme:dark}}@media (prefers-color-scheme:light){.wmde-markdown,.wmde-markdown-var{--color-prettylights-syntax-comment:#6e7781;--color-prettylights-syntax-constant:#0550ae;--color-prettylights-syntax-entity:#8250df;--color-prettylights-syntax-storage-modifier-import:#24292f;--color-prettylights-syntax-entity-tag:#116329;--color-prettylights-syntax-keyword:#cf222e;--color-prettylights-syntax-string:#0a3069;--color-prettylights-syntax-variable:#953800;--color-prettylights-syntax-brackethighlighter-unmatched:#82071e;--color-prettylights-syntax-invalid-illegal-text:#f6f8fa;--color-prettylights-syntax-invalid-illegal-bg:#82071e;--color-prettylights-syntax-carriage-return-text:#f6f8fa;--color-prettylights-syntax-carriage-return-bg:#cf222e;--color-prettylights-syntax-string-regexp:#116329;--color-prettylights-syntax-markup-list:#3b2300;--color-prettylights-syntax-markup-heading:#0550ae;--color-prettylights-syntax-markup-italic:#24292f;--color-prettylights-syntax-markup-bold:#24292f;--color-prettylights-syntax-markup-deleted-text:#82071e;--color-prettylights-syntax-markup-deleted-bg:#ffebe9;--color-prettylights-syntax-markup-inserted-text:#116329;--color-prettylights-syntax-markup-inserted-bg:#dafbe1;--color-prettylights-syntax-markup-changed-text:#953800;--color-prettylights-syntax-markup-changed-bg:#ffd8b5;--color-prettylights-syntax-markup-ignored-text:#eaeef2;--color-prettylights-syntax-markup-ignored-bg:#0550ae;--color-prettylights-syntax-meta-diff-range:#8250df;--color-prettylights-syntax-brackethighlighter-angle:#57606a;--color-prettylights-syntax-sublimelinter-gutter-mark:#8c959f;--color-prettylights-syntax-constant-other-reference-link:#0a3069;--color-fg-default:#24292f;--color-fg-muted:#57606a;--color-fg-subtle:#6e7781;--color-canvas-default:#fff;--color-canvas-subtle:#f6f8fa;--color-border-default:#d0d7de;--color-border-muted:#d8dee4;--color-neutral-muted:#afb8c133;--color-accent-fg:#0969da;--color-accent-emphasis:#0969da;--color-attention-subtle:#fff8c5;--color-danger-fg:#d1242f;--color-danger-emphasis:#cf222e;--color-attention-fg:#9a6700;--color-attention-emphasis:#9a6700;--color-done-fg:#8250df;--color-done-emphasis:#8250df;--color-success-fg:#1a7f37;--color-success-emphasis:#1f883d;--color-copied-active-bg:#2e9b33;color-scheme:light}}.wmde-markdown-var[data-color-mode*=dark],.wmde-markdown[data-color-mode*=dark],[data-color-mode*=dark] .wmde-markdown,[data-color-mode*=dark] .wmde-markdown-var,body[data-color-mode*=dark]{--color-prettylights-syntax-comment:#8b949e;--color-prettylights-syntax-constant:#79c0ff;--color-prettylights-syntax-entity:#d2a8ff;--color-prettylights-syntax-storage-modifier-import:#c9d1d9;--color-prettylights-syntax-entity-tag:#7ee787;--color-prettylights-syntax-keyword:#ff7b72;--color-prettylights-syntax-string:#a5d6ff;--color-prettylights-syntax-variable:#ffa657;--color-prettylights-syntax-brackethighlighter-unmatched:#f85149;--color-prettylights-syntax-invalid-illegal-text:#f0f6fc;--color-prettylights-syntax-invalid-illegal-bg:#8e1519;--color-prettylights-syntax-carriage-return-text:#f0f6fc;--color-prettylights-syntax-carriage-return-bg:#b62324;--color-prettylights-syntax-string-regexp:#7ee787;--color-prettylights-syntax-markup-list:#f2cc60;--color-prettylights-syntax-markup-heading:#1f6feb;--color-prettylights-syntax-markup-italic:#c9d1d9;--color-prettylights-syntax-markup-bold:#c9d1d9;--color-prettylights-syntax-markup-deleted-text:#ffdcd7;--color-prettylights-syntax-markup-deleted-bg:#67060c;--color-prettylights-syntax-markup-inserted-text:#aff5b4;--color-prettylights-syntax-markup-inserted-bg:#033a16;--color-prettylights-syntax-markup-changed-text:#ffdfb6;--color-prettylights-syntax-markup-changed-bg:#5a1e02;--color-prettylights-syntax-markup-ignored-text:#c9d1d9;--color-prettylights-syntax-markup-ignored-bg:#1158c7;--color-prettylights-syntax-meta-diff-range:#d2a8ff;--color-prettylights-syntax-brackethighlighter-angle:#8b949e;--color-prettylights-syntax-sublimelinter-gutter-mark:#484f58;--color-prettylights-syntax-constant-other-reference-link:#a5d6ff;--color-fg-default:#c9d1d9;--color-fg-muted:#8b949e;--color-fg-subtle:#484f58;--color-canvas-default:#0d1117;--color-canvas-subtle:#161b22;--color-border-default:#30363d;--color-border-muted:#21262d;--color-neutral-muted:#6e768166;--color-accent-fg:#58a6ff;--color-accent-emphasis:#1f6feb;--color-attention-subtle:#bb800926;--color-danger-fg:#f85149;color-scheme:dark}.wmde-markdown-var[data-color-mode*=light],.wmde-markdown[data-color-mode*=light],[data-color-mode*=light] .wmde-markdown,[data-color-mode*=light] .wmde-markdown-var,body[data-color-mode*=light]{--color-prettylights-syntax-comment:#6e7781;--color-prettylights-syntax-constant:#0550ae;--color-prettylights-syntax-entity:#8250df;--color-prettylights-syntax-storage-modifier-import:#24292f;--color-prettylights-syntax-entity-tag:#116329;--color-prettylights-syntax-keyword:#cf222e;--color-prettylights-syntax-string:#0a3069;--color-prettylights-syntax-variable:#953800;--color-prettylights-syntax-brackethighlighter-unmatched:#82071e;--color-prettylights-syntax-invalid-illegal-text:#f6f8fa;--color-prettylights-syntax-invalid-illegal-bg:#82071e;--color-prettylights-syntax-carriage-return-text:#f6f8fa;--color-prettylights-syntax-carriage-return-bg:#cf222e;--color-prettylights-syntax-string-regexp:#116329;--color-prettylights-syntax-markup-list:#3b2300;--color-prettylights-syntax-markup-heading:#0550ae;--color-prettylights-syntax-markup-italic:#24292f;--color-prettylights-syntax-markup-bold:#24292f;--color-prettylights-syntax-markup-deleted-text:#82071e;--color-prettylights-syntax-markup-deleted-bg:#ffebe9;--color-prettylights-syntax-markup-inserted-text:#116329;--color-prettylights-syntax-markup-inserted-bg:#dafbe1;--color-prettylights-syntax-markup-changed-text:#953800;--color-prettylights-syntax-markup-changed-bg:#ffd8b5;--color-prettylights-syntax-markup-ignored-text:#eaeef2;--color-prettylights-syntax-markup-ignored-bg:#0550ae;--color-prettylights-syntax-meta-diff-range:#8250df;--color-prettylights-syntax-brackethighlighter-angle:#57606a;--color-prettylights-syntax-sublimelinter-gutter-mark:#8c959f;--color-prettylights-syntax-constant-other-reference-link:#0a3069;--color-fg-default:#24292f;--color-fg-muted:#57606a;--color-fg-subtle:#6e7781;--color-canvas-default:#fff;--color-canvas-subtle:#f6f8fa;--color-border-default:#d0d7de;--color-border-muted:#d8dee4;--color-neutral-muted:#afb8c133;--color-accent-fg:#0969da;--color-accent-emphasis:#0969da;--color-attention-subtle:#fff8c5;--color-danger-fg:#cf222e;color-scheme:light}.wmde-markdown{-webkit-text-size-adjust:100%;word-wrap:break-word;background-color:var(--color-canvas-default);color:var(--color-fg-default);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;font-size:16px;line-height:1.5}.wmde-markdown details,.wmde-markdown figcaption,.wmde-markdown figure{display:block}.wmde-markdown summary{display:list-item}.wmde-markdown [hidden]{display:none!important}.wmde-markdown a{background-color:initial;color:var(--color-accent-fg);text-decoration:none}.wmde-markdown a:active,.wmde-markdown a:hover{outline-width:0}.wmde-markdown abbr[title]{border-bottom:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.wmde-markdown b,.wmde-markdown strong{font-weight:600}.wmde-markdown dfn{font-style:italic}.wmde-markdown h1{border-bottom:1px solid var(--color-border-muted);font-size:2em;font-weight:600;margin:.67em 0;padding-bottom:.3em}.wmde-markdown mark{background-color:var(--color-attention-subtle);color:var(--color-text-primary)}.wmde-markdown small{font-size:90%}.wmde-markdown sub,.wmde-markdown sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}.wmde-markdown sub{bottom:-.25em}.wmde-markdown sup{top:-.5em}.wmde-markdown img{background-color:var(--color-canvas-default);border-style:none;box-sizing:initial;display:inline-block;max-width:100%}.wmde-markdown code,.wmde-markdown kbd,.wmde-markdown pre,.wmde-markdown samp{font-family:monospace,monospace;font-size:1em}.wmde-markdown figure{margin:1em 40px}.wmde-markdown hr{background:#0000;background-color:var(--color-border-default);border:0;border-bottom:1px solid var(--color-border-muted);box-sizing:initial;height:.25em;margin:24px 0;overflow:hidden;padding:0}.wmde-markdown input{font:inherit;font-family:inherit;font-size:inherit;line-height:inherit;margin:0;overflow:visible}.wmde-markdown [type=button],.wmde-markdown [type=reset],.wmde-markdown [type=submit]{-webkit-appearance:button}.wmde-markdown [type=button]::-moz-focus-inner,.wmde-markdown [type=reset]::-moz-focus-inner,.wmde-markdown [type=submit]::-moz-focus-inner{border-style:none;padding:0}.wmde-markdown [type=button]:-moz-focusring,.wmde-markdown [type=reset]:-moz-focusring,.wmde-markdown [type=submit]:-moz-focusring{outline:1px dotted ButtonText}.wmde-markdown [type=checkbox],.wmde-markdown [type=radio]{box-sizing:border-box;padding:0}.wmde-markdown [type=number]::-webkit-inner-spin-button,.wmde-markdown [type=number]::-webkit-outer-spin-button{height:auto}.wmde-markdown [type=search]{-webkit-appearance:textfield;outline-offset:-2px}.wmde-markdown [type=search]::-webkit-search-cancel-button,.wmde-markdown [type=search]::-webkit-search-decoration{-webkit-appearance:none}.wmde-markdown ::-webkit-input-placeholder{color:inherit;opacity:.54}.wmde-markdown ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}.wmde-markdown a:hover{text-decoration:underline}.wmde-markdown hr:after,.wmde-markdown hr:before{content:"";display:table}.wmde-markdown hr:after{clear:both}.wmde-markdown table{border-collapse:collapse;border-spacing:0;display:block;max-width:100%;width:max-content}.wmde-markdown td,.wmde-markdown th{padding:0}.wmde-markdown details summary{cursor:pointer}.wmde-markdown details:not([open])>:not(summary){display:none!important}.wmde-markdown kbd{background-color:var(--color-canvas-subtle);border-bottom-color:var(--color-neutral-muted);border:1px solid var(--color-neutral-muted);border-radius:6px;box-shadow:inset 0 -1px 0 var(--color-neutral-muted);color:var(--color-fg-default);display:inline-block;font:11px ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;line-height:10px;padding:3px 5px;vertical-align:middle}.wmde-markdown h1,.wmde-markdown h2,.wmde-markdown h3,.wmde-markdown h4,.wmde-markdown h5,.wmde-markdown h6{font-weight:600;line-height:1.25;margin-bottom:16px;margin-top:24px}.wmde-markdown h2{border-bottom:1px solid var(--color-border-muted);font-size:1.5em;font-weight:600;padding-bottom:.3em}.wmde-markdown h3{font-size:1.25em;font-weight:600}.wmde-markdown h4{font-size:1em;font-weight:600}.wmde-markdown h5{font-size:.875em;font-weight:600}.wmde-markdown h6{color:var(--color-fg-muted);font-size:.85em;font-weight:600}.wmde-markdown p{margin-bottom:10px;margin-top:0}.wmde-markdown blockquote{border-left:.25em solid var(--color-border-default);color:var(--color-fg-muted);margin:0;padding:0 1em}.wmde-markdown ol,.wmde-markdown ul{margin-bottom:0;margin-top:0;padding-left:2em}.wmde-markdown ol ol,.wmde-markdown ul ol{list-style-type:lower-roman}.wmde-markdown ol ol ol,.wmde-markdown ol ul ol,.wmde-markdown ul ol ol,.wmde-markdown ul ul ol{list-style-type:lower-alpha}.wmde-markdown dd{margin-left:0}.wmde-markdown code,.wmde-markdown pre,.wmde-markdown tt{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px}.wmde-markdown pre{word-wrap:normal;margin-bottom:0;margin-top:0}.wmde-markdown .octicon{fill:currentColor;display:inline-block;overflow:visible!important;vertical-align:text-bottom}.wmde-markdown ::placeholder{color:var(--color-fg-subtle);opacity:1}.wmde-markdown input::-webkit-inner-spin-button,.wmde-markdown input::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}.wmde-markdown [data-catalyst]{display:block}.wmde-markdown:after,.wmde-markdown:before{content:"";display:table}.wmde-markdown:after{clear:both}.wmde-markdown>:first-child{margin-top:0!important}.wmde-markdown>:last-child{margin-bottom:0!important}.wmde-markdown a:not([href]){color:inherit;text-decoration:none}.wmde-markdown .absent{color:var(--color-danger-fg)}.wmde-markdown a.anchor{float:left;line-height:1;margin-left:-20px;padding-right:4px}.wmde-markdown .anchor:focus{outline:none}.wmde-markdown blockquote,.wmde-markdown details,.wmde-markdown dl,.wmde-markdown ol,.wmde-markdown p,.wmde-markdown pre,.wmde-markdown table,.wmde-markdown ul{margin-bottom:16px;margin-top:0}.wmde-markdown blockquote>:first-child{margin-top:0}.wmde-markdown blockquote>:last-child{margin-bottom:0}.wmde-markdown sup>a:before{content:"["}.wmde-markdown sup>a:after{content:"]"}.wmde-markdown h1 .octicon-link,.wmde-markdown h2 .octicon-link,.wmde-markdown h3 .octicon-link,.wmde-markdown h4 .octicon-link,.wmde-markdown h5 .octicon-link,.wmde-markdown h6 .octicon-link{color:var(--color-fg-default);vertical-align:middle;visibility:hidden}.wmde-markdown h1:hover .anchor,.wmde-markdown h2:hover .anchor,.wmde-markdown h3:hover .anchor,.wmde-markdown h4:hover .anchor,.wmde-markdown h5:hover .anchor,.wmde-markdown h6:hover .anchor{text-decoration:none}.wmde-markdown h1:hover .anchor .octicon-link,.wmde-markdown h2:hover .anchor .octicon-link,.wmde-markdown h3:hover .anchor .octicon-link,.wmde-markdown h4:hover .anchor .octicon-link,.wmde-markdown h5:hover .anchor .octicon-link,.wmde-markdown h6:hover .anchor .octicon-link{visibility:visible}.wmde-markdown h1 code,.wmde-markdown h1 tt,.wmde-markdown h2 code,.wmde-markdown h2 tt,.wmde-markdown h3 code,.wmde-markdown h3 tt,.wmde-markdown h4 code,.wmde-markdown h4 tt,.wmde-markdown h5 code,.wmde-markdown h5 tt,.wmde-markdown h6 code,.wmde-markdown h6 tt{font-size:inherit;padding:0 .2em}.wmde-markdown ol.no-list,.wmde-markdown ul.no-list{list-style-type:none;padding:0}.wmde-markdown ol[type="1"]{list-style-type:decimal}.wmde-markdown ol[type=a]{list-style-type:lower-alpha}.wmde-markdown ol[type=i]{list-style-type:lower-roman}.wmde-markdown div>ol:not([type]){list-style-type:decimal}.wmde-markdown ol ol,.wmde-markdown ol ul,.wmde-markdown ul ol,.wmde-markdown ul ul{margin-bottom:0;margin-top:0}.wmde-markdown li>p{margin-top:16px}.wmde-markdown li+li{margin-top:.25em}.wmde-markdown dl{padding:0}.wmde-markdown dl dt{font-size:1em;font-style:italic;font-weight:600;margin-top:16px;padding:0}.wmde-markdown dl dd{margin-bottom:16px;padding:0 16px}.wmde-markdown table th{font-weight:600}.wmde-markdown table td,.wmde-markdown table th{border:1px solid var(--color-border-default);padding:6px 13px}.wmde-markdown table tr{background-color:var(--color-canvas-default);border-top:1px solid var(--color-border-muted)}.wmde-markdown table tr:nth-child(2n){background-color:var(--color-canvas-subtle)}.wmde-markdown table img{background-color:initial}.wmde-markdown img[align=right]{padding-left:20px}.wmde-markdown img[align=left]{padding-right:20px}.wmde-markdown .emoji{background-color:initial;max-width:none;vertical-align:text-top}.wmde-markdown span.frame{display:block;overflow:hidden}.wmde-markdown span.frame>span{border:1px solid var(--color-border-default);display:block;float:left;margin:13px 0 0;overflow:hidden;padding:7px;width:auto}.wmde-markdown span.frame span img{display:block;float:left}.wmde-markdown span.frame span span{clear:both;color:var(--color-fg-default);display:block;padding:5px 0 0}.wmde-markdown span.align-center{clear:both;display:block;overflow:hidden}.wmde-markdown span.align-center>span{display:block;margin:13px auto 0;overflow:hidden;text-align:center}.wmde-markdown span.align-center span img{margin:0 auto;text-align:center}.wmde-markdown span.align-right{clear:both;display:block;overflow:hidden}.wmde-markdown span.align-right>span{display:block;margin:13px 0 0;overflow:hidden;text-align:right}.wmde-markdown span.align-right span img{margin:0;text-align:right}.wmde-markdown span.float-left{display:block;float:left;margin-right:13px;overflow:hidden}.wmde-markdown span.float-left span{margin:13px 0 0}.wmde-markdown span.float-right{display:block;float:right;margin-left:13px;overflow:hidden}.wmde-markdown span.float-right>span{display:block;margin:13px auto 0;overflow:hidden;text-align:right}.wmde-markdown code,.wmde-markdown tt{background-color:var(--color-neutral-muted);border-radius:6px;font-size:85%;margin:0;padding:.2em .4em}.wmde-markdown code br,.wmde-markdown tt br{display:none}.wmde-markdown del code{text-decoration:inherit}.wmde-markdown pre code{font-size:100%}.wmde-markdown pre>code{background:#0000;border:0;margin:0;padding:0;white-space:pre;word-break:normal}.wmde-markdown pre{background-color:var(--color-canvas-subtle);border-radius:6px;font-size:85%;line-height:1.45}.wmde-markdown pre code,.wmde-markdown pre tt{word-wrap:normal;background-color:initial;border:0;display:inline;line-height:inherit;margin:0;max-width:auto;overflow:visible;padding:0}.wmde-markdown pre>code{display:block;overflow:auto;padding:16px}.wmde-markdown pre>code::-webkit-scrollbar{background:#0000;height:8px;width:8px}.wmde-markdown pre>code::-webkit-scrollbar-thumb{background:var(--color-fg-muted);border-radius:10px}.wmde-markdown .csv-data td,.wmde-markdown .csv-data th{font-size:12px;line-height:1;overflow:hidden;padding:5px;text-align:left;white-space:nowrap}.wmde-markdown .csv-data .blob-num{background:var(--color-canvas-default);border:0;padding:10px 8px 9px;text-align:right}.wmde-markdown .csv-data tr{border-top:0}.wmde-markdown .csv-data th{background:var(--color-canvas-subtle);border-top:0;font-weight:600}.wmde-markdown .footnotes{border-top:1px solid var(--color-border-default);color:var(--color-fg-muted);font-size:12px}.wmde-markdown .footnotes ol{padding-left:16px}.wmde-markdown .footnotes li{position:relative}.wmde-markdown .footnotes li:target:before{border:2px solid var(--color-accent-emphasis);border-radius:6px;bottom:-8px;content:"";left:-24px;pointer-events:none;position:absolute;right:-8px;top:-8px}.wmde-markdown .footnotes li:target{color:var(--color-fg-default)}.wmde-markdown .footnotes .data-footnote-backref g-emoji{font-family:monospace}.wmde-markdown .task-list-item{list-style-type:none}.wmde-markdown .task-list-item label{font-weight:400}.wmde-markdown .task-list-item.enabled label{cursor:pointer}.wmde-markdown .task-list-item+.wmde-markdown .task-list-item{margin-top:3px}.wmde-markdown .task-list-item .handle{display:none}.wmde-markdown .contains-task-list input[type=checkbox],.wmde-markdown .task-list-item-checkbox{margin:0 .2em .25em -1.6em;vertical-align:middle}.wmde-markdown .contains-task-list:dir(rtl) .task-list-item-checkbox,.wmde-markdown .contains-task-list:dir(rtl) input[type=checkbox]{margin:0 -1.6em .25em .2em}.wmde-markdown ::-webkit-calendar-picker-indicator{filter:invert(50%)}.wmde-markdown pre{position:relative}.wmde-markdown pre .copied{background:var(--color-border-default);border-radius:5px;color:var(--color-fg-default);cursor:pointer;display:flex;font-size:12px;padding:6px;position:absolute;right:6px;top:6px;transition:all .3s;visibility:hidden}.wmde-markdown pre .copied .octicon-copy{display:block}.wmde-markdown pre .copied .octicon-check{display:none}.wmde-markdown pre:hover .copied{visibility:visible}.wmde-markdown pre:hover .copied:hover{background:var(--color-prettylights-syntax-entity-tag);color:var(--color-canvas-default)}.wmde-markdown pre .copied.active,.wmde-markdown pre:hover .copied:active{background:var(--color-copied-active-bg);color:var(--color-canvas-default)}.wmde-markdown pre .active .octicon-copy{display:none}.wmde-markdown pre .active .octicon-check{display:block}.wmde-markdown .markdown-alert{border-left:.25em solid var(--borderColor-default,var(--color-border-default));color:inherit;margin-bottom:16px;padding:.5rem 1em}.wmde-markdown .markdown-alert>:last-child{margin-bottom:0!important}.wmde-markdown .markdown-alert .markdown-alert-title{align-items:center;display:flex;font-size:14px;font-weight:500;line-height:1}.wmde-markdown .markdown-alert .markdown-alert-title svg.octicon{margin-right:8px!important;margin-right:var(--base-size-8,8px)!important}.wmde-markdown .markdown-alert.markdown-alert-note{border-left-color:var(--borderColor-accent-emphasis,var(--color-accent-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-note .markdown-alert-title{color:var(--color-accent-fg);color:var(--fgColor-accent,var(--color-accent-fg))}.wmde-markdown .markdown-alert.markdown-alert-tip{border-left-color:var(--borderColor-success-emphasis,var(--color-success-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-tip .markdown-alert-title{color:var(--color-success-fg);color:var(--fgColor-success,var(--color-success-fg))}.wmde-markdown .markdown-alert.markdown-alert-important{border-left-color:var(--borderColor-done-emphasis,var(--color-done-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-important .markdown-alert-title{color:var(--color-done-fg);color:var(--fgColor-done,var(--color-done-fg))}.wmde-markdown .markdown-alert.markdown-alert-warning{border-left-color:var(--borderColor-attention-emphasis,var(--color-attention-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-warning .markdown-alert-title{color:var(--color-attention-fg);color:var(--fgColor-attention,var(--color-attention-fg))}.wmde-markdown .markdown-alert.markdown-alert-caution{border-left-color:var(--borderColor-danger-emphasis,var(--color-danger-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-caution .markdown-alert-title{color:var(--color-danger-fg);color:var(--fgColor-danger,var(--color-danger-fg))}.wmde-markdown .highlight-line{background-color:var(--color-neutral-muted)}.wmde-markdown .code-line.line-number:before{color:var(--color-fg-subtle);content:attr(line);display:inline-block;margin-right:16px;text-align:right;white-space:nowrap;width:1rem}.wmde-markdown .token.cdata,.wmde-markdown .token.comment,.wmde-markdown .token.doctype,.wmde-markdown .token.prolog{color:var(--color-prettylights-syntax-comment)}.wmde-markdown .token.namespace{opacity:.7}.wmde-markdown .token.constant,.wmde-markdown .token.deleted,.wmde-markdown .token.property,.wmde-markdown .token.selector,.wmde-markdown .token.symbol,.wmde-markdown .token.tag{color:var(--color-prettylights-syntax-entity-tag)}.wmde-markdown .token.maybe-class-name{color:var(--color-prettylights-syntax-variable)}.wmde-markdown .token.attr-name,.wmde-markdown .token.boolean,.wmde-markdown .token.builtin,.wmde-markdown .token.char,.wmde-markdown .token.number,.wmde-markdown .token.operator,.wmde-markdown .token.property-access,.wmde-markdown .token.selector .token.class,.wmde-markdown .token.string{color:var(--color-prettylights-syntax-constant)}.wmde-markdown .token.deleted{color:var(--color-prettylights-syntax-markup-deleted-text)}.wmde-markdown .code-line .token.deleted{background-color:var(--color-prettylights-syntax-markup-deleted-bg)}.wmde-markdown .token.inserted{color:var(--color-prettylights-syntax-markup-inserted-text)}.wmde-markdown .code-line .token.inserted{background-color:var(--color-prettylights-syntax-markup-inserted-bg)}.wmde-markdown .token.variable{color:var(--color-prettylights-syntax-constant)}.wmde-markdown .language-css .token.string,.wmde-markdown .style .token.string,.wmde-markdown .token.atrule,.wmde-markdown .token.attr-value,.wmde-markdown .token.class-name,.wmde-markdown .token.color,.wmde-markdown .token.entity,.wmde-markdown .token.function,.wmde-markdown .token.url{color:var(--color-prettylights-syntax-string)}.wmde-markdown .token.important,.wmde-markdown .token.keyword,.wmde-markdown .token.regex,.wmde-markdown .token.rule{color:var(--color-prettylights-syntax-keyword)}.wmde-markdown .token.coord{color:var(--color-prettylights-syntax-meta-diff-range)}.wmde-markdown .token.bold,.wmde-markdown .token.important{font-weight:700}.wmde-markdown .token.italic{font-style:italic}.wmde-markdown .token.entity{cursor:help}.w-md-editor-toolbar-child{background-color:var(--md-editor-background-color);border-radius:3px;box-shadow:0 0 0 1px var(--md-editor-box-shadow-color),0 0 0 var(--md-editor-box-shadow-color),0 1px 1px var(--md-editor-box-shadow-color);display:none;position:absolute;z-index:1}.w-md-editor-toolbar-child.active{display:block}.w-md-editor-toolbar-child .w-md-editor-toolbar{border-bottom:0;border-radius:3px;padding:3px}.w-md-editor-toolbar-child .w-md-editor-toolbar ul>li{display:block}.w-md-editor-toolbar-child .w-md-editor-toolbar ul>li button{box-sizing:border-box;height:auto;margin:0;padding:3px 4px 2px;width:-webkit-fill-available}.w-md-editor-toolbar{align-items:center;background-color:var(--md-editor-background-color);border-bottom:1px solid var(--md-editor-box-shadow-color);border-radius:3px 3px 0 0;display:flex;flex-wrap:wrap;justify-content:space-between;padding:3px;-webkit-user-select:none;user-select:none}.w-md-editor-toolbar.bottom{border-bottom:0;border-radius:0 0 3px 3px;border-top:1px solid var(--md-editor-box-shadow-color)}.w-md-editor-toolbar li,.w-md-editor-toolbar ul{line-height:normal;list-style:none;margin:0;padding:0}.w-md-editor-toolbar li{display:inline-block;font-size:14px}.w-md-editor-toolbar li+li{margin:0}.w-md-editor-toolbar li>button{background:none;border:none;border-radius:2px;color:var(--color-fg-default);cursor:pointer;font-weight:400;height:20px;line-height:14px;margin:0 1px;outline:none;overflow:visible;padding:4px;text-transform:none;transition:all .3s;white-space:nowrap}.w-md-editor-toolbar li>button:focus,.w-md-editor-toolbar li>button:hover{background-color:var(--color-neutral-muted);color:var(--color-accent-fg)}.w-md-editor-toolbar li>button:active{background-color:var(--color-neutral-muted);color:var(--color-danger-fg)}.w-md-editor-toolbar li>button:disabled{color:var(--md-editor-box-shadow-color);cursor:not-allowed}.w-md-editor-toolbar li>button:disabled:hover{background-color:initial;color:var(--md-editor-box-shadow-color)}.w-md-editor-toolbar li.active>button{background-color:var(--color-neutral-muted);color:var(--color-accent-fg)}.w-md-editor-toolbar-divider{background-color:var(--md-editor-box-shadow-color);height:14px;margin:-3px 3px 0!important;vertical-align:middle;width:1px}.w-md-editor-area{border-radius:5px;overflow:auto}.w-md-editor-text{font-feature-settings:"liga","clig";box-sizing:border-box;font-size:14px!important;font-variant-ligatures:common-ligatures;line-height:18px!important;margin:0;min-height:100%;overflow-wrap:break-word;padding:10px;position:relative;text-align:left;white-space:pre-wrap;word-break:keep-all}.w-md-editor-text-input,.w-md-editor-text-pre,.w-md-editor-text>.w-md-editor-text-pre{font-feature-settings:inherit;background:none;border:0;box-sizing:inherit;display:inherit;font-family:inherit;font-family:var(--md-editor-font-family)!important;font-size:inherit;font-style:inherit;font-variant-ligatures:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;overflow-wrap:inherit;padding:0;tab-size:inherit;text-indent:inherit;text-rendering:inherit;text-transform:inherit;white-space:inherit;word-break:inherit;word-break:normal}.w-md-editor-text-pre{background-color:initial!important;margin:0!important;pointer-events:none;position:relative}.w-md-editor-text-pre>code{font-family:var(--md-editor-font-family)!important;font-size:14px!important;line-height:18px!important;padding:0!important}.w-md-editor-text-input{-webkit-font-smoothing:antialiased;-webkit-text-fill-color:#0000;color:inherit;height:100%;left:0;outline:0;overflow:hidden;padding:inherit;position:absolute;resize:none;top:0;width:100%}.w-md-editor-text-input:empty{-webkit-text-fill-color:inherit!important}.w-md-editor-text-input,.w-md-editor-text-pre{word-wrap:pre;white-space:pre-wrap;word-break:break-word}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.w-md-editor-text-input{color:#0000!important}.w-md-editor-text-input::selection{background-color:#accef7!important;color:#0000!important}}.w-md-editor-text-pre .punctuation{color:#8b949e!important;color:var(--color-prettylights-syntax-comment,#8b949e)!important}.w-md-editor-text-pre .token.content,.w-md-editor-text-pre .token.url{color:#0550ae!important;color:var(--color-prettylights-syntax-constant,#0550ae)!important}.w-md-editor-text-pre .token.title.important{color:#24292f;color:var(--color-prettylights-syntax-markup-bold,#24292f)}.w-md-editor-text-pre .token.code-block .function{color:#8250df;color:var(--color-prettylights-syntax-entity,#8250df)}.w-md-editor-text-pre .token.bold{font-weight:inherit!important}.w-md-editor-text-pre .token.title{font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important}.w-md-editor-text-pre .token.code.keyword{color:#0550ae!important;color:var(--color-prettylights-syntax-constant,#0550ae)!important}.w-md-editor-text-pre .token.strike,.w-md-editor-text-pre .token.strike .content{color:#82071e!important;color:var(--color-prettylights-syntax-markup-deleted-text,#82071e)!important}.w-md-editor-bar{border-radius:0 0 3px 0;bottom:0;cursor:s-resize;height:10px;margin-right:0;margin-top:-11px;position:absolute;right:0;-webkit-user-select:none;user-select:none;width:14px;z-index:3}.w-md-editor-bar svg{display:block;margin:0 auto}.w-md-editor{--md-editor-font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;--md-editor-background-color:var(--color-canvas-default,#fff);--md-editor-box-shadow-color:var(--color-border-default,#d0d7de);background-color:var(--md-editor-background-color);border-radius:3px;box-shadow:0 0 0 1px var(--md-editor-box-shadow-color),0 0 0 var(--md-editor-box-shadow-color),0 1px 1px var(--md-editor-box-shadow-color);color:var(--color-fg-default);display:flex;flex-direction:column;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding-bottom:1px;position:relative;text-align:left}.w-md-editor.w-md-editor-rtl{direction:rtl!important;text-align:right!important}.w-md-editor.w-md-editor-rtl .w-md-editor-preview{box-shadow:inset -1px 0 0 0 var(--md-editor-box-shadow-color);left:0;right:auto!important;text-align:right!important}.w-md-editor.w-md-editor-rtl .w-md-editor-text{text-align:right!important}.w-md-editor-toolbar{height:fit-content}.w-md-editor-content{border-radius:0 0 3px 0;height:100%;overflow:auto;position:relative}.w-md-editor .copied{display:none!important}.w-md-editor-input{height:100%;width:50%}.w-md-editor-text-pre>code{white-space:pre-wrap!important;word-break:break-word!important}.w-md-editor-preview{border-radius:0 0 5px 0;bottom:0;box-shadow:inset 1px 0 0 0 var(--md-editor-box-shadow-color);box-sizing:border-box;display:flex;flex-direction:column;overflow:auto;padding:10px 20px;position:absolute;right:0;top:0;width:50%}.w-md-editor-preview .anchor{display:none}.w-md-editor-preview .contains-task-list li.task-list-item{list-style:none}.w-md-editor-show-preview .w-md-editor-input{background-color:var(--md-editor-background-color);overflow:hidden;width:0}.w-md-editor-show-preview .w-md-editor-preview{box-shadow:inset 0 0 0 0;width:100%}.w-md-editor-show-edit .w-md-editor-input{width:100%}.w-md-editor-show-edit .w-md-editor-preview{padding:0;width:0}.w-md-editor-fullscreen{bottom:0;height:100%!important;left:0;overflow:hidden;position:fixed;right:0;top:0;z-index:99999}.w-md-editor-fullscreen .w-md-editor-content{height:100%}.medical-record-panel{background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;height:100%;overflow:hidden}.medical-record-panel.compact{border:none;border-radius:0}.panel-header{align-items:center;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:12px 16px}.panel-header h3{color:#0369a1;font-size:15px;font-weight:600;margin:0}.patient-badge{background:#fff;border:1px solid #e2e8f0;border-radius:12px;color:#475569;font-size:12px;font-weight:500;padding:4px 10px}.panel-body{flex:1 1;overflow-y:auto;padding:12px}.panel-empty,.panel-error,.panel-loading{align-items:center;color:#64748b;display:flex;font-size:14px;height:100%;justify-content:center;min-height:100px;padding:20px;text-align:center}.panel-error{color:#dc2626}.visits-timeline-panel{display:flex;flex-direction:column;gap:16px;padding-left:20px;position:relative}.visits-timeline-panel:before{background:linear-gradient(180deg,#3b82f6,#8b5cf6);border-radius:2px;bottom:8px;content:"";left:5px;position:absolute;top:8px;width:2px}.visit-entry-panel{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 6px #0000000f;padding:14px 16px;position:relative}.visit-entry-panel:before{background:#3b82f6;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 2px #3b82f6;content:"";height:10px;left:-19px;position:absolute;top:18px;width:10px}.visit-entry-panel.legacy{background:#fffbeb;border-color:#fde68a}.visit-entry-panel.legacy:before{background:#f59e0b;box-shadow:0 0 0 2px #f59e0b}.visit-date-panel{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:10px;margin-bottom:10px;padding-bottom:8px}.date-text{color:#1e293b;font-size:14px;font-weight:700}.legacy-tag{background:#fef3c7;border-radius:4px;color:#92400e;font-size:10px;font-weight:600;padding:3px 8px;text-transform:uppercase}.visit-notes-panel{color:#334155;font-size:13px;line-height:1.5}.visit-notes-panel .markdown-content p{margin:0 0 8px}.visit-notes-panel .markdown-content p:last-child{margin-bottom:0}.visit-notes-panel .markdown-content ol,.visit-notes-panel .markdown-content ul{margin:4px 0;padding-left:20px}.visit-notes-panel .markdown-content h1,.visit-notes-panel .markdown-content h2,.visit-notes-panel .markdown-content h3{font-size:14px;margin:8px 0 4px}.medical-record-panel.compact .panel-header{padding:10px 12px}.medical-record-panel.compact .panel-header h3{font-size:14px}.medical-record-panel.compact .panel-body,.medical-record-panel.compact .visit-entry-panel{padding:10px}.medical-record-panel.compact .visit-notes-panel{font-size:12px}.panel-empty{flex-direction:column;gap:16px}.panel-empty p{color:#64748b;margin:0}.add-initial-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.add-initial-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 12px #2563eb4d;transform:translateY(-1px)}.panel-editor{display:flex;flex-direction:column;gap:12px;height:100%}.panel-editor .w-md-editor{border:1px solid #e2e8f0;border-radius:6px;flex:1 1;min-height:150px}.panel-editor .w-md-editor:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.panel-edit-error{background:#fee2e2;border-left:3px solid #ef4444;border-radius:6px;color:#b91c1c;font-size:13px;padding:8px 12px}.panel-editor-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:4px}.panel-editor-actions .cancel-btn{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#475569;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .15s ease}.panel-editor-actions .cancel-btn:hover{background:#f8fafc;border-color:#cbd5e1}.panel-editor-actions .cancel-btn:disabled{cursor:not-allowed;opacity:.6}.panel-editor-actions .save-btn{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .15s ease}.panel-editor-actions .save-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857)}.panel-editor-actions .save-btn:disabled{cursor:not-allowed;opacity:.6}.medical-record-modal{animation:record-modal-appear .3s ease-out;background:#fff;border-radius:10px;box-shadow:0 10px 40px #00000040;display:flex;flex-direction:column;max-height:85vh;max-width:900px;overflow:hidden;width:92%}@keyframes record-modal-appear{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-title-section{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.patient-name-badge{background-color:#3498db;border-radius:20px;color:#fff;font-size:.85rem;font-weight:500;padding:4px 12px}.record-body{background-color:#fafbfc;display:flex;flex:1 1;flex-direction:column;overflow:hidden;padding:0}.record-body .medical-record-panel{background:#0000;border:none;border-radius:0;height:100%}.record-body .medical-record-panel .panel-header{display:none}.record-body .medical-record-panel .panel-body{padding:20px 24px}.loading{color:#555;padding:40px;text-align:center}.error{background-color:#fee2e2;border-left:4px solid #ef4444;border-radius:8px;color:#c0392b;padding:16px}.empty-record{color:#6b7280;font-size:1.1rem;padding:60px 20px;text-align:center}.visits-timeline{padding-left:24px;position:relative}.visits-timeline:before{background:linear-gradient(180deg,#3498db,#9b59b6);border-radius:2px;bottom:8px;content:"";left:6px;position:absolute;top:8px;width:2px}.visit-entry{margin-bottom:24px;position:relative}.visit-entry:last-child{margin-bottom:0}.visit-date-marker{align-items:center;display:flex;gap:12px;margin-bottom:8px}.date-dot{background-color:#3498db;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 2px #3498db;height:12px;left:-21px;position:absolute;width:12px}.visit-date-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.visit-date{color:#2c3e50;font-size:.95rem;font-weight:600}.legacy-badge{background-color:#6b7280;border-radius:12px;color:#fff;cursor:help;font-size:.75rem;font-weight:500;padding:3px 10px}.visit-entry--legacy{opacity:.95}.date-dot--legacy{background-color:#6b7280;box-shadow:0 0 0 2px #6b7280}.visit-content{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 8px #00000014;padding:16px}.visit-content--legacy{background-color:#f9fafb;border-left:3px solid #6b7280}.visit-notes{color:#374151;font-size:14px;line-height:1.6}.visit-notes.markdown-content h1{color:#2c3e50;font-size:1.4em;font-weight:700;margin:.5em 0}.visit-notes.markdown-content h2{color:#34495e;font-size:1.2em;font-weight:600;margin:.5em 0}.visit-notes.markdown-content h3{color:#34495e;font-size:1.05em;font-weight:600;margin:.4em 0}.visit-notes.markdown-content p{margin:.5em 0}.visit-notes.markdown-content strong{font-weight:700}.visit-notes.markdown-content em{font-style:italic}.visit-notes.markdown-content ol,.visit-notes.markdown-content ul{margin:.5em 0;padding-left:1.5em}.visit-notes.markdown-content li{margin:.25em 0}.visit-notes.markdown-content code{background-color:#f4f4f4;border-radius:4px;font-family:monospace;font-size:.9em;padding:2px 6px}.visit-notes.markdown-content blockquote{border-left:3px solid #3498db;color:#555;margin:.5em 0;padding-left:1em}@media (max-width:768px){.medical-record-modal{max-height:95vh;width:95%}.modal-title-section{align-items:flex-start;flex-direction:column;gap:8px}.record-body{padding:16px}.visits-timeline{padding-left:20px}.date-dot{height:10px;left:-17px;width:10px}}.patient-selector-searchable{position:relative;width:100%}.selector-input-wrapper{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:text;display:flex;position:relative;transition:border-color .15s ease,box-shadow .15s ease}.selector-input-wrapper:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.selector-input-wrapper input{background:#0000;border:none;flex:1 1;font-size:14px;min-width:0;outline:none;padding:10px 12px}.selector-input-wrapper input::placeholder{color:#9ca3af}.selector-input-wrapper .clear-btn{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:18px;line-height:1;padding:0 8px;transition:color .15s ease}.selector-input-wrapper .clear-btn:hover{color:#374151}.selector-input-wrapper .dropdown-arrow{color:#9ca3af;font-size:10px;padding-right:12px;pointer-events:none}.selector-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 12px #0000001a;left:0;list-style:none;margin-top:4px;max-height:200px;overflow-y:auto;padding:4px 0;position:absolute;right:0;top:100%;z-index:1000}.selector-item{color:#374151;cursor:pointer;font-size:14px;padding:10px 12px;transition:background-color .1s ease}.selector-item.highlighted,.selector-item:hover{background-color:#f3f4f6}.selector-item.selected{background-color:#eff6ff;color:#1d4ed8;font-weight:500}.selector-item.disabled{color:#9ca3af;cursor:default;pointer-events:none}.selector-item.error{color:#dc2626}.preselected-patient{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;min-height:44px;padding:10px 14px}.preselected-patient .patient-name-display{color:#1e293b;font-weight:500}.duration-input-wrapper{gap:8px}.duration-input-wrapper input{width:80px}.duration-btn{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:18px;height:36px;width:36px}.duration-btn:hover{border-color:#cbd5e1}.first-visit-toggle{padding:8px 0}.toggle-switch{background:#cbd5e1;border-radius:13px;height:26px;position:relative;transition:background .2s ease;width:48px}.toggle-knob{background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;height:22px;left:2px;position:absolute;top:2px;transition:transform .2s ease;width:22px}.toggle-label{color:#475569;font-size:14px;-webkit-user-select:none;user-select:none}.validation-error{color:#dc2626;display:block;font-size:12px;font-weight:500;margin-top:4px}.input-error{background-color:#fef2f2!important;border-color:#dc2626!important}.input-error:focus{box-shadow:0 0 0 2px #dc262633!important}.confirmation-modal{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0003;max-width:calc(100% - 32px);overflow:hidden;width:420px}.confirmation-header{color:#fff;padding:14px 16px}.confirmation-header.default{background:#2563eb}.confirmation-header.danger{background:#dc2626}.confirmation-header .title{font-size:16px;font-weight:600;margin:0}.confirmation-body{color:#111827;padding:16px}.confirmation-body .detail-list{list-style:none;margin:12px 0 0;padding:0}.confirmation-body .detail-list li{align-items:flex-start;border-bottom:1px solid #f3f4f6;display:flex;font-size:14px;gap:8px;padding:8px 0}.confirmation-body .detail-list li:last-child{border-bottom:none}.confirmation-body .detail-list .icon{flex-shrink:0;font-size:16px}.confirmation-body .detail-list .label{color:#6b7280;min-width:70px}.confirmation-body .detail-list .value{color:#111827;font-weight:500;word-break:break-word}@media (max-width:480px){.confirmation-modal{animation:slideUp .25s ease-out;border-radius:16px 16px 0 0;bottom:0;left:0;margin:0;max-width:100%;position:fixed;right:0;width:100%}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.confirmation-header{padding:16px 20px}.confirmation-header .title{font-size:18px}.confirmation-body{max-height:50vh;overflow-y:auto;padding:20px}.confirmation-body .detail-list li{font-size:15px;padding:10px 0}.confirmation-modal .modal-footer{flex-direction:column;gap:10px;padding:16px 20px 24px}.confirmation-modal .modal-footer button{font-size:16px;padding:14px 20px;width:100%}}.patients-content{box-sizing:border-box;padding:20px;width:100%}@media (max-width:768px){.patients-content{padding:15px}}@media (max-width:480px){.patients-content{padding:10px}}.patients-controls{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.search-container{position:relative;width:300px}.search-input{border:1px solid #e0e0e0;border-radius:8px;font-size:14px;padding:10px 40px 10px 15px;transition:all .2s ease;width:100%}@media (max-width:768px){.search-input{font-size:16px;padding:12px 45px 12px 16px}}.search-input:focus{border-color:#4a6da7;box-shadow:0 0 0 2px #4a6da733;outline:none}.search-button{background:none;border:none;cursor:pointer;font-size:16px;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.add-patient-button{background:#27ae60;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:10px 16px;transition:background-color .2s ease}@media (max-width:768px){.add-patient-button{font-size:16px;padding:14px 20px}}.add-patient-button:hover{background:#219653}.patients-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000000d;overflow:hidden}@media (max-width:768px){.patients-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}}.patients-table{border-collapse:collapse;width:100%}.patients-table th{background:#f8f9fa;border-bottom:1px solid #e2e8f0;color:#4a5568;cursor:pointer;font-weight:600;padding:12px 16px;text-align:left;transition:background-color .2s ease}.patients-table th:hover{background:#edf2f7}.patients-table td{border-bottom:1px solid #e2e8f0;color:#2d3748;padding:12px 16px}.sort-indicator{display:inline-block;margin-left:5px}.patient-row{transition:background-color .2s ease}.patient-row:hover{background-color:#f7fafc}.patient-name-container{align-items:center;display:flex}.expand-toggle-button{display:none!important}.patient-avatar{align-items:center;background:linear-gradient(135deg,#4a6da7,#2d9cdb);border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:700;height:36px;justify-content:center;margin-right:12px;width:36px}.patient-name-details{display:flex;flex-direction:column}.full-name{font-weight:500}.dob{color:#718096;font-size:12px;margin-top:2px}.actions-cell{white-space:nowrap}.action-button{background:none;border:none;border-radius:4px;cursor:pointer;margin:0 2px;padding:5px;transition:background-color .2s ease}.action-button:hover{background-color:#edf2f7}.view-button{color:#4a6da7}.edit-button{color:#2d9cdb}.history-button{color:#f39c12}.error-container,.loading-container,.no-data{color:#718096;padding:40px;text-align:center}.error-container{color:#e53e3e}@media (max-width:768px){.patients-controls{align-items:stretch;flex-direction:column;gap:12px}.search-container{margin-bottom:0;width:100%}.add-patient-button{width:100%}.patients-table td:nth-child(6),.patients-table th:nth-child(6){display:none}}@media (max-width:480px){.patients-table-container{background:#0000;box-shadow:none}.patients-table{display:block}.patients-table thead{display:none}.patient-row,.patients-table tbody{display:block}.patient-row{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 4px #0000000f;margin-bottom:6px;padding:10px 14px;transition:all .3s ease}.patient-row:hover{background-color:#fff;box-shadow:0 4px 12px #0000001f}.patients-table td{border:none;display:block;padding:2px 0;text-align:left}.patients-table td:first-child{display:none}.patients-table td:nth-child(2){border-bottom:none;margin-bottom:0;padding-bottom:0}.patient-detail-cell,.patient-dob-cell{display:none;max-height:0;opacity:0;overflow:hidden;transition:all .3s ease}.patient-row[data-expanded=true] .patient-detail-cell,.patient-row[data-expanded=true] .patient-dob-cell{align-items:center;background-color:#f8fafc;border-left:3px solid #4a6da7;border-radius:8px;display:flex;flex-direction:row;gap:12px;justify-content:flex-start;margin:4px 0;max-height:100px;opacity:1;padding:10px 12px}.patient-row[data-expanded=true] .patients-table td:nth-child(2){border-bottom:1px solid #e2e8f0;margin-bottom:8px;padding-bottom:8px}.patient-name-container{align-items:center;display:flex;position:relative}.expand-toggle-button{display:none}@media (max-width:480px){.expand-toggle-button{align-items:center;background:#4a6da7;border:none;border-radius:50%;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:flex!important;font-size:14px;height:32px;justify-content:center;margin-left:auto;transition:all .2s ease;width:32px}.expand-toggle-button:hover{background:#3d5a8a;transform:scale(1.05)}.expand-toggle-button:active{transform:scale(.95)}}.patient-avatar{font-size:14px;height:40px;margin-right:12px;width:40px}.full-name{font-size:18px;font-weight:600}.patient-detail-cell:before,.patient-dob-cell:before{color:#64748b;content:attr(data-label);flex-shrink:0;font-size:13px;font-weight:600;letter-spacing:.5px;min-width:120px;text-transform:uppercase}.patient-detail-cell,.patient-dob-cell{color:#1e293b;font-size:15px;font-weight:500}.actions-cell{display:none;max-height:0;opacity:0;overflow:hidden;transition:all .3s ease}.patient-row[data-expanded=true] .actions-cell{border-top:1px solid #e2e8f0;display:flex;justify-content:space-around;margin-top:12px;max-height:100px;opacity:1;padding-top:16px!important}.action-button{background-color:#f7fafc;border-radius:8px;font-size:20px;padding:10px 12px}.action-button:hover{background-color:#edf2f7;transform:scale(1.05)}.no-data{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:block;padding:40px 20px}}.block-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1100}.block-modal{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0003;max-width:480px;overflow:hidden;width:92%}.block-modal-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 20px}.block-modal-header h2{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.block-modal-header .close-btn{background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;padding:4px;transition:all .15s ease}.block-modal-header .close-btn:hover{background:#e2e8f0;color:#1e293b}.block-modal-body{max-height:calc(80vh - 140px);overflow-y:auto;padding:20px}.block-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:14px;margin-bottom:16px;padding:10px 14px}.block-modal .form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.block-modal .form-row label{color:#374151;font-size:14px;font-weight:500}.block-modal .form-row input[type=date],.block-modal .form-row input[type=datetime-local],.block-modal .form-row input[type=text],.block-modal .form-row select{border:1px solid #d1d5db;border-radius:8px;font-size:15px;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease}.block-modal .form-row input:focus,.block-modal .form-row select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.block-modal .checkbox-row{align-items:center;flex-direction:row}.block-modal .checkbox-label{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;display:flex;gap:10px;padding:10px 14px;transition:all .15s ease}.block-modal .checkbox-label:hover{background:#f1f5f9;border-color:#cbd5e1}.block-modal .checkbox-label input[type=checkbox]{accent-color:#3b82f6;height:18px;width:18px}.block-modal .checkbox-label span{color:#475569;font-size:14px;font-weight:500}.block-modal-footer{background:#f8fafc;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:16px 20px}.block-modal-footer button{border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .15s ease}.block-modal-footer .secondary{background:#fff;border:1px solid #d1d5db;color:#374151}.block-modal-footer .secondary:hover{background:#f3f4f6;border-color:#9ca3af}.block-modal-footer .primary{background:#3b82f6;border:1px solid #2563eb;color:#fff}.block-modal-footer .primary:hover{background:#2563eb}.block-modal-footer .primary:disabled,.block-modal-footer .secondary:disabled{cursor:not-allowed;opacity:.6}@media (max-width:480px){.block-modal-overlay{padding:0}.block-modal{border-radius:0;display:flex;flex-direction:column;height:100vh;max-height:100vh;max-width:100vw;width:100vw}.block-modal-header{flex-shrink:0}.block-modal-body{flex:1 1;max-height:none;overflow-y:auto}.block-modal .form-row input,.block-modal .form-row select{font-size:16px;padding:14px 12px}.block-modal-footer{flex-direction:column;flex-shrink:0}.block-modal-footer button{font-size:16px;padding:14px 20px;width:100%}}.rbc-btn{color:inherit;font:inherit;margin:0}button.rbc-btn{-webkit-appearance:button;appearance:button;cursor:pointer;overflow:visible;text-transform:none}button[disabled].rbc-btn{cursor:not-allowed}button.rbc-input::-moz-focus-inner{border:0;padding:0}.rbc-calendar{align-items:stretch;box-sizing:border-box;display:flex;flex-direction:column;height:100%}.rbc-m-b-negative-3{margin-bottom:-3px}.rbc-h-full{height:100%}.rbc-calendar *,.rbc-calendar :after,.rbc-calendar :before{box-sizing:inherit}.rbc-abs-full,.rbc-row-bg{bottom:0;left:0;overflow:hidden;position:absolute;right:0;top:0}.rbc-ellipsis,.rbc-event-label,.rbc-row-segment .rbc-event-content,.rbc-show-more{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rbc-rtl{direction:rtl}.rbc-off-range{color:#999}.rbc-off-range-bg{background:#e6e6e6}.rbc-header{border-bottom:1px solid #ddd;flex:1 0;font-size:90%;font-weight:700;min-height:0;overflow:hidden;padding:0 3px;text-align:center;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.rbc-header+.rbc-header{border-left:1px solid #ddd}.rbc-rtl .rbc-header+.rbc-header{border-left-width:0;border-right:1px solid #ddd}.rbc-header>a,.rbc-header>a:active,.rbc-header>a:visited{color:inherit;text-decoration:none}.rbc-button-link{background:none;border:none;color:inherit;cursor:pointer;margin:0;padding:0;-webkit-user-select:text;user-select:text}.rbc-row-content{position:relative;user-select:none;-webkit-user-select:none;z-index:4}.rbc-row-content-scrollable{display:flex;flex-direction:column;height:100%}.rbc-row-content-scrollable .rbc-row-content-scroll-container{-ms-overflow-style:none;height:100%;overflow-y:scroll;scrollbar-width:none}.rbc-row-content-scrollable .rbc-row-content-scroll-container::-webkit-scrollbar{display:none}.rbc-today{background-color:#eaf6ff}.rbc-toolbar{align-items:center;display:flex;flex-wrap:wrap;font-size:16px;justify-content:center;margin-bottom:10px}.rbc-toolbar .rbc-toolbar-label{flex-grow:1;padding:0 10px;text-align:center}.rbc-toolbar button{background:none;background-image:none;border:1px solid #ccc;border-radius:4px;color:#373a3c;display:inline-block;line-height:normal;margin:0;padding:.375rem 1rem;text-align:center;vertical-align:middle;white-space:nowrap}.rbc-toolbar button.rbc-active,.rbc-toolbar button:active{background-color:#e6e6e6;background-image:none;border-color:#adadad;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.rbc-toolbar button.rbc-active:focus,.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button:active:focus,.rbc-toolbar button:active:hover{background-color:#d4d4d4;border-color:#8c8c8c;color:#373a3c}.rbc-toolbar button:focus,.rbc-toolbar button:hover{background-color:#e6e6e6;border-color:#adadad;color:#373a3c}.rbc-toolbar button:hover{cursor:pointer}.rbc-btn-group{display:inline-block;white-space:nowrap}.rbc-btn-group>button:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.rbc-btn-group>button:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.rbc-rtl .rbc-btn-group>button:first-child:not(:last-child){border-radius:4px;border-bottom-left-radius:0;border-top-left-radius:0}.rbc-rtl .rbc-btn-group>button:last-child:not(:first-child){border-radius:4px;border-bottom-right-radius:0;border-top-right-radius:0}.rbc-btn-group>button:not(:first-child):not(:last-child){border-radius:0}.rbc-btn-group button+button{margin-left:-1px}.rbc-rtl .rbc-btn-group button+button{margin-left:0;margin-right:-1px}.rbc-btn-group+.rbc-btn-group,.rbc-btn-group+button{margin-left:10px}@media (max-width:767px){.rbc-toolbar{flex-direction:column}}.rbc-day-slot .rbc-background-event,.rbc-event{background-color:#3174ad;border:none;border-radius:5px;box-shadow:none;box-sizing:border-box;color:#fff;cursor:pointer;margin:0;padding:2px 5px;text-align:left;width:100%}.rbc-day-slot .rbc-slot-selecting .rbc-background-event,.rbc-slot-selecting .rbc-day-slot .rbc-background-event,.rbc-slot-selecting .rbc-event{cursor:inherit;pointer-events:none}.rbc-day-slot .rbc-selected.rbc-background-event,.rbc-event.rbc-selected{background-color:#265985}.rbc-day-slot .rbc-background-event:focus,.rbc-event:focus{outline:5px auto #3b99fc}.rbc-event-label{font-size:80%}.rbc-event-overlaps{box-shadow:-1px 1px 5px 0 #33333380}.rbc-event-continues-prior{border-bottom-left-radius:0;border-top-left-radius:0}.rbc-event-continues-after{border-bottom-right-radius:0;border-top-right-radius:0}.rbc-event-continues-earlier{border-top-left-radius:0;border-top-right-radius:0}.rbc-event-continues-later{border-bottom-left-radius:0;border-bottom-right-radius:0}.rbc-row{display:flex;flex-direction:row}.rbc-row-segment{padding:0 1px 1px}.rbc-selected-cell{background-color:#0000001a}.rbc-show-more{background-color:#ffffff4d;color:#3174ad;font-size:85%;font-weight:700;height:auto;line-height:normal;z-index:4}.rbc-show-more:focus,.rbc-show-more:hover{color:#265985}.rbc-month-view{border:1px solid #ddd;display:flex;flex:1 0;flex-direction:column;height:100%;position:relative;user-select:none;-webkit-user-select:none;width:100%}.rbc-month-header{display:flex;flex-direction:row}.rbc-month-row{display:flex;flex:1 0;flex-basis:0px;flex-direction:column;height:100%;overflow:hidden;position:relative}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{flex:1 1;min-width:0;padding-right:5px;text-align:right}.rbc-date-cell.rbc-now{font-weight:700}.rbc-date-cell>a,.rbc-date-cell>a:active,.rbc-date-cell>a:visited{color:inherit;text-decoration:none}.rbc-row-bg{display:flex;flex:1 0;flex-direction:row;overflow:hidden;right:1px}.rbc-day-bg{flex:1 0}.rbc-day-bg+.rbc-day-bg{border-left:1px solid #ddd}.rbc-rtl .rbc-day-bg+.rbc-day-bg{border-left-width:0;border-right:1px solid #ddd}.rbc-overlay{background-color:#fff;border:1px solid #e5e5e5;box-shadow:0 5px 15px #00000040;padding:10px;position:absolute;z-index:5}.rbc-overlay>*+*{margin-top:1px}.rbc-overlay-header{border-bottom:1px solid #e5e5e5;margin:-10px -10px 5px;padding:2px 10px}.rbc-agenda-view{display:flex;flex:1 0;flex-direction:column;overflow:auto}.rbc-agenda-view table.rbc-agenda-table{border:1px solid #ddd;border-collapse:collapse;border-spacing:0;width:100%}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td{padding:5px 10px;vertical-align:top}.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell{padding-left:15px;padding-right:15px;text-transform:lowercase}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left-width:0;border-right:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table tbody>tr+tr{border-top:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table thead>tr>th{border-bottom:1px solid #ddd;padding:3px 5px;text-align:left}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:right}.rbc-agenda-time-cell{text-transform:lowercase}.rbc-agenda-time-cell .rbc-continues-after:after{content:" »"}.rbc-agenda-time-cell .rbc-continues-prior:before{content:"« "}.rbc-agenda-date-cell,.rbc-agenda-time-cell{white-space:nowrap}.rbc-agenda-event-cell{width:100%}.rbc-time-column{display:flex;flex-direction:column;min-height:100%}.rbc-time-column .rbc-timeslot-group{flex:1 1}.rbc-timeslot-group{border-bottom:1px solid #ddd;display:flex;flex-flow:column nowrap;min-height:40px}.rbc-header-gutter,.rbc-time-gutter{flex:none}.rbc-label{padding:0 5px}.rbc-day-slot{position:relative}.rbc-day-slot .rbc-events-container{bottom:0;left:0;margin-right:10px;position:absolute;right:0;top:0}.rbc-day-slot .rbc-events-container.rbc-rtl{left:10px;right:0}.rbc-day-slot .rbc-background-event,.rbc-day-slot .rbc-event{align-items:flex-start;border:1px solid #265985;display:flex;flex-flow:column wrap;max-height:100%;min-height:20px;overflow:hidden;position:absolute}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{flex:none;padding-right:5px;width:auto}.rbc-day-slot .rbc-event-content{word-wrap:break-word;flex:1 1;height:100%;line-height:1;min-height:1em;width:100%}.rbc-day-slot .rbc-time-slot{border-top:1px solid #f7f7f7}.rbc-time-view-resources .rbc-time-gutter,.rbc-time-view-resources .rbc-time-header-gutter{background-color:#fff;border-right:1px solid #ddd;left:0;margin-right:-1px;position:sticky;z-index:10}.rbc-time-view-resources .rbc-time-header{overflow:hidden}.rbc-time-view-resources .rbc-time-header-content{flex:1 0;flex-basis:0px;min-width:auto}.rbc-time-view-resources .rbc-time-header-cell-single-day{display:none}.rbc-time-view-resources .rbc-day-slot{min-width:140px}.rbc-time-view-resources .rbc-day-bg,.rbc-time-view-resources .rbc-header{flex:1 1;flex-basis:0 px;width:140px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{flex:1 0}.rbc-time-slot.rbc-now{font-weight:700}.rbc-day-header{text-align:center}.rbc-slot-selection{background-color:#00000080;color:#fff;font-size:75%;padding:3px;position:absolute;width:100%;z-index:10}.rbc-slot-selecting{cursor:move}.rbc-time-view{border:1px solid #ddd;display:flex;flex:1 1;flex-direction:column;min-height:0;width:100%}.rbc-time-view .rbc-time-gutter{text-align:right;white-space:nowrap}.rbc-time-view .rbc-allday-cell{box-sizing:initial;height:100%;position:relative;width:100%}.rbc-time-view .rbc-allday-cell+.rbc-allday-cell{border-left:1px solid #ddd}.rbc-time-view .rbc-allday-events{position:relative;z-index:4}.rbc-time-view .rbc-row{box-sizing:border-box;min-height:20px}.rbc-time-header{display:flex;flex:0 0 auto;flex-direction:row}.rbc-time-header.rbc-overflowing{border-right:1px solid #ddd}.rbc-rtl .rbc-time-header.rbc-overflowing{border-left:1px solid #ddd;border-right-width:0}.rbc-time-header>.rbc-row.rbc-row-resource,.rbc-time-header>.rbc-row:first-child{border-bottom:1px solid #ddd}.rbc-time-header-cell-single-day{display:none}.rbc-time-header-content{border-left:1px solid #ddd;display:flex;flex:1 1;flex-direction:column;min-width:0}.rbc-rtl .rbc-time-header-content{border-left-width:0;border-right:1px solid #ddd}.rbc-time-header-content>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd;flex-shrink:0}.rbc-time-content{align-items:flex-start;border-top:2px solid #ddd;display:flex;flex:1 0;overflow-y:auto;position:relative;width:100%}.rbc-time-content>.rbc-time-gutter{flex:none}.rbc-time-content>*+*>*{border-left:1px solid #ddd}.rbc-rtl .rbc-time-content>*+*>*{border-left-width:0;border-right:1px solid #ddd}.rbc-time-content>.rbc-day-slot{user-select:none;-webkit-user-select:none;width:100%}.rbc-current-time-indicator{background-color:#74ad31;height:1px;left:0;pointer-events:none;position:absolute;right:0;z-index:3}.rbc-resource-grouping.rbc-time-header-content{display:flex;flex-direction:column}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}.appointments-wrapper{position:relative}.appt-loading{background:#ffffffe6;border:1px solid #e5e7eb;border-radius:6px;font-size:12px;padding:4px 8px;position:absolute;right:12px;top:8px;z-index:2}.appt-error{color:#b91c1c;margin:8px 0}.appt-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.appt-modal{background:#fff;border-radius:8px;box-shadow:0 10px 30px #0003;max-width:520px;overflow:hidden;width:92%}.appt-modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:12px 16px}.appt-modal-body{padding:12px 16px}.form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.form-row input,.form-row select{border:1px solid #e5e7eb;border-radius:6px;padding:8px 10px}.checkbox-row{align-items:center;flex-direction:row;gap:8px}.appt-modal-footer{border-top:1px solid #eee;display:flex;gap:10px;justify-content:flex-end;padding:12px 16px 16px}.appt-modal-footer .primary{background:#2563eb;border:1px solid #1d4ed8;border-radius:6px;color:#fff;padding:8px 12px}.appt-modal-footer .danger{background:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#991b1b;padding:8px 12px}.close-btn{background:none;border:none;cursor:pointer;font-size:20px}.appt-ctxmenu{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid #e5e7ebcc;border-radius:8px;box-shadow:0 10px 25px -5px #00000026,0 8px 10px -6px #0000001a;list-style:none;min-width:200px;padding:6px 0;position:fixed;z-index:1200}.appt-ctxmenu li{align-items:center;cursor:pointer;display:flex;gap:10px;padding:10px 14px;transition:background-color .15s ease}.appt-ctxmenu li:hover{background:#f3f4f6cc}.appt-ctxmenu li.disabled{color:#9ca3af;opacity:.6;pointer-events:none}.appt-ctxmenu .ctx-icon{color:#6b7280;flex-shrink:0;height:18px;width:18px}.appt-ctxmenu li:hover .ctx-icon{color:#374151}.appointments-wrapper .rbc-ctx-selected{background-color:#e0f2fe!important}.appointments-wrapper .rbc-month-row{pointer-events:none}.appointments-wrapper .rbc-month-row .rbc-date-cell,.appointments-wrapper .rbc-month-row .rbc-date-cell a,.appointments-wrapper .rbc-month-row .rbc-date-cell button,.appointments-wrapper .rbc-month-row .rbc-day-bg,.appointments-wrapper .rbc-month-row .rbc-event,.appointments-wrapper .rbc-month-row .rbc-row-bg,.appointments-wrapper .rbc-month-row .rbc-show-more{pointer-events:auto}.appt-ctx-highlight{background:#0284c71a;border:2px solid #0284c7cc;border-radius:4px;box-sizing:border-box;pointer-events:none;position:fixed;z-index:1000}@media (max-width:768px){.appointments-wrapper{padding:0 8px}.appointments-wrapper>div[style*="display: flex"]{flex-wrap:wrap;gap:6px!important}.appointments-wrapper button{font-size:14px;padding:10px 14px}.rbc-toolbar{align-items:center;display:flex;flex-direction:row;gap:8px}.rbc-toolbar .rbc-btn-group:first-child{display:flex;gap:4px}.rbc-toolbar .rbc-btn-group:first-child button{font-size:14px;min-width:32px;padding:6px 10px}.rbc-toolbar .rbc-toolbar-label{flex:1 1;font-size:15px;font-weight:600;padding-left:8px;text-align:left}.rbc-view-select{background:#fff;border:1px solid #e5e7eb;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 10px}.appt-modal{max-height:95vh;width:95%}.appt-modal-body,.appt-modal-header{padding:14px 16px}.appt-modal-body{max-height:calc(95vh - 140px);overflow-y:auto}.form-row input,.form-row select{font-size:16px;padding:12px}.appt-modal-footer{padding:14px 16px}.appt-modal-footer .danger,.appt-modal-footer .primary{font-size:15px;padding:12px 16px}.appt-ctxmenu{min-width:180px}.appt-ctxmenu li{font-size:15px;padding:12px 14px}}@media (max-width:480px){.appointments-wrapper{padding:0 4px}.appt-modal-overlay{overflow:hidden!important;padding:0!important}.appt-modal,.appt-modal-overlay{margin:0!important;max-width:100vw!important;width:100vw!important}.appt-modal{border-radius:0!important;display:flex;flex-direction:column;height:100vh!important;max-height:100vh!important}.appt-modal-header{flex-shrink:0;padding:12px 16px}.appt-modal-header h2{font-size:1.15rem}.close-btn{font-size:1.75rem;padding:4px 8px}.appt-modal-body{flex:1 1;max-height:none;overflow-y:auto;padding:16px}.form-row{margin-bottom:14px}.form-row label{font-size:14px;margin-bottom:8px}.form-row input,.form-row select{border-radius:8px;font-size:16px;padding:14px 12px}.checkbox-row{padding:8px 0}.checkbox-row input[type=checkbox]{height:20px;width:20px}.appt-modal-footer{flex-direction:column;flex-shrink:0;gap:10px;padding:12px 16px 16px}.appt-modal-footer .danger,.appt-modal-footer .primary{border-radius:8px;font-size:1rem;padding:14px 20px;width:100%}.appt-ctxmenu{max-width:calc(100vw - 20px);min-width:160px}.appt-ctxmenu li{font-size:16px;padding:14px 16px}}.first-visit-toggle{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;display:flex;gap:12px;padding:14px 16px;transition:all .25s ease;-webkit-user-select:none;user-select:none}.first-visit-toggle:hover{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-color:#cbd5e1}.first-visit-toggle.active{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#3b82f6}.first-visit-toggle .toggle-switch{background:#cbd5e1;border-radius:13px;flex-shrink:0;height:26px;position:relative;transition:background-color .25s ease;width:48px}.first-visit-toggle.active .toggle-switch{background:#3b82f6}.first-visit-toggle .toggle-knob{background:#fff;border-radius:50%;box-shadow:0 2px 4px #00000026;height:22px;left:2px;position:absolute;top:2px;transition:transform .25s ease;width:22px}.first-visit-toggle.active .toggle-knob{transform:translateX(22px)}.first-visit-toggle .toggle-label{color:#64748b;font-size:15px;font-weight:600;transition:color .25s ease}.first-visit-toggle.active .toggle-label{color:#1e40af}.duration-input-wrapper{align-items:center;background:#fff;border:1px solid #dfe6e9;border-radius:6px;display:flex;gap:0;overflow:hidden}.duration-input-wrapper input{-webkit-appearance:textfield;appearance:textfield;border:none!important;flex:1 1;font-size:16px;font-weight:600;min-width:60px;padding:10px 8px;text-align:center}.duration-input-wrapper input::-webkit-inner-spin-button,.duration-input-wrapper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.duration-input-wrapper input:focus{outline:none}.duration-btn{align-items:center;background:#f1f5f9;border:none;color:#475569;cursor:pointer;display:flex;flex-shrink:0;font-size:20px;font-weight:600;height:44px;justify-content:center;transition:all .15s ease;width:44px}.duration-btn:hover{background:#e2e8f0;color:#1e293b}.duration-btn:active{background:#cbd5e1}.duration-btn:first-child{border-right:1px solid #e2e8f0}.duration-btn:last-child{border-left:1px solid #e2e8f0}.rbc-month-view .rbc-row-bg>.rbc-day-bg:nth-child(6),.rbc-month-view .rbc-row-bg>.rbc-day-bg:nth-child(7),.rbc-time-view .rbc-time-content>.rbc-day-slot:nth-child(7),.rbc-time-view .rbc-time-content>.rbc-day-slot:nth-child(8),.rbc-time-view .rbc-time-header-content .rbc-row>:nth-child(6),.rbc-time-view .rbc-time-header-content .rbc-row>:nth-child(7){background-color:#fce7f3}.rbc-month-view .rbc-row-bg>.rbc-day-bg.rbc-off-range-bg:nth-child(6),.rbc-month-view .rbc-row-bg>.rbc-day-bg.rbc-off-range-bg:nth-child(7){background-color:#f5d0e0}.custom-event-content{align-items:center;display:flex;gap:4px;justify-content:space-between;overflow:hidden;width:100%}.custom-event-content .event-title{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-event-content .event-time-range{flex-shrink:0;font-size:11px;font-weight:500;opacity:.9}@media (max-width:768px){.custom-event-content .event-time-range{display:none}}.rbc-day-blocked{background-color:#fef3c7!important;position:relative}.rbc-day-blocked:after{background:repeating-linear-gradient(45deg,#0000,#0000 10px,#fbbf241a 0,#fbbf241a 20px);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.rbc-month-view .rbc-day-bg.rbc-day-blocked,.rbc-time-view .rbc-day-slot.rbc-day-blocked{background-color:#fef3c7!important}.rbc-day-blocked .rbc-button-link,.rbc-day-blocked a{color:#b45309}.block-delete-info{background:#f8f9fa;border-radius:8px;list-style:none;margin:1rem 0 0;padding:1rem}.block-delete-info li{border-bottom:1px solid #e9ecef;padding:.5rem 0}.block-delete-info li:last-child{border-bottom:none}.block-delete-info strong{color:#495057;margin-right:.5rem}.visit-modal-wrapper{animation:visit-modal-appear .3s ease-out;max-height:90vh;max-width:1200px;width:95%}.visit-modal-layout{background:#fff;border-radius:12px;box-shadow:0 4px 30px #0003;display:flex;gap:0;height:85vh;max-height:85vh;overflow:hidden}.visit-record-panel{background:#f8fafc;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;max-width:400px;min-width:320px;overflow:hidden;width:380px}.visit-record-panel .medical-record-panel{border:none;border-radius:0;height:100%}.visit-modal-content{background-color:#fff;display:flex;flex:1 1;flex-direction:column;overflow:hidden}@keyframes visit-modal-appear{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.visit-form-container{display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:24px}.visit-form-container .form-group{display:flex;flex:1 1;flex-direction:column;min-height:0}.visit-form-container .form-group .w-md-editor{flex:1 1!important;height:auto!important;min-height:250px}.visit-form-container .modal-footer{flex-shrink:0;margin-top:auto;padding-top:16px}.visit-info-section{background-color:#f8f9fa;border-left:4px solid #3498db;border-radius:8px;flex-shrink:0;margin-bottom:20px;padding:16px}.visit-info-item{display:flex;gap:8px;margin-bottom:8px}.visit-info-item:last-child{margin-bottom:0}.visit-info-label{color:#34495e;font-weight:600;min-width:120px}.visit-info-value{color:#2c3e50}.visit-error{background-color:#fee2e2;border-left:4px solid #ef4444;border-radius:6px;color:#b91c1c;margin-bottom:16px;padding:12px}.visit-notes-textarea{border:1px solid #dfe6e9;border-radius:6px;font-family:inherit;font-size:.95rem;min-height:200px;padding:12px;resize:vertical;transition:border-color .2s,box-shadow .2s;width:100%}.visit-notes-textarea:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db26;outline:none}.visit-notes-textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.visit-notes-textarea::placeholder{color:#95a5a6}.form-group .w-md-editor{border:1px solid #dfe6e9;border-radius:6px}.form-group .w-md-editor:focus-within{border-color:#3498db;box-shadow:0 0 0 3px #3498db26}.form-group .w-md-editor-toolbar{background-color:#f8f9fa;border-bottom:1px solid #dfe6e9}.form-group .w-md-editor-content,.form-group .w-md-editor-content .w-md-editor-input,.form-group .w-md-editor-content .w-md-editor-input textarea{height:100%!important}.form-group .w-md-editor-text{min-height:100%!important}@media (max-width:900px){.visit-modal-wrapper{max-height:100vh;max-width:100%;width:100%}.visit-modal-layout{border-radius:0;flex-direction:column;height:100vh;max-height:100vh}.visit-record-panel{display:none}.visit-modal-content{border-radius:0;max-height:100vh;width:100%}}@media (max-width:768px){.visit-info-item{flex-direction:column;gap:4px}.visit-info-label{min-width:auto}.form-group .w-md-editor{height:250px!important}}.day-zoom-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1100}.day-zoom-modal{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0003;display:flex;flex-direction:column;max-height:80vh;max-width:500px;overflow:hidden;width:92%}.day-zoom-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 20px}.day-zoom-title{align-items:center;display:flex;gap:10px}.day-zoom-title h2{color:#1e293b;font-size:18px;font-weight:600;margin:0}.zoom-icon{color:#3b82f6}.day-zoom-header .close-button{background:none;border:none;color:#64748b;cursor:pointer;font-size:24px;line-height:1;padding:4px 8px;transition:color .15s ease}.day-zoom-header .close-button:hover{color:#1e293b}.day-zoom-date{background:#f8fafc;border-bottom:1px solid #e5e7eb;color:#475569;font-size:15px;font-weight:500;padding:12px 20px;text-transform:capitalize}.day-zoom-content{flex:1 1;overflow-y:auto;padding:16px 20px}.no-appointments{color:#94a3b8;font-size:15px;padding:40px 20px;text-align:center}.zoom-appointments-list{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.zoom-appointment-item{align-items:center;background:#f8fafc;border-left:4px solid #60a5fa;border-radius:10px;display:flex;gap:12px;padding:14px 16px;transition:transform .15s ease,box-shadow .15s ease}.zoom-appointment-item:hover{box-shadow:0 4px 12px #00000014;transform:translateX(4px)}.zoom-appointment-item.status-visited{border-left-color:#34d399}.zoom-appointment-item.status-cancelled{border-left-color:#f87171;opacity:.7}.zoom-time{align-items:center;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;min-width:70px;padding-right:12px}.zoom-time .time-start{color:#1e293b;font-size:16px;font-weight:700}.zoom-time .time-separator{color:#94a3b8;font-size:11px;line-height:1}.zoom-time .time-end{color:#64748b;font-size:13px;font-weight:500}.zoom-details{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.zoom-title{color:#1e293b;font-size:14px;font-weight:600}.zoom-patient,.zoom-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zoom-patient{color:#64748b;font-size:13px}.zoom-status{flex-shrink:0}.status-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:600;padding:4px 10px;text-transform:uppercase}.status-badge.status-scheduled{background:#dbeafe;color:#1d4ed8}.status-badge.status-visited{background:#d1fae5;color:#047857}.status-badge.status-cancelled{background:#fee2e2;color:#b91c1c}.day-zoom-footer{align-items:center;background:#f8fafc;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:14px 20px}.appointments-count{color:#64748b;font-size:14px;font-weight:500}.day-zoom-footer .secondary-button{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .15s ease}.day-zoom-footer .secondary-button:hover{background:#f1f5f9;border-color:#cbd5e1}@media (max-width:480px){.day-zoom-modal{border-radius:0;height:100%;max-height:100%;max-width:100%;width:100%}.day-zoom-header{padding:14px 16px}.day-zoom-title h2{font-size:16px}.day-zoom-date{font-size:14px;padding:10px 16px}.day-zoom-content{padding:12px 16px}.zoom-appointment-item{gap:10px;padding:12px 14px}.zoom-time{min-width:60px;padding-right:10px}.zoom-time .time-start{font-size:14px}.zoom-time .time-end{font-size:12px}.zoom-title{font-size:13px}.zoom-patient{font-size:12px}.status-badge{font-size:10px;padding:3px 8px}.day-zoom-footer{padding:12px 16px}}
/*# sourceMappingURL=main.6b8ae2b8.css.map*/