.web-modal-backdrop{position:fixed;inset:0;background:#0f172a8c;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem}.web-modal{background:#fff;border-radius:12px;box-shadow:0 12px 32px #00000040;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.web-modal-header{padding:1rem 1.25rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-top-left-radius:12px;border-top-right-radius:12px;display:flex;align-items:center;justify-content:space-between}.web-modal-header h2{margin:0;font-size:1.1rem}.web-modal-body{padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.web-modal-footer{padding:1rem 1.25rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:.5rem}.web-form-row{display:flex;flex-direction:column;gap:.25rem}.web-form-row label{font-size:.85rem;font-weight:600;color:#374151}.web-form-row input,.web-form-row select,.web-form-row textarea{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;font-family:inherit}.web-form-row input:focus,.web-form-row select:focus,.web-form-row textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea33}.web-form-error{background:#fee2e2;color:#991b1b;padding:.5rem .75rem;border-radius:6px;font-size:.85rem}.web-form-info{background:#eef2ff;color:#3730a3;padding:.5rem .75rem;border-radius:6px;font-size:.85rem}.web-btn{padding:.55rem 1rem;border-radius:6px;border:none;font-weight:600;font-size:.9rem;cursor:pointer;transition:filter .15s ease,transform .1s ease}.web-btn:disabled{opacity:.6;cursor:not-allowed}.web-btn:not(:disabled):hover{filter:brightness(.95)}.web-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.web-btn-secondary{background:#e5e7eb;color:#1f2937}.web-btn-danger{background:#ef4444;color:#fff}.web-btn-ghost{background:transparent;color:#4b5563}.reg-wizard{min-height:100vh;display:flex;justify-content:center;align-items:flex-start;padding:4rem 1rem;background:linear-gradient(135deg,#eef2ff,#f0f9ff)}.reg-wizard-card{background:#fff;border-radius:14px;box-shadow:0 18px 42px #0000001f;width:100%;max-width:560px;overflow:hidden}.reg-wizard-header{padding:1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.reg-wizard-header h1{margin:0 0 .5rem;font-size:1.4rem}.reg-wizard-header p{margin:0 0 1rem;opacity:.92;font-size:.95rem}.reg-wizard-steps{display:flex;gap:.75rem;font-size:.8rem;font-weight:600}.reg-wizard-steps span{padding:.3rem .7rem;background:#ffffff2e;border-radius:999px;opacity:.7}.reg-wizard-steps span.active{background:#fff;color:#4c3a99;opacity:1}.reg-wizard-body{padding:1.5rem;display:flex;flex-direction:column;gap:.85rem}.reg-row-2{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.reg-wizard-actions{display:flex;justify-content:space-between;margin-top:.5rem}.reg-doctor-summary{display:flex;justify-content:space-between;align-items:center;background:#f9fafb;padding:.85rem 1rem;border-radius:8px;border:1px solid #e5e7eb}.reg-doctor-summary div{font-size:.9rem;line-height:1.4}.appdialog-overlay{position:fixed;inset:0;z-index:99999;background:#00000080;display:flex;align-items:center;justify-content:center;padding:1rem;pointer-events:all}.appdialog-box{background:var(--color-surface);border-radius:14px;box-shadow:0 16px 48px #0000004d;width:100%;max-width:460px;display:flex;flex-direction:column;overflow:hidden;animation:appdialog-appear .18s ease}.appdialog-box.appdialog-wide{max-width:600px}@keyframes appdialog-appear{0%{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.appdialog-header{display:flex;align-items:center;gap:.6rem;padding:1rem 1.25rem .75rem;border-bottom:1px solid var(--color-hover)}.appdialog-icon{font-size:var(--font-size-2xl);line-height:var(--line-height-none);flex-shrink:0}.appdialog-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.appdialog-info{border-left:5px solid var(--color-info)}.appdialog-success{border-left:5px solid var(--color-success)}.appdialog-warning{border-left:5px solid var(--color-warning)}.appdialog-error{border-left:5px solid var(--color-red-bright)}.appdialog-body{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.appdialog-message{display:flex;flex-direction:column;gap:.3rem}.appdialog-message p{margin:0;font-size:var(--font-size-md);color:var(--color-slate-700);line-height:var(--line-height-relaxed)}.appdialog-input-group{display:flex;flex-direction:column;gap:.35rem;margin-top:.25rem}.appdialog-input-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.appdialog-input{padding:.6rem .875rem;border:2px solid var(--color-border-soft-2);border-radius:8px;font-size:var(--font-size-md);outline:none;transition:border-color .15s;color:var(--color-text-primary)}.appdialog-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea26}.appdialog-footer{display:flex;justify-content:flex-end;padding:.875rem 1.25rem;border-top:1px solid var(--color-hover);gap:.75rem}.appdialog-footer-two{justify-content:flex-end}.appdialog-btn{padding:.55rem 1.35rem;border:none;border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:opacity .15s,transform .1s;min-width:80px}.appdialog-btn:active{transform:scale(.97)}.appdialog-btn-cancel{background:var(--color-bg-cool);color:var(--color-slate-700)}.appdialog-btn-cancel:hover{background:var(--color-border-soft-2)}.appdialog-btn-info{background:var(--color-info);color:var(--color-surface)}.appdialog-btn-info:hover{opacity:.9}.appdialog-btn-success{background:var(--color-success);color:var(--color-surface)}.appdialog-btn-success:hover{opacity:.9}.appdialog-btn-warning{background:var(--color-warning);color:var(--color-surface)}.appdialog-btn-warning:hover{opacity:.9}.appdialog-btn-error{background:var(--color-red-bright);color:var(--color-surface)}.appdialog-btn-error:hover{opacity:.9}.pfc-root{display:flex;flex-direction:column;gap:.75rem}.pfc-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.pfc-header-info h3{margin:0 0 .25rem;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary, var(--color-slate-900))}.pfc-desc{font-size:var(--font-size-sm);color:var(--text-muted, var(--color-slate-450));margin:0}.pfc-header-actions{display:flex;gap:.5rem;flex-wrap:wrap}.pfc-save-btn{background:var(--color-blue-soft);color:var(--color-surface);border:none;border-radius:6px;padding:.45rem 1rem;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background .15s}.pfc-save-btn:hover:not(:disabled){background:var(--color-blue-deep)}.pfc-save-btn:disabled{opacity:.5;cursor:not-allowed}.pfc-reset-btn{background:var(--color-bg-light);color:var(--color-slate-600);border:1px solid var(--color-border-bootstrap);border-radius:6px;padding:.45rem 1rem;font-size:var(--font-size-base);cursor:pointer;transition:background .15s}.pfc-reset-btn:hover:not(:disabled){background:var(--color-border-pale)}.pfc-reset-btn:disabled{opacity:.5;cursor:not-allowed}.pfc-cancel-btn{background:var(--color-bg-light);color:var(--color-slate-600);border:1px solid var(--color-border-bootstrap);border-radius:6px;padding:.4rem .75rem;font-size:var(--font-size-sm);cursor:pointer}.pfc-cancel-btn:hover{background:var(--color-border-pale)}.pfc-add-field-btn{background:var(--color-bg-blue-faint);color:var(--color-blue-deep);border:1.5px dashed var(--color-blue-soft);border-radius:6px;padding:.5rem 1.25rem;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;width:100%;transition:background .15s}.pfc-add-field-btn:hover{background:var(--color-blue-pale)}.pfc-add-btn{background:var(--color-success-faint);color:var(--color-green-dark);border:1px dashed var(--color-success);border-radius:4px;padding:.3rem .7rem;font-size:var(--font-size-sm);cursor:pointer;margin-top:.3rem}.pfc-add-btn:hover{background:var(--color-success-faint)}.pfc-rem-btn,.pfc-delete-btn{background:var(--color-red-pale);color:var(--color-red-bright-dark);border:none;border-radius:4px;padding:.2rem .5rem;font-size:var(--font-size-xs);cursor:pointer;line-height:var(--line-height-none)}.pfc-rem-btn:hover,.pfc-delete-btn:hover{background:var(--color-red-pale)}.pfc-arr-btn{background:var(--color-surface-sunken);color:var(--color-slate-600);border:1px solid var(--color-border-bootstrap);border-radius:3px;padding:.15rem .4rem;font-size:var(--font-size-xs);cursor:pointer;line-height:var(--line-height-none)}.pfc-arr-btn:hover:not(:disabled){background:var(--color-border-pale)}.pfc-arr-btn:disabled{opacity:.35;cursor:not-allowed}.pfc-expand-btn{background:var(--color-surface-sunken);color:var(--color-slate-600);border:1px solid var(--color-border-bootstrap);border-radius:4px;padding:.2rem .5rem;font-size:var(--font-size-xs);cursor:pointer}.pfc-expand-btn:hover{background:var(--color-border-pale)}.pfc-msg{padding:.5rem .875rem;border-radius:6px;font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.pfc-msg-ok{background:var(--color-success-faint);color:var(--color-green-dark);border:1px solid var(--color-success)}.pfc-msg-err{background:var(--color-danger-faint);color:var(--color-danger-dark);border:1px solid var(--color-danger)}.pfc-legend{display:flex;gap:1.25rem;font-size:var(--font-size-xs);color:var(--text-muted, var(--color-slate-300));flex-wrap:wrap;padding-bottom:.25rem;border-bottom:1px solid var(--border-color, var(--color-border-soft-2))}.pfc-field-list{display:flex;flex-direction:column;gap:.35rem}.pfc-field-row{background:var(--color-surface);border:1px solid var(--color-border-soft-2);border-radius:8px;overflow:hidden;transition:border-color .15s,box-shadow .15s}.pfc-field-row:hover{border-color:var(--color-primary-tint)}.pfc-field-expanded{border-color:var(--color-blue-soft);box-shadow:0 0 0 2px #4a90e21f}.pfc-field-disabled{opacity:.55}.pfc-field-main{display:flex;align-items:center;gap:.5rem;padding:.45rem .7rem;flex-wrap:nowrap}.pfc-drag-handle{cursor:grab;font-size:var(--font-size-xl);color:var(--color-slate-300);-webkit-user-select:none;user-select:none;padding:0 .15rem;flex-shrink:0}.pfc-drag-handle:active{cursor:grabbing}.pfc-toggle-wrap{position:relative;display:inline-flex;align-items:center;cursor:pointer;flex-shrink:0}.pfc-toggle-wrap input[type=checkbox]{opacity:0;width:0;height:0;position:absolute}.pfc-toggle-slider{display:block;width:32px;height:18px;background:var(--color-border-medium);border-radius:9px;transition:background .2s;position:relative;flex-shrink:0}.pfc-toggle-slider:after{content:"";position:absolute;left:2px;top:2px;width:14px;height:14px;background:var(--color-surface);border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #0003}.pfc-toggle-wrap input:checked+.pfc-toggle-slider{background:var(--color-blue-soft)}.pfc-toggle-wrap input:checked+.pfc-toggle-slider:after{transform:translate(14px)}.pfc-toggle-sm{width:26px;height:15px}.pfc-toggle-sm:after{width:11px;height:11px}.pfc-toggle-wrap input:checked+.pfc-toggle-sm:after{transform:translate(11px)}.pfc-label-input{flex:1;min-width:80px;padding:.3rem .5rem;border:1px solid var(--color-border-soft-2);border-radius:4px;font-size:var(--font-size-base);color:var(--text-primary, var(--color-slate-900));background:transparent}.pfc-label-input:focus{outline:none;border-color:var(--color-blue-soft);background:var(--color-bg-blue-faint)}.pfc-type-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:.15rem .45rem;border-radius:3px;background:var(--color-primary-tint);color:var(--color-primary-deep);white-space:nowrap;flex-shrink:0;max-width:100px;overflow:hidden;text-overflow:ellipsis}.pfc-pdf-toggle{display:flex;align-items:center;gap:.2rem;cursor:pointer;flex-shrink:0}.pfc-pdf-toggle input[type=checkbox]{width:14px;height:14px;cursor:pointer}.pfc-pdf-icon{: var(--font-size-base)}.pfc-field-editor{padding:.6rem .9rem .75rem;background:var(--color-bg-blue-faint);border-top:1px solid var(--color-border-soft-2)}.pfc-options-editor{display:flex;flex-direction:column;gap:.25rem}.pfc-option-row{display:flex;align-items:center;gap:.4rem}.pfc-opt-val{width:110px;padding:.25rem .4rem;border:1px solid var(--color-border-soft-2);border-radius:4px;font-size:var(--font-size-sm);font-family:var(--font-family-mono)}.pfc-opt-label{flex:1;padding:.25rem .4rem;border:1px solid var(--color-border-soft-2);border-radius:4px;font-size:var(--font-size-sm)}.pfc-opt-val:focus,.pfc-opt-label:focus{outline:none;border-color:var(--color-blue-soft)}.pfc-columns-editor{display:flex;flex-direction:column;gap:.35rem}.pfc-col-row{background:var(--color-surface);border:1px solid var(--color-border-bootstrap-2);border-radius:6px;overflow:hidden}.pfc-col-disabled{opacity:.55}.pfc-col-main{display:flex;align-items:center;gap:.35rem;padding:.35rem .6rem;flex-wrap:nowrap}.pfc-col-label{flex:1;padding:.25rem .4rem;border:1px solid var(--color-border-soft-2);border-radius:4px;font-size:var(--font-size-sm)}.pfc-col-label:focus{outline:none;border-color:var(--color-blue-soft)}.pfc-col-type{padding:.25rem .4rem;border:1px solid var(--color-border-soft-2);border-radius:4px;font-size:var(--font-size-sm);background:var(--color-surface)}.pfc-col-editor{padding:.5rem .75rem .6rem;background:var(--color-bg-blue-faint);border-top:1px solid var(--color-border-bootstrap-2);display:flex;flex-direction:column;gap:.35rem}.pfc-col-row-detail{display:flex;align-items:center;gap:.5rem;font-size:var(--font-size-sm)}.pfc-col-row-detail label{min-width:100px;color:var(--text-muted, var(--color-slate-450))}.pfc-children-editor{display:flex;flex-direction:column;gap:.3rem}.pfc-child-row{display:flex;align-items:center;gap:.35rem;padding:.3rem 0}.pfc-simple-list-editor{display:flex;flex-direction:column;gap:.25rem}.pfc-add-panel{background:var(--color-info-faint);border:1px solid var(--color-blue-pale);border-radius:8px;padding:.6rem .8rem}.pfc-add-row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin-top:.4rem}.pfc-text-input{padding:.25rem .45rem;border:1px solid var(--color-border-soft-2);border-radius:4px;font-size:var(--font-size-sm);width:100%;max-width:300px}.pfc-text-input:focus{outline:none;border-color:var(--color-blue-soft)}.pfc-sub-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-muted, var(--color-slate-450));text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);margin-bottom:.2rem}.pfc-hint{font-size:var(--font-size-xs);color:var(--text-muted, var(--color-slate-300))}.pfc-footer{margin-top:.25rem}.pfc-footer-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border-color, var(--color-border-soft-2))}.pfc-loading,.pfc-no-specialty{padding:1.5rem;text-align:center;color:var(--text-muted, var(--color-slate-450));font-size:var(--font-size-md)}.pfc-vital-editor{display:flex;flex-direction:column;gap:.5rem}.pfc-vital-row-block{background:var(--color-bg-blue-faint);border:1px solid var(--color-primary-tint);border-radius:6px;padding:.5rem .65rem;display:flex;flex-direction:column;gap:.35rem}.pfc-vital-row-header{display:flex;align-items:center;gap:.4rem;margin-bottom:.2rem}.pfc-vital-row-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-primary-deep);flex:1}.pfc-vital-field-list{display:flex;flex-direction:column;gap:.25rem}.pfc-vital-field{display:flex;align-items:flex-start;gap:.35rem;flex-wrap:wrap;padding:.3rem .45rem;background:var(--color-surface);border:1px solid var(--color-primary-tint);border-radius:5px}.pfc-vital-unit-opts{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap;padding-left:.2rem;flex-basis:100%}.pfc-vital-unit-tag{display:flex;align-items:center;gap:.15rem}.pfc-lab-editor{display:flex;flex-direction:column;gap:.25rem}.pfc-lab-header-row{display:flex;align-items:center;gap:.35rem;padding:0 .3rem;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-slate-450)}.pfc-scale-editor{display:flex;flex-direction:column;gap:.3rem}.pfc-scale-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:var(--font-size-sm)}.pfc-scale-row label{color:var(--color-slate-450)}.pfc-bilateral-editor,.pfc-score-editor{display:flex;flex-direction:column;gap:.3rem}.pfc-info-panel{margin:.5rem 0;border:1px solid var(--color-primary-tint);border-radius:6px;background:var(--color-bg-blue-faint);font-size:var(--font-size-sm);color:var(--color-primary-deep)}.pfc-info-summary{cursor:pointer;padding:.55rem 1rem;font-weight:var(--font-weight-semibold);-webkit-user-select:none;user-select:none;list-style:none}.pfc-info-summary::-webkit-details-marker{display:none}.pfc-info-body{padding:.5rem 1rem .75rem;border-top:1px solid var(--color-primary-tint)}.pfc-info-body ul{margin:0;padding-left:1.25rem}.pfc-info-body li{margin:.35rem 0;line-height:var(--line-height-normal)}.settings-page{display:flex;flex-direction:column;gap:1.25rem}.settings-page h1{margin:0;font-size:1.5rem;color:#1f2937}.settings-tabs{display:flex;gap:.25rem;border-bottom:1px solid #e5e7eb}.settings-tabs button{padding:.6rem 1rem;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:.9rem;color:#4b5563;font-weight:500}.settings-tabs button:hover{color:#1f2937;background:#f9fafb}.settings-tabs button.active{color:#667eea;border-bottom-color:#667eea;font-weight:600}.settings-subtabs{display:flex;gap:.25rem;margin-bottom:1.25rem;border-bottom:1px solid #e5e7eb}.settings-subtabs button{padding:.45rem .9rem;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:.85rem;color:#6b7280;font-weight:500}.settings-subtabs button:hover{color:#1f2937;background:#f9fafb}.settings-subtabs button.active{color:#667eea;border-bottom-color:#667eea;font-weight:600}.settings-body{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.settings-section h2{margin:0 0 .85rem;font-size:1.1rem;color:#1f2937}.settings-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.settings-help{color:#4b5563;font-size:.9rem;line-height:1.4;margin:0 0 1rem}.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem}@media(max-width:720px){.settings-grid{grid-template-columns:1fr}}.settings-field{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:#374151}.settings-field input,.settings-field select,.settings-field textarea{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;font-family:inherit;background:#fff}.settings-field input:focus,.settings-field select:focus,.settings-field textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea2e}.settings-actions{display:flex;align-items:center;gap:.75rem;margin-top:1.25rem}.settings-saved{color:#047857;font-size:.85rem}.settings-table{width:100%;border-collapse:collapse;font-size:.9rem}.settings-table th,.settings-table td{text-align:left;padding:.55rem .5rem;border-bottom:1px solid #f3f4f6}.settings-table th{color:#6b7280;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.settings-actions-cell{display:flex;gap:.25rem;justify-content:flex-end}.settings-radio-group{display:flex;flex-direction:column;gap:.55rem;margin-top:.5rem}.settings-radio-group label{display:flex;align-items:center;gap:.5rem;font-size:.95rem;cursor:pointer;color:#374151}.patient-form-container{max-width:1400px;margin:0 auto;padding:0;background:transparent}.duplicate-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-in-out}.duplicate-modal{background:#fff;border-radius:16px;max-width:800px;width:90%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}.duplicate-modal-header{background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-red-flat) 100%);color:#fff;padding:1.5rem 2rem;border-radius:16px 16px 0 0}.duplicate-modal-header h3{margin:0 0 .5rem;font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold)}.duplicate-modal-header p{margin:0;font-size:var(--font-size-lg);opacity:.95}.duplicate-modal-content{padding:2rem;display:flex;flex-direction:column;gap:1.5rem}.similar-patient-card{border:2px solid var(--color-border-soft);border-radius:12px;padding:1.5rem;background:var(--color-bg-light);transition:all .3s ease}.similar-patient-card:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #667eea26}.similar-patient-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--color-border-soft)}.patient-number{font-weight:var(--font-weight-bold);color:var(--color-primary);font-size:var(--font-size-xl)}.patient-date{color:var(--color-text-secondary);font-size:var(--font-size-md)}.match-reasons{display:grid;grid-template-columns:120px 1fr;gap:1rem;align-items:center;margin-bottom:1rem;padding:.75rem;background:var(--color-yellow-pale);border:1px solid var(--color-yellow-pale-2);border-radius:8px}.match-label{font-weight:var(--font-weight-semibold);color:var(--color-amber-deep);font-size:var(--font-size-md)}.match-value{color:var(--color-amber-deep);font-size:var(--font-size-md);font-weight:var(--font-weight-medium)}.similar-patient-details{display:grid;gap:.75rem;margin-bottom:1.25rem}.detail-row{display:grid;grid-template-columns:120px 1fr;gap:1rem;align-items:center}.detail-label{font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);font-size:var(--font-size-md)}.detail-value{color:var(--color-text-primary);font-size:var(--font-size-md);word-break:break-word}.btn-select-patient{width:100%;padding:.75rem 1.5rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:8px;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .3s ease}.btn-select-patient:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-select-patient:active{transform:translateY(0)}.duplicate-modal-footer{padding:1.5rem 2rem;border-top:2px solid var(--color-border-soft);background:var(--color-bg-light);border-radius:0 0 16px 16px}.btn-create-new{width:100%;padding:.75rem 1.5rem;background:#fff;color:var(--color-red-flat);border:2px solid var(--color-red-flat);border-radius:8px;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .3s ease}.btn-create-new:hover{background:var(--color-red-flat);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #e74c3c4d}.btn-create-new:active{transform:translateY(0)}.checking-duplicates{display:flex;align-items:center;gap:.75rem;margin-top:1rem;padding:.75rem 1rem;background:#fff3;border-radius:8px;font-size:var(--font-size-md)}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.duplicate-warning{padding:10px;margin-bottom:10px;border-radius:5px}.regular-warning{background-color:#ff0}.strict-warning{background-color:var(--color-red-pale)}.patient-form-header{background:var(--gradient-primary);padding:2rem 2.5rem;margin-bottom:1.5rem;color:#fff;border-radius:16px;box-shadow:0 8px 32px #667eea4d}.patient-form-header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.patient-form-header-text{flex:1}.patient-form-header h2{font-size:var(--font-size-5xl);margin:0 0 .3rem;font-weight:var(--font-weight-bold);text-shadow:0 2px 4px rgba(0,0,0,.1)}.patient-form-header p{font-size:var(--font-size-lg);opacity:.95;margin:0}.clear-form-btn{background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.4);padding:.6rem 1.2rem;border-radius:8px;cursor:pointer;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);transition:all .2s ease;display:flex;align-items:center;gap:.4rem;white-space:nowrap}.clear-form-btn:hover{background:#ffffff4d;border-color:#fff9;transform:translateY(-1px)}.clear-form-btn:active{transform:translateY(0)}.patient-form{display:grid;gap:.85rem;background:#fff;padding:1.25rem;border-radius:16px;box-shadow:0 4px 24px #00000014}.patient-type-group{grid-column:1 / -1;padding:0;background:transparent;border:none}.patient-type-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:20px}.patient-type-controls{display:flex;flex-direction:row;align-items:center;gap:20px;flex:1}.patient-type-group .form-label{margin:0;font-size:var(--font-size-lg);color:var(--color-slate-900);font-weight:var(--font-weight-semibold)}.patient-type-group .clear-form-btn{background:var(--gradient-primary);color:#fff;border:none;padding:.7rem 1.5rem;border-radius:8px;cursor:pointer;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);transition:all .2s ease;display:flex;align-items:center;gap:.4rem;white-space:nowrap;flex-shrink:0}.patient-type-group .clear-form-btn:hover{background:linear-gradient(135deg,var(--color-primary-shade) 0%,var(--color-primary-deep) 100%);transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.patient-type-group .clear-form-btn:active{transform:translateY(0)}.radio-group{display:flex;flex-direction:row;gap:20px;gap:1rem}.radio-label{display:flex;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;font-size:var(--font-size-md);color:var(--color-slate-850);padding:.45rem 1rem;border:2px solid var(--color-border-soft);border-radius:8px;background:#fff;transition:all .3s ease;position:relative;overflow:hidden}.radio-label:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--gradient-primary);opacity:0;transition:opacity .3s ease;z-index:0}.radio-label:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 6px 20px #667eea33}.radio-label input[type=radio]:checked+.radio-text{color:#fff;font-weight:var(--font-weight-semibold)}.radio-label input[type=radio]:checked~*{position:relative;z-index:1}.radio-label:has(input[type=radio]:checked){border-color:var(--color-primary);box-shadow:0 8px 24px #667eea4d}.radio-label:has(input[type=radio]:checked):before{opacity:1}.radio-label input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:white;position:relative;z-index:1}.radio-text{-webkit-user-select:none;user-select:none;font-weight:var(--font-weight-medium);position:relative;z-index:1;transition:color .3s ease}.form-grid-3,.form-grid-4{display:grid;gap:1.5rem}.patient-field-row{display:grid;grid-template-columns:repeat(var(--field-count, 1),1fr);gap:.85rem}@media(max-width:640px){.patient-field-row{grid-template-columns:1fr}}@media(min-width:641px)and (max-width:900px){.patient-field-row{grid-template-columns:repeat(min(var(--field-count, 1),2),1fr)}}@media(max-width:640px){.form-grid-3,.form-grid-4{grid-template-columns:1fr}.patient-type-row,.patient-type-controls{flex-direction:column;align-items:stretch;gap:1rem}.patient-type-group .clear-form-btn{width:100%;justify-content:center}.radio-group{flex-direction:column;gap:.75rem}}@media(min-width:641px)and (max-width:1024px){.form-grid-3,.form-grid-4{grid-template-columns:repeat(2,1fr)}}@media(min-width:1025px){.form-grid-3{grid-template-columns:2fr 1fr 1fr}.form-grid-4{grid-template-columns:repeat(4,1fr)}}.form-grid-3>.form-group,.form-grid-4>.form-group{min-width:0}.form-label{font-weight:var(--font-weight-semibold);color:var(--color-slate-900);font-size:var(--font-size-base);letter-spacing:var(--letter-spacing-wide);display:flex;align-items:center;gap:.5rem;white-space:nowrap}.optional-text{font-weight:var(--font-weight-normal);color:var(--color-slate-350);font-size:var(--font-size-sm);font-style:italic}.form-input,.form-textarea{width:100%;padding:.45rem .75rem;border:2px solid var(--color-border-input);border-radius:8px;font-size:var(--font-size-md);transition:all .3s ease;font-family:inherit;background:var(--color-surface-raised);box-sizing:border-box;min-width:0}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 4px #667eea1a;transform:translateY(-1px)}.form-textarea{resize:vertical;min-height:100px;line-height:var(--line-height-relaxed)}.input-error{border-color:var(--color-red-flat);background:var(--color-danger-faint)}.input-error:hover{border-color:var(--color-red-flat)}.input-error:focus{border-color:var(--color-red-flat);box-shadow:0 0 0 4px #e74c3c1a}.error-text{color:var(--color-red-flat);font-size:var(--font-size-md);display:flex;align-items:center;gap:.5rem}.error-text:before{content:"⚠️";font-size:var(--font-size-lg)}.form-actions{grid-column:1 / -1;display:flex;gap:1.5rem;justify-content:flex-end;margin-top:1rem;padding-top:2rem;border-top:2px solid var(--color-hover)}.btn-submit,.btn-cancel{padding:1.1rem 3rem;border:none;border-radius:12px;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .3s ease;letter-spacing:var(--letter-spacing-wide);position:relative;overflow:hidden}.btn-submit{background:var(--gradient-primary);color:#fff;box-shadow:0 6px 20px #667eea4d;min-width:220px}.btn-submit:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.btn-submit:hover:before{left:100%}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 8px 28px #667eea66}.btn-submit:active{transform:translateY(0)}.btn-cancel{background:#fff;color:var(--color-slate-850);border:2px solid var(--color-border-soft);box-shadow:0 2px 8px #0000000d}.btn-cancel:hover{background:var(--color-bg-light);border-color:var(--color-border-strong);transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}@media(min-width:641px)and (max-width:1024px){.patient-form-header{padding:2rem 2.5rem}.patient-form-header h2{font-size:var(--font-size-5xl)}.patient-form{padding:1.25rem}}@media(min-width:1025px){.patient-form-header{padding:2rem 3rem}.patient-form{padding:1.5rem}.form-grid-3,.form-grid-4{gap:1rem}}@media(max-width:640px){.patient-form-container{padding:0}.patient-form-header{padding:2rem 1.5rem;border-radius:12px;margin-bottom:1rem}.patient-form-header h2{font-size:var(--font-size-4xl)}.patient-form-header p{font-size:var(--font-size-md)}.patient-form{padding:1.5rem;border-radius:12px;gap:1.5rem}.radio-group{grid-template-columns:1fr;gap:1rem}.radio-label{padding:1.25rem}.form-actions{flex-direction:column-reverse;gap:1rem}.btn-submit,.btn-cancel{width:100%;padding:1.1rem}.form-label:before{display:none}}.existing-patient-search{background:linear-gradient(135deg,var(--color-bg-blue-faint) 0%,var(--color-blue-pale) 100%);border:2px solid var(--color-primary);border-radius:16px;padding:1.5rem;margin-bottom:1.5rem}.search-header{margin-bottom:1.5rem}.search-header h3{margin:0 0 .5rem;font-size:var(--font-size-2xl);color:var(--color-slate-900);font-weight:var(--font-weight-semibold)}.search-header p{margin:0;font-size:var(--font-size-md);color:var(--color-text-secondary)}.search-options{display:flex;flex-direction:column;gap:1rem}.search-type-buttons{display:flex;gap:.75rem;flex-wrap:wrap}.search-type-btn{padding:.75rem 1.25rem;border:2px solid var(--color-border-soft);border-radius:8px;background:#fff;color:var(--color-text-secondary);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease}.search-type-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.search-type-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.search-input-group{display:flex;gap:.75rem}.search-input{flex:1}.btn-search{padding:.75rem 1.5rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-search:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-search:disabled{opacity:.6;cursor:not-allowed}.search-results{margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid var(--color-border-soft)}.search-results h4{margin:0 0 1rem;font-size:var(--font-size-lg);color:var(--color-slate-900);font-weight:var(--font-weight-semibold)}.search-results-list{display:flex;flex-direction:column;gap:1rem;max-height:400px;overflow-y:auto}.search-result-card{background:#fff;border:2px solid var(--color-border-soft);border-radius:12px;padding:1.25rem;transition:all .2s ease}.search-result-card:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #667eea26}.search-result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.patient-id{font-weight:var(--font-weight-semibold);color:var(--color-primary);font-size:var(--font-size-base)}.patient-date{font-size:var(--font-size-sm);color:var(--color-text-muted)}.search-result-details{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;margin-bottom:1rem}.search-result-details .detail-row{display:flex;gap:.5rem}.search-result-details .detail-label{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:var(--font-size-base)}.search-result-details .detail-value{color:var(--color-text-primary);font-size:var(--font-size-base)}.no-results{text-align:center;padding:2rem;color:var(--color-text-muted)}.no-results p{margin:0;font-size:var(--font-size-md)}.selected-patient-banner{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,var(--color-success-faint) 0%,var(--color-success-faint) 100%);border:2px solid var(--color-green-bootstrap);border-radius:12px;padding:1rem 1.5rem;margin-bottom:1.5rem}.selected-patient-info{display:flex;align-items:center;gap:.75rem}.selected-label{font-weight:var(--font-weight-semibold);color:var(--color-green-dark);font-size:var(--font-size-md)}.selected-name{font-weight:var(--font-weight-bold);color:var(--color-green-dark);font-size:var(--font-size-xl)}.selected-name-btn{font-weight:var(--font-weight-bold);color:var(--color-green-dark);font-size:var(--font-size-xl);background:none;border:none;cursor:pointer;text-decoration:underline;padding:0;margin:0}.selected-name-btn:hover{color:var(--color-green-dark)}.selected-id{color:var(--color-green-bootstrap);font-size:var(--font-size-base)}.btn-change-patient{padding:.5rem 1rem;background:#fff;border:2px solid var(--color-green-bootstrap);border-radius:8px;color:var(--color-green-bootstrap);font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);cursor:pointer;transition:all .2s ease}.btn-change-patient:hover{background:var(--color-green-bootstrap);color:#fff}.patient-action-buttons{display:flex;gap:.75rem;align-items:stretch;flex-wrap:wrap;margin-left:auto}.patient-action-buttons button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.55rem .9rem;min-height:40px;border-radius:8px;font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;white-space:nowrap;align-self:stretch;box-sizing:border-box}.btn-toggle-prescriptions{padding:.5rem 1rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:8px;box-shadow:0 6px 18px #667eea26;font-weight:var(--font-weight-semibold);font-size:var(--font-size-md)}.btn-toggle-prescriptions:hover{transform:translateY(-2px);box-shadow:0 10px 28px #667eea33}.form-disabled{opacity:.5;pointer-events:none}.form-input:disabled{background:var(--color-bg-neutral);cursor:not-allowed}.search-spinner{display:flex;align-items:center;justify-content:center;padding:0 1rem}.search-spinner .spinner{width:20px;height:20px;border:2px solid var(--color-border-soft);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.search-hint{text-align:center;padding:1.5rem;background:var(--color-bg-light);border-radius:8px;margin-top:1rem}.search-hint p{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-md)}@media(max-width:640px){.existing-patient-search{padding:1rem}.search-type-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.search-type-btn{padding:.6rem .75rem;font-size:var(--font-size-sm)}.search-input-group{flex-direction:column}.btn-search{width:100%}.search-result-details{grid-template-columns:1fr}.selected-patient-banner{flex-direction:column;gap:1rem;text-align:center}.selected-patient-info{flex-direction:column;gap:.25rem}.selected-patient-banner .patient-action-buttons{width:100%;display:flex;justify-content:center;gap:.75rem}.selected-patient-banner .patient-action-buttons button{width:100%;max-width:420px}.btn-change-patient{width:100%}}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;max-height:300px;overflow-y:auto;background:#fff;border:2px solid var(--color-primary);border-radius:8px;box-shadow:0 8px 24px #00000026;z-index:1000;margin-top:.25rem}.autocomplete-item{padding:.75rem 1rem;cursor:pointer;transition:all .2s ease;border-bottom:1px solid var(--color-hover);background:#fff}.autocomplete-item:hover{background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.082),rgba(var(--color-primary-accent-rgb),.082))}@media(max-width:640px){.autocomplete-dropdown{position:fixed;left:1rem;right:1rem;max-height:40vh}}.prescription-container{max-width:1400px;margin:0 auto;padding:0;background:transparent;text-align:left}.prescription-header{background:var(--gradient-primary);padding:1.25rem 2rem;margin-bottom:1rem;color:#fff;border-radius:12px;box-shadow:0 8px 32px #667eea4d}.prescription-header h2{font-size:var(--font-size-3xl);margin:0;font-weight:var(--font-weight-bold);text-shadow:0 2px 4px rgba(0,0,0,.1)}.prescription-header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.specialty-selector{display:flex;align-items:center;gap:.5rem}.specialty-label{color:#ffffffd9;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);white-space:nowrap}.specialty-select{background:#ffffff2e;color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:8px;padding:.35rem .75rem;font-size:var(--font-size-md);cursor:pointer;min-width:220px;appearance:auto;transition:background .2s,border-color .2s}.specialty-select:hover,.specialty-select:focus{background:#ffffff47;border-color:#fff9;outline:none}.specialty-select option{background:var(--color-primary-deep);color:#fff}.prescription-form{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 24px #00000014}.prescription-section-group{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border-soft)}.prescription-section-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.section-group-header{display:flex;align-items:center;margin-bottom:.5rem}.section-group-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);color:var(--color-text-muted)}.section-group-children{padding-left:.75rem;border-left:2px solid var(--color-border-input)}.section-group-children .prescription-section{border-bottom:1px dashed var(--color-hover)}.section-group-children .prescription-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.medical-conditions-grid{display:flex;flex-direction:row;flex-wrap:wrap;gap:15px;align-items:flex-end}.condition-input-group{display:flex;flex-direction:column;gap:.25rem;min-width:120px}.condition-input-group:has(.condition-label:empty),.condition-input-group:has(.condition-label:not(:first-child)){flex:.8;min-width:200px}.condition-label{font-weight:var(--font-weight-bold);color:var(--color-text-secondary);font-size:var(--font-size-lg);margin-bottom:.25rem;min-height:1.5rem}.condition-input{width:100%;min-width:100px;max-width:150px;padding:.375rem .5rem;font-size:var(--font-size-base);border:1px solid var(--color-border-medium);border-radius:.375rem;background-color:var(--color-surface)}.condition-input-group:has(.condition-label:empty) .condition-input{max-width:100%;min-width:200px}.condition-input:focus{outline:none;border-color:var(--color-info);box-shadow:0 0 0 2px #3b82f61a}.condition-input-container{position:relative}.condition-dropdown-menu{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--color-border-medium);border-radius:0 0 .375rem .375rem;box-shadow:0 4px 6px -1px #0000001a;z-index:1000;margin-top:-1px;overflow:hidden}.condition-dropdown-option{padding:.5rem .75rem;font-size:var(--font-size-base);color:var(--color-slate-700);cursor:pointer;border-bottom:1px solid var(--color-bg-cool);background-color:var(--color-surface);transition:background-color .15s ease;text-align:left}.condition-dropdown-option:last-child{border-bottom:none}.condition-dropdown-option:hover{background-color:var(--color-info-faint);color:var(--color-blue-deep-2);box-shadow:inset 0 1px 2px #0000000d}.condition-dropdown-option:active{background-color:var(--color-primary-tint);color:var(--color-blue-deep-2)}.condition-checkbox input[type=checkbox]:checked+.checkmark{background:var(--color-primary);border-color:var(--color-primary)}.condition-checkbox input[type=checkbox]:checked+.checkmark:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.condition-checkbox:hover .checkmark{border-color:var(--color-primary)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.section-label{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-800);margin:0}.section-label-clickable{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-800);margin:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px;transition:color .2s ease}.btn-add-row:hover{background:var(--color-primary-shade);transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.btn-add-row-bottom{background:transparent;color:var(--color-primary);border:2px dashed var(--color-primary);padding:.5rem 1rem;border-radius:6px;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;margin-top:.5rem;width:100%}.btn-add-row-bottom:hover{background:#667eea1a;border-color:var(--color-primary-shade);color:var(--color-primary-shade)}.clinical-examination-row,.advice-row,.investigation-row,.complaints-row,.examination-findings-row,.xray-findings-row,.physiotherapy-row,.diagnosis-row,.hypertension-row,.obesity-row,.thyroid-row,.diabetes-row{display:grid;gap:.75rem;align-items:center;margin-bottom:.5rem;padding:.5rem;border-radius:6px;transition:background-color .2s ease}.clinical-examination-row,.advice-row,.investigation-row,.diagnosis-row,.complaints-row,.examination-findings-row,.xray-findings-row,.physiotherapy-row,.hypertension-row,.obesity-row,.thyroid-row,.diabetes-row{grid-template-columns:auto 1fr auto}.clinical-examination-row:hover,.advice-row:hover,.investigation-row:hover,.diagnosis-row:hover,.complaints-row:hover,.examination-findings-row:hover,.xray-findings-row:hover,.physiotherapy-row:hover,.hypertension-row:hover,.obesity-row:hover,.thyroid-row:hover,.diabetes-row:hover{background-color:var(--color-surface-sunken)}.row-number{font-weight:var(--font-weight-semibold);color:var(--color-primary);font-size:var(--font-size-lg);min-width:30px}.form-group{display:flex;flex-direction:column;gap:.25rem;min-width:0}.form-input{width:100%;padding:.5rem .75rem;border:2px solid var(--color-border);border-radius:6px;font-size:var(--font-size-md);transition:all .3s ease;background-color:var(--color-surface);box-sizing:border-box;min-width:0;font-family:inherit}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px #667eea1a}.form-input::placeholder{color:var(--color-text-placeholder)}.btn-remove-row{width:32px;height:32px;border:none;background:var(--color-danger-faint);color:var(--color-danger);border-radius:6px;font-size:var(--font-size-2xl);line-height:var(--line-height-none);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-remove-row:hover{background:var(--color-danger);color:#fff;transform:scale(1.1)}.clinical-examinations-list,.advice-list,.investigations-list,.diagnoses-list,.complaints-list,.examination-findings-list,.xray-findings-list,.physiotherapy-list,.hypertension-list,.obesity-list,.thyroid-list,.diabetes-list{margin-top:.5rem}.duration-input{width:70px!important;text-align:center;padding:.5rem!important;flex-shrink:0}.unit-select{width:100px!important;padding:.5rem .75rem!important;flex-shrink:0}.btn-frequency{width:32px;height:32px;border:2px solid var(--color-primary);background:#fff;color:var(--color-primary);border-radius:6px;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-frequency:hover:not(:disabled){background:var(--color-primary);color:#fff;transform:scale(1.05)}.btn-frequency:disabled{opacity:.4;cursor:not-allowed;border-color:var(--color-border-strong);color:var(--color-border-strong)}@media(max-width:768px){.prescription-header{padding:1rem}.prescription-header h2{font-size:var(--font-size-3xl)}.prescription-form{padding:1rem}}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-in-out}.modal-content{background:#fff;border-radius:16px;max-width:800px;width:90%;max-height:85vh;height:auto;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-content h3{background:var(--gradient-primary);color:#fff;padding:1rem 1.5rem;margin:0;border-radius:16px 16px 0 0;font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);text-shadow:0 2px 4px rgba(0,0,0,.1)}.modal-body{padding:1rem;display:flex;flex-direction:column;gap:.75rem;flex:1;min-height:0;overflow-y:auto}.modal-row{display:grid;grid-template-columns:2fr 1fr auto auto;gap:.5rem;align-items:center;padding:.5rem;background:var(--color-bg-light);border-radius:12px;border:2px solid var(--color-border-soft);transition:all .3s ease}.modal-row:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #667eea26}.modal-row input,.modal-row textarea{width:100%;padding:.5rem .75rem;border:2px solid var(--color-border-input);border-radius:10px;font-size:var(--font-size-md);transition:all .3s ease;font-family:inherit;background:var(--color-surface-raised);box-sizing:border-box}.modal-row textarea{resize:vertical;min-height:2.5rem}.modal-delete{background:transparent;border:none;color:var(--color-danger);font-size:var(--font-size-lg);cursor:pointer;padding:.25rem .5rem;border-radius:8px;transition:background .15s ease,transform .12s ease}.modal-delete:hover{background:#e53e3e14;transform:translateY(-1px)}.modal-row input:hover{border-color:var(--color-border-strong);background:#fff}.modal-row input:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 4px #667eea1a;transform:translateY(-1px)}.checkbox-label{display:flex;align-items:center;justify-content:center;gap:.75rem;cursor:pointer;font-size:var(--font-size-lg);color:var(--color-slate-850);padding:.5rem 1rem;border:2px solid var(--color-border-soft);border-radius:10px;background:#fff;transition:all .3s ease;position:relative;overflow:hidden}.checkbox-label:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--gradient-primary);opacity:0;transition:opacity .3s ease;z-index:0}.checkbox-label:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 6px 20px #667eea33}.checkbox-label input[type=checkbox]:checked+.checkbox-text{color:#fff;font-weight:var(--font-weight-semibold)}.checkbox-label input[type=checkbox]:checked~*{position:relative;z-index:1}.checkbox-label:has(input[type=checkbox]:checked){border-color:var(--color-primary);box-shadow:0 8px 24px #667eea4d}.checkbox-label:has(input[type=checkbox]:checked):before{opacity:1}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:white;position:relative;z-index:1}.checkbox-text{-webkit-user-select:none;user-select:none;font-weight:var(--font-weight-medium);position:relative;z-index:1;transition:color .3s ease}.modal-actions{padding:1rem 1.5rem;border-top:2px solid var(--color-border-soft);background:var(--color-bg-light);border-radius:0 0 16px 16px;display:flex;gap:.5rem;justify-content:flex-end;flex-shrink:0}.modal-actions button{padding:.5rem 1rem;border:none;border-radius:8px;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .3s ease}.modal-actions button:first-child{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 12px #667eea4d}.modal-actions button:first-child:hover{transform:translateY(-2px);box-shadow:0 6px 18px #667eea66}.modal-actions button:disabled{background:var(--color-border-strong);color:var(--color-slate-500);cursor:not-allowed;box-shadow:none;transform:none;opacity:.7}.modal-actions button:nth-child(2){background:var(--color-green-bootstrap);color:#fff;box-shadow:0 4px 12px #28a7454d}.modal-actions button:nth-child(2):hover{transform:translateY(-2px);box-shadow:0 6px 18px #28a74566}.modal-actions button:last-child{background:#fff;color:var(--color-red-flat);border:2px solid var(--color-red-flat)}.modal-actions button:last-child:hover{background:var(--color-red-flat);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #e74c3c4d}.tc-input{position:absolute;inset:0;width:100%;height:100%;padding:6px 10px;border:1.5px solid transparent;border-radius:4px;background:transparent;font-size:var(--font-size-base);font-family:inherit;color:inherit;outline:none;box-sizing:border-box;cursor:text;transition:border-color .15s ease,background-color .15s ease}.tc-input:hover{border-color:#3b82f64d;background-color:#3b82f60a}.tc-input:focus{border-color:var(--color-info);background-color:var(--color-surface);box-shadow:0 0 0 2px #3b82f61f}.tc-input::placeholder{color:var(--color-slate-blue);font-size:var(--font-size-sm)}.tc-input:disabled{opacity:.45;cursor:not-allowed}.tc-dropdown-wrapper{position:absolute;inset:0}.tc-dropdown-trigger{width:100%;height:100%;padding:6px 8px 6px 10px;display:flex;align-items:center;justify-content:space-between;gap:4px;border:1.5px solid transparent;border-radius:4px;background:transparent;font-size:var(--font-size-base);font-family:inherit;color:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;box-sizing:border-box;transition:border-color .15s ease,background-color .15s ease}.tc-dropdown-trigger:hover{border-color:#3b82f64d;background-color:#3b82f60a}.tc-dropdown-trigger.tc-open{border-color:var(--color-info);background-color:var(--color-surface);box-shadow:0 0 0 2px #3b82f61f}.tc-dropdown-trigger:disabled{opacity:.45;cursor:not-allowed}.tc-dropdown-value{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tc-dropdown-value.tc-placeholder{color:var(--color-slate-blue);font-size:var(--font-size-sm)}.tc-dropdown-arrow{flex-shrink:0;color:var(--color-text-muted);opacity:0;transition:opacity .15s ease,transform .15s ease}.tc-dropdown-trigger:hover .tc-dropdown-arrow,.tc-dropdown-trigger.tc-open .tc-dropdown-arrow{opacity:1}.tc-dropdown-trigger.tc-open .tc-dropdown-arrow{transform:rotate(180deg)}.tc-dropdown-list{position:absolute;top:100%;left:0;z-index:1200;min-width:160px;max-height:230px;overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;box-shadow:0 6px 18px #0000001f;padding:4px 0;margin:0;list-style:none}.tc-dropdown-item{padding:7px 14px;cursor:pointer;font-size:var(--font-size-base);white-space:nowrap;transition:background-color .1s ease}.tc-dropdown-item:hover,.tc-dropdown-item.tc-selected{background-color:var(--color-info-faint);color:var(--color-info-dark)}.tcdh-cell{padding:0!important;position:relative}.tcdh-cell:hover:not(.tcdh-disabled){background-color:#3b82f60a}.tcdh-disabled{opacity:.45;pointer-events:none}.tcdh-wrapper{position:relative;width:100%;height:100%}.tcdh-input{width:100%;height:100%;min-height:34px;padding:5px 8px;border:1.5px solid transparent;border-radius:4px;background:transparent;font-size:var(--font-size-base);font-family:inherit;color:inherit;box-sizing:border-box;cursor:default;outline:none;transition:border-color .15s,background .15s}.tcdh-input::placeholder{color:var(--color-slate-300);font-style:italic}.tcdh-input.tcdh-has-value{color:var(--color-text-primary)}.tcdh-input:focus,.tcdh-cell:hover .tcdh-input{border-color:#3b82f659;background:var(--color-surface);cursor:text}.tcdh-panel{position:absolute;top:calc(100% + 2px);left:0;min-width:100%;max-width:240px;background:var(--color-surface);border:1px solid var(--color-border-medium);border-radius:6px;box-shadow:0 4px 16px #0000001f;z-index:1200;overflow:hidden;padding:4px 0}.tcdh-option{display:block;width:100%;padding:7px 12px;text-align:left;font-size:var(--font-size-base);font-family:inherit;background:transparent;border:none;cursor:pointer;color:var(--color-slate-700);white-space:nowrap;transition:background .1s}.tcdh-option:hover{background:#3b82f61a;color:var(--color-blue-deep-2)}.tcdh-option.tcdh-option-active{background:#3b82f61f;color:var(--color-blue-deep-2);font-weight:var(--font-weight-semibold)}.tc-duration-wrapper{position:absolute;inset:0}.tc-duration-input{position:absolute;inset:0;width:100%;height:100%;padding:6px 10px;border:1.5px solid transparent;border-radius:4px;background:transparent;font-size:var(--font-size-base);font-family:inherit;color:inherit;outline:none;box-sizing:border-box;cursor:text;transition:border-color .15s ease,background-color .15s ease}.tc-duration-input:hover{border-color:#3b82f64d;background-color:#3b82f60a}.tc-duration-input:focus{border-color:var(--color-info);background-color:var(--color-surface);box-shadow:0 0 0 2px #3b82f61f}.tc-duration-input::placeholder{color:var(--color-slate-blue);font-size:var(--font-size-sm)}.tc-duration-input:disabled{opacity:.45;cursor:not-allowed}.tc-duration-list{position:absolute;top:100%;left:0;z-index:1200;min-width:110px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;box-shadow:0 6px 18px #0000001f;padding:4px 0;margin:0;list-style:none}.tc-duration-item{padding:6px 14px;font-size:var(--font-size-base);color:var(--color-slate-700);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.tc-duration-item:hover{background-color:#3b82f614;color:var(--color-blue-deep-2)}.tc-duration-item.tc-duration-selected{background-color:#3b82f61f;color:var(--color-blue-deep-2);font-weight:var(--font-weight-medium)}.prescription-section{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border-soft)}.prescription-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.section-header{display:flex;align-items:flex-start;margin-bottom:.5rem;flex-wrap:wrap;gap:.75rem}.section-label{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-800);margin:0;flex-shrink:0}.section-label-clickable{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-800);margin:0;flex-shrink:0;cursor:pointer;text-decoration:underline;transition:color .2s ease}.section-label-clickable:hover{color:var(--color-primary)}.header-cards-container{display:flex;flex-wrap:wrap;gap:.75rem;flex:1;min-width:0;list-style:none}.card,.saved-card{background:var(--color-bg-cool-2);border:1px solid var(--color-border-strong);border-radius:4px;padding:.125rem;column-gap:10px;height:auto;box-sizing:border-box;display:flex;justify-content:space-between;align-items:flex-start;box-shadow:0 1px 3px #0000001a;transition:all .2s ease;list-style:none}.card:hover,.saved-card:hover{box-shadow:0 4px 12px #00000026}.card-text{padding:2px 5px;font-size:var(--font-size-xs);line-height:var(--line-height-snug);color:var(--color-slate-800);word-wrap:break-word;flex-grow:1;list-style:none;white-space:pre-wrap}.card-actions{display:flex;justify-content:flex-end;column-gap:10px;align-items:center;gap:.1rem;flex-shrink:0}.card-action-btn{background:none;border:none;cursor:pointer;padding:.1rem;border-radius:2px;font-size:var(--font-size-xs);line-height:var(--line-height-none);display:flex;align-items:center;justify-content:center;width:1.2rem;height:1.2rem;color:var(--color-text-muted);transition:background-color .2s ease}.card-edit-textarea{width:260px;max-width:min(60vw,420px);padding:.4rem;border:1px solid var(--color-border);border-radius:4px;font-family:inherit;font-size:var(--font-size-base);resize:vertical}.card .edit-btn{color:var(--color-text-secondary)}.card .cancel-btn{color:var(--color-text-placeholder)}.save-btn{color:var(--color-success-dark)}.save-btn:hover{background-color:var(--color-success-faint)}.card-action-btn:hover{background-color:#00000008}.card-highlight{box-shadow:0 6px 18px #667eea2e;border-color:var(--color-primary);background:linear-gradient(90deg,#667eea0f,#ffffff05)}.remove-btn{color:var(--color-danger)}.remove-btn:hover{background-color:var(--color-red-pale)}.saved-card{background:var(--color-success-faint);border-color:var(--color-teal)}.saved-card .card-text{color:var(--color-teal)}.form-textarea{width:100%;min-height:60px;padding:.75rem;border:1px solid var(--color-border);border-radius:6px;font-family:inherit;font-size:var(--font-size-md);line-height:var(--line-height-snug);resize:vertical;transition:border-color .2s ease}.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.form-textarea::placeholder{color:var(--color-text-placeholder)}.simple-list-row{display:block!important;grid-template-columns:none!important;position:relative}.suggestions-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--color-border-strong);border-radius:4px;box-shadow:0 4px 12px #00000026;max-height:200px;overflow-y:auto;z-index:1000}.suggestion-item{padding:.5rem;cursor:pointer;border-bottom:1px solid var(--color-border);font-size:var(--font-size-md);color:var(--color-slate-800);display:flex;justify-content:space-between;align-items:center}.suggestion-item:hover{background:var(--color-bg-cool-2)}.suggestion-item.selected{background:var(--color-primary);color:#fff}.suggestion-item.selected .copy-btn{color:#fffc}.suggestion-item.selected .copy-btn:hover{color:#fff}.suggestion-item:last-child{border-bottom:none}.copy-btn{background:none;border:none;cursor:pointer;padding:.2rem;font-size:var(--font-size-sm);color:var(--color-text-muted);transition:color .2s ease}.copy-btn:hover{color:var(--color-text-secondary)}.input-parent-div{transition:border-color .2s ease}.input-parent-div:hover{border-color:var(--color-text-placeholder)}.editable-subdiv:empty:before,.input-area-editable:empty:before{content:attr(data-placeholder);color:var(--color-text-placeholder);font-style:italic;pointer-events:none}.editable-subdiv:focus{box-shadow:0 0 0 2px #4a90e233}.input-area-parent{min-height:60px;padding:8px;border:1px solid var(--color-border-medium);border-radius:4px;background-color:var(--color-surface-raised);cursor:text;position:relative;margin-top:8px;transition:border-color .2s ease;display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px}.input-area-parent:hover{border-color:var(--color-text-placeholder)}.input-area-editable{min-height:1.4em;min-width:50px;padding:4px 6px;background-color:var(--color-surface);border:1px solid var(--color-blue-soft);border-radius:3px;outline:none;white-space:pre-wrap;word-wrap:break-word;max-width:100%;font-size:var(--font-size-xs);line-height:var(--line-height-snug);width:fit-content;box-sizing:border-box;display:inline-block}.input-area-editable:focus{box-shadow:0 0 0 2px #4a90e233}.card-inline{margin:0!important;flex-shrink:100%}.card-inline .card-text{white-space:pre-wrap}.input-area-suggestions{position:absolute;top:100%;left:8px;right:8px;margin-top:4px;z-index:1000}.inline-edit-wrapper{display:inline-block;position:relative}.inline-edit-wrapper .input-area-suggestions{left:0;right:auto;min-width:200px;width:max-content;max-width:min(420px,90vw)}.symptoms-table-wrapper{border-radius:12px;box-shadow:0 4px 20px #0000001a;background:#fff;position:relative;overflow:visible}.symptoms-input-table{width:100%;border-collapse:collapse;background:#fff;table-layout:fixed;border:1px solid var(--color-border-cool);border-radius:8px}.symptoms-input-table th{background:var(--gradient-primary);color:#fff;padding:.65rem .5rem;text-align:left;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);white-space:nowrap;position:sticky;top:0;z-index:10}.symptoms-input-table th:first-child{border-top-left-radius:8px}.symptoms-input-table th.action-col-header{border-top-right-radius:8px}.symptoms-input-table td{padding:0;border:1px solid var(--color-border-cool);vertical-align:middle;background:#fff;position:relative}.symptoms-input-table tbody tr:hover td{background:var(--color-bg-light)}.symptoms-input-table th.col-header-clickable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease}.symptoms-input-table th.col-header-clickable:hover{background:linear-gradient(135deg,var(--color-blue-bold) 0%,var(--color-purple-light) 100%)}.col-header-icon{margin-left:5px;font-size:var(--font-size-xs);opacity:.8;vertical-align:middle}.symptom-textarea{width:100%;min-height:34px;resize:none;overflow:hidden;padding:6px 10px;border:1.5px solid transparent;border-radius:4px;background:transparent;font-size:var(--font-size-base);font-family:inherit;color:inherit;outline:none;box-sizing:border-box;cursor:text;transition:border-color .15s ease,background-color .15s ease;line-height:var(--line-height-snug);display:block;vertical-align:top}.symptom-textarea:hover{border-color:#3b82f64d;background-color:#3b82f60a}.symptom-textarea:focus{border-color:var(--color-info);background-color:var(--color-surface);box-shadow:0 0 0 2px #3b82f61f}.symptom-textarea::placeholder{color:var(--color-slate-blue);font-size:var(--font-size-sm)}.symptom-textarea:disabled{opacity:.45;cursor:not-allowed}.action-cell{padding:4px!important;vertical-align:middle}.action-cell-inner{display:flex;align-items:center;justify-content:center;gap:4px;min-height:34px}.btn-save-symptom{background:transparent;border:none;cursor:pointer;color:var(--color-success);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);padding:4px 5px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .15s ease;flex-shrink:0}.btn-save-symptom:hover{background:var(--color-success-faint)}.btn-clear-row{background:transparent;border:none;cursor:pointer;color:var(--color-red-bright);padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;flex-shrink:0;transition:background .15s ease}.btn-clear-row:hover{background:var(--color-danger-faint)}.autocomplete-dropdown{position:absolute;max-height:260px;overflow-y:auto;background:#fff;border:2px solid var(--color-primary);border-radius:8px;box-shadow:0 8px 24px #00000026;z-index:99999;margin-top:0;pointer-events:auto}.autocomplete-item{padding:.5rem .75rem;cursor:pointer;font-size:var(--font-size-base);border-bottom:1px solid var(--color-hover);transition:background .1s ease}.autocomplete-item:hover,.autocomplete-item.selected{background:var(--color-bg-blue-faint);color:var(--color-text-primary)}.autocomplete-item strong{display:block;font-size:var(--font-size-base);color:var(--color-slate-800)}@media(max-width:900px){.symptoms-input-table{font-size:var(--font-size-xs)}}@media(max-width:640px){.symptoms-table-wrapper{overflow-x:auto}.symptoms-input-table{min-width:600px}}.mbf-medicine-container{max-width:1400px;margin:0 auto;padding:0;background:transparent}.mbf-medicine-header{background:var(--gradient-primary);padding:2rem 2.5rem;margin-bottom:1.5rem;color:#fff;border-radius:16px;box-shadow:0 8px 32px #667eea4d}.mbf-patient-info-card h2{font-size:var(--font-size-5xl);margin:0 0 .3rem;font-weight:var(--font-weight-bold);text-shadow:0 2px 4px rgba(0,0,0,.1)}.mbf-patient-quick-info{display:flex;gap:2rem;flex-wrap:wrap;font-size:var(--font-size-lg)}@media(max-width:600px){.mbf-patient-quick-info{gap:1rem;flex-direction:column;align-items:flex-start}.mbf-patient-info-card h2{font-size:var(--font-size-3xl)}}.mbf-patient-quick-info span{opacity:.95}.mbf-medicine-content-side-view{background:#fff;padding:2.5rem;border-radius:16px;box-shadow:0 4px 24px #00000014;display:grid;grid-template-columns:60% 40%;gap:2rem;margin-bottom:2rem;align-items:start}.mbf-medicine-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.mbf-medicine-form-header h3{margin:0;color:var(--color-text-primary);font-size:var(--font-size-3xl)}.mbf-btn-clear-form{background:linear-gradient(135deg,var(--color-trial-red) 0%,var(--color-trial-red-dark) 100%);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.mbf-btn-clear-form:hover{background:linear-gradient(135deg,var(--color-trial-red-dark) 0%,var(--color-danger) 100%);transform:translateY(-2px);box-shadow:0 4px 15px #ff6b6b66}.mbf-btn-clear-form:active{transform:translateY(0)}@media(max-width:900px){.mbf-medicine-content-side-view{grid-template-columns:1fr}}.mbf-medicine-form-section,.mbf-medicines-list-section{background:transparent;padding:0;overflow:hidden}.mbf-medicine-form-section,.mbf-medicines-list-section{min-width:0}.mbf-medicine-form-section h3,.mbf-medicines-list-section h3{font-size:var(--font-size-3xl);margin:0 0 1.5rem;color:var(--color-slate-900);font-weight:var(--font-weight-bold)}.mbf-form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem}.mbf-autocomplete-wrapper{position:relative}.mbf-autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;max-height:300px;overflow-y:auto;background:#fff;border:2px solid var(--color-primary);border-radius:8px;box-shadow:0 8px 24px #00000026;z-index:1000;margin-top:.25rem}@media(max-width:600px){.mbf-autocomplete-dropdown{position:fixed;left:1rem;right:1rem;max-height:40vh}}.mbf-autocomplete-item{padding:.75rem 1rem;cursor:pointer;transition:all .2s ease;border-bottom:1px solid var(--color-hover)}.mbf-autocomplete-item:last-child{border-bottom:none}.mbf-autocomplete-item:hover,.mbf-autocomplete-item.mbf-selected{background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.082),rgba(var(--color-primary-accent-rgb),.082))}.mbf-medicine-suggestion{display:flex;flex-direction:column;gap:.25rem}.mbf-medicine-suggestion strong{color:var(--color-slate-900);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.mbf-medicine-suggestion small{color:var(--color-slate-400);font-size:var(--font-size-base)}.mbf-form-label{font-weight:var(--font-weight-semibold);color:var(--color-slate-900);font-size:var(--font-size-md);display:flex;align-items:center;gap:.5rem}.mbf-section-label{font-weight:var(--font-weight-bold);color:var(--color-slate-900);font-size:var(--font-size-lg);margin-bottom:1rem;display:block}.mbf-form-input,.mbf-form-textarea{padding:.75rem 1rem;border:2px solid var(--color-border-input);border-radius:10px;font-size:var(--font-size-md);transition:all .3s ease;font-family:inherit;background:var(--color-surface-raised)}.mbf-form-input:hover,.mbf-form-textarea:hover{border-color:var(--color-border-strong);background:#fff}.mbf-form-input:focus,.mbf-form-textarea:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 4px #667eea1a}.mbf-form-textarea{resize:vertical;line-height:var(--line-height-normal)}select.mbf-form-input{cursor:pointer;appearance:none;background-image:url('data:image/svg+xml;charset=UTF-8,%3csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23667eea" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"%3e%3cpolyline points="6 9 12 15 18 9"%3e%3c/polyline%3e%3c/svg%3e');background-repeat:no-repeat;background-position:right .75rem center;background-size:1.2em;padding-right:2.5rem}.mbf-form-input .hover-dropdown-trigger,.hover-dropdown-trigger.mbf-form-input{padding:.75rem 1rem;border:2px solid var(--color-border-input);border-radius:10px;font-size:var(--font-size-md);transition:all .3s ease;font-family:inherit;background:var(--color-surface-raised);width:100%;box-sizing:border-box}.mbf-form-input .hover-dropdown-trigger:hover,.hover-dropdown-trigger.mbf-form-input:hover{border-color:var(--color-border-strong);background:#fff}.mbf-form-input .hover-dropdown-trigger:focus,.hover-dropdown-trigger.mbf-form-input:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 4px #667eea1a}.mbf-duration-input-group{display:flex;gap:.5rem;flex-wrap:nowrap;min-width:0}.mbf-duration-input-group .mbf-duration-number{flex:1;min-width:60px;max-width:120px}.mbf-duration-input-group .mbf-duration-unit{flex:0 0 auto;width:110px;min-width:100px}@media(max-width:600px){.mbf-duration-input-group{flex-wrap:wrap;gap:.75rem}.mbf-duration-input-group .mbf-duration-number,.mbf-duration-input-group .mbf-duration-unit{flex:1 1 100%;width:100%;min-width:0;max-width:none}}.mbf-form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.25rem}.mbf-form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem;margin-bottom:1.25rem}.mbf-form-row-4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:1.5rem;margin-bottom:1.25rem}@media(max-width:768px){.mbf-form-row-2,.mbf-form-row-3,.mbf-form-row-4{grid-template-columns:1fr}}@media(max-width:950px){.mbf-form-row-3{grid-template-columns:1fr 1fr;gap:1rem}.mbf-form-row-3 .mbf-form-group:last-child{grid-column:1 / -1}}@media(max-width:600px){.mbf-form-row-2{grid-template-columns:1fr;gap:1rem}.mbf-medicine-content-side-view,.mbf-medicine-header{padding:1.5rem}}.mbf-dosage-section{margin-bottom:1.5rem;padding:1.25rem;background:linear-gradient(135deg,var(--color-bg-light) 0%,var(--color-border-bootstrap-2) 100%);border-radius:12px;border:2px solid var(--color-border-soft);min-height:220px}.mbf-dosage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.mbf-dosage-grid-4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}@media(max-width:600px){.mbf-dosage-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.mbf-dosage-grid-4{grid-template-columns:1fr;gap:.75rem}.mbf-dosage-item{padding:.5rem}}.mbf-dosage-grid-all{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.mbf-dosage-grid-man{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-bottom:1rem}.mbf-dosage-grid-maen{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:1rem}.mbf-dosage-options{display:flex;gap:1rem;margin-bottom:1rem;align-items:center}.mbf-radio-option{display:flex;align-items:center;gap:.5rem;font-weight:var(--font-weight-semibold);color:var(--color-slate-900);cursor:pointer}.mbf-radio-option input[type=radio]{margin:0}.mbf-dosage-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.75rem .5rem;background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000d;min-width:0;overflow:hidden}.mbf-dosage-icon{font-size:var(--font-size-5xl)}.mbf-dosage-item label{font-weight:var(--font-weight-semibold);color:var(--color-slate-900);font-size:var(--font-size-md)}.mbf-dosage-input{width:80px;padding:.5rem;border:2px solid var(--color-border-input);border-radius:8px;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);text-align:center;background:var(--color-surface-raised);transition:all .3s ease}.mbf-dosage-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.mbf-frequency-controls{display:flex;align-items:center;gap:.5rem;justify-content:center;flex-wrap:nowrap}.mbf-btn-frequency{width:32px;height:32px;min-width:32px;border:2px solid var(--color-primary);background:#fff;color:var(--color-primary);border-radius:8px;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;line-height:var(--line-height-none);flex-shrink:0}.mbf-btn-frequency:hover:not(:disabled){background:var(--color-primary);color:#fff;transform:scale(1.1)}.mbf-btn-frequency:active:not(:disabled){transform:scale(.95)}.mbf-btn-frequency:disabled{border-color:var(--color-border-soft);color:var(--color-border-strong);cursor:not-allowed;opacity:.5}.mbf-frequency-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-900);min-width:24px;text-align:center}.mbf-frequency-input{width:40px;height:32px;text-align:center;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);border:2px solid var(--color-border-soft);border-radius:8px;color:var(--color-slate-900);background:#fff;transition:all .3s ease;flex-shrink:0}.mbf-frequency-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.mbf-frequency-input::-webkit-inner-spin-button,.mbf-frequency-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.mbf-frequency-input[type=number]{-moz-appearance:textfield;appearance:textfield}.mbf-dosage-input-plain{width:60px;height:32px;text-align:center;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);border:2px solid var(--color-border-soft);border-radius:8px;color:var(--color-slate-900);background:#fff;transition:all .3s ease;flex-shrink:0}.mbf-dosage-input-plain:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.mbf-dosage-input-plain::-webkit-inner-spin-button,.mbf-dosage-input-plain::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.mbf-dosage-input-plain[type=number]{-moz-appearance:textfield;appearance:textfield}.mbf-btn-show-more-timings{margin-top:1rem;padding:.5rem 1rem;background:#fff;border:2px solid var(--color-primary);color:var(--color-primary);border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .3s ease;width:100%}.mbf-btn-show-more-timings:hover{background:var(--color-primary);color:#fff}.mbf-radio-group-inline{display:flex;gap:1.5rem;flex-wrap:wrap}.mbf-radio-option-inline{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem 1rem;border:2px solid var(--color-border-soft);border-radius:8px;background:#fff;transition:all .3s ease}.mbf-radio-option-inline:hover{border-color:var(--color-primary);background:var(--color-bg-light)}.mbf-radio-option-inline input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary)}.mbf-radio-option-inline span{font-weight:var(--font-weight-medium);color:var(--color-slate-900)}.mbf-total-display{padding:.75rem 1rem;background:var(--gradient-primary);color:#fff;border-radius:10px;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);text-align:center;box-shadow:0 4px 12px #667eea4d}.mbf-form-actions-inline{display:flex;gap:1rem;margin-top:1.5rem;flex-wrap:wrap}@media(max-width:600px){.mbf-form-actions-inline{flex-direction:column;gap:.75rem}.mbf-form-actions-inline .mbf-btn-add,.mbf-form-actions-inline .mbf-btn-cancel-edit,.mbf-form-actions-inline .mbf-btn-save-db,.mbf-form-actions-inline .mbf-btn-save-template,.mbf-form-actions-inline .mbf-btn-update-template{width:100%;flex:none}}.mbf-btn-add,.mbf-btn-cancel-edit{padding:.875rem 2rem;border:none;border-radius:10px;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .3s ease}.mbf-btn-add{background:var(--gradient-primary);color:#fff;flex:1;box-shadow:0 4px 12px #667eea4d}.mbf-btn-add:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.mbf-btn-cancel-edit{background:#fff;color:var(--color-red-flat);border:2px solid var(--color-red-flat);box-shadow:0 2px 8px #0000000d}.mbf-btn-cancel-edit:hover{background:var(--color-danger-faint);transform:translateY(-1px)}.mbf-btn-save-db{background:linear-gradient(135deg,var(--color-green-flat) 0%,var(--color-green-flat) 100%);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px #27ae604d}.mbf-btn-save-db:hover{transform:translateY(-2px);box-shadow:0 6px 20px #27ae6066}.mbf-btn-save-db:disabled{background:var(--color-slate-350);cursor:not-allowed;transform:none;box-shadow:none}.mbf-empty-state{text-align:center;padding:3rem 2rem;color:var(--color-slate-350)}.mbf-empty-state p{font-size:var(--font-size-2xl);margin-bottom:.5rem;color:var(--color-slate-400)}.mbf-empty-state span{font-size:var(--font-size-lg)}.mbf-medicines-table{overflow-x:auto;margin-bottom:1.5rem;border-radius:8px;box-shadow:0 2px 8px #0000000d}.mbf-medicines-table table{width:100%;border-collapse:collapse;min-width:700px}.mbf-medicines-table th,.mbf-medicines-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--color-border-input)}.mbf-medicines-table th{background:linear-gradient(135deg,var(--color-bg-light) 0%,var(--color-border-bootstrap-2) 100%);font-weight:var(--font-weight-bold);color:var(--color-slate-900);font-size:var(--font-size-md);white-space:nowrap;position:sticky;top:0;z-index:1}.mbf-medicines-table tbody tr:hover{background:var(--color-bg-light)}@media(max-width:768px){.mbf-medicines-table{margin:0 -1.5rem 1.5rem;border-radius:0}.mbf-medicines-table th,.mbf-medicines-table td{padding:.75rem .5rem;font-size:var(--font-size-base)}.mbf-medicines-table table{min-width:600px}.mbf-medicine-name strong{font-size:var(--font-size-base)}.mbf-medicine-name small{font-size:var(--font-size-xs)}}.mbf-medicine-name{display:flex;flex-direction:column;gap:.25rem}.mbf-medicine-name strong{color:var(--color-slate-900);font-size:var(--font-size-md)}.mbf-medicine-name small{color:var(--color-slate-400);font-size:var(--font-size-base)}.mbf-action-buttons{display:flex;gap:.5rem;flex-wrap:nowrap;justify-content:center}.mbf-btn-edit,.mbf-btn-delete{padding:.5rem .75rem;border:none;border-radius:6px;cursor:pointer;font-size:var(--font-size-lg);transition:all .3s ease;white-space:nowrap;min-width:60px}@media(max-width:768px){.mbf-action-buttons{flex-direction:column;gap:.25rem}.mbf-btn-edit,.mbf-btn-delete{padding:.4rem .6rem;font-size:var(--font-size-sm);min-width:50px}}.mbf-btn-edit{background:var(--color-blue-flat);color:#fff}.mbf-btn-edit:hover{background:var(--color-blue-deep);transform:scale(1.1)}.mbf-btn-delete{background:var(--color-red-flat);color:#fff}.mbf-btn-delete:hover{background:var(--color-danger-dark);transform:scale(1.1)}.mbf-bill-summary{background:linear-gradient(135deg,var(--color-bg-light) 0%,var(--color-border-bootstrap-2) 100%);padding:1.5rem;border-radius:12px;border:2px solid var(--color-border-soft)}.mbf-summary-row{display:flex;justify-content:space-between;padding:.75rem 0;font-size:var(--font-size-lg);color:var(--color-slate-900)}.mbf-summary-row.total-row{border-top:2px solid var(--color-primary);margin-top:.5rem;padding-top:1rem;font-size:var(--font-size-2xl)}.mbf-summary-row.total-row strong{color:var(--color-primary);font-size:var(--font-size-3xl)}.mbf-medicine-actions{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem;background:#fff;border-radius:16px;box-shadow:0 4px 24px #00000014}.mbf-validation-message{color:var(--color-red-flat);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);text-align:center;padding:.5rem 1rem;background:var(--color-danger-faint);border-radius:8px;border:1px solid var(--color-danger-faint)}.mbf-btn-back,.mbf-btn-generate{padding:1rem 2.5rem;border:none;border-radius:12px;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .3s ease}.mbf-btn-back{background:#fff;color:var(--color-slate-850);border:2px solid var(--color-border-soft);box-shadow:0 2px 8px #0000000d}.mbf-btn-back:hover{background:var(--color-bg-light);border-color:var(--color-border-strong);transform:translateY(-1px)}.mbf-btn-generate{background:var(--gradient-primary);color:#fff;box-shadow:0 6px 20px #667eea4d;flex:1;max-width:300px}.mbf-btn-generate:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #667eea66}.mbf-btn-generate:disabled{background:var(--color-slate-350);cursor:not-allowed;opacity:.6}@media(max-width:768px){.mbf-medicine-actions{flex-direction:column}.mbf-btn-back,.mbf-btn-generate{width:100%;max-width:none}}.mbf-autofill-banner{margin:1.5rem 0;border:2px solid var(--color-green-material);border-radius:12px;background:linear-gradient(135deg,var(--color-success-faint) 0%,var(--color-success-faint) 100%);padding:1rem 1.5rem;box-shadow:0 4px 12px #4caf5026}.mbf-autofill-content{display:flex;align-items:center;gap:1rem}.mbf-autofill-icon{font-size:var(--font-size-3xl);color:var(--color-green-material);font-weight:var(--font-weight-bold)}.mbf-autofill-text{flex:1;color:var(--color-success-dark);font-weight:var(--font-weight-semibold);font-size:var(--font-size-lg)}.mbf-btn-clear-autofill{padding:.5rem 1.25rem;background:#fff;color:var(--color-green-material);border:2px solid var(--color-green-material);border-radius:8px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .2s;font-size:var(--font-size-md)}.mbf-btn-clear-autofill:hover{background:var(--color-green-material);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #4caf504d}.mbf-btn-save-template,.mbf-btn-update-template{padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--color-blue-flat) 0%,var(--color-blue-deep) 100%);color:#fff;border:none;border-radius:10px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .3s;font-size:var(--font-size-md);box-shadow:0 4px 15px #3498db4d}.mbf-btn-save-template:hover:not(:disabled),.mbf-btn-update-template:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #3498db66}.mbf-btn-save-template:disabled,.mbf-btn-update-template:disabled{opacity:.6;cursor:not-allowed;transform:none}.duration-group{display:flex;flex-direction:row;gap:.5rem;align-items:center;flex-wrap:nowrap}.duration-input-combined{flex:1;min-width:150px;text-align:left;width:100%;box-sizing:border-box}@media(max-width:768px){.duration-group{flex-direction:column}.duration-input-combined{min-width:100%}}.medicines-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:100000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.medicines-modal-content{background:#fff;border-radius:16px;width:650px;max-width:90%;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #00000026;animation:slideIn .3s ease-out;display:flex;flex-direction:column}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.medicines-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:2px solid var(--color-border-soft);background:var(--gradient-primary);color:#fff}.medicines-modal-header h3{margin:0;font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);text-shadow:0 2px 4px rgba(0,0,0,.1)}.medicines-modal-close-btn{background:none;border:none;font-size:var(--font-size-4xl);cursor:pointer;color:#fffc;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;line-height:var(--line-height-none)}.medicines-modal-close-btn:hover{background-color:#fff3;color:#fff;transform:rotate(90deg)}.medicines-modal-body{padding:1.5rem 2rem;flex:1;overflow-y:auto}.medicines-modal-instructions{margin-bottom:1rem;color:var(--color-slate-500);font-size:var(--font-size-md);line-height:var(--line-height-normal);padding:.75rem 1rem;background:var(--color-surface-sunken);border-radius:8px;border-left:4px solid var(--color-primary)}.medicines-modal-instructions strong{color:var(--color-slate-700);font-weight:var(--font-weight-semibold)}.medicines-error-message{margin-bottom:1rem;color:var(--color-red-bright-dark);background:var(--color-danger-faint);padding:.75rem 1rem;border-radius:8px;font-size:var(--font-size-md);border:1px solid var(--color-red-pale);border-left:4px solid var(--color-red-bright-dark);animation:shake .3s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.medicines-entries-container{max-height:400px;overflow-y:auto;padding-right:.5rem}.medicines-entries-container::-webkit-scrollbar{width:6px}.medicines-entries-container::-webkit-scrollbar-track{background:var(--color-surface-raised);border-radius:3px}.medicines-entries-container::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:3px}.medicines-entries-container::-webkit-scrollbar-thumb:hover{background:var(--color-text-placeholder)}.medicine-entry-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.75rem;padding:.5rem 0;border-bottom:1px solid var(--color-bg-cool)}.medicine-entry-row:last-child{border-bottom:none;margin-bottom:0}.medicine-entry-input{padding:.75rem 1rem;border:2px solid var(--color-border-input);border-radius:10px;font-size:var(--font-size-md);font-family:inherit;background:var(--color-surface-raised);transition:all .3s ease;position:relative}.medicine-entry-input:hover{border-color:var(--color-border-strong);background:#fff}.medicine-entry-input:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 4px #667eea1a}.medicine-entry-input::placeholder{color:var(--color-slate-300);font-style:italic}.medicine-entry-input[placeholder*=required]:invalid:not(:placeholder-shown){border-color:var(--color-red-bright-dark);box-shadow:0 0 0 4px #dc26261a}.medicines-modal-footer{padding:1.5rem 2rem;border-top:1px solid var(--color-border-soft-2);background:var(--color-surface-sunken);display:flex;justify-content:flex-end;gap:.75rem}.medicines-btn{padding:.75rem 1.5rem;border:none;border-radius:10px;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;min-width:100px;text-transform:none}.medicines-btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 12px #667eea4d}.medicines-btn-primary:hover{background:linear-gradient(135deg,var(--color-primary-shade) 0%,var(--color-primary-accent) 100%);box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.medicines-btn-primary:active{transform:translateY(0);box-shadow:0 2px 8px #667eea4d}.medicines-btn-secondary{background:var(--color-bg-cool);color:var(--color-slate-700);border:1px solid var(--color-border-medium)}.medicines-btn-secondary:hover{background:var(--color-border-soft-2);color:var(--color-text-primary);border-color:var(--color-slate-300);transform:translateY(-1px)}.medicines-btn-secondary:active{transform:translateY(0);background:var(--color-border-medium)}@media(max-width:768px){.medicines-modal-content{width:95%;margin:1rem;max-height:85vh}.medicines-modal-header,.medicines-modal-body,.medicines-modal-footer{padding:1rem}.medicine-entry-row{grid-template-columns:1fr;gap:.5rem}.medicines-modal-footer{flex-direction:column-reverse}.medicines-btn{width:100%}}@media(max-width:480px){.medicines-modal-header h3{font-size:var(--font-size-2xl)}.medicines-modal-instructions{font-size:var(--font-size-base);padding:.5rem .75rem}.medicine-entry-input{padding:.5rem .75rem;font-size:var(--font-size-md)}}.medicines-modal-content:focus-within{box-shadow:0 20px 60px #00000026,0 0 0 2px #667eea33}.medicines-modal-loading{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--color-slate-500)}.medicines-modal-loading:after{content:"";width:20px;height:20px;margin-left:.5rem;border:2px solid var(--color-border-soft-2);border-top:2px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.medicines-modal-success{animation:successPulse .6s ease-out}@keyframes successPulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.hover-dropdown{position:relative;display:inline-block;width:100%}.hover-dropdown-trigger{position:relative;display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border:1px solid var(--color-border-medium);border-radius:6px;background:#fff;cursor:pointer;font-size:var(--font-size-base);line-height:var(--line-height-normal);min-height:36px;width:100%;box-sizing:border-box}.hover-dropdown-trigger:hover{border-color:var(--color-slate-300)}.hover-dropdown-text{flex:1;text-align:left;color:var(--color-slate-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hover-dropdown-trigger:hover .hover-dropdown-text{color:var(--color-text-primary)}.hover-dropdown-arrow{flex-shrink:0;margin-left:8px;color:var(--color-slate-500);transition:transform .2s ease}.hover-dropdown-trigger:hover .hover-dropdown-arrow{color:var(--color-slate-700);transform:rotate(180deg)}.hover-dropdown-menu{position:absolute;top:100%;left:0;right:0;z-index:1000;background:#fff;border:1px solid var(--color-border-medium);border-radius:6px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;max-height:200px;overflow-y:auto}.hover-dropdown-item{padding:8px 12px;cursor:pointer;font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-slate-700);border-bottom:1px solid var(--color-bg-cool)}.hover-dropdown-item:last-child{border-bottom:none}.hover-dropdown-item:hover{background-color:var(--color-surface-sunken);color:var(--color-text-primary)}.hover-dropdown-item.selected{background-color:var(--color-info-faint);color:var(--color-blue-deep-2);font-weight:var(--font-weight-medium)}.hover-dropdown-item.selected:hover{background-color:var(--color-primary-tint)}.table-input.hover-dropdown-field{padding:0;border:none}.table-input.hover-dropdown-field .hover-dropdown-trigger{border-radius:4px;min-height:32px;padding:6px 10px}.medicine-container{max-width:1400px;margin:0 auto;padding:0;background:transparent;pointer-events:auto;position:relative;z-index:auto;text-align:left}.medicine-header{background:var(--gradient-primary);padding:2rem 2.5rem;margin-bottom:1.5rem;color:#fff;border-radius:16px;box-shadow:0 8px 32px #667eea4d}.patient-info-card h2{font-size:var(--font-size-5xl);margin:0 0 .3rem;font-weight:var(--font-weight-bold);text-shadow:0 2px 4px rgba(0,0,0,.1)}.patient-quick-info{display:flex;gap:2rem;flex-wrap:wrap;font-size:var(--font-size-lg)}@media(max-width:600px){.patient-quick-info{gap:1rem;flex-direction:column;align-items:flex-start}.patient-info-card h2{font-size:var(--font-size-3xl)}}.patient-quick-info span{opacity:.95}.medicine-content{padding:0rem;border-radius:16px;box-shadow:0 4px 24px #ffffff14;display:grid;grid-template-columns:1fr;gap:0rem;margin-bottom:2rem;align-items:start;overflow:visible}@media(max-width:1200px){.medicine-content{grid-template-columns:1fr}}.medicine-form-section,.medicines-list-section{background:transparent;padding:0;overflow:visible;pointer-events:auto;position:relative;z-index:1}.medicine-form-section,.medicines-list-section{min-width:0}.medicine-form-section h3,.medicines-list-section h3{font-size:var(--font-size-3xl);margin:0 0 1.5rem;color:var(--color-slate-900);font-weight:var(--font-weight-bold)}.form-group{display:flex;gap:.5rem;margin-bottom:1.25rem}.autocomplete-wrapper{position:relative}.autocomplete-dropdown{position:absolute;max-height:300px;overflow-y:auto;background:#fff!important;border:2px solid var(--color-primary)!important;border-radius:8px;box-shadow:0 8px 24px #00000026!important;z-index:99999!important;margin-top:0;pointer-events:auto!important;display:block!important;visibility:visible!important;opacity:1!important}@media(max-width:600px){.autocomplete-dropdown{position:fixed;left:1rem;right:1rem;max-height:40vh}}.autocomplete-item{padding:.75rem 1rem;cursor:pointer;transition:all .2s ease;border-bottom:1px solid var(--color-hover);background:#fff;pointer-events:auto!important}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover,.autocomplete-item.selected{background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.082),rgba(var(--color-primary-accent-rgb),.082))}.medicine-suggestion{display:flex;flex-direction:column;gap:.25rem}.medicine-suggestion strong{color:var(--color-slate-900);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.medicine-suggestion small{color:var(--color-slate-400);font-size:var(--font-size-base)}.form-label{font-weight:var(--font-weight-semibold);color:var(--color-slate-900);font-size:var(--font-size-md);display:flex;align-items:center;gap:.5rem}.section-label{font-weight:var(--font-weight-bold);color:var(--color-slate-900);font-size:var(--font-size-lg);margin-bottom:1rem;display:block}.form-input,.form-textarea{padding:.75rem 1rem;border:2px solid var(--color-border-input);border-radius:10px;font-size:var(--font-size-md);transition:all .3s ease;font-family:inherit;background:var(--color-surface-raised)}.form-input:hover,.form-textarea:hover{border-color:var(--color-border-strong);background:#fff}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 4px #667eea1a}.form-textarea{resize:vertical;line-height:var(--line-height-normal)}select.form-input{cursor:pointer;appearance:none;background-image:url('data:image/svg+xml;charset=UTF-8,%3csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23667eea" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"%3e%3cpolyline points="6 9 12 15 18 9"%3e%3c/polyline%3e%3c/svg%3e');background-repeat:no-repeat;background-position:right .75rem center;background-size:1.2em;padding-right:2.5rem}.duration-input-group{display:flex;gap:.5rem;flex-wrap:nowrap;min-width:0}.duration-input-group .duration-number{flex:1;min-width:60px;max-width:120px}.duration-input-group .duration-unit{flex:0 0 auto;width:110px;min-width:100px}@media(max-width:600px){.duration-input-group{flex-wrap:wrap;gap:.75rem}.duration-input-group .duration-number,.duration-input-group .duration-unit{flex:1 1 100%;width:100%;min-width:0;max-width:none}}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.25rem}.form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem;margin-bottom:1.25rem}.form-row-4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:1.5rem;margin-bottom:1.25rem}@media(max-width:768px){.form-row-2,.form-row-3,.form-row-4{grid-template-columns:1fr}}@media(max-width:950px){.form-row-3{grid-template-columns:1fr 1fr;gap:1rem}.form-row-3 .form-group:last-child{grid-column:1 / -1}}@media(max-width:600px){.form-row-2{grid-template-columns:1fr;gap:1rem}.medicine-content,.medicine-header{padding:1.5rem}}.dosage-section{margin-bottom:1.5rem;padding:1.25rem;background:linear-gradient(135deg,var(--color-bg-light) 0%,var(--color-border-bootstrap-2) 100%);border-radius:12px;border:2px solid var(--color-border-soft);min-height:220px}.dosage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.dosage-grid-4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}@media(max-width:600px){.dosage-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.dosage-grid-4{grid-template-columns:1fr;gap:.75rem}.dosage-item{padding:.5rem}}.dosage-grid-all{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.dosage-grid-additional{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.dosage-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.75rem .5rem;background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000d;min-width:0;overflow:hidden}.dosage-icon{font-size:var(--font-size-5xl)}.dosage-item label{font-weight:var(--font-weight-semibold);color:var(--color-slate-900);font-size:var(--font-size-md)}.dosage-input{width:80px;padding:.5rem;border:2px solid var(--color-border-input);border-radius:8px;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);text-align:center;background:var(--color-surface-raised);transition:all .3s ease}.dosage-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.frequency-controls{display:flex;align-items:center;gap:.5rem;justify-content:center;flex-wrap:nowrap}.btn-frequency{width:32px;height:32px;min-width:32px;border:2px solid var(--color-primary);background:#fff;color:var(--color-primary);border-radius:8px;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;line-height:var(--line-height-none);flex-shrink:0}.btn-frequency:hover:not(:disabled){background:var(--color-primary);color:#fff;transform:scale(1.1)}.btn-frequency:active:not(:disabled){transform:scale(.95)}.btn-frequency:disabled{border-color:var(--color-border-soft);color:var(--color-border-strong);cursor:not-allowed;opacity:.5}.frequency-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-900);min-width:24px;text-align:center}.frequency-input{width:40px;height:32px;text-align:center;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);border:2px solid var(--color-border-soft);border-radius:8px;color:var(--color-slate-900);background:#fff;transition:all .3s ease;flex-shrink:0}.frequency-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.frequency-input::-webkit-inner-spin-button,.frequency-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.frequency-input[type=number]{-moz-appearance:textfield;appearance:textfield}.btn-show-more-timings{margin-top:1rem;padding:.5rem 1rem;background:#fff;border:2px solid var(--color-primary);color:var(--color-primary);border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .3s ease;width:100%}.btn-show-more-timings:hover{background:var(--color-primary);color:#fff}.radio-group-inline{display:flex;gap:1.5rem;flex-wrap:wrap}.radio-option{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem 1rem;border:2px solid var(--color-border-soft);border-radius:8px;background:#fff;transition:all .3s ease}.radio-option:hover{border-color:var(--color-primary);background:var(--color-bg-light)}.radio-option input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary)}.radio-option span{font-weight:var(--font-weight-medium);color:var(--color-slate-900)}.total-display{padding:.75rem 1rem;background:var(--gradient-primary);color:#fff;border-radius:10px;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);text-align:center;box-shadow:0 4px 12px #667eea4d}.form-actions-inline{display:flex;gap:1rem;margin-top:1.5rem;flex-wrap:wrap}@media(max-width:600px){.form-actions-inline{flex-direction:column;gap:.75rem}.form-actions-inline .btn-add,.form-actions-inline .btn-cancel-edit,.form-actions-inline .btn-save-db,.form-actions-inline .btn-save-template,.form-actions-inline .btn-update-template{width:100%;flex:none}}.btn-add,.btn-cancel-edit{padding:.875rem 2rem;border:none;border-radius:10px;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .3s ease}.btn-add{background:var(--gradient-primary);color:#fff;flex:1;box-shadow:0 4px 12px #667eea4d}.btn-add:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-cancel-edit{background:#fff;color:var(--color-red-flat);border:2px solid var(--color-red-flat);box-shadow:0 2px 8px #0000000d}.btn-cancel-edit:hover{background:var(--color-danger-faint);transform:translateY(-1px)}.btn-save-db{background:linear-gradient(135deg,var(--color-green-flat) 0%,var(--color-green-flat) 100%);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px #27ae604d}.btn-save-db:hover{transform:translateY(-2px);box-shadow:0 6px 20px #27ae6066}.btn-save-db:disabled{background:var(--color-slate-350);cursor:not-allowed;transform:none;box-shadow:none}.empty-state{text-align:center;padding:3rem 2rem;color:var(--color-slate-350)}.empty-state p{font-size:var(--font-size-2xl);margin-bottom:.5rem;color:var(--color-slate-400)}.empty-state span{font-size:var(--font-size-lg)}.medicines-table{overflow-x:auto;margin-bottom:1.5rem;border-radius:8px;box-shadow:0 2px 8px #0000000d}.medicines-table table{width:100%;border-collapse:collapse;min-width:700px}.medicines-table th,.medicines-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--color-border-input)}.medicines-table th{background:linear-gradient(135deg,var(--color-bg-light) 0%,var(--color-border-bootstrap-2) 100%);font-weight:var(--font-weight-bold);color:var(--color-slate-900);font-size:var(--font-size-md);white-space:nowrap;position:sticky;top:0;z-index:1}.medicines-table tbody tr:hover{background:var(--color-bg-light)}@media(max-width:768px){.medicines-table{margin:0 -1.5rem 1.5rem;border-radius:0}.medicines-table th,.medicines-table td{padding:.75rem .5rem;font-size:var(--font-size-base)}.medicines-table table{min-width:600px}.medicine-name strong{font-size:var(--font-size-base)}.medicine-name small{font-size:var(--font-size-xs)}}.medicine-name{display:flex;flex-direction:column;gap:.25rem}.medicine-name strong{color:var(--color-slate-900);font-size:var(--font-size-md)}.medicine-name small{color:var(--color-slate-400);font-size:var(--font-size-base)}.action-buttons{display:flex;gap:.5rem;flex-wrap:nowrap;justify-content:center}.btn-edit,.btn-delete{padding:.5rem .75rem;border:none;border-radius:6px;cursor:pointer;font-size:var(--font-size-lg);transition:all .3s ease;white-space:nowrap;min-width:60px}@media(max-width:768px){.action-buttons{flex-direction:column;gap:.25rem}.btn-edit,.btn-delete{padding:.4rem .6rem;font-size:var(--font-size-sm);min-width:50px}}.btn-edit{background:var(--color-blue-flat);color:#fff}.btn-edit:hover{background:var(--color-blue-deep);transform:scale(1.1)}.btn-delete{background:var(--color-red-flat);color:#fff}.btn-delete:hover{background:var(--color-danger-dark);transform:scale(1.1)}.bill-summary{background:linear-gradient(135deg,var(--color-bg-light) 0%,var(--color-border-bootstrap-2) 100%);padding:1.5rem;border-radius:12px;border:2px solid var(--color-border-soft)}.summary-row{display:flex;justify-content:space-between;padding:.75rem 0;font-size:var(--font-size-lg);color:var(--color-slate-900)}.summary-row.total-row{border-top:2px solid var(--color-primary);margin-top:.5rem;padding-top:1rem;font-size:var(--font-size-2xl)}.summary-row.total-row strong{color:var(--color-primary);font-size:var(--font-size-3xl)}.medicine-actions{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem;background:#fff;border-radius:16px;box-shadow:0 4px 24px #00000014}.validation-message{color:var(--color-red-flat);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);text-align:center;padding:.5rem 1rem;background:var(--color-danger-faint);border-radius:8px;border:1px solid var(--color-danger-faint)}.btn-back,.btn-generate{padding:1rem 2.5rem;border:none;border-radius:12px;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .3s ease}.btn-back{background:#fff;color:var(--color-slate-850);border:2px solid var(--color-border-soft);box-shadow:0 2px 8px #0000000d}.btn-back:hover{background:var(--color-bg-light);border-color:var(--color-border-strong);transform:translateY(-1px)}.btn-generate{background:var(--gradient-primary);color:#fff;box-shadow:0 6px 20px #667eea4d;flex:1;max-width:300px}.btn-generate:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #667eea66}.btn-generate:disabled{background:var(--color-slate-350);cursor:not-allowed;opacity:.6}@media(max-width:768px){.medicine-actions{flex-direction:column}.btn-back,.btn-generate{width:100%;max-width:none}}.template-selector{margin:1.5rem 0;border:2px solid var(--color-blue-material);border-radius:12px;background:linear-gradient(135deg,var(--color-blue-pale) 0%,var(--color-blue-pale) 100%);overflow:hidden;box-shadow:0 4px 12px #2196f326}.template-header{padding:1rem 1.5rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none;transition:background-color .2s}.template-header:hover{background:#ffffff4d}.template-title{font-weight:var(--font-weight-semibold);color:var(--color-info-dark);font-size:var(--font-size-lg)}.template-arrow{color:var(--color-info-dark);font-size:var(--font-size-lg);transition:transform .2s}.template-options{max-height:240px;overflow-y:auto;background:#fff;border-top:1px solid var(--color-blue-pale);scrollbar-width:thin;scrollbar-color:var(--color-blue-pale) var(--color-bg-neutral)}.template-options::-webkit-scrollbar{width:8px}.template-options::-webkit-scrollbar-track{background:var(--color-bg-neutral)}.template-options::-webkit-scrollbar-thumb{background:var(--color-blue-pale);border-radius:4px}.template-options::-webkit-scrollbar-thumb:hover{background:var(--color-blue-soft)}.template-option{padding:.75rem 1.5rem;border-bottom:1px solid var(--color-blue-pale);cursor:pointer;transition:all .2s}.template-option:hover{background:var(--color-bg-blue-faint)}.template-option.selected{background:var(--color-blue-pale);border-left:4px solid var(--color-blue-material)}.template-option:last-child{border-bottom:none}.template-info-inline{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;line-height:var(--line-height-normal)}.template-name{color:var(--color-info-dark);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);flex-shrink:0}.template-brand{color:var(--color-blue-soft);font-weight:var(--font-weight-medium);font-size:var(--font-size-md);flex-shrink:0}.template-separator{color:var(--color-text-placeholder);font-weight:var(--font-weight-normal);flex-shrink:0}.template-details-inline{font-size:var(--font-size-md);color:var(--color-text-secondary);font-size:var(--font-family);flex:1;min-width:0}.autofill-banner{margin:1.5rem 0;border:2px solid var(--color-green-material);border-radius:12px;background:linear-gradient(135deg,var(--color-success-faint) 0%,var(--color-success-faint) 100%);padding:1rem 1.5rem;box-shadow:0 4px 12px #4caf5026}.autofill-content{display:flex;align-items:center;gap:1rem}.autofill-icon{font-size:var(--font-size-3xl);color:var(--color-green-material);font-weight:var(--font-weight-bold)}.autofill-text{flex:1;color:var(--color-success-dark);font-weight:var(--font-weight-semibold);font-size:var(--font-size-lg)}.btn-clear-autofill{padding:.5rem 1.25rem;background:#fff;color:var(--color-green-material);border:2px solid var(--color-green-material);border-radius:8px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .2s;font-size:var(--font-size-md)}.btn-clear-autofill:hover{background:var(--color-green-material);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #4caf504d}.btn-save-template,.btn-update-template{padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--color-blue-flat) 0%,var(--color-blue-deep) 100%);color:#fff;border:none;border-radius:10px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .3s;font-size:var(--font-size-md);box-shadow:0 4px 15px #3498db4d}.btn-save-template:hover:not(:disabled),.btn-update-template:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #3498db66}.btn-save-template:disabled,.btn-update-template:disabled{opacity:.6;cursor:not-allowed;transform:none}.medicine-table-form{border-radius:12px;box-shadow:0 4px 20px #0000001a;background:#fff;position:relative;pointer-events:auto;z-index:1}.medicine-input-table{width:100%;border-collapse:collapse;background:#fff;table-layout:fixed;pointer-events:auto;border:1px solid var(--color-border-cool);border-radius:8px}.medicine-input-table th{background:var(--gradient-primary);color:#fff;padding:.75rem .5rem;text-align:left;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);white-space:nowrap;position:sticky;top:0;z-index:10}.medicine-input-table th:first-child{border-top-left-radius:12px}.medicine-input-table th:last-child{border-top-right-radius:12px}.medicine-input-table td{padding:.75rem .5rem;border:1px solid var(--color-border-cool);vertical-align:middle;background:#fff;pointer-events:auto}.medicine-input-table tbody tr:hover td{background:var(--color-bg-light)}.autocomplete-cell{pointer-events:auto;position:relative}.table-input{width:100%;padding:.5rem .6rem;border:2px solid var(--color-border-cool);border-radius:6px;font-size:var(--font-size-sm);background:#fff;transition:all .3s ease;box-sizing:border-box;min-height:36px;pointer-events:auto;cursor:text}.table-input:hover{border-color:var(--color-border-strong)}.table-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a;background:var(--color-bg-blue-faint)}.table-textarea{resize:vertical;min-height:2.2rem;max-height:80px;font-family:inherit;line-height:var(--line-height-tight)}.duration-input{max-width:100%}.medicine-input-table th:nth-child(1),.medicine-input-table td:nth-child(1){width:24.5%}.medicine-input-table th:nth-child(2),.medicine-input-table td:nth-child(2){width:22.5%}.medicine-input-table th:nth-child(3),.medicine-input-table td:nth-child(3){width:15%}.medicine-input-table th:nth-child(4),.medicine-input-table td:nth-child(4){width:13%}.medicine-input-table th:nth-child(5),.medicine-input-table td:nth-child(5){width:10%}.medicine-input-table th:nth-child(6),.medicine-input-table td:nth-child(6){width:25%}.medicine-input-table th:nth-child(7),.medicine-input-table td:nth-child(7){width:5%}.duration-cell{position:relative;overflow:visible}.duration-cell .duration-group{width:100%;margin:0;gap:0;display:block}.duration-cell .duration-input-combined{width:100%!important;min-width:0!important;padding:.5rem .6rem!important;border:2px solid var(--color-border-cool);border-radius:6px;font-size:var(--font-size-sm);background:#fff;transition:all .3s ease;box-sizing:border-box;min-height:36px;margin:0;flex:none!important}.duration-cell .duration-input-combined:hover{border-color:var(--color-border-strong)}.duration-cell .duration-input-combined:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a;background:var(--color-bg-blue-faint)}.duration-wrapper{position:relative}.duration-suggestions{position:absolute;top:calc(100% + 2px);left:0;right:0;background:#fff;border:2px solid var(--color-border-cool);border-radius:8px;box-shadow:0 8px 25px #00000026;z-index:1000}.duration-suggestion{padding:.6rem .8rem;cursor:pointer;transition:background-color .2s;font-size:var(--font-size-md);border-bottom:1px solid var(--color-bg-neutral)}.duration-suggestion:hover{background:var(--gradient-primary);color:#fff}.duration-suggestion:last-child{border-bottom:none}.action-cell{min-width:180px}.table-actions{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.5rem}.secondary-actions{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:center}.btn-add-table{padding:.65rem 1.2rem;background:linear-gradient(135deg,var(--color-green-material) 0%,var(--color-success-dark) 100%);color:#fff;border:none;border-radius:8px;font-weight:var(--font-weight-semibold);cursor:pointer;font-size:var(--font-size-md);transition:all .3s;box-shadow:0 2px 8px #4caf504d;width:100%}.btn-add-table:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #4caf5066}.btn-add-table:disabled{opacity:.5;cursor:not-allowed;transform:none;background:var(--color-text-placeholder)}.btn-cancel-table{padding:.65rem 1.2rem;background:linear-gradient(135deg,var(--color-danger) 0%,var(--color-danger-dark) 100%);color:#fff;border:none;border-radius:8px;font-weight:var(--font-weight-semibold);cursor:pointer;font-size:var(--font-size-md);transition:all .3s;box-shadow:0 2px 8px #f443364d;width:100%}.btn-cancel-table:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f4433666}.btn-save-db-small,.btn-save-template-small,.btn-update-template-small{padding:.5rem .75rem;background:linear-gradient(135deg,var(--color-blue-flat) 0%,var(--color-blue-deep) 100%);color:#fff;border:none;border-radius:6px;font-weight:var(--font-weight-medium);cursor:pointer;font-size:var(--font-size-sm);transition:all .3s;box-shadow:0 2px 6px #3498db40;white-space:nowrap;flex:1;min-width:70px}.btn-save-db-small:hover:not(:disabled),.btn-save-template-small:hover:not(:disabled),.btn-update-template-small:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 3px 10px #3498db59}.btn-save-db-small:disabled,.btn-save-template-small:disabled,.btn-update-template-small:disabled{opacity:.5;cursor:not-allowed;transform:none;background:var(--color-text-placeholder)}.medicines-table-results{margin-top:2rem;padding-top:1.5rem;border-top:2px solid var(--color-hover)}.medicines-table-results h4{margin:0 0 1rem;color:var(--color-text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}@media(max-width:1200px){.medicine-input-table th,.medicine-input-table td{padding:.65rem .4rem}.table-input{padding:.45rem .55rem;font-size:var(--font-size-xs)}.btn-add-table,.btn-cancel-table{padding:.5rem .8rem;font-size:var(--font-size-sm)}.btn-save-db-small,.btn-save-template-small,.btn-update-template-small{font-size:var(--font-size-xs);padding:.4rem .6rem}}@media(max-width:900px){.medicine-input-table th,.medicine-input-table td{padding:.6rem .35rem}.table-input{padding:.4rem .5rem;font-size:var(--font-size-xs)}}@media(max-width:600px){.table-actions{flex-direction:column;gap:.4rem}.secondary-actions{justify-content:center}.medicine-input-table th,.medicine-input-table td{padding:.5rem .3rem;font-size:var(--font-size-xs)}.table-input{font-size:var(--font-size-xs);padding:.4rem .5rem}}.tc-editable{padding:0!important;position:relative}.tc-editable:hover{background-color:rgba(var(--color-info-rgb),.04)}.tc-textarea{display:block;width:100%;min-height:38px;padding:6px 10px;border:1.5px solid transparent;border-radius:4px;background:transparent;font-size:var(--font-size-base);font-family:inherit;color:inherit;outline:none;box-sizing:border-box;resize:none;overflow-y:hidden;cursor:text;transition:border-color .15s ease,background-color .15s ease}.tc-textarea:hover{border-color:#3b82f64d;background-color:#3b82f60a}.tc-textarea:focus{border-color:var(--color-info);background-color:var(--color-surface);box-shadow:0 0 0 2px #3b82f61f}.tc-textarea::placeholder{color:var(--color-slate-blue);font-size:var(--font-size-sm)}.tc-textarea:disabled{opacity:.45;cursor:not-allowed}._field_l0tgx_1{display:flex;flex-direction:column;gap:.5rem;flex:1}._label_l0tgx_8{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-slate-900);margin-bottom:0;text-align:start}._inputGroup_l0tgx_16{display:flex;gap:.5rem;align-items:stretch}._inputGroup_l0tgx_16 input{flex:1;min-width:0}._field_ef029_1{display:flex;flex-direction:column;gap:.5rem;flex:1}._label_ef029_8{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-slate-900);margin-bottom:0;text-align:start}._inputGroup_ef029_16{display:flex;gap:.5rem;align-items:stretch}._inputGroup_ef029_16 input{flex:1;min-width:0}._unitSelect_ef029_27{flex:0 0 auto;width:85px}._grid_f2l1i_1{display:flex;flex-direction:column;gap:1.5rem}._row_f2l1i_7{display:flex;gap:1.5rem;align-items:start}._bmiBadge_f2l1i_13{margin-left:auto;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);padding:2px 10px;border-radius:12px;background:#0000000a}._grid_19jq0_1{display:flex;flex-direction:column;gap:12px}._row_19jq0_7{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}._fieldGroup_19jq0_15{display:flex;flex-direction:column;gap:.3rem;flex:1;min-width:90px}._fieldLabel_19jq0_23{font-weight:var(--font-weight-bold);color:var(--color-text-secondary);font-size:var(--font-size-base);min-height:1.4rem;white-space:nowrap}._fieldLabelClickable_19jq0_31{font-weight:var(--font-weight-bold);color:var(--color-text-secondary);font-size:var(--font-size-base);min-height:1.4rem;white-space:nowrap;cursor:pointer;text-decoration:underline;text-underline-offset:3px;transition:color .2s ease}._fieldLabelClickable_19jq0_31:hover{color:var(--color-primary)}._fieldInput_19jq0_48,._fieldSelect_19jq0_49{width:100%;padding:.5rem .625rem;font-size:var(--font-size-base);font-family:inherit;border:2px solid var(--color-border-input);border-radius:10px;background:var(--color-surface-raised);color:var(--color-slate-700);box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;min-width:0}._fieldInput_19jq0_48:hover,._fieldSelect_19jq0_49:hover{border-color:var(--color-border-strong);background:var(--color-surface)}._fieldInput_19jq0_48:focus,._fieldSelect_19jq0_49:focus{outline:none;border-color:var(--color-primary);background:var(--color-surface);box-shadow:0 0 0 4px #667eea1a}._fieldInputFilled_19jq0_78{border-color:var(--color-primary);background:var(--color-primary-faint)}._fieldSelect_19jq0_49{cursor:pointer;appearance:none;padding-right:1.75rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center}._fieldSelectFilled_19jq0_93{border-color:var(--color-primary);background-color:var(--color-primary-faint)}._dropdownHoverContainer_19jq0_99{position:relative;width:100%}._hoverPanel_19jq0_105{position:absolute;top:100%;left:0;right:0;z-index:1200;background:var(--color-surface);border:1px solid var(--color-border-medium);border-radius:0 0 6px 6px;box-shadow:0 4px 6px -1px #0000001a;margin-top:-1px;overflow:hidden}._hoverOption_19jq0_119{display:block;width:100%;padding:.5rem .75rem;font-size:var(--font-size-base);font-family:inherit;font-weight:var(--font-weight-normal);color:var(--color-slate-700);background:var(--color-surface);border:none;border-bottom:1px solid var(--color-bg-cool);cursor:pointer;text-align:left;transition:background-color .15s ease}._hoverOption_19jq0_119:last-child{border-bottom:none}._hoverOption_19jq0_119:hover{background-color:var(--color-info-faint);color:var(--color-blue-deep-2);box-shadow:inset 0 1px 2px #0000000d}._hoverOption_19jq0_119:active{background-color:var(--color-primary-tint);color:var(--color-blue-deep-2)}._hoverOptionActive_19jq0_150{background-color:var(--color-info-faint);color:var(--color-blue-deep-2);font-weight:var(--font-weight-medium)}._container_4amq5_1{max-width:300px}._container_4amq5_1 select{cursor:pointer}._editBtn_4amq5_9{background:none;border:1px solid var(--color-border-strong-2);border-radius:5px;color:var(--color-slate-500);cursor:pointer;font-size:var(--font-size-sm);line-height:var(--line-height-none);padding:2px 7px;margin-left:auto;transition:background .15s,color .15s}._editBtn_4amq5_9:hover{background:var(--color-surface-sunken);color:var(--color-blue-medium);border-color:var(--color-blue-medium)}._grid_1tdph_1{display:grid;gap:.5rem}._item_1tdph_6{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;border:2px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .2s ease;background:var(--color-surface);-webkit-user-select:none;user-select:none}._item_1tdph_6:hover{border-color:var(--color-primary);background:var(--color-surface-sunken)}._checked_1tdph_24{border-color:var(--color-primary);background:var(--color-primary-tint)}._checkbox_1tdph_29{accent-color:var(--color-primary);width:16px;height:16px;cursor:pointer}._label_1tdph_36{font-size:var(--font-size-md);color:var(--color-slate-900)}._editBtn_1tdph_41{background:none;border:1px solid var(--color-border-strong-2);border-radius:5px;color:var(--color-slate-500);cursor:pointer;font-size:var(--font-size-sm);line-height:var(--line-height-none);padding:2px 7px;margin-left:auto;transition:background .15s,color .15s}._editBtn_1tdph_41:hover{background:var(--color-surface-sunken);color:var(--color-blue-medium);border-color:var(--color-blue-medium)}._group_7k78q_1{display:flex;gap:.75rem;flex-wrap:wrap}._horizontal_7k78q_7{flex-direction:row}._vertical_7k78q_11{flex-direction:column}._item_7k78q_15{display:flex;align-items:center;gap:.5rem;padding:.4rem .85rem;border:2px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .2s ease;background:var(--color-surface);-webkit-user-select:none;user-select:none}._item_7k78q_15:hover{border-color:var(--color-primary);background:var(--color-surface-sunken)}._selected_7k78q_33{border-color:var(--color-primary);background:var(--color-primary-tint)}._radio_7k78q_38{accent-color:var(--color-primary);width:16px;height:16px;cursor:pointer}._label_7k78q_45{font-size:var(--font-size-md);color:var(--color-slate-900)}._container_bomau_1{width:100%}._textarea_bomau_5{resize:vertical;min-height:80px;font-family:inherit;line-height:var(--line-height-normal)}._container_7i8ac_1{width:100%}._containerInline_7i8ac_5{display:flex;align-items:center;gap:1rem;flex-wrap:nowrap}._scaleGroup_7i8ac_12{display:flex;flex-direction:column;flex:1 1 0;width:fit-content}._inputRow_7i8ac_19{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;margin-right:.5rem}._containerInline_7i8ac_5 ._inputRow_7i8ac_19{margin-bottom:0;flex-shrink:0;flex:0 0 140px}._numberInput_7i8ac_34{width:90px!important;text-align:center}._unit_7i8ac_39{font-size:var(--font-size-md);color:var(--color-text-muted);font-weight:var(--font-weight-medium)}._badge_7i8ac_45{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:28px;border-radius:14px;color:var(--color-surface);font-weight:var(--font-weight-bold);font-size:var(--font-size-base);padding:0 8px}._slider_7i8ac_58{width:100%;height:6px;-webkit-appearance:none;appearance:none;background:linear-gradient(to right,var(--color-success-dark),var(--color-warning-dark),var(--color-danger));border-radius:3px;outline:none;cursor:pointer;padding:.6rem .5rem}._sliderInline_7i8ac_70{flex:1;min-width:0}._slider_7i8ac_58::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--color-primary);border:2px solid var(--color-surface);box-shadow:0 1px 3px #0003;cursor:pointer}._labels_7i8ac_87{display:flex;justify-content:space-between;margin-top:.25rem}._scaleLabel_7i8ac_93{font-size:var(--font-size-xs);color:var(--color-text-placeholder)}._grid_1n20q_1{display:grid;gap:1rem}._field_1n20q_6{display:flex;flex-direction:column;gap:.3rem}._label_1n20q_12{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-slate-900)}._unit_1n20q_18{font-weight:var(--font-weight-normal);color:var(--color-text-muted);font-size:var(--font-size-sm)}._refRange_1n20q_24{font-size:var(--font-size-xs);color:var(--color-text-placeholder);font-style:italic}._table_phq83_1{display:flex;flex-direction:column;border:2px solid var(--color-border);border-radius:8px;overflow:hidden}._headerRow_phq83_9{display:grid;grid-template-columns:140px 1fr 1fr;background:var(--color-surface-sunken);border-bottom:2px solid var(--color-border)}._headerCell_phq83_16{padding:.6rem .75rem;font-weight:var(--font-weight-bold);font-size:var(--font-size-md);color:var(--color-text-secondary);text-align:center}._headerCell_phq83_16:first-child{text-align:left}._dataRow_phq83_28{display:grid;grid-template-columns:140px 1fr 1fr;border-bottom:1px solid var(--color-bg-cool-2)}._dataRow_phq83_28:last-child{border-bottom:none}._rowLabel_phq83_38{padding:.5rem .75rem;font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);color:var(--color-slate-900);display:flex;align-items:center;background:var(--color-surface-sunken);border-right:1px solid var(--color-bg-cool-2)}._unit_phq83_49{font-weight:var(--font-weight-normal);color:var(--color-text-placeholder);font-size:var(--font-size-xs);margin-left:2px}._cellInput_phq83_56{padding:.35rem .5rem;display:flex;align-items:center}._cellInput_phq83_56 input{text-align:center}._cellInput_phq83_56+._cellInput_phq83_56{border-left:1px solid var(--color-bg-cool-2)}._totalBadge_1hm93_1{display:flex;align-items:center;gap:.5rem;margin-left:auto}._totalLabel_1hm93_8{font-size:var(--font-size-base);color:var(--color-text-muted);font-weight:var(--font-weight-medium)}._totalValue_1hm93_14{display:inline-flex;align-items:center;justify-content:center;padding:2px 12px;border-radius:12px;font-weight:var(--font-weight-bold);font-size:var(--font-size-md);color:var(--color-surface);background-color:var(--color-primary);min-width:40px;text-align:center}._interpLabel_1hm93_28{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}._grid_1hm93_33{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}._item_1hm93_39{display:flex;flex-direction:column;gap:.3rem}._itemLabel_1hm93_45{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}._scoreInput_1hm93_51{width:100px;text-align:center}.followup-container{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;padding:2rem}.followup-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--color-hover)}.followup-header h2{margin:0;color:var(--color-slate-800);font-size:var(--font-size-3xl)}.followup-form{display:flex;flex-direction:column;gap:1.5rem}.followup-section{display:flex;gap:1rem;align-items:center}.section-label{font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);font-size:var(--font-size-md)}.duration-selector{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.followup-form .duration-input-group{display:flex;align-items:center;gap:.25rem}.followup-section-duration{display:flex;align-items:center;gap:1rem}.followup-form .btn-duration{width:36px;height:36px;border:2px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text-secondary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.followup-form .btn-duration:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.followup-form .btn-duration:disabled{opacity:.5;cursor:not-allowed}.followup-form .duration-input{width:70px!important;text-align:center;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);padding:.5rem;border:2px solid var(--color-border);border-radius:8px}.followup-form .duration-input:focus{border-color:var(--color-primary);outline:none}.duration-input:focus{border-color:var(--color-primary);outline:none}.followup-form .unit-select{padding:.5rem 1rem;border:2px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text-secondary);font-weight:var(--font-weight-medium);font-size:var(--font-size-lg);cursor:pointer;min-width:100px;transition:all .2s ease}.followup-form .unit-select:hover{border-color:var(--color-primary)}.followup-form .unit-select:focus{border-color:var(--color-primary);outline:none}.reminder-preview{background:linear-gradient(135deg,var(--color-bg-blue-faint) 0%,var(--color-bg-purple-faint) 100%);padding:1rem;border-radius:12px;border:2px solid var(--color-primary-tint)}.reminder-date{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin:.5rem 0}.reminder-info{font-size:var(--font-size-base);color:var(--color-text-muted)}.followup-form .notes-input{width:100%;padding:.75rem;border:2px solid var(--color-border);border-radius:8px;font-family:inherit;font-size:var(--font-size-md);resize:vertical;transition:border-color .2s ease}.followup-form .notes-input:focus{border-color:var(--color-primary);outline:none}.followup-form .notes-input::placeholder{color:var(--color-text-placeholder)}@media(max-width:600px){.followup-header{flex-direction:column;align-items:flex-start;gap:1rem}.quick-select-grid{grid-template-columns:repeat(2,1fr)}.duration-selector{flex-direction:column;align-items:flex-start}}.patient-viewer-container{padding:1.5rem;width:-webkit-fill-available;margin:0 auto}.patient-viewer-header{background:var(--gradient-primary);padding:1.5rem 2rem;border-radius:12px;box-shadow:0 8px 32px #667eea4d;margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center}.patient-viewer-header h1{color:#fff;font-size:var(--font-size-4xl);margin:0;flex:1;text-align:center;font-weight:var(--font-weight-bold);text-shadow:0 2px 4px rgba(0,0,0,.1)}.filter-group input{padding:.5rem .75rem;border:2px solid var(--color-border-soft);border-radius:8px;font-size:var(--font-size-md);transition:all .2s ease}.filter-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.loading,.no-patients{text-align:center;padding:2rem;color:var(--color-text-placeholder);font-size:var(--font-size-lg)}.patients-list{display:flex;flex-direction:column;gap:.75rem}.patient-card{background:#fff;border-radius:12px;border:2px solid var(--color-border-soft);overflow:hidden;transition:all .3s ease;box-shadow:0 2px 8px #0000000d}.patient-card:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.patient-row{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;cursor:pointer;transition:background .2s ease}.patient-row:hover{background:var(--color-bg-light)}.patient-summary{display:flex;flex:1;gap:1.5rem;align-items:center}.patient-info{display:flex;gap:.25rem;min-width:200px;column-gap:20px}.patient-id-badge{font-size:var(--font-size-sm);color:var(--color-green-flat);font-weight:var(--font-weight-normal);padding:.15rem .5rem;background:#27ae601a;border-radius:4px;font-family:var(--font-family-mono);display:inline-block;width:fit-content}.patient-mobile{font-size:var(--font-size-base);color:var(--color-primary);font-family:var(--font-family-mono)}.patient-meta{display:flex;gap:1.5rem;align-items:center}.last-visit{font-size:var(--font-size-md);color:var(--color-text-secondary)}.bills-count{font-size:var(--font-size-base);color:var(--color-primary);font-weight:var(--font-weight-normal);padding:.25rem .6rem;background:var(--color-bg-blue-faint);border-radius:4px}.patient-details{padding:1rem 1.25rem;background:var(--color-bg-light);border-top:1px solid var(--color-border-soft)}.details-section{background:#fff;padding:1rem;border-radius:8px;border:2px solid var(--color-border);margin-bottom:.75rem}.details-section:last-child{margin-bottom:0}.details-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.details-section-header h3{color:var(--color-slate-900);font-size:var(--font-size-md);margin:0;font-weight:var(--font-weight-semibold)}.details-section h3{color:var(--color-slate-900);font-size:var(--font-size-lg);margin:0 0 .75rem;font-weight:var(--font-weight-semibold)}.btn-create-bill{background:var(--color-primary);color:#fff;border:none;padding:.5rem .9rem;border-radius:6px;font-size:var(--font-size-base);font-weight:var(--font-weight-normal);cursor:pointer;transition:background .2s ease;display:flex;align-items:center;gap:.3rem}.btn-create-bill:hover{background:var(--color-primary-shade);transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.patient-bills-list{display:flex;flex-direction:column;gap:.6rem}.bill-item{background:#fff;border-radius:8px;overflow:hidden;border:2px solid var(--color-border);transition:all .2s ease}.bill-item:hover{border-color:var(--color-border-strong)}.bill-item-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;cursor:pointer;transition:background .2s ease}.bill-item-header:hover{background:var(--color-border-cool)}.bill-item-info{display:flex;flex-direction:column;gap:.2rem}.bill-id{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);color:var(--color-slate-900);font-family:var(--font-family-mono)}.bill-date{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.bill-item-meta{display:flex;gap:1rem;align-items:center}.expand-icon-small{font-size:var(--font-size-lg);color:var(--color-primary)}.bill-item-details{padding:1rem;background:#fff;border-top:1px solid var(--color-border-soft)}.bill-item-actions{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border-soft);display:flex;justify-content:flex-end}.language-select-inline{padding:.5rem 1rem;border:1px solid var(--color-primary);border-radius:6px;font-size:var(--font-size-base);font-weight:var(--font-weight-normal);cursor:pointer;background:#fff;color:var(--color-primary);transition:background .2s ease;min-width:150px}.btn-regenerate-pdf-small{padding:.5rem 1rem;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:var(--font-size-base);font-weight:var(--font-weight-normal);cursor:pointer;transition:background .2s ease}.btn-regenerate-pdf-small:hover:not(:disabled){background:var(--color-primary-shade)}.btn-regenerate-pdf-small:disabled{opacity:.6;cursor:not-allowed}.btn-duplicate-prescription{padding:.5rem 1rem;background:var(--color-green-emerald-bright);color:#fff;border:none;border-radius:6px;font-size:var(--font-size-base);font-weight:var(--font-weight-normal);cursor:pointer;transition:background .2s ease}@media(max-width:768px){.patient-viewer-container{padding:1rem}.filters-section{grid-template-columns:1fr}.patient-summary{flex-direction:column;gap:.75rem;align-items:flex-start}.patient-info{min-width:auto}.patient-meta{flex-direction:column;gap:.5rem;align-items:flex-start}.bill-item-header{flex-direction:column;align-items:flex-start;gap:.5rem}.bill-item-meta{width:100%;justify-content:space-between}}.prescription-display{display:flex;flex-direction:column;gap:1rem}.prescription-display-section{background:var(--color-surface, white);padding:1rem;border-radius:8px;border:2px solid var(--color-border, var(--color-border));border-left-width:4px}.section--patient{background:var(--color-info-faint, var(--color-info-faint));border-color:var(--color-info, var(--color-info))}.section--patient .prescription-display-section-title{color:var(--color-info-dark, var(--color-info-dark));border-bottom-color:#3b82f633}.section--prescription{background:var(--color-primary-faint, var(--color-primary-faint));border-color:var(--color-primary, var(--color-primary))}.section--prescription .prescription-display-section-title{color:var(--color-primary-dark, var(--color-primary-dark));border-bottom-color:#667eea33}.prescription-display-section-title{font-size:var(--font-size-lg);margin:0 0 .75rem;font-weight:var(--font-weight-semibold);padding-bottom:.5rem;border-bottom:2px solid rgba(0,0,0,.08);color:var(--color-text-primary, var(--color-slate-900))}.legacy-section{border-color:var(--color-warning);background:var(--color-warning-faint)}.legacy-section-title{color:var(--color-amber-deep);border-bottom-color:var(--color-yellow-pale)}.legacy-field .prescription-field-title{color:var(--color-amber-deep)}.patient-details-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.patient-detail-item{display:flex;flex-direction:column;gap:.25rem}.patient-detail-item.full-width{grid-column:1 / -1}.patient-detail-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.patient-detail-value{font-size:var(--font-size-md);color:var(--color-slate-900);font-weight:var(--font-weight-normal)}.prescription-fields{display:flex;flex-direction:column;gap:1rem}.prescription-field-section{padding:.75rem;background:var(--color-bg-light);border-radius:6px;border:1px solid var(--color-border-soft)}.prescription-field-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-slate-900);margin:0 0 .5rem;display:flex;align-items:center;gap:.25rem}.prescription-field-text{font-size:var(--font-size-md);color:var(--color-text-primary);line-height:var(--line-height-relaxed);white-space:pre-wrap;word-wrap:break-word}.medicines-list{display:flex;flex-direction:column;gap:.75rem}.medicine-item{display:flex;gap:.75rem;padding:.75rem;background:#fff;border-radius:6px;border:1px solid var(--color-border-soft)}.medicine-number{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-primary);min-width:1.5rem}.medicine-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.medicine-name{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-slate-900)}.medicine-details{font-size:var(--font-size-base);color:var(--color-text-secondary);display:flex;gap:.5rem;flex-wrap:wrap}.generic-name{color:var(--color-primary);font-style:italic}.medicine-dosage{font-size:var(--font-size-base);color:var(--color-text-primary);display:flex;gap:.5rem;flex-wrap:wrap;padding:.25rem 0}.medicine-dosage span{background:var(--color-bg-blue-faint);padding:.15rem .4rem;border-radius:4px;font-weight:var(--font-weight-medium)}.medicine-frequency,.medicine-duration,.medicine-mode{font-size:var(--font-size-base);color:var(--color-text-secondary)}.medicine-instructions{font-size:var(--font-size-base);color:var(--color-text-secondary);font-style:italic;margin-top:.25rem;padding:.35rem .5rem;background:var(--color-yellow-pale);border-left:3px solid var(--color-yellow-bootstrap);border-radius:4px}@media(max-width:768px){.patient-details-grid{grid-template-columns:1fr}.medicine-item{flex-direction:column;gap:.5rem}.medicine-number{min-width:auto}}.prescription-viewer-container{padding:1.5rem;width:-webkit-fill-available;margin:0 auto}.prescription-viewer-header{background:var(--gradient-primary);padding:1.5rem 2rem;border-radius:12px;box-shadow:0 8px 32px #667eea4d;margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center}.prescription-viewer-header h1{color:#fff;font-size:var(--font-size-4xl);margin:0;flex:1;text-align:center;font-weight:var(--font-weight-bold);text-shadow:0 2px 4px rgba(0,0,0,.1)}.language-selector-section{background:#fff;padding:1.25rem 1.5rem;border-radius:12px;box-shadow:0 4px 24px #00000014;margin-bottom:1.5rem}.language-selector-container{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.language-selector-label{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-900);margin:0;white-space:nowrap}.language-options{display:flex;gap:.75rem;flex-wrap:wrap}.language-option{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--color-bg-light);border:2px solid var(--color-border-soft);border-radius:8px;cursor:pointer;transition:all .2s ease;color:var(--color-slate-900);font-weight:var(--font-weight-medium);font-size:var(--font-size-md)}.language-option:hover{background:#667eea1a;border-color:var(--color-primary)}.language-option.selected{background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.082),rgba(var(--color-primary-accent-rgb),.082));border-color:var(--color-primary);color:var(--color-primary)}.language-option input[type=radio]{cursor:pointer;width:16px;height:16px;accent-color:var(--color-primary)}.language-label{font-size:var(--font-size-md);-webkit-user-select:none;user-select:none}.filters-section{background:#fff;padding:1.25rem 1.5rem;border-radius:12px;box-shadow:0 4px 24px #00000014;margin-bottom:1.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;align-items:end}.filter-group{display:flex;flex-direction:column;gap:.35rem}.filter-group label{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.filter-group input{padding:.5rem .75rem;border:1px solid var(--color-border-soft);border-radius:6px;font-size:var(--font-size-md);transition:border .2s ease}.filter-group select{padding:.5rem .75rem;border:1px solid var(--color-border-soft);border-radius:6px;font-size:var(--font-size-md);transition:border .2s ease;background:#fff;cursor:pointer}.filter-group select:focus{outline:none;border-color:var(--color-primary)}.filter-group input[type=date]{cursor:pointer}.filter-group input[type=date]:disabled{background:var(--color-bg-neutral);cursor:not-allowed;opacity:.6}.filter-group input:focus{outline:none;border-color:var(--color-primary)}.filter-checkbox{display:flex;align-items:center;justify-content:flex-start;padding-top:1rem}.filter-checkbox label{display:flex;align-items:center;gap:.5rem;cursor:pointer;margin:0;font-size:var(--font-size-md)}.filter-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-primary)}.filter-checkbox span{font-weight:var(--font-weight-normal);color:var(--color-text-primary);-webkit-user-select:none;user-select:none}.btn-clear-filters{padding:.5rem 1rem;background:var(--color-bg-neutral);color:var(--color-text-secondary);border:1px solid var(--color-border-soft);border-radius:6px;font-size:var(--font-size-md);font-weight:var(--font-weight-normal);cursor:pointer;transition:background .2s ease;white-space:nowrap}.btn-clear-filters:hover{background:var(--color-border-soft)}.loading,.no-prescriptions{text-align:center;padding:2rem;color:var(--color-text-placeholder);font-size:var(--font-size-lg)}.prescriptions-list{display:flex;flex-direction:column;gap:.75rem}.prescription-card{background:#fff;border-radius:12px;border:2px solid var(--color-border);overflow:hidden;transition:all .3s ease;box-shadow:0 2px 8px #0000000d}.prescription-card:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.prescription-row{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;cursor:pointer;transition:background .2s ease}.prescription-row:hover{background:var(--color-bg-light)}.prescription-summary{display:flex;flex:1;gap:1.5rem;align-items:center}.prescription-info{display:flex;gap:.25rem;min-width:200px;column-gap:20px}.patient-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-900)}.patient-id{font-size:var(--font-size-sm);color:var(--color-green-flat);font-family:var(--font-family-mono)}.prescription-id{font-size:var(--font-size-sm);color:var(--color-primary);font-family:var(--font-family-mono);font-weight:var(--font-weight-normal)}.specialty-badge{font-size:var(--font-size-xs);color:var(--color-amber-deep);background:var(--color-yellow-pale);border:1px solid var(--color-yellow-pale-2);border-radius:4px;padding:.1rem .45rem;font-weight:var(--font-weight-semibold)}.btn-copy-json{background:transparent;border:none;cursor:pointer;font-size:var(--font-size-md);padding:.1rem .3rem;opacity:.6;line-height:var(--line-height-none)}.prescription-meta{display:flex;gap:1.5rem;align-items:center}.prescription-date{font-size:var(--font-size-md);color:var(--color-text-secondary)}.medicines-count{font-size:var(--font-size-base);color:var(--color-primary);font-weight:var(--font-weight-normal);padding:.25rem .6rem;background:var(--color-bg-blue-faint);border-radius:4px}.expand-icon{font-size:var(--font-size-xl);color:var(--color-primary);margin-left:.75rem}.prescription-details{padding:1rem 1.25rem;background:var(--color-bg-light);border-top:1px solid var(--color-border-soft)}.prescription-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border-soft);display:flex;justify-content:flex-end}.btn-regenerate-pdf{padding:.6rem 1.2rem;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:var(--font-size-md);font-weight:var(--font-weight-normal);cursor:pointer;transition:background .2s ease}.btn-regenerate-pdf:hover:not(:disabled){background:var(--color-primary-shade)}.btn-regenerate-pdf:disabled{opacity:.6;cursor:not-allowed}.pdf-download-row{display:flex;gap:.75rem;align-items:center}.language-select-inline{padding:.6rem 1.2rem;border:1px solid var(--color-primary);border-radius:6px;font-size:var(--font-size-md);font-weight:var(--font-weight-normal);cursor:pointer;background:#fff;color:var(--color-primary);transition:background .2s ease;min-width:150px}.language-select-inline:hover{background:var(--color-bg-blue-faint)}.language-select-inline:focus{outline:none;border-color:var(--color-primary)}.btn-duplicate-prescription{padding:.6rem 1.2rem;background:var(--color-green-emerald-bright);color:#fff;border:none;border-radius:6px;font-size:var(--font-size-md);font-weight:var(--font-weight-normal);cursor:pointer;transition:background .2s ease}.btn-duplicate-prescription:hover{background:var(--color-green-emerald)}@media(max-width:768px){.prescription-viewer-container{padding:1rem}.filters-section{grid-template-columns:1fr}.prescription-summary{flex-direction:column;gap:.75rem;align-items:flex-start}.prescription-info{min-width:auto}.prescription-meta{flex-direction:column;gap:.5rem;align-items:flex-start}}.bsm-overlay{position:fixed;inset:0;background:#00000073;z-index:10000;display:flex;align-items:center;justify-content:center}.bsm-modal{background:var(--color-surface);border-radius:14px;width:480px;max-width:96vw;box-shadow:0 16px 48px #0003;display:flex;flex-direction:column;overflow:hidden}.bsm-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:var(--gradient-primary)}.bsm-title{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-surface)}.bsm-close{background:#ffffff2e;border:1px solid rgba(255,255,255,.4);border-radius:6px;padding:.3rem .65rem;cursor:pointer;color:var(--color-surface);font-size:var(--font-size-md)}.bsm-close:hover{background:#ffffff4d}.bsm-body{padding:1.25rem;display:flex;flex-direction:column;gap:1.1rem;overflow-y:auto;max-height:70vh}.bsm-field-group{display:flex;flex-direction:column;gap:.4rem}.bsm-label{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-slate-900)}.bsm-size-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.bsm-size-tile{padding:.6rem .5rem;border:2px solid var(--color-border);border-radius:8px;background:var(--color-surface-raised);cursor:pointer;text-align:center;font-size:var(--font-size-sm);color:var(--color-text-secondary);transition:all .15s;font-family:inherit}.bsm-size-tile:hover{border-color:var(--color-purple-light);background:var(--color-bg-purple-faint);color:var(--color-primary-deep)}.bsm-size-tile.selected{border-color:var(--color-primary);background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.082),rgba(var(--color-primary-accent-rgb),.082));color:var(--color-primary-deep);font-weight:var(--font-weight-semibold)}.bsm-custom-row{display:flex;gap:.75rem;align-items:center}.bsm-custom-row label{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap}.bsm-custom-input{width:90px;padding:.4rem .5rem;border:2px solid var(--color-border-input);border-radius:6px;font-size:var(--font-size-base);font-family:inherit}.bsm-custom-input:focus{outline:none;border-color:var(--color-primary)}.bsm-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:var(--color-surface-sunken);border-radius:8px;font-size:var(--font-size-base);color:var(--color-slate-800)}.bsm-toggle{position:relative;width:38px;height:22px;flex-shrink:0}.bsm-toggle input{opacity:0;width:0;height:0}.bsm-toggle-slider{position:absolute;inset:0;background:var(--color-border-strong);border-radius:22px;cursor:pointer;transition:background .2s}.bsm-toggle-slider:before{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;background:var(--color-surface);border-radius:50%;transition:transform .2s}.bsm-toggle input:checked+.bsm-toggle-slider{background:var(--color-primary)}.bsm-toggle input:checked+.bsm-toggle-slider:before{transform:translate(16px)}.bsm-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:.875rem 1.25rem;border-top:1px solid var(--color-border)}.bsm-radio-group{display:flex;flex-direction:column;gap:.5rem}.bsm-radio-tile{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:.6rem;align-items:center;padding:.65rem .85rem;border:2px solid var(--color-border);border-radius:10px;background:var(--color-surface-raised);cursor:pointer;transition:all .15s}.bsm-radio-tile input[type=radio]{grid-row:1 / 3;accent-color:var(--color-primary);width:16px;height:16px;cursor:pointer}.bsm-radio-tile.selected{border-color:var(--color-primary);background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.051),rgba(var(--color-primary-accent-rgb),.051))}.bsm-radio-tile:hover:not(.selected){border-color:var(--color-purple-light);background:var(--color-bg-purple-faint)}.bsm-radio-label{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-slate-800)}.bsm-radio-desc{grid-column:2;font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:1px}.bsm-header-preview{position:relative;border:1px solid var(--color-border);border-radius:8px;overflow:hidden;max-height:100px;display:flex;align-items:center;justify-content:center;background:var(--color-surface-sunken)}.bsm-header-preview img{max-width:100%;max-height:100px;object-fit:contain}.bsm-remove-header{position:absolute;top:4px;right:4px;background:#0000008c;color:var(--color-surface);border:none;border-radius:4px;padding:.2rem .5rem;font-size:var(--font-size-xs);cursor:pointer}.bsm-remove-header:hover{background:#000000bf}.bsm-header-placeholder{padding:1rem;text-align:center;font-size:var(--font-size-base);color:var(--color-text-placeholder);border:1px dashed var(--color-border-strong);border-radius:8px;background:var(--color-surface-sunken)}.bsm-upload-btn{margin-top:.4rem;padding:.45rem 1rem;border:1px solid var(--color-primary);border-radius:7px;background:var(--color-surface);color:var(--color-primary);font-size:var(--font-size-base);font-family:inherit;cursor:pointer;align-self:flex-start}.bsm-upload-btn:hover{background:var(--color-primary);color:var(--color-surface)}.bsm-upload-error{font-size:var(--font-size-sm);color:var(--color-danger)}.bsm-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:var(--line-height-snug)}.bsm-unit{font-size:var(--font-size-base);color:var(--color-text-muted)}.tc-readonly{padding:6px 10px;font-size:var(--font-size-base);color:var(--color-text-secondary);white-space:nowrap;vertical-align:middle}.tc-readonly.tc-readonly-right{text-align:right;font-variant-numeric:tabular-nums}.tc-readonly.tc-readonly-center{text-align:center}.billing-page{display:flex;flex-direction:column;height:100%;background:var(--color-surface-sunken);font-family:inherit}.billing-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:var(--gradient-primary);flex-shrink:0;box-shadow:0 2px 12px #667eea40}.billing-title{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.15)}.billing-version-badge{display:inline-block;margin-left:.5rem;padding:.15rem .5rem;background:#ffffff40;color:#fff;border-radius:9999px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);vertical-align:middle}.billing-close-btn{background:#ffffff26;border:1px solid rgba(255,255,255,.4);border-radius:6px;padding:.4rem .8rem;cursor:pointer;color:#fff;font-size:var(--font-size-base);transition:background .15s}.billing-close-btn:hover{background:#ffffff40}.billing-settings-btn{background:none;border:none;cursor:pointer;font-size:var(--font-size-xl);padding:.25rem .35rem;border-radius:6px;opacity:.85;transition:background .15s,opacity .15s;line-height:var(--line-height-none)}.billing-settings-btn:hover{background:#fff3;opacity:1}.billing-body{flex:1;overflow-y:auto;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1.25rem}.billing-error{margin:.5rem 1.5rem 0;padding:.75rem 1rem;background:var(--color-danger-faint);border:2px solid var(--color-red-pale);border-radius:8px;color:var(--color-danger-dark);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);flex-shrink:0}.billing-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:1rem 1.25rem;box-shadow:0 1px 6px #0000000d}.billing-section-title{margin:0 0 .875rem;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-slate-900);letter-spacing:var(--letter-spacing-wide);padding-bottom:.4rem;border-bottom:2px solid var(--color-primary);display:inline-block}.billing-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.875rem}.billing-patient-selected{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--color-bg-purple-faint);border:2px solid var(--color-bg-purple-faint);border-radius:10px;box-shadow:0 2px 6px #667eea14}.billing-patient-info{font-size:var(--font-size-md);color:var(--color-slate-800);font-weight:var(--font-weight-medium)}.billing-patient-id{color:var(--color-text-muted);font-size:var(--font-size-sm)}.billing-patient-search{position:relative}.billing-patient-suggestions{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:100;background:var(--color-surface);border:2px solid var(--color-border);border-radius:10px;box-shadow:0 8px 24px #0000001f;list-style:none;margin:0;padding:0;max-height:240px;overflow-y:auto}.billing-patient-suggestion-item{padding:.75rem 1rem;cursor:pointer;font-size:var(--font-size-md);border-bottom:1px solid var(--color-surface-sunken);color:var(--color-slate-800);transition:background .15s}.billing-patient-suggestion-item:hover{background:var(--color-bg-purple-faint);color:var(--color-primary-deep)}.billing-patient-suggestion-item:last-child{border-bottom:none}.billing-search-spinner{display:block;margin-top:.25rem;font-size:var(--font-size-sm);color:var(--color-text-muted)}.billing-table-wrapper{position:relative}.billing-table{width:100%;border-collapse:collapse;font-size:var(--font-size-base)}.billing-table th{background:var(--color-surface-sunken);padding:.5rem .625rem;text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);white-space:nowrap}.billing-table td{padding:.4rem .5rem;border-bottom:1px solid var(--color-surface-sunken);vertical-align:middle}.billing-td-desc{min-width:220px}.billing-table td.tc-editable{padding:0!important}.billing-td-desc .tc-input{padding-right:30px}.billing-catalog-btn-abs{position:absolute;right:4px;top:50%;transform:translateY(-50%);z-index:1}.billing-tc-num{text-align:right}.billing-td-amount{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--color-slate-800)}.billing-input{width:100%;padding:.625rem .875rem;border:2px solid var(--color-border-input);border-radius:8px;font-size:var(--font-size-md);color:var(--color-slate-800);background:var(--color-surface-raised);box-sizing:border-box;font-family:inherit;transition:all .2s ease}.billing-input:hover{border-color:var(--color-border-strong);background:var(--color-surface)}.billing-input:focus{outline:none;border-color:var(--color-primary);background:var(--color-surface);box-shadow:0 0 0 3px #667eea1f}.billing-input::placeholder{color:var(--color-text-placeholder)}.billing-input-inline{min-width:150px;padding:.375rem .5rem;font-size:var(--font-size-base);border-radius:6px}.billing-input-num{width:80px;text-align:right;padding:.375rem .5rem;font-size:var(--font-size-base);border-radius:6px}.billing-input-gst{width:70px;padding:.375rem;font-size:var(--font-size-base);border-radius:6px}.billing-desc-cell{display:flex;align-items:center;gap:4px;position:relative}.billing-catalog-btn{flex-shrink:0;background:var(--color-bg-cool-2);border:1px solid var(--color-border-strong);border-radius:4px;padding:.3rem .5rem;cursor:pointer;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.billing-catalog-btn:hover{background:var(--color-border)}.billing-catalog-dropdown{position:absolute;top:100%;left:0;z-index:99999;width:320px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 6px 20px #0000001f;overflow:hidden}.billing-catalog-search{border-radius:0;border-left:none;border-right:none;border-top:none;border-bottom:1px solid var(--color-border)}.billing-catalog-list{max-height:260px;overflow-y:auto;padding:.25rem 0}.billing-catalog-category{padding:.3rem .75rem;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);color:var(--color-text-placeholder);background:var(--color-surface-sunken)}.billing-catalog-item{display:flex;justify-content:space-between;padding:.45rem .875rem;cursor:pointer;font-size:var(--font-size-base);color:var(--color-slate-800);transition:background .1s}.billing-catalog-item:hover{background:var(--color-bg-purple-faint)}.billing-catalog-price{color:var(--color-text-muted);font-size:var(--font-size-sm);white-space:nowrap;margin-left:.5rem}.billing-catalog-empty{display:block;padding:.75rem;color:var(--color-text-placeholder);font-size:var(--font-size-base);text-align:center}.billing-add-row-btn{margin-top:.625rem;background:none;border:1px dashed var(--color-purple-light);border-radius:6px;padding:.4rem 1rem;color:var(--color-primary-deep);cursor:pointer;font-size:var(--font-size-base);width:100%;transition:background .15s}.billing-add-row-btn:hover{background:var(--color-bg-purple-faint)}.billing-remove-btn{width:32px;height:32px;background:var(--color-danger-faint);border:none;color:var(--color-danger);cursor:pointer;border-radius:6px;font-size:var(--font-size-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.billing-remove-btn:hover:not(:disabled){background:var(--color-danger);color:#fff;transform:scale(1.1)}.billing-remove-btn:disabled{color:var(--color-border-strong);background:transparent;cursor:not-allowed}.billing-medicines-row{margin-top:.875rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.625rem .75rem;background:var(--color-warning-faint);border:1px solid var(--color-yellow-pale);border-radius:6px}.billing-medicines-label{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-amber-text-dark)}.billing-medicines-hint{font-weight:var(--font-weight-normal);color:var(--color-amber-text-dark);font-size:var(--font-size-sm)}.billing-medicines-input{width:120px}.billing-summary{max-width:360px;margin-left:auto}.billing-summary-row{display:flex;justify-content:space-between;padding:.35rem 0;font-size:var(--font-size-md);color:var(--color-text-secondary);border-bottom:1px solid var(--color-surface-sunken)}.billing-grand-total{margin-top:.25rem;padding-top:.5rem;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);border-top:2px solid var(--color-border);border-bottom:none}.billing-notes-input{resize:vertical;min-height:72px}.billing-version-table{width:100%;border-collapse:collapse;font-size:var(--font-size-base);margin-top:.5rem}.billing-version-table th{background:var(--color-surface-sunken);padding:.4rem .625rem;text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border)}.billing-version-table td{padding:.4rem .625rem;border-bottom:1px solid var(--color-surface-sunken);color:var(--color-slate-800)}.billing-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:.875rem 1.5rem;background:var(--color-surface);border-top:1px solid var(--color-border);flex-shrink:0}.billing-btn-primary{padding:.625rem 1.5rem;background:var(--gradient-primary);color:var(--color-surface);border:none;border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .2s ease;letter-spacing:var(--letter-spacing-wide)}.billing-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-shade) 0%,var(--color-primary-deep) 100%);transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.billing-btn-primary:disabled{background:var(--color-text-placeholder);cursor:not-allowed;transform:none;box-shadow:none}.billing-btn-ghost{padding:.5rem 1.25rem;background:#fff;border:2px solid var(--color-border-soft);border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-slate-850);cursor:pointer;transition:all .2s ease}.billing-btn-ghost:hover{background:var(--color-bg-light);border-color:var(--color-primary);color:var(--color-primary-deep);transform:translateY(-1px)}.billing-catalog-title{cursor:pointer;transition:color .15s}.billing-catalog-title:hover{color:var(--color-primary-deep)}.billing-patient-mode-toggle{display:flex;gap:.5rem}.billing-mode-btn{padding:.45rem 1rem;background:#fff;border:2px solid var(--color-border-soft);border-radius:8px;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.billing-mode-btn:before{content:"";position:absolute;inset:0;background:var(--gradient-primary);opacity:0;transition:opacity .2s ease}.billing-mode-btn span,.billing-mode-btn{position:relative;z-index:1}.billing-mode-btn.active{border-color:var(--color-primary);color:#fff;box-shadow:0 4px 12px #667eea4d}.billing-mode-btn.active:before{opacity:1}.billing-mode-btn:not(.active):hover{border-color:var(--color-primary);color:var(--color-primary-deep);transform:translateY(-1px)}.billing-new-patient-form{padding:1rem 1.25rem;background:var(--color-bg-purple-faint);border:2px solid var(--color-bg-purple-faint);border-radius:10px}.billing-new-patient-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.875rem}.billing-new-patient-actions{display:flex;justify-content:flex-end;gap:.75rem}.billing-field-group{display:flex;flex-direction:column;gap:.35rem;min-width:0}.billing-field-label{font-weight:var(--font-weight-semibold);color:var(--color-slate-900);font-size:var(--font-size-base);letter-spacing:var(--letter-spacing-wide)}.billing-catalog-dropdown{width:340px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 8px 24px #00000026;overflow:hidden}.billing-catalog-editor-overlay{position:fixed;inset:0;background:#00000073;z-index:100000;display:flex;align-items:center;justify-content:center;padding:1rem;overflow-y:auto}.billing-catalog-editor-modal{background:var(--color-surface);border-radius:12px;width:100%;max-width:720px;max-height:88vh;box-shadow:0 16px 48px #00000040;display:flex;flex-direction:column;overflow:hidden}.billing-catalog-editor-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border);background:linear-gradient(135deg,var(--color-bg-purple-faint) 0%,var(--color-bg-purple-faint) 100%);border-radius:12px 12px 0 0;flex-shrink:0}.billing-catalog-editor-header h3{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-slate-900)}.billing-catalog-editor-hint{margin:.5rem 1.25rem;font-size:var(--font-size-sm);color:var(--color-text-muted);flex-shrink:0}.billing-catalog-editor-body{padding:0 1.25rem .75rem;overflow-y:auto;overflow-x:auto;flex:1 1 auto;min-height:0}.billing-catalog-editor-body .billing-input{padding:.4rem .5rem;font-size:var(--font-size-base);border-radius:6px}.clinical-history{padding:1rem;display:flex;flex-direction:column;gap:1rem;height:100%;box-sizing:border-box}.clinical-history-toolbar{display:flex;align-items:center;gap:.75rem}.clinical-history-search{flex:1;padding:.45rem .75rem;border:1px solid var(--color-border-strong);border-radius:6px;font-size:var(--font-size-md);color:var(--color-slate-800);background:var(--color-surface);transition:border-color .15s}.clinical-history-search:focus{outline:none;border-color:var(--color-blue-soft);box-shadow:0 0 0 2px #4299e133}.clinical-history-new-btn{padding:.45rem 1rem;background:var(--color-blue-soft);color:var(--color-surface);border:none;border-radius:6px;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;white-space:nowrap;transition:background .15s}.clinical-history-new-btn:hover{background:var(--color-info-dark)}.clinical-history-status{text-align:center;color:var(--color-text-muted);font-size:var(--font-size-md);margin:2rem 0}.clinical-history-table{width:100%;border-collapse:collapse;font-size:var(--font-size-base)}.clinical-history-table th{background:var(--color-surface-sunken);padding:.5rem .75rem;text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);border-bottom:2px solid var(--color-border);white-space:nowrap}.clinical-history-table td{padding:.5rem .75rem;border-bottom:1px solid var(--color-surface-sunken);color:var(--color-slate-800);vertical-align:middle}.clinical-history-table tr:hover td{background:var(--color-surface-sunken)}.clinical-id-cell{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.clinical-sub{font-size:var(--font-size-xs);color:var(--color-text-muted)}.clinical-amount{font-variant-numeric:tabular-nums;text-align:right}.clinical-edit-btn{padding:.3rem .625rem;background:none;border:1px solid var(--color-border-strong);border-radius:5px;font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;transition:background .15s;white-space:nowrap}.clinical-edit-btn:hover{background:var(--color-blue-pale);border-color:var(--color-blue-soft);color:var(--color-info-dark)}.btn-copy-json{background:transparent;border:none;cursor:pointer;font-size:var(--font-size-base);padding:.1rem .3rem;opacity:.55;line-height:var(--line-height-none);margin-left:.25rem}.btn-copy-json:hover{opacity:1}.csm-overlay{position:fixed;inset:0;background:#00000073;z-index:10000;display:flex;align-items:center;justify-content:center}.csm-modal{background:var(--color-surface);border-radius:14px;width:480px;max-width:96vw;box-shadow:0 16px 48px #0003;display:flex;flex-direction:column;overflow:hidden}.csm-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:linear-gradient(135deg,var(--color-teal) 0%,var(--color-teal) 100%)}.csm-title{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-surface)}.csm-close{background:#ffffff2e;border:1px solid rgba(255,255,255,.4);border-radius:6px;padding:.3rem .65rem;cursor:pointer;color:var(--color-surface);font-size:var(--font-size-md)}.csm-close:hover{background:#ffffff4d}.csm-body{padding:1.25rem;display:flex;flex-direction:column;gap:1.25rem;overflow-y:auto;max-height:70vh}.csm-field-group{display:flex;flex-direction:column;gap:.5rem}.csm-label{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider)}.csm-size-grid{display:flex;flex-wrap:wrap;gap:.5rem}.csm-size-tile{padding:.45rem .9rem;border:2px solid var(--color-border);border-radius:8px;background:var(--color-surface-sunken);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);transition:all .15s}.csm-size-tile:hover{border-color:var(--color-teal);color:var(--color-teal)}.csm-size-tile.selected{border-color:var(--color-teal);background:var(--color-success-faint);color:var(--color-teal);font-weight:var(--font-weight-bold)}.csm-custom-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.csm-custom-row label{font-size:var(--font-size-base);color:var(--color-text-secondary)}.csm-custom-input{width:80px;padding:.35rem .5rem;border:1px solid var(--color-border-medium);border-radius:6px;font-size:var(--font-size-base)}.csm-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--color-surface-sunken);font-size:var(--font-size-md);color:var(--color-slate-700)}.csm-toggle{position:relative;display:inline-block;width:40px;height:22px;flex-shrink:0}.csm-toggle input{opacity:0;width:0;height:0}.csm-toggle-slider{position:absolute;cursor:pointer;inset:0;background:var(--color-border-strong);border-radius:22px;transition:background .2s}.csm-toggle-slider:before{content:"";position:absolute;height:16px;width:16px;left:3px;bottom:3px;background:var(--color-surface);border-radius:50%;transition:transform .2s}.csm-toggle input:checked+.csm-toggle-slider{background:var(--color-teal)}.csm-toggle input:checked+.csm-toggle-slider:before{transform:translate(18px)}.csm-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:.875rem 1.25rem;border-top:1px solid var(--color-border)}.csm-radio-group{display:flex;flex-direction:column;gap:.5rem}.csm-radio-tile{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:.6rem;align-items:center;padding:.65rem .85rem;border:2px solid var(--color-border);border-radius:10px;background:var(--color-surface-sunken);cursor:pointer;transition:all .15s}.csm-radio-tile input[type=radio]{grid-row:1 / 3;accent-color:var(--color-teal);width:16px;height:16px;cursor:pointer}.csm-radio-tile.selected{border-color:var(--color-teal);background:var(--color-success-faint)}.csm-radio-tile:hover:not(.selected){border-color:var(--color-teal);background:var(--color-success-faint)}.csm-radio-label{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-slate-800)}.csm-radio-desc{grid-column:2;font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:1px}.csm-header-preview{position:relative;border:1px solid var(--color-border);border-radius:8px;overflow:hidden;max-height:100px;display:flex;align-items:center;justify-content:center;background:var(--color-surface-sunken)}.csm-header-preview img{max-width:100%;max-height:100px;object-fit:contain}.csm-remove-header{position:absolute;top:4px;right:4px;background:#0000008c;color:var(--color-surface);border:none;border-radius:4px;padding:.2rem .5rem;font-size:var(--font-size-xs);cursor:pointer}.csm-remove-header:hover{background:#000000bf}.csm-header-placeholder{padding:1rem;text-align:center;font-size:var(--font-size-base);color:var(--color-text-placeholder);border:1px dashed var(--color-border-strong);border-radius:8px;background:var(--color-surface-sunken)}.csm-upload-btn{margin-top:.4rem;padding:.45rem 1rem;border:1px solid var(--color-teal);border-radius:7px;background:var(--color-surface);color:var(--color-teal);font-size:var(--font-size-base);font-family:inherit;cursor:pointer;align-self:flex-start}.csm-upload-btn:hover{background:var(--color-teal);color:var(--color-surface)}.csm-upload-error{font-size:var(--font-size-sm);color:var(--color-danger)}.csm-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:var(--line-height-snug)}.csm-unit{font-size:var(--font-size-base);color:var(--color-text-muted)}.cert-page{display:flex;flex-direction:column;height:100%;background:var(--color-surface-sunken);font-family:inherit}.cert-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:var(--gradient-primary);flex-shrink:0;box-shadow:0 2px 12px #667eea40}.cert-title{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.15)}.cert-version-badge{display:inline-block;margin-left:.5rem;padding:.15rem .5rem;background:#ffffff40;color:#fff;border-radius:9999px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);vertical-align:middle}.cert-close-btn{background:#ffffff26;border:1px solid rgba(255,255,255,.4);border-radius:6px;padding:.4rem .8rem;cursor:pointer;color:#fff;font-size:var(--font-size-base);transition:background .15s}.cert-close-btn:hover{background:#ffffff40}.cert-settings-btn{background:#ffffff26;border:1px solid rgba(255,255,255,.4);border-radius:6px;padding:.35rem .6rem;cursor:pointer;font-size:var(--font-size-lg);transition:background .15s;line-height:var(--line-height-none)}.cert-settings-btn:hover{background:#ffffff40}.cert-body{flex:1;overflow-y:auto;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1.25rem}.cert-error{margin:.5rem 1.5rem 0;padding:.75rem 1rem;background:var(--color-danger-faint);border:2px solid var(--color-red-pale);border-radius:8px;color:var(--color-danger-dark);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);flex-shrink:0}.cert-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:1rem 1.25rem;box-shadow:0 1px 6px #0000000d}.cert-section-title{margin:0 0 .875rem;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-slate-900);letter-spacing:var(--letter-spacing-wide);padding-bottom:.4rem;border-bottom:2px solid var(--color-primary);display:inline-block}.cert-patient-selected{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--color-bg-purple-faint);border:2px solid var(--color-bg-purple-faint);border-radius:10px;box-shadow:0 2px 6px #667eea14}.cert-patient-info{: var(--font-size-md);color:var(--color-slate-800);: var(--font-weight-medium)}.cert-patient-id{color:var(--color-text-muted);: var(--font-size-sm)}.cert-patient-search{position:relative}.cert-suggestions{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:100;background:var(--color-surface);border:2px solid var(--color-border);border-radius:10px;box-shadow:0 8px 24px #0000001f;list-style:none;margin:0;padding:0;max-height:240px;overflow-y:auto}.cert-suggestion-item{padding:.75rem 1rem;cursor:pointer;font-size:var(--font-size-md);border-bottom:1px solid var(--color-surface-sunken);color:var(--color-slate-800);transition:background .15s}.cert-suggestion-item:hover{background:var(--color-bg-purple-faint);color:var(--color-primary-deep)}.cert-suggestion-item:last-child{border-bottom:none}.cert-spinner{: var(--font-size-sm);color:var(--color-text-muted);display:block;margin-top:.25rem}.cert-template-grid{display:flex;flex-wrap:wrap;gap:.5rem}.cert-template-card{padding:.625rem 1rem;background:var(--color-surface-raised);border:2px solid var(--color-border);border-radius:10px;cursor:pointer;text-align:left;transition:all .2s ease;display:flex;flex-direction:column;gap:.2rem;min-width:140px}.cert-template-card:hover{border-color:var(--color-purple-light);background:var(--color-bg-purple-faint);transform:translateY(-1px);box-shadow:0 4px 12px #667eea26}.cert-template-card.selected{border-color:var(--color-primary);background:var(--color-bg-purple-faint);box-shadow:0 4px 12px #667eea33}.cert-template-name{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-slate-800)}.cert-template-specialty{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);color:var(--color-purple-light)}.cert-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem}.cert-field-row{display:flex;flex-direction:column;gap:.25rem}.cert-field-full{grid-column:1 / -1}.cert-field-label{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-slate-900);letter-spacing:var(--letter-spacing-wide)}.cert-required{color:var(--color-danger);margin-left:2px}.cert-field-invalid .cert-field-label{color:var(--color-danger)}.cert-field-invalid .cert-input,.cert-field-invalid .cert-select,.cert-field-invalid .cert-textarea,.cert-field-invalid .input-area-parent{border-color:var(--color-danger);background:var(--color-danger-faint)}.cert-field-invalid .section-label-clickable{color:var(--color-danger)}.cert-input{width:100%;padding:.625rem .875rem;border:2px solid var(--color-border-input);border-radius:8px;font-size:var(--font-size-md);color:var(--color-slate-800);background:var(--color-surface-raised);box-sizing:border-box;font-family:inherit;transition:all .2s ease}.cert-input:hover{border-color:var(--color-border-strong);background:var(--color-surface)}.cert-input:focus{outline:none;border-color:var(--color-primary);background:var(--color-surface);box-shadow:0 0 0 3px #667eea1f}.cert-input::placeholder{color:var(--color-text-placeholder)}.cert-textarea{resize:vertical;min-height:68px;line-height:var(--line-height-relaxed)}.cert-select{cursor:pointer}.cert-preview-box{margin-top:.75rem;padding:1.25rem 1.5rem;background:var(--color-surface);border:2px solid var(--color-border);border-radius:10px;font-size:var(--font-size-base);color:var(--color-slate-800)}.cert-preview-header{display:flex;flex-direction:column;gap:.15rem;font-size:var(--font-size-base);color:var(--color-text-secondary)}.cert-preview-header strong{: var(--font-size-lg);color:var(--color-text-primary)}.cert-preview-divider{border:none;border-top:1px solid var(--color-border);margin:.625rem 0}.cert-preview-type{margin:.25rem 0 .5rem;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-slate-800);text-align:center;text-transform:uppercase;letter-spacing:var(--letter-spacing-wider)}.cert-preview-body{margin:0;line-height:var(--line-height-loose);white-space:pre-wrap}.cert-preview-footer{display:flex;flex-direction:column;align-items:flex-end;gap:.1rem;font-size:var(--font-size-base);color:var(--color-text-secondary)}.cert-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:.875rem 1.5rem;background:var(--color-surface);border-top:1px solid var(--color-border);flex-shrink:0}.cert-simple-list-wrapper{position:relative}.cert-field-suggestions{position:absolute;top:calc(100% + 2px);left:0;right:0;z-index:200;margin:0;padding:0;list-style:none;background:var(--color-surface);border:1px solid var(--color-border-medium);border-radius:8px;box-shadow:0 4px 16px #0000001a;max-height:220px;overflow-y:auto}.cert-btn-primary{padding:.625rem 1.5rem;background:var(--gradient-primary);color:var(--color-surface);border:none;border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .2s ease;letter-spacing:var(--letter-spacing-wide)}.cert-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-shade) 0%,var(--color-primary-deep) 100%);transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.cert-btn-primary:disabled{background:var(--color-text-placeholder);cursor:not-allowed;transform:none;box-shadow:none}.cert-btn-ghost{padding:.5rem 1.25rem;background:#fff;border:2px solid var(--color-border-soft);border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-slate-850);cursor:pointer;transition:all .2s ease}.cert-btn-ghost:hover{background:var(--color-bg-light);border-color:var(--color-primary);color:var(--color-primary-deep);transform:translateY(-1px)}.cert-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.875rem}.cert-patient-mode-toggle{display:flex;gap:.5rem}.cert-mode-btn{padding:.45rem 1rem;background:#fff;border:2px solid var(--color-border-soft);border-radius:8px;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.cert-mode-btn:before{content:"";position:absolute;inset:0;background:var(--gradient-primary);opacity:0;transition:opacity .2s ease}.cert-mode-btn.active{border-color:var(--color-primary);color:#fff;box-shadow:0 4px 12px #667eea4d}.cert-mode-btn.active:before{opacity:1}.cert-mode-btn:not(.active):hover{border-color:var(--color-primary);color:var(--color-primary-deep);transform:translateY(-1px)}.cert-new-patient-form{padding:1rem 1.25rem;background:var(--color-bg-purple-faint);border:2px solid var(--color-bg-purple-faint);border-radius:10px}.cert-new-patient-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.875rem}.cert-new-patient-actions{display:flex;justify-content:flex-end;gap:.75rem}.cert-field-group{display:flex;flex-direction:column;gap:.35rem;min-width:0}.cert-field-group-label{font-weight:var(--font-weight-semibold);color:var(--color-slate-900);font-size:var(--font-size-base);letter-spacing:var(--letter-spacing-wide)}.network-patient-queue-container{padding:1.5rem;max-width:1400px;margin:0 auto;min-height:100vh;background:var(--color-bg-light)}.network-queue-header{background:var(--gradient-primary);padding:1.5rem 2rem;border-radius:12px;box-shadow:0 8px 32px #667eea4d;margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center}.network-queue-header h1{color:#fff;font-size:var(--font-size-4xl);margin:0;flex:1;text-align:center;font-weight:var(--font-weight-bold);text-shadow:0 2px 4px rgba(0,0,0,.1)}.btn-back-home{padding:.6rem 1.2rem;background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.3);border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease}.btn-back-home:hover{background:#ffffff4d;transform:translateY(-1px);box-shadow:0 4px 8px #0003}.queue-actions{display:flex;gap:.75rem;align-items:center}.btn-refresh,.btn-clear-queue{padding:.6rem 1.2rem;background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.3);border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease}.btn-refresh:hover,.btn-clear-queue:hover{background:#ffffff4d;transform:translateY(-1px);box-shadow:0 4px 8px #0003}.btn-refresh:disabled{opacity:.6;cursor:not-allowed}.btn-clear-queue{background:#e74c3ccc;border-color:#e74c3ce6}.btn-clear-queue:hover{background:#e74c3ce6}.queue-info-section{background:#fff;padding:1.25rem 1.5rem;border-radius:12px;box-shadow:0 4px 24px #00000014;margin-bottom:1.5rem}.queue-stats{display:flex;align-items:center;gap:2rem}.stat-card{text-align:center;padding:1rem;background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.082),rgba(var(--color-primary-accent-rgb),.082));border-radius:10px;border:2px solid rgba(102,126,234,.1)}.stat-number{font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin-bottom:.25rem}.stat-label{font-size:var(--font-size-md);color:var(--color-slate-900);font-weight:var(--font-weight-medium)}.queue-description{flex:1}.queue-description p{margin:0 0 .5rem;color:var(--color-text-secondary);font-size:var(--font-size-md)}.queue-description p:last-child{margin-bottom:0}.loading,.no-patients{text-align:center;padding:3rem 2rem;color:var(--color-text-placeholder);font-size:var(--font-size-lg)}.empty-state{display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:400px;margin:0 auto}.empty-icon{font-size:var(--font-size-8xl);opacity:.5;margin-bottom:1rem}.empty-state h3{color:var(--color-slate-900);font-size:var(--font-size-3xl);margin:0}.empty-state p{color:var(--color-text-secondary);margin:.5rem 0}.network-info{color:var(--color-primary)!important;font-weight:var(--font-weight-medium)}.empty-state .empty-icon{animation:rotate 2s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.empty-state button{padding:.75rem 1.5rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease}.empty-state button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.network-patients-table-container{background:#fff;border-radius:12px;box-shadow:0 4px 24px #00000014;overflow:hidden}.network-patients-table{width:100%;border-collapse:collapse;font-size:var(--font-size-md)}.network-patients-table thead{background:var(--gradient-primary)}.network-patients-table th{padding:1rem;color:#fff;font-weight:var(--font-weight-semibold);text-align:left;font-size:var(--font-size-md);text-shadow:0 1px 2px rgba(0,0,0,.1)}.network-patients-table th:last-child{text-align:center}.network-patients-table tbody tr{border-bottom:1px solid var(--color-border-soft);transition:all .2s ease}.network-patients-table tbody tr:hover{background:var(--color-bg-light);transform:scale(1.002)}.network-patients-table tbody tr:last-child{border-bottom:none}.network-patients-table td{padding:1rem;vertical-align:middle;color:var(--color-slate-900)}.patient-name{font-weight:var(--font-weight-semibold);color:var(--color-slate-900);font-size:var(--font-size-lg)}.patient-age,.patient-gender{color:var(--color-text-secondary);font-size:var(--font-size-md)}.admin-name{color:var(--color-green-flat);font-weight:var(--font-weight-medium);font-size:var(--font-size-md)}.received-date{color:var(--color-text-secondary);font-size:var(--font-size-base);font-family:var(--font-family-mono)}.patient-actions{display:flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap}.btn-create-prescription{padding:.5rem 1rem;background:linear-gradient(135deg,var(--color-green-flat) 0%,var(--color-green-flat) 100%);color:#fff;border:none;border-radius:6px;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;flex-shrink:0}.btn-create-prescription:hover{transform:translateY(-1px);box-shadow:0 4px 12px #27ae604d}.btn-remove-patient{padding:.5rem;background:linear-gradient(135deg,var(--color-red-flat) 0%,var(--color-danger-dark) 100%);color:#fff;border:none;border-radius:6px;font-size:var(--font-size-md);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0}.btn-remove-patient:hover{transform:translateY(-1px);box-shadow:0 4px 12px #e74c3c4d}@media(max-width:1200px){.network-patients-table-container{overflow-x:auto}.network-patients-table{min-width:800px}}@media(max-width:768px){.network-patient-queue-container{padding:1rem}.network-queue-header{padding:1rem 1.5rem;flex-direction:column;gap:1rem;text-align:center}.network-queue-header h1{font-size:var(--font-size-3xl)}.queue-actions{justify-content:center}.queue-stats{flex-direction:column;gap:1rem;text-align:center}.network-patients-table th,.network-patients-table td{padding:.75rem .5rem;font-size:var(--font-size-base)}.btn-create-prescription{padding:.4rem .8rem;font-size:var(--font-size-sm)}.btn-remove-patient{padding:.4rem .6rem;min-width:32px}}@media(max-width:480px){.network-patients-table{min-width:600px}.network-patients-table th,.network-patients-table td{padding:.5rem .25rem;font-size:var(--font-size-sm)}.btn-create-prescription{padding:.3rem .6rem;font-size:var(--font-size-xs)}.btn-remove-patient{padding:.3rem .5rem;min-width:28px;font-size:var(--font-size-sm)}}.prescription-set-creator-container{padding:1.5rem;max-width:1400px;margin:0 auto}.orphaned-fields-content{display:flex;flex-direction:column;gap:.6rem}.orphaned-intro{margin:0;font-size:var(--font-size-base);color:var(--color-slate-700);line-height:var(--line-height-relaxed)}.orphaned-fields-scroll{max-height:280px;overflow-y:auto;border:1px solid var(--color-yellow-pale-2);border-radius:8px;background:var(--color-warning-faint);padding:.5rem .75rem;display:flex;flex-direction:column;gap:.6rem}.orphaned-field-item{display:flex;flex-direction:column;gap:.15rem}.orphaned-field-name{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-amber-text-dark)}.orphaned-field-values{margin:.15rem 0 0;padding-left:1.4rem;list-style:disc}.orphaned-field-values li{font-size:var(--font-size-sm);color:var(--color-slate-700);-webkit-user-select:text;user-select:text;line-height:var(--line-height-normal);cursor:text}.orphaned-field-no-values{font-size:var(--font-size-sm);color:var(--color-slate-300);font-style:italic;padding-left:.25rem}.orphaned-footer-note{margin:0;font-size:var(--font-size-sm);color:var(--color-slate-500);font-style:italic}.psc-header{background:var(--gradient-primary);padding:1.5rem 2rem;border-radius:12px;box-shadow:0 8px 32px #667eea4d;margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center}.psc-header h1{color:#fff;font-size:var(--font-size-4xl);margin:0;flex:1;text-align:center;font-weight:var(--font-weight-bold);text-shadow:0 2px 4px rgba(0,0,0,.1)}.btn-back-psc{padding:.6rem 1.2rem;background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.3);border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease}.btn-back-psc:hover{background:#ffffff4d;transform:translateY(-1px);box-shadow:0 4px 8px #0003}.sets-list-container{background:#fff;border-radius:12px;box-shadow:0 4px 24px #00000014;overflow:hidden}.sets-list-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:var(--gradient-primary);border-bottom:2px solid rgba(255,255,255,.2)}.sets-list-header h2{color:#fff;font-size:var(--font-size-3xl);margin:0;font-weight:var(--font-weight-bold)}.btn-create-new-set{padding:.7rem 1.5rem;background:#fff;color:var(--color-primary);border:2px solid white;border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .3s ease}.btn-create-new-set:hover{background:#ffffffe6;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.sets-list{display:flex;flex-direction:column;gap:0;padding:1.5rem}.loading,.no-sets-message{text-align:center;padding:3rem;color:var(--color-text-secondary);font-size:var(--font-size-lg)}.set-item{background:#fff;border-radius:12px;border:2px solid var(--color-border);overflow:hidden;transition:all .3s ease;box-shadow:0 2px 8px #0000000d;margin-bottom:1rem}.set-item:hover{border-color:var(--color-primary);box-shadow:0 6px 16px #667eea33;transform:translateY(-2px)}.set-item-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;cursor:pointer;transition:background .3s ease;border-bottom:1px solid transparent}.set-item-header:hover{background:var(--color-bg-light)}.set-item-info{display:flex;flex-direction:column;gap:.5rem;flex:1}.set-item-name{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-slate-900)}.set-item-details{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}.set-medicines-count{font-size:var(--font-size-md);color:var(--color-primary);font-weight:var(--font-weight-medium)}.set-prescriptions-count{font-size:var(--font-size-md);color:var(--color-green-emerald-bright);font-weight:var(--font-weight-medium)}.set-created-date{font-size:var(--font-size-base);color:var(--color-text-muted);font-weight:var(--font-weight-medium)}.set-item-actions{display:flex;gap:1rem;align-items:center;margin-left:1rem}.btn-edit-set{padding:.6rem 1.2rem;background:var(--color-warning);color:#fff;border:none;border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .3s ease}.btn-edit-set:hover{background:var(--color-warning-dark);transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b4d}.btn-delete-set{padding:.6rem 1.2rem;background:var(--color-red-bright);color:#fff;border:none;border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .3s ease}.btn-delete-set:hover:not(:disabled){background:var(--color-red-bright-dark);transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.btn-delete-set:disabled{opacity:.6;cursor:not-allowed}.expand-icon-psc{font-size:var(--font-size-xl);color:var(--color-primary);font-weight:var(--font-weight-semibold);transition:transform .3s ease}.set-item-content{padding:1.5rem;background:var(--color-surface-sunken);border-top:2px solid var(--color-border)}.set-section{background:#fff;padding:1.25rem;border-radius:8px;border:2px solid var(--color-border);margin-bottom:1rem;transition:all .3s ease}.set-section:last-child{margin-bottom:0}.set-section:hover{border-color:var(--color-border-strong-2);box-shadow:0 2px 8px #0000000d}.set-section h3{color:var(--color-slate-900);font-size:var(--font-size-lg);margin:0 0 1rem;font-weight:var(--font-weight-semibold);padding-bottom:.5rem;border-bottom:2px solid var(--color-border)}.set-section p{color:var(--color-text-secondary);font-size:var(--font-size-md);line-height:var(--line-height-relaxed);margin:0}.set-medicines-list{display:flex;flex-direction:column;gap:.75rem}.set-medicine-item{display:flex;gap:.75rem;padding:1rem;background:var(--color-surface-sunken);border-radius:8px;border:2px solid var(--color-border);font-size:var(--font-size-md);transition:all .3s ease}.set-medicine-item:hover{background:var(--color-bg-cool-2);border-color:var(--color-border-strong-2);transform:translateY(-1px);box-shadow:0 2px 8px #0000000d}.medicine-number-psc{font-weight:var(--font-weight-semibold);color:var(--color-primary);min-width:24px;font-size:var(--font-size-lg)}.medicine-info-psc{flex:1}.medicine-name-psc{font-weight:var(--font-weight-semibold);color:var(--color-slate-900);margin-bottom:.4rem;font-size:var(--font-size-lg)}.medicine-instructions-psc{font-size:var(--font-size-md);color:var(--color-text-muted);line-height:var(--line-height-normal)}.set-prescriptions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.set-prescriptions-list li{padding:.75rem .75rem .75rem 2rem;position:relative;color:var(--color-slate-900);font-size:var(--font-size-md);background:var(--color-surface-sunken);border-radius:6px;border:2px solid var(--color-border);transition:all .3s ease}.set-prescriptions-list li:hover{background:var(--color-bg-cool-2);border-color:var(--color-border-strong-2);transform:translateY(-1px)}.set-prescriptions-list li:before{content:"•";position:absolute;left:.75rem;color:var(--color-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-xl)}.form-container-psc{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 24px #00000014}.form-header-psc{margin-bottom:1.25rem}.form-header-psc h2{color:var(--color-slate-900);font-size:var(--font-size-3xl);margin:0 0 .5rem}.form-group-prescription-set-name{display:flex;flex-direction:row;justify-items:flex-start;margin:0 4rem}.form-header-psc p{color:var(--color-text-secondary);font-size:var(--font-size-md);margin:0}.form-group-psc{margin-bottom:1.25rem}.form-group-psc label{display:block;color:var(--color-slate-900);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);margin-bottom:.5rem}.form-group-psc input{width:100%;padding:.5rem .75rem;border:2px solid var(--color-border);border-radius:6px;font-size:var(--font-size-md);transition:all .3s ease;font-family:inherit}.form-group-psc input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.form-section-psc{margin-bottom:1.5rem}.section-header-psc{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--color-border-soft)}.section-header-psc h3{color:var(--color-slate-900);font-size:var(--font-size-xl);margin:0}.btn-add-medicine-psc,.btn-add-prescription-psc{padding:.5rem 1rem;background:var(--color-green-emerald-bright);color:#fff;border:none;border-radius:6px;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease}.btn-add-medicine-psc:hover,.btn-add-prescription-psc:hover{background:var(--color-green-emerald);transform:translateY(-1px);box-shadow:0 4px 8px #10b9814d}.medicines-input-list,.prescriptions-input-list{display:flex;flex-direction:column;gap:.75rem}.medicine-input-row{display:flex;gap:.75rem;align-items:flex-start}.medicine-input-row input{flex:1;padding:.5rem .75rem;border:2px solid var(--color-border);border-radius:6px;font-size:var(--font-size-md);transition:all .3s ease;font-family:inherit}.medicine-input-row input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.medicine-input-row input:first-child{flex:2}.medicine-input-row input:last-of-type{flex:3}.btn-remove-medicine,.btn-remove-prescription{padding:.6rem .75rem;background:var(--color-red-bright);color:#fff;border:none;border-radius:6px;font-size:var(--font-size-base);font-weight:var(--font-weight-normal);cursor:pointer;transition:background .2s ease}.btn-remove-medicine:hover,.btn-remove-prescription:hover{background:var(--color-red-bright-dark)}.prescription-input-row{display:flex;gap:.75rem;align-items:center}.prescription-input-row input{flex:1;padding:.5rem .75rem;border:2px solid var(--color-border);border-radius:6px;font-size:var(--font-size-md);transition:all .3s ease;font-family:inherit}.prescription-input-row input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.empty-medicines-message,.empty-prescriptions-message{text-align:center;padding:1.5rem;color:var(--color-text-placeholder);font-size:var(--font-size-md);background:var(--color-bg-light);border-radius:6px}.form-actions-psc{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border-soft)}.btn-save-set{padding:.7rem 1.5rem;background:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:background .2s ease}.btn-save-set:hover:not(:disabled){background:var(--color-primary-shade)}.btn-save-set:disabled{opacity:.6;cursor:not-allowed}.btn-cancel-psc{padding:.7rem 1.5rem;background:var(--color-bg-neutral);color:var(--color-text-secondary);border:1px solid var(--color-border-soft);border-radius:8px;font-size:var(--font-size-md);font-weight:var(--font-weight-normal);cursor:pointer;transition:background .2s ease}.btn-cancel-psc:hover{background:var(--color-border-soft)}.error-message-psc,.success-message-psc{padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;font-size:var(--font-size-md)}.error-message-psc{background:#ef44441a;color:var(--color-red-bright-dark);border:1px solid rgba(239,68,68,.2)}.success-message-psc{background:#10b9811a;color:var(--color-green-emerald);border:1px solid rgba(16,185,129,.2)}@media(max-width:768px){.prescription-set-creator-container{padding:1rem}.psc-header h1{font-size:var(--font-size-3xl)}.sets-list-header{flex-direction:column;gap:.75rem;align-items:stretch}.btn-create-new-set{width:100%}.set-item-header{flex-direction:column;align-items:flex-start;gap:.75rem}.set-item-actions{width:100%;margin-left:0;justify-content:space-between}.set-item-details{flex-wrap:wrap;gap:.5rem}.medicine-input-row,.form-actions-psc{flex-direction:column}.form-actions-psc button{width:100%}}.set-item-name-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.set-specialty-badge{display:inline-block;padding:.15rem .55rem;border-radius:12px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);background:var(--color-primary-tint);color:var(--color-primary-deep);border:1px solid var(--color-primary-tint);white-space:nowrap;letter-spacing:var(--letter-spacing-wide)}.set-specialty-badge--mismatch{background:var(--color-yellow-pale);color:var(--color-amber-text-dark);border-color:var(--color-yellow-pale-2)}.set-specialty-mismatch-note{margin:.2rem 0 0;font-size:var(--font-size-sm);color:var(--color-amber-text-dark);line-height:var(--line-height-snug)}.btn-edit-set:disabled{opacity:.45;cursor:not-allowed;transform:none!important;box-shadow:none!important}.edit-form-legacy-panel{margin:0 0 1.25rem;border:1.5px solid var(--color-warning);border-radius:10px;background:var(--color-warning-faint);overflow:hidden}.edit-form-legacy-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--color-yellow-pale);border:none;cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-amber-text-dark);text-align:left;gap:1rem}.edit-form-legacy-toggle:hover{background:var(--color-yellow-pale)}.edit-form-legacy-body{padding:.75rem 1rem 1rem;border-top:1px solid var(--color-yellow-pale-2)}.edit-form-legacy-hint{margin:0 0 .75rem;font-size:var(--font-size-sm);color:var(--color-amber-text-dark);line-height:var(--line-height-relaxed)}.edit-form-legacy-fields{display:flex;flex-direction:column;gap:.6rem}.edit-form-legacy-field{padding:.5rem .75rem;background:#fff;border:1px solid var(--color-yellow-pale-2);border-radius:6px}.edit-form-legacy-field-name{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-amber-text-dark);margin-bottom:.2rem}.edit-form-legacy-field-values{margin:.15rem 0 0;padding-left:1.4rem;list-style:disc}.edit-form-legacy-field-values li{font-size:var(--font-size-sm);color:var(--color-slate-700);-webkit-user-select:text;user-select:text;cursor:text;line-height:var(--line-height-normal)}.edit-form-legacy-no-values{font-size:var(--font-size-sm);color:var(--color-slate-300);font-style:italic}.set-legacy-data-panel{margin:.75rem 0 0;padding:.75rem 1rem;background:var(--color-yellow-pale);border:1px solid var(--color-warning);border-radius:6px;font-size:var(--font-size-base);color:var(--color-amber-text-dark)}.set-legacy-data-header{font-weight:var(--font-weight-semibold);margin-bottom:.25rem;color:var(--color-amber-text-dark)}.set-legacy-data-hint{margin:0 0 .5rem;color:var(--color-amber-deep);font-size:var(--font-size-sm)}.set-legacy-data-list{margin:0;padding-left:1.25rem}.set-legacy-data-list li{margin:.15rem 0}:root{--color-primary: #667eea;--color-primary-dark: #5a67d8;--color-primary-deeper: #4c51bf;--color-primary-accent: #764ba2;--color-primary-faint: #f5f3ff;--color-primary-tint: #ebf4ff;--color-primary-ring: rgba(102, 126, 234, .12);--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-primary-hover: linear-gradient(135deg, #5a67d8 0%, #6b4397 100%);--color-success: #48bb78;--color-success-dark: #38a169;--color-success-faint: #f0fff4;--color-warning: #f59e0b;--color-warning-dark: #d97706;--color-warning-faint: #fffbeb;--color-danger: #e53e3e;--color-danger-dark: #c53030;--color-danger-faint: #fff5f5;--color-info: #3b82f6;--color-info-dark: #2563eb;--color-info-faint: #eff6ff;--color-text-primary: #1a202c;--color-text-secondary: #4a5568;--color-text-muted: #718096;--color-text-placeholder: #a0aec0;--color-text-inverse: #ffffff;--color-surface: #ffffff;--color-surface-raised: #fafafa;--color-surface-sunken: #f7fafc;--color-bg: #f6f6f6;--color-border: #e2e8f0;--color-border-strong: #cbd5e0;--color-border-input: #e8e8e8;--color-hover: #f0f0f0;--color-overlay: rgba(0, 0, 0, .5);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-base: 0 2px 8px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .12);--shadow-modal: 0 16px 48px rgba(0, 0, 0, .28);--shadow-primary: 0 4px 12px rgba(102, 126, 234, .35);--radius-xs: 4px;--radius-sm: 6px;--radius-base: 8px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 14px;--radius-pill: 9999px;--radius-full: 50%;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--font-family: Inter, Avenir, Helvetica, Arial, sans-serif;--font-family-mono: "JetBrains Mono", "Fira Mono", "Consolas", "Courier New", monospace;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-base: .875rem;--font-size-md: .9375rem;--font-size-lg: 1rem;--font-size-xl: 1.125rem;--font-size-2xl: 1.25rem;--font-size-3xl: 1.5rem;--font-size-4xl: 1.75rem;--font-size-5xl: 2rem;--font-size-6xl: 2.5rem;--font-size-7xl: 3rem;--font-size-8xl: 4rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-none: 1;--line-height-tight: 1.25;--line-height-snug: 1.4;--line-height-normal: 1.5;--line-height-relaxed: 1.6;--line-height-loose: 1.7;--letter-spacing-tight: -.02em;--letter-spacing-normal: 0;--letter-spacing-wide: .02em;--letter-spacing-wider: .05em;--letter-spacing-widest: .1em;--color-status-paid: #48bb78;--color-status-paid-faint:#f0fff4;--color-status-pending: #667eea;--color-status-pending-faint: #f5f3ff;--color-status-overdue: #e53e3e;--color-status-overdue-faint: #fff5f5;--color-status-draft: #a0aec0;--color-status-draft-faint: #f7fafc;--transition-fast: .12s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--z-dropdown: 100;--z-sticky: 200;--z-modal: 500;--z-dialog: 99999}.app-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.55rem 1.2rem;border:none;border-radius:var(--radius-base);font-family:var(--font-family);font-size:var(--font-size-base);font-weight:600;line-height:1.4;white-space:nowrap;cursor:pointer;transition:opacity var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-base);-webkit-user-select:none;user-select:none}.app-btn:disabled,.app-btn[disabled]{opacity:.45;cursor:not-allowed;pointer-events:none}.app-btn:active:not(:disabled){transform:scale(.97)}.app-btn:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.app-btn--primary{background:var(--gradient-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-primary)}.app-btn--primary:hover:not(:disabled){background:var(--gradient-primary-hover);box-shadow:0 6px 18px #667eea73;transform:translateY(-1px)}.app-btn--secondary{background:var(--color-surface);color:var(--color-primary);border:2px solid var(--color-primary)}.app-btn--secondary:hover:not(:disabled){background:var(--color-primary-tint)}.app-btn--danger{background:var(--color-danger);color:var(--color-text-inverse)}.app-btn--danger:hover:not(:disabled){background:var(--color-danger-dark);box-shadow:0 4px 12px #e53e3e59;transform:translateY(-1px)}.app-btn--ghost{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.app-btn--ghost:hover:not(:disabled){background:var(--color-hover);color:var(--color-text-primary)}.app-btn--success{background:var(--color-success);color:var(--color-text-inverse)}.app-btn--success:hover:not(:disabled){background:var(--color-success-dark);transform:translateY(-1px)}.app-btn--warning{background:var(--color-warning);color:var(--color-text-inverse)}.app-btn--warning:hover:not(:disabled){background:var(--color-warning-dark);transform:translateY(-1px)}.app-btn--info{background:var(--color-info);color:var(--color-text-inverse)}.app-btn--info:hover:not(:disabled){background:var(--color-info-dark);transform:translateY(-1px)}.app-btn--sm{padding:.3rem .75rem;font-size:var(--font-size-sm);border-radius:var(--radius-sm)}.app-btn--lg{padding:.75rem 2rem;font-size:var(--font-size-lg);border-radius:var(--radius-base)}.app-btn--icon{padding:.45rem;width:2.25rem;height:2.25rem;border-radius:var(--radius-base)}.app-input,.app-select{width:100%;padding:.5rem .7rem;font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-surface-raised);border:2px solid var(--color-border-input);border-radius:var(--radius-md);outline:none;box-sizing:border-box;transition:border-color var(--transition-base),box-shadow var(--transition-base),background var(--transition-base)}.app-input::placeholder{color:var(--color-text-placeholder)}.app-input:hover,.app-select:hover{border-color:var(--color-border-strong);background:var(--color-surface)}.app-input:focus,.app-select:focus{border-color:var(--color-primary);background:var(--color-surface);box-shadow:0 0 0 4px var(--color-primary-ring)}.app-input--filled,.app-select--filled{border-color:var(--color-primary);background:var(--color-primary-faint)}.app-select{cursor:pointer;appearance:none;padding-right:1.75rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .55rem center}.app-input--error,.app-select--error{border-color:var(--color-danger)}.app-input--error:focus,.app-select--error:focus{box-shadow:0 0 0 4px #e53e3e1f}.app-input--textarea{resize:vertical;min-height:80px;line-height:1.5}.app-field{display:flex;flex-direction:column;gap:var(--space-1)}.app-field-label{font-size:var(--font-size-xs);font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.app-field-error{font-size:var(--font-size-sm);color:var(--color-danger);margin-top:2px}.app-field-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:2px}.app-choice-item{display:inline-flex;align-items:center;gap:var(--space-2);padding:.4rem .85rem;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:var(--font-size-base);color:var(--color-text-secondary);transition:border-color var(--transition-base),background var(--transition-base)}.app-choice-item:hover{border-color:var(--color-primary);background:var(--color-surface-sunken)}.app-choice-item--selected{border-color:var(--color-primary);background:var(--color-primary-tint);color:var(--color-primary-dark)}.app-choice-item:focus-within{outline:3px solid var(--color-primary);outline-offset:2px;border-color:var(--color-primary)}.app-choice-item input[type=radio],.app-choice-item input[type=checkbox]{accent-color:var(--color-primary);width:16px;height:16px;cursor:pointer;flex-shrink:0}.app-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-6);box-shadow:var(--shadow-sm)}.app-card--raised{box-shadow:var(--shadow-md)}.app-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.app-section-title{font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.app-divider{border:none;border-top:1px solid var(--color-border);margin:var(--space-4) 0}.app-modal-overlay{position:fixed;inset:0;z-index:var(--z-modal);background:var(--color-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.app-modal-box{background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-modal);width:100%;max-width:540px;display:flex;flex-direction:column;overflow:hidden;animation:app-modal-appear .18s ease}@keyframes app-modal-appear{0%{opacity:0;transform:scale(.93) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.app-modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);background:var(--gradient-primary);color:var(--color-text-inverse);border-radius:var(--radius-xl) var(--radius-xl) 0 0}.app-modal-title{font-size:var(--font-size-xl);font-weight:700;margin:0}.app-modal-close{background:#fff3;border:none;border-radius:var(--radius-full);width:1.75rem;height:1.75rem;display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;color:var(--color-text-inverse);cursor:pointer;transition:background var(--transition-fast)}.app-modal-close:hover{background:#ffffff59}.app-modal-body{padding:var(--space-5) var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);overflow-y:auto;max-height:70vh}.app-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);background:var(--color-surface-raised)}.app-modal-box--sm{max-width:360px}.app-modal-box--md{max-width:540px}.app-modal-box--lg{max-width:820px}.app-modal-box--xl{max-width:1100px}.app-badge{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:700;line-height:1.4}.app-badge--primary{background:var(--color-primary-tint);color:var(--color-primary-dark)}.app-badge--danger{background:var(--color-danger-faint);color:var(--color-danger-dark)}.app-badge--success{background:var(--color-success-faint);color:var(--color-success-dark)}.app-badge--warning{background:var(--color-warning-faint);color:var(--color-warning-dark)}.app-badge--neutral{background:var(--color-surface-sunken);color:var(--color-text-secondary)}.app-table{width:100%;border-collapse:collapse;font-size:var(--font-size-base)}.app-table th{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);background:var(--color-surface-raised);border-bottom:2px solid var(--color-border);text-align:left}.app-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);color:var(--color-text-primary);vertical-align:middle}.app-table tr:hover td{background:var(--color-surface-sunken)}.app-table th.is-number{text-align:right}.app-table td.is-number{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-family-mono);font-size:var(--font-size-sm);letter-spacing:.01em}.app-table tr.is-total td{font-weight:700;border-top:2px solid var(--color-border-strong);background:var(--color-surface-raised)}.app-flex{display:flex;gap:var(--space-4);align-items:center}.app-flex-between{display:flex;justify-content:space-between;align-items:center}.app-flex-end{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-3)}.app-flex-wrap{display:flex;flex-wrap:wrap;gap:var(--space-3)}.app-stack{display:flex;flex-direction:column;gap:var(--space-4)}.app-stack--sm{display:flex;flex-direction:column;gap:var(--space-2)}.app-stack--lg{display:flex;flex-direction:column;gap:var(--space-6)}.app-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.app-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-4)}.app-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}.app-col-span-2{grid-column:span 2}.app-col-span-3{grid-column:span 3}.app-text-right{text-align:right}.app-text-center{text-align:center}.app-text-left{text-align:left}.app-text-muted{color:var(--color-text-muted)}.app-text-danger{color:var(--color-danger)}.app-text-success{color:var(--color-success-dark)}.app-weight-bold{font-weight:700}.app-weight-medium{font-weight:500}.app-mono{font-family:var(--font-family-mono);font-variant-numeric:tabular-nums;font-size:.85em;letter-spacing:.01em}.app-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-12) var(--space-8);color:var(--color-text-muted);background:var(--color-surface-sunken);border:1px dashed var(--color-border);border-radius:var(--radius-lg);text-align:center}.app-empty-state-icon{font-size:2.5rem;line-height:1;opacity:.5}.app-empty-state-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-secondary);margin:0}.app-empty-state-desc{font-size:var(--font-size-base);color:var(--color-text-muted);margin:0;max-width:320px}.app-toast-container{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:var(--z-dialog);display:flex;flex-direction:column;gap:var(--space-3);pointer-events:none}.app-toast{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-text-primary);color:var(--color-text-inverse);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);font-size:var(--font-size-base);min-width:240px;max-width:380px;pointer-events:all;animation:app-toast-in .22s ease}@keyframes app-toast-in{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.app-toast--success{background:var(--color-success-dark)}.app-toast--danger{background:var(--color-danger-dark)}.app-toast--warning{background:var(--color-warning-dark);color:var(--color-text-primary)}.app-toast--info{background:var(--color-info-dark)}.app-toast-icon{font-size:1.1rem;flex-shrink:0;line-height:1.4}.app-toast-body{display:flex;flex-direction:column;gap:2px}.app-toast-title{font-weight:700;font-size:var(--font-size-base)}.app-toast-desc{font-size:var(--font-size-sm);opacity:.85}.app-toast-close{margin-left:auto;flex-shrink:0;background:#ffffff26;border:none;border-radius:var(--radius-xs);color:inherit;cursor:pointer;padding:2px 6px;font-size:1rem;line-height:1;transition:background var(--transition-fast)}.app-toast-close:hover{background:#ffffff47}*{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-text-placeholder);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}*{scrollbar-color:var(--color-text-placeholder) transparent}.app-spinner{display:inline-block;width:1.25rem;height:1.25rem;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:var(--radius-full);animation:app-spinner-rotate .7s linear infinite;vertical-align:middle}.app-spinner--sm{width:.85rem;height:.85rem;border-width:2px}.app-spinner--lg{width:2rem;height:2rem;border-width:3px}.app-spinner--inverse{border-color:#ffffff59;border-top-color:var(--color-text-inverse)}@keyframes app-spinner-rotate{to{transform:rotate(360deg)}}.app-tooltip{position:relative}.app-tooltip:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(2px);padding:4px 8px;background:var(--color-text-primary);color:var(--color-text-inverse);font-size:var(--font-size-xs);font-weight:600;white-space:nowrap;border-radius:var(--radius-sm);box-shadow:var(--shadow-md);pointer-events:none;opacity:0;transition:opacity var(--transition-fast),transform var(--transition-fast);z-index:var(--z-sticky)}.app-tooltip:hover:after,.app-tooltip:focus-visible:after{opacity:1;transform:translate(-50%) translateY(0)}.app-tooltip[data-tooltip-pos=bottom]:after{bottom:auto;top:calc(100% + 6px);transform:translate(-50%) translateY(-2px)}.app-tooltip[data-tooltip-pos=bottom]:hover:after,.app-tooltip[data-tooltip-pos=bottom]:focus-visible:after{transform:translate(-50%) translateY(0)}.app-tooltip[data-tooltip-pos=right]:after{bottom:auto;top:50%;left:calc(100% + 6px);transform:translateY(-50%) translate(-2px)}.app-tooltip[data-tooltip-pos=right]:hover:after,.app-tooltip[data-tooltip-pos=right]:focus-visible:after{transform:translateY(-50%) translate(0)}.app-tooltip[data-tooltip-pos=left]:after{bottom:auto;top:50%;left:auto;right:calc(100% + 6px);transform:translateY(-50%) translate(2px)}.app-tooltip[data-tooltip-pos=left]:hover:after,.app-tooltip[data-tooltip-pos=left]:focus-visible:after{transform:translateY(-50%) translate(0)}.app-focus-ring:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.app-status{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;line-height:1.4}.app-status--paid{background:var(--color-status-paid-faint);color:var(--color-status-paid)}.app-status--pending{background:var(--color-status-pending-faint);color:var(--color-status-pending)}.app-status--overdue{background:var(--color-status-overdue-faint);color:var(--color-status-overdue)}.app-status--draft{background:var(--color-status-draft-faint);color:var(--color-status-draft)}:root{--color-slate-900: #2c3e50;--color-slate-800: #2d3748;--color-slate-700: #374151;--color-slate-600: #495057;--color-slate-500: #6b7280;--color-slate-450: #6c757d;--color-slate-400: #7f8c8d;--color-slate-350: #95a5a6;--color-slate-300: #9ca3af;--color-border-soft: #e0e0e0;--color-border-soft-2: #e5e7eb;--color-border-medium: #d1d5db;--color-border-bootstrap: #dee2e6;--color-border-bootstrap-2: #e9ecef;--color-bg-light: #f8f9fa;--color-bg-cool: #f3f4f6;--color-bg-cool-2: #edf2f7;--color-bg-neutral: #f5f5f5;--color-bg-purple-faint: #faf5ff;--color-bg-blue-faint: #f0f4ff;--color-primary-shade: #5568d3;--color-primary-deep: #553c9a;--color-red-flat: #e74c3c;--color-green-material: #4caf50;--color-green-bootstrap: #28a745;--color-blue-flat: #3498db;--color-blue-soft: #4a90e2;--color-teal: #38b2ac;--color-amber-deep: #856404;--color-primary-rgb: 102, 126, 234;--color-primary-accent-rgb: 118, 75, 162;--color-green-flat: #27ae60;--color-green-emerald: #059669;--color-green-emerald-bright:#10b981;--color-green-dark: #276749;--color-blue-deep: #2980b9;--color-blue-deep-2: #1d4ed8;--color-blue-medium: #4f83cc;--color-blue-material: #2196f3;--color-blue-pale: #e3f2fd;--color-blue-bold: #396cd8;--color-cyan-bootstrap: #17a2b8;--color-red-bright: #ef4444;--color-red-bright-dark: #dc2626;--color-red-pale: #fed7d7;--color-amber-text-dark: #92400e;--color-yellow-bootstrap: #ffc107;--color-yellow-pale: #fff3cd;--color-yellow-pale-2: #fde68a;--color-purple-light: #9f7aea;--color-slate-850: #34495e;--color-slate-blue: #b0bec5;--color-border-strong-2: #cbd5e1;--color-border-cool: #e1e8ed;--color-border-pale: #e2e6ea;--color-trial-red: #ff6b6b;--color-trial-red-dark: #ee5a24;--gradient-trial-warning: linear-gradient(135deg, #ff6b6b 0%, #ee5a24 100%);--color-whatsapp: #25D366;--color-whatsapp-dark: #128C7E;--color-success-rgb: 72, 187, 120;--color-danger-rgb: 229, 62, 62;--color-warning-rgb: 245, 158, 11;--color-info-rgb: 59, 130, 246}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;color:#2d3748;background:#f7f8fc;-webkit-font-smoothing:antialiased}.web-app-root{display:flex;flex-direction:column;min-height:100vh}.web-app-main{flex:1;padding:1.5rem;max-width:1280px;margin:0 auto;width:100%}.web-navbar{position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:1rem;padding:0 1.5rem;height:56px;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000f}.web-navbar-brand{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1rem;color:#2d3748;flex-shrink:0}.web-navbar-icon{font-size:1.25rem}.web-navbar-links{display:flex;gap:.25rem;flex:1}.web-nav-btn{padding:.375rem .875rem;border:none;border-radius:6px;background:transparent;color:#4a5568;font-size:.875rem;cursor:pointer;transition:background .15s,color .15s}.web-nav-btn:hover{background:#edf2f7;color:#2d3748}.web-nav-btn.active{background:#ebf4ff;color:#667eea;font-weight:600}.web-navbar-right{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.web-storage-badge{font-size:.75rem;color:#718096;background:#f7fafc;border:1px solid #e2e8f0;border-radius:20px;padding:.2rem .6rem;white-space:nowrap}.web-saving-badge{font-size:.75rem;color:#667eea;animation:pulse 1.5s ease-in-out infinite}.web-save-error{font-size:.75rem;color:#e53e3e;cursor:help}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.web-user-info{display:flex;align-items:center;gap:.5rem}.web-user-email{font-size:.8rem;color:#4a5568;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.web-btn-signout{padding:.3rem .7rem;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#e53e3e;font-size:.8rem;cursor:pointer;transition:background .15s}.web-btn-signout:hover{background:#fff5f5}.web-btn-signin{padding:.35rem .875rem;border:1px solid #667eea;border-radius:6px;background:#ebf4ff;color:#667eea;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.web-btn-signin:hover{background:#c3dafe}.home-dashboard{max-width:960px;margin:0 auto}.home-doctor-banner{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:1.5rem;box-shadow:0 1px 4px #0000000d}.home-doctor-avatar{font-size:2.5rem;flex-shrink:0}.home-doctor-info{flex:1;min-width:0}.home-doctor-name{margin:0 0 .2rem;font-size:1.2rem;font-weight:700;color:#1a202c}.home-doctor-meta{margin:0;font-size:.875rem;color:#4a5568;line-height:1.5}.home-locked-badge{flex-shrink:0;padding:.3rem .75rem;background:#fff5f5;border:1px solid #fed7d7;border-radius:20px;font-size:.8rem;font-weight:600;color:#c53030}.home-unlock-hint{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 1.25rem;padding:.75rem 1rem;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;font-size:.875rem;color:#92400e}.home-unlock-hint-text{flex:1 1 240px}.home-unlock-cta{flex:0 0 auto;padding:.5rem 1rem;background:#d97706;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;font-size:.875rem}.home-unlock-cta:hover{background:#b45309}.home-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.home-action-card-wrap{position:relative}.home-action-card-wrap>.home-action-card{width:100%}.home-card-caret{font-size:.85em;margin-left:.15rem;color:#64748b}.home-action-card--open{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb33}.home-card-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 8px 24px #0f172a1f;padding:.35rem;display:flex;flex-direction:column;gap:.25rem}.home-card-dropdown-item{display:flex;align-items:center;gap:.5rem;padding:.55rem .75rem;background:transparent;border:none;border-radius:6px;text-align:left;cursor:pointer;font-size:.9rem;color:#1f2937}.home-card-dropdown-item:hover{background:#eff6ff;color:#1d4ed8}.home-card-dropdown-icon{font-size:1.1em}.home-action-card{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;padding:1.25rem 1rem;background:#fff;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s,transform .1s;box-shadow:0 1px 3px #0000000d}.home-action-card:hover:not(:disabled){border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-1px)}.home-action-card:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 3px #0000000d}.home-action-card--disabled{opacity:.45;cursor:not-allowed}.home-card-icon{font-size:1.75rem;line-height:1;margin-bottom:.25rem}.home-card-label{font-size:.95rem;font-weight:600;color:#2d3748}.home-card-desc{font-size:.78rem;color:#718096;line-height:1.4}.home-footer{text-align:center;font-size:.8rem;color:#a0aec0;padding:1rem 0 .5rem}.home-footer a{color:#667eea;text-decoration:none}.home-footer a:hover{text-decoration:underline}
