:root{--primary-color: #3498db;--secondary-color: #2ecc71;--accent-color: #e74c3c;--text-color: #2c3e50;--light-text: #7f8c8d;--border-color: #bdc3c7;--background-color: #ecf0f1;--card-bg: #ffffff;--success-color: #27ae60;--warning-color: #f39c12;--error-color: #e74c3c;--shadow: 0 2px 10px rgba(0, 0, 0, .1);--border-radius: 8px;--transition: all .3s ease;--test-card-bg: #f8f9fa;--test-card-hover: #e3f2fd;--test-border: #e1e5e9;--test-border-hover: #667eea;--test-shadow: 0 2px 8px rgba(0, 0, 0, .08);--test-shadow-hover: 0 4px 16px rgba(102, 126, 234, .15);--category-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--category-gradient-hover: linear-gradient(135deg, #5a6fd8 0%, #6a4c93 100%)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:var(--background-color);color:var(--text-color);line-height:1.6}.container{max-width:95vw;margin:0 auto;padding:20px}.header{text-align:center;margin-bottom:30px;padding:30px;background:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow)}.header h1{font-size:2.5rem;color:var(--primary-color);margin-bottom:10px}.header p{font-size:1.1rem;color:var(--light-text)}.generation-methods{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem;flex-wrap:wrap}.method-link{display:inline-block;padding:.75rem 1.5rem;background:#3498db1a;color:var(--primary-color);text-decoration:none;border-radius:8px;font-weight:600;transition:var(--transition);border:2px solid transparent}.method-link:hover{background:#3498db33;transform:translateY(-2px);color:var(--primary-color)}.method-link.active{background:#3498db4d;border-color:var(--primary-color)}.tips-section{background:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);margin-bottom:30px;border-left:4px solid var(--warning-color);overflow:hidden}.tips-header{display:flex;align-items:center;justify-content:space-between;padding:25px 25px 15px;cursor:pointer;transition:var(--transition);-webkit-user-select:none;user-select:none;position:relative}.tips-header:after{content:"Click to expand/collapse";position:absolute;right:60px;top:50%;transform:translateY(-50%);font-size:.8rem;color:var(--light-text);opacity:0;transition:var(--transition)}.tips-header:hover:after{opacity:1}.tips-header:hover{background:#f39c120d}.tips-header:active{background:#f39c121a}.tips-header h3{color:var(--warning-color);margin:0;font-size:1.3rem}.tips-toggle{color:var(--warning-color);font-size:1.2rem;font-weight:700;transition:var(--transition);transform:rotate(0)}.tips-toggle.collapsed{transform:rotate(-90deg)}.tips-content{display:flex;flex-direction:column;gap:12px;padding:0 25px 25px;max-height:500px;opacity:1;transition:var(--transition);overflow:hidden}.tips-content.collapsed{max-height:0;opacity:0;padding-top:0;padding-bottom:0;margin:0}.tip-item{padding:12px 15px;background:#fff8e1;border-radius:6px;border-left:3px solid var(--warning-color);font-size:.95rem;line-height:1.5}.tip-item strong{color:var(--text-color)}.generator-header h1{font-size:2.5rem;color:var(--primary-color);margin-bottom:10px}.generator-header p{font-size:1.1rem;color:var(--light-text)}.case-form{background:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow);overflow:hidden}.form-section{padding:30px;border-bottom:1px solid var(--border-color)}.form-section:last-child{border-bottom:none}.form-section h2{color:var(--primary-color);font-size:1.5rem;margin-bottom:25px;display:flex;align-items:center;gap:10px}.subsection{margin:25px 0;padding:20px;background:var(--background-color);border-radius:var(--border-radius);border-left:4px solid var(--primary-color)}.subsection h3{color:var(--text-color);font-size:1.2rem;margin-bottom:15px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-color)}.form-group label:after{content:" *";color:var(--accent-color);opacity:0}.form-group label[for*=required]:after,.form-group input[required]+label:after,.form-group select[required]+label:after{opacity:1}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 15px;border:2px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;transition:var(--transition);background:var(--card-bg)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3498db1a}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--light-text);font-style:italic}.form-group textarea{resize:vertical;min-height:80px}.special-test-entry{background:var(--card-bg);padding:15px;border-radius:var(--border-radius);border:1px solid var(--border-color);margin-bottom:15px}.special-test-entry .form-grid{margin-bottom:0}.btn-primary,.btn-secondary{padding:12px 24px;border:none;border-radius:var(--border-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:8px;text-decoration:none}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{background:#2980b9;transform:translateY(-2px);box-shadow:0 4px 12px #3498db4d}.btn-secondary{background:var(--secondary-color);color:#fff}.btn-secondary:hover{background:#27ae60;transform:translateY(-2px);box-shadow:0 4px 12px #2ecc714d}.btn-secondary:disabled{background:var(--light-text);cursor:not-allowed;transform:none;box-shadow:none}.form-actions{padding:30px;background:var(--background-color);display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#00000080;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-content{background-color:var(--card-bg);margin:5% auto;padding:0;border-radius:var(--border-radius);width:90%;max-width:800px;max-height:80vh;overflow:hidden;box-shadow:0 10px 30px #0000004d}.modal-header{padding:20px 30px;background:var(--primary-color);color:#fff;display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:1.5rem}.close{color:#fff;font-size:28px;font-weight:700;cursor:pointer;transition:var(--transition)}.close:hover{opacity:.7}.modal-body{padding:30px;max-height:400px;overflow-y:auto}.modal-footer{padding:20px 30px;background:var(--background-color);display:flex;gap:15px;justify-content:flex-end}#casePreview{background:var(--background-color);padding:20px;border-radius:var(--border-radius);font-family:Courier New,monospace;font-size:.9rem;line-height:1.4;white-space:pre-wrap;max-height:300px;overflow-y:auto}.status-message{padding:15px 20px;border-radius:var(--border-radius);margin:20px 0;font-weight:600}.status-success{background:#27ae601a;color:var(--success-color);border:1px solid var(--success-color)}.status-error{background:#e74c3c1a;color:var(--error-color);border:1px solid var(--error-color)}.status-warning{background:#f39c121a;color:var(--warning-color);border:1px solid var(--warning-color)}.loading{opacity:.6;pointer-events:none}.loading:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid var(--primary-color);border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.container{padding:10px}.generator-header{padding:20px}.generator-header h1{font-size:2rem}.form-section{padding:20px}.form-grid{grid-template-columns:1fr;gap:15px}.form-actions{flex-direction:column;align-items:center}.btn-primary,.btn-secondary{width:100%;justify-content:center}.modal-content{width:95%;margin:10% auto}.modal-header,.modal-body,.modal-footer{padding:15px}}@media (max-width: 480px){.generator-header h1{font-size:1.8rem}.form-section h2{font-size:1.3rem}.subsection{padding:15px}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;font-size:.95rem}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.btn-primary:focus,.btn-secondary:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:2px solid var(--primary-color);outline-offset:2px}@media (prefers-contrast: high){:root{--border-color: #000000;--text-color: #000000;--light-text: #333333}.form-group input,.form-group select,.form-group textarea{border-width:2px}}.split-layout{display:flex;min-height:500px;position:relative}.form-side{flex:0 0 75%;padding:20px;border-right:2px solid #e1e5e9;overflow-y:auto;max-height:80vh;min-width:300px}.preview-side{flex:0 0 25%;padding:25px;background:#f8f9fa;overflow-y:auto;max-height:80vh;min-width:250px}.resize-handle{position:absolute;left:75%;top:0;bottom:0;width:8px;background:#6c757d;cursor:col-resize;z-index:10;transition:background .3s}.resize-handle:hover{background:#495057}.resize-handle:before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:2px;height:40px;background:#fff;border-radius:1px}.resize-handle:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:2px;height:20px;background:#fff;border-radius:1px;margin-top:25px}.resizing{-webkit-user-select:none;user-select:none;cursor:col-resize}.resizing .form-side,.resizing .preview-side{pointer-events:none}.case-preview{background:#fff;border-radius:8px;padding:20px;box-shadow:0 4px 12px #0000001a;margin-bottom:15px}.case-preview h3{color:#495057;margin-bottom:15px;border-bottom:2px solid #e1e5e9;padding-bottom:8px;font-size:1.1rem}.case-section{margin-bottom:15px}.case-section h4{color:#495057;font-size:1rem;margin-bottom:8px}.case-item{background:#e3f2fd;border:1px solid #bbdefb;border-radius:5px;padding:6px 10px;margin:4px 0;display:flex;justify-content:space-between;align-items:center;font-size:.85rem}.case-item .remove-btn{background:#f44336;color:#fff;border:none;border-radius:3px;padding:2px 6px;cursor:pointer;font-size:.8rem}.case-item .remove-btn:hover{background:#d32f2f}.case-item.empty{background:#f5f5f5;border:1px dashed #ccc;color:#999;font-style:italic}.input-with-add{display:flex;gap:10px;align-items:center}.input-with-add input{flex:1}.add-btn{background:#28a745;color:#fff;border:none;border-radius:5px;padding:8px 12px;cursor:pointer;font-weight:600;transition:background .3s;font-size:.8rem}.add-btn:hover{background:#218838}.add-btn:disabled{background:#6c757d;cursor:not-allowed}.header{background:#fff;color:#495057;padding:15px;text-align:center;border-bottom:1px solid #e1e5e9}.header h1{font-size:1.6rem;margin-bottom:4px}.header p{font-size:.9rem;opacity:.8}.form-container{padding:25px}.phase{margin-bottom:30px;border:2px solid #e1e5e9;border-radius:8px;overflow:hidden}.phase-header{background:var(--category-gradient);color:#fff;padding:25px 30px;border:none;border-radius:16px 16px 0 0;position:relative;overflow:hidden;box-shadow:0 8px 32px #00000014;margin-bottom:0}.phase-header:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="50" cy="50" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');opacity:.3;pointer-events:none}.phase-header h3{color:#fff;font-size:1.4rem;font-weight:700;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.2);position:relative;z-index:1}.phase-content{padding:20px;display:none}.phase-content.active{display:block}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:6px;font-weight:600;color:#495057;font-size:.9rem}.form-control{width:100%;padding:8px;border:2px solid #e1e5e9;border-radius:6px;font-size:.85rem;transition:border-color .3s}.form-control:focus{outline:none;border-color:#495057}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-row.three-col{grid-template-columns:1fr 1fr 1fr}.btn{padding:8px 16px;border:none;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .3s;font-weight:600}.btn-secondary{background:#6c757d;color:#fff}.btn-success{background:#28a745;color:#fff}.btn-danger{background:#dc3545;color:#fff}.test-section{border:2px solid #e1e5e9;border-radius:12px;padding:20px;margin-bottom:20px;background:linear-gradient(135deg,#fff,#f8f9fa);box-shadow:0 4px 12px #00000014;transition:all .3s ease}.test-section:hover{border-color:#667eea;box-shadow:0 6px 20px #667eea26}.test-category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px;margin-top:10px}.test-category-card{background:linear-gradient(135deg,#f8f9fa,#fff);border:2px solid #e1e5e9;border-radius:12px;padding:20px;cursor:pointer;transition:all .3s ease;text-align:center;box-shadow:0 2px 8px #00000014}.test-category-card:hover{border-color:#667eea;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;transform:translateY(-3px);box-shadow:0 4px 16px #667eea4d}.test-category-card h4{margin:0 0 8px;font-size:1.1rem;font-weight:600}.test-category-card p{margin:0;font-size:.9rem;opacity:.8}.test-section h4{color:#495057;margin-bottom:15px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding:8px 0;border-bottom:1px solid #e1e5e9}.test-section h4 .header-text{flex:1;min-width:200px;font-size:1.1rem;font-weight:600}.test-section h4 .header-buttons{display:flex;gap:8px;flex-wrap:wrap}.add-test-btn{background:#28a745;color:#fff;border:none;border-radius:5px;padding:6px 12px;cursor:pointer;font-size:.8rem;font-weight:600;transition:background-color .2s}.add-test-btn:hover{background:#218838}.test-item{display:grid;grid-template-columns:2fr 1.2fr 1.5fr 1fr auto auto;gap:12px;align-items:center;padding:15px;border:2px solid #e9ecef;border-radius:8px;margin-bottom:12px;background:linear-gradient(135deg,#fff,#f8f9fa);box-shadow:0 2px 6px #0000000d;transition:all .3s ease}.test-item:hover{border-color:#667eea;background:linear-gradient(135deg,#f8f9fa,#e9ecef);box-shadow:0 4px 12px #667eea1a;transform:translateY(-1px)}.test-item input,.test-item select{padding:10px 12px;border:2px solid #e1e5e9;border-radius:6px;font-size:.9rem;width:100%;transition:all .2s ease;background:#fff}.test-item input:focus,.test-item select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.test-item .test-value-container{display:flex;align-items:center;gap:5px}.test-item .test-value-correct,.test-item .test-value-total{width:50px!important;text-align:center}.test-item .add-btn{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;border-radius:6px;padding:8px 12px;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s ease;box-shadow:0 2px 4px #28a74533}.test-item .add-btn:hover{background:linear-gradient(135deg,#218838,#1ea472);transform:translateY(-1px);box-shadow:0 4px 8px #28a7454d}.test-item .remove-test{background:linear-gradient(135deg,#dc3545,#e83e8c);color:#fff;border:none;border-radius:6px;padding:8px 10px;cursor:pointer;font-size:1rem;font-weight:700;transition:all .2s ease;box-shadow:0 2px 4px #dc354533;width:35px;height:35px;display:flex;align-items:center;justify-content:center}.test-item .remove-test:hover{background:linear-gradient(135deg,#c82333,#d33682);transform:translateY(-1px);box-shadow:0 4px 8px #dc35454d}.pain-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-top:6px}.pain-item{display:flex;flex-direction:column}.pain-item label{font-weight:600;margin-bottom:4px;color:#495057;font-size:.8rem}.pain-item select{padding:6px 8px;border:2px solid #e1e5e9;border-radius:5px;font-size:.8rem}.tag-input-container{display:flex;gap:8px;align-items:center;margin-bottom:8px}.tag-input-container input{flex:1;padding:6px 8px;border:2px solid #e1e5e9;border-radius:5px;font-size:.8rem}.tag-input-container button{padding:6px 12px;background:#28a745;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:.8rem;font-weight:600}.tag-input-container button:hover{background:#218838}.tag-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.tag{background:#e3f2fd;color:#1976d2;padding:4px 8px;border-radius:12px;font-size:.75rem;display:flex;align-items:center;gap:4px}.tag .remove-tag{background:none;border:none;color:#1976d2;cursor:pointer;font-size:.8rem;padding:0;margin:0}.tag .remove-tag:hover{color:#d32f2f}.progress-bar{background:#e9ecef;border-radius:10px;height:8px;margin-bottom:20px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#667eea,#764ba2);height:100%;width:0%;transition:width .5s ease}.compatibility-notice{background:#d4edda;border:1px solid #c3e6cb;border-radius:6px;padding:12px;margin:15px 0;text-align:center}.compatibility-notice p{margin:4px 0;font-size:.85rem;color:#155724}.actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:20px 0;padding:20px;background:#f8f9fa;border-radius:8px}.export-btn{background:#17a2b8!important;color:#fff!important}.export-btn:hover{background:#138496!important}.btn-info{background:#17a2b8;color:#fff}.btn-info:hover{background:#138496}.btn-warning{background:#ffc107;color:#212529}.btn-warning:hover{background:#e0a800}.json-preview{background:#f8f9fa;border:1px solid #e1e5e9;border-radius:6px;padding:15px;margin-top:20px}.json-preview h4{color:#495057;margin-bottom:10px}.json-preview pre{background:#2d3748;color:#e2e8f0;padding:15px;border-radius:5px;overflow-x:auto;font-size:.8rem;line-height:1.4}.remove-btn{padding:5px 10px;background:#dc3545;color:#fff;border:none;border-radius:3px;cursor:pointer;font-size:.85rem;margin-left:5px;transition:background-color .2s}.remove-btn:hover{background:#c82333}.no-tests{text-align:center;padding:30px;color:#6c757d;font-style:italic;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px dashed #ced4da;border-radius:12px;margin:15px 0}#objectiveBodyPart{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600;border:2px solid #495057;box-shadow:0 4px 8px #0000001a;padding:12px 15px;border-radius:8px;font-size:1rem}#objectiveBodyPart option{background:#fff;color:#495057;font-weight:400;padding:8px}#objectiveBodyPart:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.neurological-type-selection{margin-top:20px;text-align:center;padding:20px;background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border-radius:12px;border:2px solid #e1e5e9}.neurological-type-selection h5{margin-bottom:15px;color:#495057;font-weight:600}.neurological-type-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.neurological-back{margin-bottom:15px}.test-section h4 .header-text{display:flex;align-items:center;gap:10px}.test-section h4 .header-text:before{content:"📊";font-size:1.2rem}#test-categories:before{content:"🎯 Choose a Test Category";display:block;font-size:1.2rem;font-weight:600;color:#495057;text-align:center;margin-bottom:20px;padding:15px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px;border:2px solid #e1e5e9}.special-test-entry{border:1px solid #ddd;padding:15px;margin:10px 0;border-radius:5px;background:#f9f9f9}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.objective-phase{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;box-shadow:0 8px 32px #0000001a;overflow:hidden;margin-bottom:30px}.objective-phase .phase-header{background:var(--category-gradient);color:#fff;padding:25px 30px;border:none;position:relative;overflow:hidden}.objective-phase .phase-header:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="50" cy="50" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');opacity:.3}.objective-phase .phase-header h3{color:#fff;font-size:1.4rem;font-weight:700;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.2);position:relative;z-index:1}.objective-phase .phase-content{padding:30px;background:#fff}.suggestions{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:2px solid #e1e5e9;border-radius:12px;padding:25px;margin-bottom:30px;position:relative;overflow:hidden}.suggestions:before{content:"💡";position:absolute;top:15px;right:20px;font-size:2rem;opacity:.3}.suggestions h5{color:#495057;font-size:1.2rem;font-weight:600;margin-bottom:15px;display:flex;align-items:center;gap:10px}.suggestions p{margin:8px 0;color:#495057;font-size:.95rem;line-height:1.5;padding-left:20px;position:relative}.suggestions p:before{content:"•";position:absolute;left:0;color:#667eea;font-weight:700}.body-part-selector{background:#fff;border:3px solid #e1e5e9;border-radius:12px;padding:25px;margin-bottom:30px;box-shadow:0 4px 12px #00000014;transition:all .3s ease}.body-part-selector:hover{border-color:#667eea;box-shadow:0 6px 20px #667eea26}.body-part-selector label{display:block;font-size:1.1rem;font-weight:600;color:#495057;margin-bottom:15px;text-align:center}.body-part-selector select{width:100%;padding:15px 20px;border:2px solid #e1e5e9;border-radius:10px;font-size:1.1rem;font-weight:500;background:linear-gradient(135deg,#f8f9fa,#fff);color:#495057;cursor:pointer;transition:all .3s ease;text-align:center}.body-part-selector select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 4px #667eea1a;background:#fff}.body-part-selector select option{padding:12px;font-size:1rem}.test-categories-container{margin:30px 0;opacity:0;transform:translateY(20px);animation:slideInUp .6s ease forwards}@keyframes slideInUp{to{opacity:1;transform:translateY(0)}}.test-category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:20px}.test-category-card{background:linear-gradient(135deg,#fff,#f8f9fa);border:3px solid #e1e5e9;border-radius:16px;padding:30px 25px;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);text-align:center;box-shadow:0 4px 12px #00000014;position:relative;overflow:hidden}.test-category-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:var(--category-gradient);opacity:0;transition:opacity .4s ease;z-index:0}.test-category-card:hover{border-color:#667eea;transform:translateY(-8px) scale(1.02);box-shadow:0 12px 32px #667eea40}.test-category-card:hover:before{opacity:1}.test-category-card:hover h4,.test-category-card:hover p{color:#fff;transform:translateY(-2px)}.test-category-card h4{margin:0 0 15px;font-size:1.3rem;font-weight:700;color:#495057;transition:all .4s ease;position:relative;z-index:1}.test-category-card p{margin:0;font-size:1rem;color:#6c757d;line-height:1.5;transition:all .4s ease;position:relative;z-index:1}.test-section{background:#fff;border:3px solid #e1e5e9;border-radius:16px;padding:30px;margin-bottom:25px;box-shadow:0 6px 20px #0000001a;transition:all .3s ease;position:relative;overflow:hidden}.test-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--category-gradient);opacity:0;transition:opacity .3s ease}.test-section:hover:before{opacity:1}.test-section h4{color:#495057;margin-bottom:25px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px;padding:0 0 20px;border-bottom:2px solid #e1e5e9;font-size:1.4rem;font-weight:600}.test-section h4 .header-text{flex:1;min-width:250px;display:flex;align-items:center;gap:12px}.test-section h4 .header-text:before{content:"📊";font-size:1.4rem}.test-section h4 .header-buttons{display:flex;gap:12px;flex-wrap:wrap}.test-category-card[onclick*=arom] h4:before{content:"🦴 "}.test-category-card[onclick*=prom] h4:before{content:"🤲 "}.test-category-card[onclick*=joint_play] h4:before{content:"🔧 "}.test-category-card[onclick*=mmt] h4:before{content:"💪 "}.test-category-card[onclick*=neurological] h4:before{content:"🧠 "}.test-category-card[onclick*=special_tests] h4:before{content:"🔍 "}.individual-tests-grid{display:flex;flex-direction:column;gap:15px}.individual-test-row{background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #e9ecef;border-radius:12px;padding:20px;display:grid;grid-template-columns:2fr 1.2fr 1.5fr auto;gap:20px;align-items:center;transition:all .3s ease;position:relative;overflow:hidden}.individual-test-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--category-gradient);opacity:0;transition:opacity .3s ease}.individual-test-row:hover{border-color:#667eea;background:linear-gradient(135deg,#f8f9fa,#e3f2fd);box-shadow:0 6px 20px #667eea26;transform:translateY(-2px)}.individual-test-row:hover:before{opacity:1}.test-name{display:flex;flex-direction:column;gap:8px}.test-name label{font-weight:600;color:#495057;font-size:1rem;margin:0}.test-standard{color:#6c757d;font-size:.85rem;font-style:italic;background:#e9ecef}.bilateral-note{display:inline-block;color:var(--primary-color);font-style:italic;font-size:.85em;margin-top:4px;padding:4px 8px;background:#3498db1a;border-radius:6px;border-left:3px solid var(--primary-color)}.test-side select,.test-value,.test-qualifier{width:100%;padding:12px 15px;border:2px solid #e1e5e9;border-radius:8px;font-size:.95rem;background:#fff;transition:all .2s ease}.test-side select:focus,.test-value:focus,.test-qualifier:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.test-value-container{display:flex;gap:10px;align-items:center}.test-value-container .test-value{flex:1}.test-value-container .test-qualifier{flex:0 0 120px}.add-btn{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;border-radius:8px;padding:12px 20px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s ease;box-shadow:0 4px 8px #28a74533;position:relative;overflow:hidden}.add-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.add-btn:hover{background:linear-gradient(135deg,#218838,#1ea472);transform:translateY(-2px);box-shadow:0 6px 16px #28a7454d}.add-btn:hover:before{left:100%}.add-btn:disabled{background:#6c757d;cursor:not-allowed;transform:none;box-shadow:none}.neurological-type-selection{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:2px solid #e1e5e9;border-radius:16px;padding:30px;margin:25px 0;text-align:center;position:relative;overflow:hidden}.neurological-type-selection:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="neuro-pattern" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(102,126,234,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(102,126,234,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23neuro-pattern)"/></svg>');opacity:.5}.neurological-type-selection h5{margin-bottom:20px;color:#495057;font-weight:600;font-size:1.2rem;position:relative;z-index:1}.neurological-type-buttons{display:flex;gap:15px;justify-content:center;flex-wrap:wrap;position:relative;z-index:1}.neurological-type-buttons .btn{background:#fff;color:#495057;border:2px solid #e1e5e9;border-radius:10px;padding:15px 25px;font-size:1rem;font-weight:600;transition:all .3s ease;box-shadow:0 4px 8px #0000001a}.neurological-type-buttons .btn:hover{background:var(--category-gradient);color:#fff;border-color:#667eea;transform:translateY(-3px);box-shadow:0 8px 20px #667eea4d}.sensation-input-group{display:flex;align-items:center;gap:8px;background:#f8f9fa;padding:8px 12px;border-radius:8px;border:2px solid #e1e5e9}.sensation-input-group input{border:none;background:transparent;text-align:center;font-weight:600;color:#495057}.sensation-input-group input:focus{outline:none}.sensation-input-group span{color:#6c757d;font-size:.9rem}.no-tests{text-align:center;padding:40px;color:#6c757d;font-style:italic;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:3px dashed #ced4da;border-radius:16px;margin:25px 0;font-size:1.1rem}.no-tests:before{content:"📋";font-size:2rem;display:block;margin-bottom:15px;opacity:.6}.objective-preview-section{background:#fff;border:2px solid #e1e5e9;border-radius:16px;padding:25px;margin-top:30px;box-shadow:0 4px 12px #00000014}.objective-preview-section h4{color:#495057;margin-bottom:20px;font-size:1.3rem;font-weight:600;display:flex;align-items:center;gap:10px;padding-bottom:15px;border-bottom:2px solid #e1e5e9}.objective-preview-section h4:before{content:"📋";font-size:1.4rem}.case-item{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:2px solid #bbdefb;border-radius:10px;padding:15px 20px;margin:10px 0;display:flex;justify-content:space-between;align-items:center;font-size:.9rem;transition:all .3s ease;position:relative;overflow:hidden}.case-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--category-gradient);opacity:0;transition:opacity .3s ease}.case-item:hover{border-color:#667eea;background:linear-gradient(135deg,#f8f9fa,#e3f2fd);transform:translate(5px);box-shadow:0 4px 12px #667eea26}.case-item:hover:before{opacity:1}.case-item .remove-btn{background:linear-gradient(135deg,#f44336,#e83e8c);color:#fff;border:none;border-radius:6px;padding:6px 12px;cursor:pointer;font-size:.8rem;font-weight:600;transition:all .3s ease;box-shadow:0 2px 4px #f4433633}.case-item .remove-btn:hover{background:linear-gradient(135deg,#d32f2f,#c2185b);transform:translateY(-1px);box-shadow:0 4px 8px #f443364d}.case-item.empty{background:#f5f5f5;border:2px dashed #ccc;color:#999;font-style:italic;text-align:center;justify-content:center}.case-item.empty:before{content:"📝";margin-right:10px;font-size:1.2rem}@media (max-width: 768px){.test-category-grid{grid-template-columns:1fr;gap:15px}.individual-test-row{grid-template-columns:1fr;gap:15px;text-align:center}.test-section h4{flex-direction:column;align-items:stretch;text-align:center}.test-section h4 .header-buttons{justify-content:center}.neurological-type-buttons{flex-direction:column;align-items:center}.neurological-type-buttons .btn{width:100%;max-width:300px}}@media (max-width: 480px){.objective-phase .phase-content,.test-section,.test-category-card{padding:20px}.individual-test-row{padding:15px}.sensation-input-group{flex-direction:column;gap:5px}}.auth-section{background:linear-gradient(135deg,#f8f9fa,#e3f2fd);border:1px solid #dee2e6;border-radius:12px;box-shadow:0 4px 12px #00000014;transition:all .3s ease}.auth-section:hover{box-shadow:0 6px 20px #0000001f;transform:translateY(-2px)}.auth-section h4{color:var(--primary-color);margin-bottom:15px;font-size:1.2rem;font-weight:600}.auth-section p{margin:8px 0;font-size:.95rem;line-height:1.4}.auth-section .btn{margin:5px 5px 5px 0;padding:8px 16px;font-size:.9rem;font-weight:500;border-radius:6px;transition:all .3s ease}.auth-section .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;box-shadow:0 2px 8px #667eea4d}.auth-section .btn-primary:hover{background:linear-gradient(135deg,#5a6fd8,#6a4c93);transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.auth-section .btn-outline-secondary{background:transparent;border:2px solid #6c757d;color:#6c757d}.auth-section .btn-outline-secondary:hover{background:#6c757d;color:#fff;transform:translateY(-1px)}#auth-status{transition:all .3s ease}#auth-not-signed-in p{color:#dc3545;font-weight:500}#auth-signed-in p{color:#28a745;font-weight:500}#user-email{font-weight:600;color:var(--primary-color)}
