*,*:before,*:after{box-sizing:border-box}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;display:flex;flex-direction:column;color-scheme:light dark;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--primary-color: #2c3e50}body{margin:0;min-height:100vh;display:flex;flex-direction:column;place-items:start}#root{max-width:100%;width:100%;flex:1;background-color:#fff;display:flex;flex-direction:column;align-items:center}@media (min-width: 576px){#root{background-color:#f5f7f9}}.page-content{width:100%;flex:1;display:flex;justify-content:center;flex-direction:column;align-items:center;padding:30px 18px}.form-container{text-align:center;width:100%;max-width:440px;padding:0;background-color:transparent}@media (min-width: 576px){.form-container{padding:30px;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}}header{background-color:var(--primary-color);color:#fff;padding:20px 40px;display:flex;justify-content:space-between;align-items:center;width:100%}header h1{margin:0;font-size:1.8rem}header nav a{color:#fff;text-decoration:none;margin-left:20px;font-weight:400}footer{text-align:center;padding:20px;font-size:.9rem;color:#666;width:100%}h1{font-size:2.8em;line-height:1.1}a{font-weight:500;color:var(--primary-color);text-decoration:inherit}a:hover{opacity:.8}button,a.button{font-family:Arial;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;font-weight:400;text-decoration:none;background-color:var(--primary-color);color:#fff;border:none;border:1px solid var(--primary-color);padding:12px;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}button:hover:not(:disabled),a.button:hover:not(:disabled){opacity:.9}button:disabled,a.button:disabled{opacity:.6;cursor:not-allowed}.button-secondary{background-color:transparent;color:var(--primary-color);border:1px solid var(--primary-color)}.text-button{font-size:inherit;font-family:inherit;font-weight:500;color:var(--primary-color);text-decoration:inherit;background:none;padding:0;border:none;cursor:pointer;text-align:center}.text-button:hover:not(:disabled){opacity:.9}.text-button:disabled{opacity:.6;cursor:not-allowed}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px 26px;font-size:16px;font-family:Roboto,sans-serif;color:#1e293b;width:100%;box-shadow:0 2px 4px #0000000d;cursor:pointer;transition:all .2s ease;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='%23475569' 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 16px center;background-size:16px}select:hover{border-color:#cbd5e1;box-shadow:0 4px 6px #0000000d}select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f640}select:disabled{background-color:#f1f5f9;color:#94a3b8;cursor:not-allowed;border-color:#e2e8f0;opacity:.7}option{padding:12px;font-size:16px}th,td{padding-left:1rem;padding-right:1rem}.form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:6px;font-weight:500;color:#555;text-align:left}.form-group input{padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px;transition:border-color .3s}.form-group input:focus{outline:none;border-color:#4a90e2}.form-group textarea{padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px;transition:border-color .3s}.form-group textarea:focus{outline:none;border-color:#4a90e2}.button-group{display:flex;justify-content:center;gap:12px}.error-message{background-color:#ffebee;color:#d32f2f;padding:10px;border-radius:4px;margin-bottom:16px;font-size:14px}.input-error{border-color:#d32f2f}.error-text{color:#d32f2f;font-size:12px;margin-top:4px;text-align:left}.loading-bar-1{width:100%;height:4px;background-color:#e0e0e0;overflow:hidden;position:relative}.loading-bar-1:after{content:"";position:absolute;left:-50%;top:0;width:50%;height:100%;background-color:var(--primary-color);animation:loading-1 1.5s infinite}@keyframes loading-1{0%{transform:translate(0)}to{transform:translate(400%)}}.loading-spinner{width:40px;height:40px;border:4px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:var(--primary-color);animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dashboard .email-message-container{border:1px solid #ddd;border-radius:5px;padding:15px;background-color:#f9f9f9;text-align:left}.dashboard .email-message-container .message-header{display:flex;align-items:center;margin-bottom:15px}.dashboard .email-message-container .icon{color:#f39c12;margin-right:10px;font-size:24px}.dashboard .email-message-container .message-content{font-size:14px}.home .hero{text-align:center}.home .hero h2{font-size:2.2rem;margin-bottom:20px;color:#2c3e50}.home .hero p{font-size:1.1rem;max-width:600px;margin:0 auto 30px;color:#555}.confirmation-icon{display:flex;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 24px;border-radius:50%;font-size:40px}.confirmation-icon.loading{background-color:#f0f0f0}.confirmation-icon.success{background-color:#e6f7ea;color:#2e7d32}.confirmation-icon.error{background-color:#feeae9;color:#d32f2f}.confirmation-icon.info{background-color:#e3f2fd;color:#1976d2}.forgotPassword .message{padding:10px;border-radius:4px;margin-bottom:16px;font-size:14px}.forgotPassword .message.error{background-color:#ffebee;color:#d32f2f}.forgotPassword .message.success{background-color:#e8f5e9;color:#2e7d32}.message{padding:12px;border-radius:4px;margin-bottom:16px;font-size:14px}.message.error{background-color:#ffebee;color:#d32f2f}.message.success{background-color:#e8f5e9;color:#2e7d32}.enable2FA .progress-indicator{display:flex;justify-content:center;align-items:center;margin-bottom:32px}.enable2FA .step{width:40px;height:40px;border-radius:50%;background-color:#e0e0e0;display:flex;justify-content:center;align-items:center;font-weight:700;color:#666}.enable2FA .step.active{background-color:#4a90e2;color:#fff}.enable2FA .step.completed{background-color:#4caf50;color:#fff}.enable2FA .line{height:3px;width:60px;background-color:#e0e0e0;margin:0 8px}.enable2FA .step-container{margin-top:24px}.enable2FA .qr-container{display:flex;flex-direction:column;align-items:center;margin:24px 0;padding:16px;background-color:#f9f9f9;border-radius:8px}.enable2FA .qr-code{width:200px;height:200px;margin-bottom:16px}.enable2FA .secret-key{margin-top:16px;text-align:center}.enable2FA .secret-key code{display:block;padding:12px;background-color:#f0f0f0;border-radius:4px;font-family:monospace;margin-top:8px;letter-spacing:2px;font-size:18px}.enable2FA .loading-indicator{padding:40px;text-align:center;color:#666}.enable2FA .verification-form{margin-top:24px}.enable2FA small{display:block;margin-top:8px;color:#888;font-style:italic}.enable2FA .error-message{background-color:#ffebee;color:#d32f2f;padding:12px;border-radius:4px;margin-bottom:16px}.enable2FA .success-container{text-align:center}.enable2FA .success-icon{width:70px;height:70px;background-color:#4caf50;color:#fff;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:36px;margin:0 auto 24px}.enable2FA .backup-codes-container{margin:32px 0;padding:24px;background-color:#f9f9f9;border-radius:8px;text-align:left}.enable2FA .backup-codes{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:20px 0}.enable2FA .backup-code{background-color:#f0f0f0;padding:10px;border-radius:4px;font-family:monospace;font-size:16px;text-align:center;letter-spacing:1px}.enable2FA .backup-actions{display:flex;gap:12px;margin-top:20px;justify-content:center}.enable2FA .finish-button{margin-top:24px;width:100%}@media (max-width: 600px){.enable2FA .backup-codes{grid-template-columns:1fr}.enable2FA .backup-actions,.enable2FA .button-group{flex-direction:column}}.file-upload-container{width:100%;margin:0 auto}.file-upload-container .drop-zone{border:1px dashed #ccc;border-radius:4px;padding:10px;text-align:center;transition:all .3s ease}.file-upload-container .drop-zone-active{border-color:#3b82f6;background-color:#eff6ff}.file-upload-container .file-input{display:none}.file-upload-container .drop-zone-content{display:flex;flex-direction:column;align-items:center;gap:5px}.file-upload-container .upload-icon-container{display:flex;justify-content:center;align-items:center}.file-upload-container .upload-icon{width:32px;height:32px;color:#9ca3af}.file-upload-container .drop-zone-text{color:#4b5563;margin:8px 0}.file-upload-container .browse-button{padding:8px 16px;font-size:14px;font-weight:500}.file-upload-container .file-types-text{font-size:12px;color:#6b7280;margin-top:4px}.file-upload-container .files-list-container{margin-top:16px}.file-upload-container .files-list-title{font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.file-upload-container .files-list{list-style:none;padding:0;margin:8px 0 0;border:1px solid #e5e7eb;border-radius:6px}.file-upload-container .file-item{padding:12px 16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5e7eb}.file-upload-container .file-item:last-child{border-bottom:none}.file-upload-container .file-details{display:flex;align-items:center;overflow:hidden}.file-upload-container .file-icon{flex-shrink:0;width:20px;height:20px}.file-upload-container .file-icon-pdf{color:#ef4444}.file-upload-container .file-icon-image{color:#3b82f6}.file-upload-container .file-name{margin-left:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.file-upload-container .file-actions{margin-left:16px}.file-upload-container .remove-file-button{font-size:14px;font-weight:500;color:#dc2626;background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:4px}.file-upload-container .remove-file-button:hover{color:#b91c1c;background-color:#fee2e2}.file-upload-container .submit-container{margin-top:16px}.file-upload-container .submit-button{width:100%;padding:10px 16px;font-size:14px;font-weight:500;color:#fff;background-color:#10b981;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s}.file-upload-container .submit-button:hover{background-color:#059669}.file-upload-container .submit-button:focus{outline:none;box-shadow:0 0 0 2px #a7f3d0}.file-upload-container .submit-button-disabled{background-color:#9ca3af;cursor:not-allowed}.file-upload-container .submit-button-disabled:hover{background-color:#9ca3af}.prescriptionForm .scan-button{display:inline-flex;align-items:center;gap:8px;background-color:#4caf50;color:#fff;border:none;padding:14px 24px;font-size:16px;border-radius:4px;cursor:pointer;box-shadow:0 4px 6px #0000001a;transition:background-color .3s,transform .2s}.prescriptionForm .scan-button:hover:not(:disabled){background-color:#45a049;transform:scale(1.05)}.prescriptionForm .scan-button:disabled{background-color:#4caf5099;cursor:not-allowed}.prescriptionForm .active{border-color:#22c55e!important}.prescriptionForm .pharmacies-container{display:flex;flex-direction:column;gap:3px}.prescriptionForm .pharmacies-container .pharmacy-item{display:flex;align-items:center}.prescriptionForm .pharmacies-container .radio-input{position:absolute;opacity:0;width:0;height:0}.prescriptionForm .pharmacies-container .pharmacy-button{display:block;width:100%;padding:10px 16px;background-color:#f3f4f6;border-radius:6px;cursor:pointer;transition:all .2s ease}.prescriptionForm .pharmacies-container .pharmacy-button:hover{background-color:#e5e7eb}.prescriptionForm .pharmacies-container .pharmacy-button.selected{background-color:var(--primary-color);color:#fff;font-weight:500}.accountNotValidated .status-badge{background-color:#ebf5ff;color:#2c5282;padding:8px 15px;border-radius:20px;font-weight:700;display:inline-block;margin-bottom:20px}.accountNotValidated .content{margin-bottom:25px}.accountNotValidated .contact-info{text-align:left;background-color:#f0f4f8;padding:15px;border-radius:8px;border-left:4px solid #2c5282}.accountNotValidated .contact-item{margin:10px 0}.accountNotValidated .footer{text-align:center;margin-top:30px;color:#666;font-size:14px}
