body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}.topic-buttons-scroll{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.topic-buttons-scroll::-webkit-scrollbar{display:none}.App-logo{height:40vmin;pointer-events:none}@media(prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin infinite 20s linear}}.App-header{background-color:#282c34;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(10px + 2vmin);color:#fff}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes loading{0%{transform:translate(-30%)}50%{transform:translate(50%)}to{transform:translate(130%)}}.sign-in-section{margin:auto;max-width:fit-content}.google-sign-in-button{display:flex;align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:4px;padding:10px 20px;font-size:16px;cursor:pointer;transition:background-color .3s}.google-sign-in-button img{width:20px;height:20px;margin-right:10px}.google-sign-in-button:hover{background-color:#f1f1f1}.prf-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:prfFadeIn .2s ease-in-out}.prf-modal{position:relative;background-color:#2b2b2b;border-radius:12px;width:90%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0006;animation:prfSlideIn .3s ease-out}.prf-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border:none;background:transparent;color:#a0a0a0;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease;z-index:1}.prf-close:hover{background-color:#3d3d3d;color:#fff}.prf-close:disabled{opacity:.5;cursor:not-allowed}.prf-header{padding:24px 24px 16px;border-bottom:1px solid #3d3d3d}.prf-header h2{margin:0;font-size:20px;font-weight:600;color:#fff;text-align:left}.prf-clinic-name{margin:8px 0 0;font-size:14px;color:#a0a0a0;text-align:left}.prf-quota{padding:16px 24px;border-bottom:1px solid #3d3d3d}.prf-quota-warning{margin-top:12px;padding:10px 12px;background-color:#ff980026;border:1px solid rgba(255,152,0,.3);border-radius:6px;font-size:13px;color:#ffb74d;text-align:left}.prf-error{margin:16px 24px 0;padding:12px;background-color:#f4433626;border:1px solid rgba(244,67,54,.3);border-radius:6px;color:#ef5350;font-size:14px;text-align:left}.prf-form{padding:24px}.prf-field{margin-bottom:16px}.prf-field.prf-required label:after{content:" *";color:#ef5350}.prf-field label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#e0e0e0;text-align:left}.prf-field input,.prf-field select{width:100%;padding:10px 12px;font-size:14px;background-color:#1a1a1a;border:1px solid #4a4a4a;border-radius:6px;color:#fff;transition:border-color .2s ease;box-sizing:border-box;text-align:left}.prf-field input:focus,.prf-field select:focus{outline:none;border-color:#a8b9ff}.prf-field input::placeholder{color:#666}.prf-field input:disabled,.prf-field select:disabled{opacity:.6;cursor:not-allowed}.prf-row{display:flex;gap:16px}.prf-row .prf-field{flex:1}.prf-dob-toggle,.prf-unit-toggle{display:flex;margin-bottom:8px;background-color:#1a1a1a;border-radius:6px;padding:4px}.prf-dob-toggle button,.prf-unit-toggle button{flex:1;padding:8px 12px;font-size:13px;font-weight:500;border:none;background:transparent;color:#a0a0a0;cursor:pointer;border-radius:4px;transition:all .2s ease}.prf-dob-toggle button.active,.prf-unit-toggle button.active{background-color:#3d3d3d;color:#fff}.prf-dob-toggle button:hover:not(.active),.prf-unit-toggle button:hover:not(.active){background-color:#2b2b2b}.prf-dob-toggle button:disabled,.prf-unit-toggle button:disabled{opacity:.5;cursor:not-allowed}.prf-section{margin-top:20px;padding-top:16px;border-top:1px solid #3d3d3d}.prf-section-title{margin:0 0 16px;font-size:14px;font-weight:600;color:#a8b9ff;text-transform:uppercase;letter-spacing:.5px;text-align:left}.prf-deficits-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.prf-deficit-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background-color:#1a1a1a;border:1px solid #3d3d3d;border-radius:6px;cursor:pointer;font-size:13px;color:#e0e0e0;transition:all .2s ease}.prf-deficit-item:hover{border-color:#4a4a4a;background-color:#252525}.prf-deficit-item input[type=checkbox]{width:16px;height:16px;accent-color:#a8b9ff;cursor:pointer}.prf-deficit-item input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.prf-deficit-item input[type=checkbox]:disabled+span{opacity:.5}.prf-multiselect-dropdown{display:flex;flex-direction:column;gap:8px}.prf-multiselect-chips{display:flex;flex-wrap:wrap;gap:6px}.prf-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background-color:#a8b9ff26;border:1px solid #a8b9ff;border-radius:16px;font-size:13px;color:#e0e0e0;line-height:1}.prf-chip-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;background:#ffffff1a;color:#a0a0a0;border-radius:50%;font-size:14px;line-height:1;cursor:pointer;transition:all .2s ease}.prf-chip-remove:hover:not(:disabled){background:#fff3;color:#fff}.prf-chip-remove:disabled{opacity:.5;cursor:not-allowed}.prf-multiselect-add{width:100%;padding:10px 12px;font-size:14px;background-color:#1a1a1a;border:1px solid #4a4a4a;border-radius:6px;color:#fff;transition:border-color .2s ease;box-sizing:border-box;text-align:left;cursor:pointer}.prf-multiselect-add:focus{outline:none;border-color:#a8b9ff}.prf-multiselect-add:disabled{opacity:.6;cursor:not-allowed}.prf-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:16px;border-top:1px solid #3d3d3d}.prf-btn-cancel,.prf-btn-submit{padding:12px 24px;font-size:14px;font-weight:500;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease}.prf-btn-cancel{background-color:#4a5568;color:#fff}.prf-btn-cancel:hover:not(:disabled){background-color:#5a6578}.prf-btn-submit{background-color:#a8b9ff;color:#1a1a1a}.prf-btn-submit:hover:not(:disabled){background-color:#94a8ff}.prf-btn-submit:disabled,.prf-btn-cancel:disabled{opacity:.6;cursor:not-allowed}@keyframes prfFadeIn{0%{opacity:0}to{opacity:1}}@keyframes prfSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.admin-panel-overlay{position:fixed;inset:0;background-color:#00000080;z-index:1000;display:flex;justify-content:flex-end}.admin-panel-overlay.animate-in{animation:fadeIn .3s ease-in-out forwards}.admin-panel-overlay.animate-out{animation:fadeOut .3s ease-in-out forwards}.admin-panel{background:#fff;width:600px;height:100vh;box-shadow:-2px 0 10px #0000004d;display:flex;flex-direction:column;overflow:hidden}.admin-panel.animate-in{animation:slideIn .3s ease-in-out forwards}.admin-panel.animate-out{animation:slideOut .3s ease-in-out forwards}.admin-panel-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0;background:#f8f9fa}.admin-panel-header h2{margin:0;font-size:24px;font-weight:600;color:#333}.close-button{background:none;border:none;font-size:24px;cursor:pointer;color:#666;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.close-button:hover{background-color:#e9ecef;color:#333}.clinic-quota-banner{padding:16px 24px;background:linear-gradient(135deg,#f8fafc,#eef2ff);border-bottom:1px solid #e2e8f0}.quota-banner-content{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.quota-banner-label{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.quota-clinic-name{font-size:12px;color:#64748b;font-weight:500;text-transform:uppercase;letter-spacing:.5px;text-align:left}.quota-title{font-size:14px;color:#334155;font-weight:600}.quota-banner-stats{display:flex;align-items:center;gap:12px}.quota-numbers{display:flex;align-items:baseline;gap:4px}.quota-current{font-size:28px;font-weight:700;color:#1e293b;line-height:1}.quota-separator{font-size:20px;color:#94a3b8;font-weight:300}.quota-limit{font-size:20px;color:#64748b;font-weight:500}.quota-status-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.quota-status-ok{background-color:#dcfce7;color:#166534}.quota-status-warning{background-color:#fef3c7;color:#92400e}.quota-status-exceeded{background-color:#fee2e2;color:#991b1b}.quota-progress-bar{height:6px;background-color:#e2e8f0;border-radius:3px;overflow:hidden}.quota-progress-fill{height:100%;border-radius:3px;transition:width .3s ease}.quota-fill-ok{background:linear-gradient(90deg,#22c55e,#16a34a)}.quota-fill-warning{background:linear-gradient(90deg,#f59e0b,#d97706)}.quota-fill-exceeded{background:linear-gradient(90deg,#ef4444,#dc2626)}.admin-panel-tabs{display:flex;border-bottom:1px solid #e0e0e0;background:#f8f9fa}.tab{flex:1;padding:12px 20px;border:none;background:none;cursor:pointer;font-weight:500;color:#666;transition:all .2s;position:relative}.tab:hover{background-color:#e9ecef;color:#333}.tab.active{color:#007bff;background-color:#fff}.tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:#007bff}.tab:disabled{color:#ccc;cursor:not-allowed}.admin-panel-content{flex:1;padding:20px;overflow-y:auto}.loading-spinner{display:flex;justify-content:center;align-items:center;padding:40px;font-size:16px;color:#666}.error-message{background:#f8d7da;color:#721c24;padding:12px 16px;border:1px solid #f5c6cb;border-radius:4px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.error-message button{background:none;border:none;color:#721c24;font-size:18px;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.users-tab,.clinics-tab{display:flex;flex-direction:column;height:100%}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.tab-header h3{margin:0;font-size:20px;font-weight:600;color:#333}.tab-actions{display:flex;align-items:center;gap:10px}.create-button{background:#28a745;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .2s}.create-button:hover{background:#218838}.users-list,.clinics-list{display:flex;flex-direction:column;gap:12px;flex:1;overflow-y:auto}.card{border:1px solid #e5e5e5;border-radius:8px;background:#fff;transition:all .2s ease;margin-bottom:16px}.card:hover{border-color:#d4d4d8;box-shadow:0 1px 3px #0000000d,0 1px 2px #0000001a}.card.editing{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.clinic-card,.user-card,.topic-card{border:1px solid #e5e5e5;border-radius:8px;background:#fff;transition:all .2s ease;margin-bottom:16px}.clinic-card:hover,.user-card:hover,.topic-card:hover{border-color:#d4d4d8;box-shadow:0 1px 3px #0000000d,0 1px 2px #0000001a}.user-card.editing,.clinic-card.editing,.topic-card.editing{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.user-info h4,.clinic-header h4{margin:0;font-size:16px;font-weight:600;color:#333}.user-info p{margin:4px 0;font-size:14px;color:#666}.card-content{padding:12px 16px;display:flex;justify-content:space-between;align-items:center;gap:24px}.card-left{flex:1;text-align:left;min-width:0}.card-title{margin:0 0 6px;font-size:16px;font-weight:600;color:#1f2937;line-height:1.25}.card-subtitle{font-size:14px;font-weight:500;color:#374151;line-height:1.3;margin:0}.card-actions{display:flex;gap:8px;flex-shrink:0}.btn-secondary{background:#f8fafc;border:1px solid #e2e8f0;color:#475569;padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-secondary:hover{background:#f1f5f9;border-color:#cbd5e1}.btn-icon{display:inline-flex;align-items:center;justify-content:center;background:#f8fafc;border:1px solid #e2e8f0;color:#64748b;width:32px;height:32px;padding:0;border-radius:6px;cursor:pointer;transition:all .15s ease;flex-shrink:0}.btn-icon:hover{background:#f1f5f9;border-color:#cbd5e1;color:#475569}.status-filter{background:#f8fafc;border:1px solid #e2e8f0;color:#475569;padding:6px 32px 6px 14px;height:32px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23475569' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:16px}.status-filter:hover{background-color:#f1f5f9;border-color:#cbd5e1}.status-filter:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.btn-danger{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-danger:hover{background:#fee2e2;border-color:#fca5a5}.clinic-content{padding:12px 16px;display:flex;justify-content:space-between;align-items:center;gap:24px}.clinic-left{flex:1;text-align:left;min-width:0}.clinic-name{margin:0 0 6px;font-size:16px;font-weight:600;color:#1f2937;line-height:1.25}.clinic-topics{font-size:14px;font-weight:500;color:#374151;line-height:1.3;margin:0}.clinic-right{display:flex;gap:8px;flex-shrink:0}.card-edit-content{padding:12px 16px;text-align:left}.card-edit-header{margin-bottom:16px;text-align:left}.card-edit-title{margin:0;font-size:16px;font-weight:600;color:#1f2937;text-align:left}.card-edit-form{display:flex;flex-direction:column;gap:12px;align-items:flex-start;text-align:left}.card-edit-field{display:flex;flex-direction:column;align-items:flex-start;width:100%}.card-edit-label{display:block;margin-bottom:6px;font-size:14px;font-weight:600;color:#374151;text-align:left}.card-edit-input{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:all .15s ease;width:100%;text-align:left}.card-edit-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.card-edit-actions{display:flex;gap:8px;margin-top:4px;align-self:flex-start}.topic-edit-content{padding:12px 16px}.topic-edit-header{margin-bottom:16px}.edit-title{margin:0;font-size:16px;font-weight:600;color:#1f2937;text-align:left}.topic-edit-form{display:flex;flex-direction:column;gap:12px}.edit-field{display:flex;flex-direction:column}.edit-input{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:all .15s ease}.edit-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.edit-actions{display:flex;gap:8px;margin-top:4px}.edit-actions .btn-secondary{background:#f8fafc;border:1px solid #e2e8f0;color:#475569;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.edit-actions .btn-secondary:hover{background:#f1f5f9;border-color:#cbd5e1}.clinic-edit-content,.user-edit-content{padding:12px 16px;text-align:left}.clinic-edit-header,.user-edit-header{margin-bottom:16px;text-align:left}.clinic-edit-form,.user-edit-form{display:flex;flex-direction:column;gap:16px;align-items:flex-start;text-align:left}.edit-label{display:block;margin-bottom:6px;font-size:14px;font-weight:600;color:#374151;text-align:left}.field-help{display:block;margin-top:4px;font-size:12px;color:#6b7280;line-height:1.4}.no-topics-message{color:#6b7280;font-style:italic;margin:8px 0;font-size:14px}.btn-primary{background:#007bff;border:1px solid #007bff;color:#fff;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-primary:hover:not(:disabled){background:#0056b3;border-color:#0056b3}.btn-primary:disabled{background:#6c757d;border-color:#6c757d;cursor:not-allowed;opacity:.6}.btn-primary-select{background:#007bff;border:1px solid #007bff;color:#fff;padding:6px 32px 6px 12px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:16px;height:32px}.btn-primary-select:hover{background-color:#0056b3;border-color:#0056b3}.btn-primary-select:focus{outline:none;box-shadow:0 0 0 2px #007bff40}.topic-content{padding:12px 16px;display:flex;justify-content:space-between;align-items:center;gap:24px}.topic-left{flex:1;text-align:left;min-width:0}.topic-name{margin:0 0 6px;font-size:16px;font-weight:600;color:#1f2937;line-height:1.25}.topic-right{display:flex;gap:8px;flex-shrink:0}.user-content{padding:12px 16px;display:flex;justify-content:space-between;align-items:center;gap:24px}.user-left{flex:1;text-align:left;min-width:0}.user-name{margin:0 0 6px;font-size:16px;font-weight:600;color:#1f2937;line-height:1.25}.user-info-line{font-size:14px;font-weight:500;color:#374151;line-height:1.3;margin:0 0 4px}.user-info-line:last-child{margin-bottom:0}.user-clinics,.user-topics{font-size:14px;font-weight:500;color:#374151;line-height:1.3;margin:0 0 4px}.user-topics{margin-bottom:0}.user-right{display:flex;gap:8px;flex-shrink:0}.user-actions{display:flex;gap:8px;margin-top:12px}.user-actions button,.clinic-actions button{padding:6px 12px;border:1px solid #007bff;background:#fff;color:#007bff;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s}.user-actions button:hover,.clinic-actions button:hover{background:#007bff;color:#fff}.user-actions button.danger,.clinic-actions button.danger{border-color:#dc3545;color:#dc3545}.user-actions button.danger:hover,.clinic-actions button.danger:hover{background:#dc3545;color:#fff}.create-form{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:20px}.create-form h4{margin:0 0 16px;font-size:18px;font-weight:600;color:#333}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:4px;font-weight:500;color:#333;font-size:14px}.form-group input,.form-group select{width:100%;padding:8px 12px;border:1px solid #ccc;border-radius:4px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.form-group small{display:block;margin-top:4px;font-size:12px;color:#666}.topics-checkboxes{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:8px}.checkbox-label{display:flex;align-items:center;gap:16px;cursor:pointer;font-size:14px;color:#333;padding:4px;margin:0 4px;border-radius:4px;transition:background-color .2s}.checkbox-label:hover{background-color:#f8f9fa}.checkbox-label input[type=checkbox]{width:auto;margin:0 4px}.form-actions{display:flex;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #e0e0e0}.form-actions button[type=submit]{background:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .2s}.form-actions button[type=submit]:hover{background:#0056b3}.form-actions button[type=button]{background:#6c757d;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .2s}.form-actions button[type=button]:hover{background:#545b62}.empty-state{text-align:center;padding:40px;color:#666;font-style:italic}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slideOut{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.7}}@keyframes loading{0%{transform:translate(-100%)}to{transform:translate(200%)}}@media(max-width:768px){.admin-panel{width:100vw}.admin-panel-overlay{justify-content:center}.topics-checkboxes{grid-template-columns:1fr}.form-actions{flex-direction:column}.user-actions,.clinic-actions{flex-wrap:wrap}}.admin-panel:focus{outline:none}.tab:focus{outline:2px solid #007bff;outline-offset:-2px}.close-button:focus{outline:2px solid #007bff;outline-offset:2px}@media(prefers-contrast:high){.admin-panel,.user-card,.clinic-card{border:2px solid black}.tab.active{background:#000;color:#fff}}.modal-overlay{position:fixed;inset:0;background-color:#00000080;z-index:2000;display:flex;justify-content:center;align-items:center;padding:20px}.modal{background:#fff;border-radius:12px;box-shadow:0 10px 25px #00000026;max-width:600px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e5e5;background:#f8f9fa}.modal-header h3{margin:0;font-size:18px;font-weight:600;color:#1f2937}.modal-header button{background:none;border:none;font-size:24px;cursor:pointer;color:#6b7280;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .15s ease}.modal-header button:hover{background-color:#e5e7eb;color:#374151}.modal-body{flex:1;padding:24px;overflow-y:auto}.modal-footer{padding:16px 24px;border-top:1px solid #e5e5e5;background:#f8f9fa;display:flex;justify-content:flex-end}.modal-footer button{background:#6b7280;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .15s ease}.modal-footer button:hover:not(:disabled){background:#4b5563}.modal-footer button:disabled{background:#d1d5db;cursor:not-allowed}.membership-card{border:1px solid #e5e5e5;border-radius:8px;background:#fff;margin-bottom:12px;overflow:hidden}.membership-card-header{padding:16px 20px;background:#f8fafc;border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;align-items:center}.membership-clinic-name{font-size:16px;font-weight:600;color:#1f2937;margin:0}.membership-actions{display:flex;gap:8px;align-items:center}.membership-actions select{padding:6px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff;color:#374151}.membership-actions select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.membership-card-body{padding:16px 20px}.membership-topics-label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px;text-align:left}.membership-topics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;justify-items:start;text-align:left}.membership-topic-item{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:14px;color:#374151;cursor:pointer;justify-self:start}.membership-topic-item input[type=checkbox]{margin:0}.add-membership-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px;margin-top:20px;text-align:left}.add-membership-title{margin:0 0 16px;font-size:16px;font-weight:600;color:#1f2937;text-align:left}.add-membership-form{display:flex;flex-direction:column;gap:16px;align-items:flex-start;text-align:left}.add-membership-row{display:flex;gap:12px;align-items:center;justify-content:flex-start;width:100%}.add-membership-row select{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff;color:#374151;min-width:140px;text-align:left}.add-membership-row select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.add-membership-actions{display:flex;gap:8px;margin-top:8px;justify-content:flex-start;align-self:flex-start}.add-membership-actions button{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;border:none}.add-membership-actions .btn-add{background:#007bff;color:#fff}.add-membership-actions .btn-add:hover:not(:disabled){background:#0056b3}.add-membership-actions .btn-add:disabled{background:#d1d5db;cursor:not-allowed}@media(prefers-reduced-motion:reduce){.admin-panel-overlay,.admin-panel,.tab,.user-card,.clinic-card,.close-button{animation:none;transition:none}}.invitations-tab{display:flex;flex-direction:column;height:100%}.invitations-list{flex:1;overflow-y:auto;margin-bottom:20px}.table-responsive{overflow-x:auto}.invitations-table{width:100%;border-collapse:collapse;font-size:14px}.invitations-table th,.invitations-table td{padding:12px;text-align:left;border-bottom:1px solid #e0e0e0}.invitations-table th{background-color:#f8f9fa;font-weight:600;color:#333;position:sticky;top:0;z-index:10}.invitations-table tr:hover{background-color:#f8f9fa}.status-badge{display:inline-block;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500;text-transform:uppercase}.status-badge.pending{background-color:#ffeaa7;color:#d63031}.status-badge.accepted{background-color:#d4edda;color:#155724}.status-badge.revoked,.status-badge.expired{background-color:#f8d7da;color:#721c24}.action-buttons{display:flex;gap:8px;align-items:center}.action-button{padding:4px 8px;border-radius:4px;border:none;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s}.action-button.resend{background-color:#007bff;color:#fff}.action-button.resend:hover{background-color:#0056b3}.action-button.revoke{background-color:#dc3545;color:#fff}.action-button.revoke:hover{background-color:#c82333}.accepted-text{color:#28a745;font-size:12px;font-weight:500}.revoked-text{color:#dc3545;font-size:12px;font-weight:500}.invitations-summary{border-top:1px solid #e0e0e0;padding:15px 0;margin-top:auto}.summary-stats{display:flex;justify-content:space-around;gap:20px}.stat{text-align:center}.stat-number{display:block;font-size:24px;font-weight:600;color:#333}.stat-label{display:block;font-size:12px;color:#666;text-transform:uppercase;margin-top:4px}.create-invitation-form{background-color:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:20px}.create-invitation-form h4{margin:0 0 20px;color:#333}.create-invitation-form .form-group{margin-bottom:15px}.create-invitation-form label{display:block;margin-bottom:5px;font-weight:500;color:#333}.create-invitation-form input,.create-invitation-form select,.create-invitation-form textarea{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.create-invitation-form textarea{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;resize:vertical;min-height:100px}.create-invitation-form input:focus,.create-invitation-form select:focus,.create-invitation-form textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.create-invitation-form .topics-checkboxes{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.create-invitation-form .checkbox-label{display:flex;align-items:center;gap:16px;font-weight:400;cursor:pointer}.create-invitation-form .checkbox-label input{width:auto}.create-invitation-form small{color:#666;font-size:12px;margin-top:4px;display:block}.create-invitation-form .form-actions{display:flex;gap:10px;margin-top:20px}.create-invitation-form .form-actions button{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-weight:500}.create-invitation-form .form-actions button[type=submit]{background-color:#007bff;color:#fff}.create-invitation-form .form-actions button[type=submit]:hover:not(:disabled){background-color:#0056b3}.create-invitation-form .form-actions button[type=submit]:disabled{background-color:#ccc;cursor:not-allowed}.create-invitation-form .form-actions button[type=button]{background-color:#6c757d;color:#fff}.create-invitation-form .form-actions button[type=button]:hover{background-color:#545b62}.empty-state{text-align:center;padding:40px 20px;color:#666}.empty-state p{margin:0 0 20px;font-size:16px}.empty-state .primary-button{background-color:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-weight:500}.empty-state .primary-button:hover{background-color:#0056b3}.quotas-tab,.patient-requests-tab{display:flex;flex-direction:column;height:100%}.quotas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px;padding:4px}.quota-card-v2{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden;transition:all .2s ease;box-shadow:0 1px 3px #0000000a}.quota-card-v2:hover{border-color:#d1d5db;box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.quota-card-v2.editing{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.quota-card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 20px 12px;border-bottom:1px solid #f3f4f6}.quota-clinic-info{display:flex;flex-direction:column;gap:6px}.quota-clinic-title{margin:0;font-size:18px;font-weight:600;color:#111827}.quota-ou-badge{display:inline-block;padding:2px 8px;background:#f3f4f6;border-radius:4px;font-size:11px;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.3px}.btn-edit{padding:6px 14px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.btn-edit:hover{background:#f3f4f6;border-color:#d1d5db;color:#111827}.quota-card-body{padding:20px}.quota-visual{display:flex;align-items:flex-start;gap:20px}.quota-circle{width:72px;height:72px;border-radius:50%;border:4px solid #10b981;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;background:#fff}.quota-number{font-size:22px;font-weight:700;color:#111827;line-height:1}.quota-label{font-size:9px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.quota-details{flex:1;display:flex;flex-direction:column;gap:10px;padding-top:4px}.quota-main-stat{display:flex;align-items:baseline;gap:2px;line-height:1}.quota-active{font-size:32px;font-weight:700;color:#111827}.quota-divider{font-size:24px;font-weight:300;color:#d1d5db;margin:0 2px}.quota-total{font-size:24px;font-weight:500;color:#9ca3af}.quota-status-pill{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500;border:1px solid;width:fit-content}.quota-progress-track{height:6px;background:#f3f4f6;border-radius:3px;overflow:hidden;margin-top:2px}.quota-progress-bar-fill{height:100%;border-radius:3px;transition:width .3s ease}.quota-no-limit{display:flex;align-items:center;gap:16px;padding:8px 0}.no-limit-icon{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border:3px solid #e5e7eb;display:flex;align-items:center;justify-content:center;font-size:32px;color:#9ca3af;flex-shrink:0}.no-limit-text{display:flex;flex-direction:column;gap:4px}.no-limit-title{font-size:18px;font-weight:600;color:#374151}.no-limit-subtitle{font-size:13px;color:#9ca3af}.quota-card-footer{padding:12px 20px;background:#f9fafb;border-top:1px solid #f3f4f6;font-size:12px;display:flex;gap:6px}.quota-email-label{color:#6b7280;flex-shrink:0}.quota-email-chips{display:flex;flex-wrap:wrap;gap:6px;flex:1}.quota-email-chip{background:#e5e7eb;color:#374151;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500;white-space:nowrap}.quota-edit-v2{padding:20px}.quota-edit-header{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #f3f4f6}.quota-edit-header h4{margin:0;font-size:18px;font-weight:600;color:#111827}.quota-edit-fields{display:flex;flex-direction:column;gap:16px}.quota-field{display:flex;flex-direction:column;gap:6px}.quota-field label{font-size:13px;font-weight:600;color:#374151}.quota-field input{padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;transition:all .15s ease;background:#f9fafb}.quota-field input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.quota-field input::placeholder{color:#9ca3af}.field-hint{font-size:11px;color:#9ca3af}.quota-edit-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid #f3f4f6}.btn-cancel{padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.btn-cancel:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.btn-save{padding:8px 20px;background:#3b82f6;border:none;border-radius:6px;font-size:13px;font-weight:500;color:#fff;cursor:pointer;transition:all .15s ease}.btn-save:hover{background:#2563eb}.btn-save:disabled,.btn-cancel:disabled{opacity:.6;cursor:not-allowed}.empty-state{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-icon{font-size:48px;margin-bottom:12px}.empty-text{font-size:16px;color:#6b7280}.requests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px;padding:4px}.request-card-v2{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden;transition:all .2s ease;box-shadow:0 1px 3px #0000000a;display:flex;flex-direction:column}.request-card-v2:hover{border-color:#d1d5db;box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.req-card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 20px;border-bottom:1px solid #f3f4f6;gap:12px}.req-patient-info{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.req-patient-id{font-size:18px;font-weight:600;color:#111827}.req-status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;border:1px solid}.req-status-row{display:inline-flex;align-items:center;gap:6px}.req-btn-edit-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:4px;color:#6b7280;cursor:pointer;transition:all .15s ease}.req-btn-edit-icon:hover{background:#e5e7eb;color:#374151;border-color:#d1d5db}.req-btn-edit-icon:disabled{opacity:.5;cursor:not-allowed}.req-clinic-badge{padding:4px 10px;background:#f3f4f6;border-radius:6px;font-size:12px;font-weight:600;color:#374151;white-space:nowrap}.req-card-body{padding:16px 20px;flex:1}.req-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:16px}.req-detail{display:flex;flex-direction:column;gap:4px}.req-detail-label{font-size:11px;font-weight:500;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px}.req-detail-value{font-size:14px;font-weight:500;color:#111827}.req-card-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:#f9fafb;border-top:1px solid #f3f4f6;gap:16px}.req-meta-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.req-requester{font-size:13px;color:#374151;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.req-date{font-size:12px;color:#9ca3af}.req-actions{display:flex;gap:8px;flex-shrink:0}.req-btn-approve{padding:8px 16px;background:#10b981;border:none;border-radius:6px;font-size:13px;font-weight:500;color:#fff;cursor:pointer;transition:all .15s ease}.req-btn-approve:hover{background:#059669}.req-btn-approve:disabled{opacity:.6;cursor:not-allowed}.req-btn-reject{padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.req-btn-reject:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.req-btn-reject:disabled{opacity:.6;cursor:not-allowed}.filter-controls{display:flex;gap:12px;margin-bottom:20px;align-items:center}.filter-label{font-size:14px;font-weight:500;color:#374151}.filter-select{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff;color:#374151;min-width:140px}.filter-select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.quota-display-dark{background-color:#374151!important;border-color:#fff3!important}.quota-display-dark .quota-bar-bg{background-color:#4b5563!important}.quotas-list,.requests-list{flex:1;overflow-y:auto;padding-right:4px}.no-data{text-align:center;padding:40px 20px;color:#6b7280;font-style:italic}._header_lfwth_1{text-align:center;background:transparent;padding:2rem 1.5rem;box-shadow:none;margin-bottom:2rem}._logo_lfwth_9{margin:auto;max-width:220px;height:auto}._header_lfwth_1 h1{margin:.5rem 0;font-weight:600;font-size:1.75rem;letter-spacing:-.5px;color:#000}
