body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary:#0a2540;--primary-light:#1e3a5f;--primary-dark:#051b30;--primary-subtle:#e6f0fa;--secondary:#34d399;--secondary-light:#6ee7b7;--secondary-dark:#10b981;--accent:#f59e0b;--warning:#f59e0b;--danger:#ef4444;--success:#10b981;--info:#3b82f6;--light:#fff;--dark:#111827;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--spacing-1:0.25rem;--spacing-2:0.5rem;--spacing-3:0.75rem;--spacing-4:1rem;--spacing-5:1.5rem;--spacing-6:2rem;--spacing-8:3rem;--spacing-10:4rem;--spacing-12:6rem;--border-radius-sm:0.375rem;--border-radius-md:0.5rem;--border-radius-lg:0.75rem;--border-radius-xl:1rem;--border-radius-2xl:1.5rem;--border-radius-full:9999px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--shadow-inner:inset 0 2px 4px 0 #0000000f;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-normal:250ms cubic-bezier(0.4,0,0.2,1);--transition-slow:350ms cubic-bezier(0.4,0,0.2,1)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f3f4f6;background-color:var(--gray-100);color:#111827;color:var(--gray-900);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-family:var(--font-family);margin:0;padding:0}.app{background-color:#f3f4f6}.top-nav{background-color:#fff;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);padding:.75rem 1.5rem;z-index:100}.nav-menu{gap:1.5rem}.admin-menu-item,.menu-item{border-radius:.5rem;border-radius:var(--border-radius-md);color:#374151;color:var(--gray-700);font-size:.875rem;padding:.5rem .75rem;transition:all .15s cubic-bezier(.4,0,.2,1)}.admin-menu-item:hover,.menu-item:hover{background-color:#f3f4f6;color:#0a2540}.nav-auth a{background-color:#0a2540;border-radius:.5rem;border-radius:var(--border-radius-md);font-size:.875rem;padding:.5rem 1rem;transition:background-color .15s cubic-bezier(.4,0,.2,1);transition:background-color var(--transition-fast)}.nav-auth a:hover{background-color:#051b30}.dashboard{flex-direction:column;height:calc(100vh - 60px)}.dashboard-header{border-bottom:1px solid #e5e7eb;padding:1rem 1.5rem}.project-selector-container{gap:.5rem}.project-selector-container label{color:#374151;color:var(--gray-700);font-size:.875rem;font-size:var(--font-size-sm);font-weight:500}.project-selector-container select{background-color:#fff;border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:.5rem;border-radius:var(--border-radius-md);color:#1f2937;color:var(--gray-800);font-size:.875rem;font-size:var(--font-size-sm);min-width:180px;outline:none;padding:.5rem;transition:border-color .15s cubic-bezier(.4,0,.2,1);transition:border-color var(--transition-fast)}.project-selector-container select:focus{border-color:#1e3a5f;border-color:var(--primary-light);box-shadow:0 0 0 2px #5e60ce1a}.generate-from-file-button{background-color:#0a2540;background-color:var(--primary);border-radius:.5rem;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .15s cubic-bezier(.4,0,.2,1)}.generate-from-file-button.disabled{background-color:#9ca3af;background-color:var(--gray-400)}.tooltip{background-color:#111827;background-color:var(--dark);border-radius:.375rem;border-radius:var(--border-radius-sm);font-size:.75rem;font-size:var(--font-size-xs);padding:.5rem;z-index:10}.dashboard-tabs{background-color:#fff;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);display:flex;padding:0 1.5rem}.tab-button{background-color:initial;color:#4b5563;color:var(--gray-600);font-size:.875rem;font-size:var(--font-size-sm);gap:.5rem;padding:1rem 1.5rem;position:relative;transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast)}.tab-button:hover{color:#111827;color:var(--gray-900)}.tab-button.active{color:#0a2540;color:var(--primary)}.tab-button.active:after{background-color:#0a2540;background-color:var(--primary);bottom:0;content:"";height:2px;left:0;position:absolute;width:100%}.tree-container{border-right:1px solid #e5e7eb;border-right:1px solid var(--gray-200);overflow-y:auto;transition:width .25s cubic-bezier(.4,0,.2,1);transition:width var(--transition-normal)}.content-container{background-color:#f3f4f6;background-color:var(--gray-100);overflow-y:auto}.no-test-selected{color:#6b7280}.empty-state{background-color:#fff;border-radius:.75rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md)}.empty-state h3{color:#374151;margin:1rem 0 .5rem}.empty-state p{color:#4b5563;font-size:.875rem}button{border:none;border-radius:.5rem;border-radius:var(--border-radius-md);cursor:pointer;font-size:.875rem;font-size:var(--font-size-sm);font-weight:500;padding:.5rem 1rem;transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast)}.btn-primary{background-color:#0a2540;background-color:var(--primary)}.btn-primary:hover{background-color:#051b30;background-color:var(--primary-dark)}.btn-secondary{background-color:#fff;border:1px solid #d1d5db;border:1px solid var(--gray-300);color:var(--gray-700)}.btn-secondary:hover{background-color:#f3f4f6;background-color:var(--gray-100)}.btn-danger{background-color:#ef4444;background-color:var(--danger);color:#fff}.btn-danger:hover{background-color:#e64c51}.btn-success{background-color:#10b981;background-color:var(--success);color:#fff}.btn-success:hover{background-color:#00996a}input,select,textarea{background-color:#fff;border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:.5rem;border-radius:var(--border-radius-md);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-family:var(--font-family);font-size:.875rem;font-size:var(--font-size-sm);padding:.5rem .75rem;transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast)}input:focus,select:focus,textarea:focus{border-color:#1e3a5f;border-color:var(--primary-light);box-shadow:0 0 0 2px #5e60ce1a;outline:none}.test-case-steps{background-color:#fff;border-radius:.75rem;border-radius:var(--border-radius-lg);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);overflow:hidden}.test-case-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;padding:1.25rem}.test-case-title{color:#111827;color:var(--gray-900);font-size:1.25rem;font-size:var(--font-size-xl);font-weight:600;margin:0}.test-case-description{color:#4b5563;color:var(--gray-600);font-size:.875rem;font-size:var(--font-size-sm);margin:.5rem 0 0}.test-steps-container{padding:1rem}.test-step{background-color:#fff;border:1px solid #e5e7eb;border:1px solid var(--gray-200);border-radius:.5rem;border-radius:var(--border-radius-md);margin-bottom:.75rem;padding:.75rem;transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast)}.test-step:hover{border-color:#1e3a5f;border-color:var(--primary-light);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm)}.test-step-header{align-items:center;display:flex;justify-content:space-between;padding-bottom:.5rem}.test-step-number{color:#0a2540;color:var(--primary);font-weight:600}.test-step-actions{display:flex;gap:.5rem}.test-step-content{grid-gap:.75rem;display:grid;font-size:.875rem;font-size:var(--font-size-sm);gap:.75rem;grid-template-columns:100px 1fr}.test-step-label{color:#4b5563;color:var(--gray-600);font-weight:500}.test-step-value{color:#111827;color:var(--gray-900)}.popup-overlay{z-index:1000}.popup-content{animation:popup-fade-in .3s ease;border-radius:.75rem;border-radius:var(--border-radius-lg);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;box-shadow:var(--shadow-xl);max-height:90vh;max-width:500px;overflow-y:auto;width:90%}@keyframes popup-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.popup-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;padding:1.25rem}.popup-title{color:#111827;color:var(--gray-900);font-weight:600;margin:0}.popup-close,.popup-title{font-size:1.25rem;font-size:var(--font-size-xl)}.popup-close{background:none;border:none;color:#6b7280;color:var(--gray-500);cursor:pointer;transition:color .15s cubic-bezier(.4,0,.2,1);transition:color var(--transition-fast)}.popup-close:hover{color:#111827;color:var(--gray-900)}.popup-body{padding:1.5rem}.popup-footer{border-top:1px solid #e5e7eb;border-top:1px solid var(--gray-200);display:flex;gap:.75rem;justify-content:flex-end;padding:1.25rem}.test-case-tree{padding:1rem}.tree-item{margin-bottom:.25rem}.tree-item-content{align-items:center;border-radius:.5rem;border-radius:var(--border-radius-md);cursor:pointer;display:flex;gap:.5rem;padding:.5rem .75rem;transition:background-color .15s cubic-bezier(.4,0,.2,1);transition:background-color var(--transition-fast)}.tree-item-content:hover{background-color:#f3f4f6;background-color:var(--gray-100)}.tree-item-content.selected{background-color:#5e60ce1a;color:#0a2540;color:var(--primary)}.tree-item-icon{color:#6b7280;color:var(--gray-500)}.tree-item-text{font-size:.875rem;font-size:var(--font-size-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-item-group{margin-left:1.5rem}.loading-spinner{animation:spinner-rotate .6s linear infinite;border:2px solid #e5e7eb;border-top-color:#0a2540;border:2px solid var(--gray-200);border-radius:50%;border-top-color:var(--primary);display:inline-block;height:1rem;width:1rem}@keyframes spinner-rotate{to{transform:rotate(1turn)}}@media (max-width:768px){.dashboard-main{flex-direction:column}.tree-container{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);border-right:none;height:300px;width:100%}.content-container{padding:1rem}.dashboard-header{align-items:stretch;flex-direction:column;gap:1rem}}.test-case-tree-container{border-right:1px solid var(--gray-200);height:100%;width:100%}.test-case-tree-container,.test-case-tree-header{background-color:#fff;display:flex;flex-direction:column}.test-case-tree-header{border-bottom:1px solid var(--gray-200);gap:1rem;padding:1rem}.header-top-row{align-items:center;display:flex;justify-content:space-between}.test-case-tree-header h3{color:var(--gray-900);font-size:1.1rem;font-weight:700;margin:0}.icon-button{align-items:center;background-color:#fff;border:1px solid var(--gray-200);border-radius:var(--border-radius-md);color:var(--gray-600);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.icon-button:hover{background-color:var(--gray-50);border-color:var(--primary-light);color:var(--primary)}.icon-button.primary{background-color:var(--secondary);border:none;color:var(--primary-dark)}.icon-button.primary:hover{background-color:var(--secondary-light);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.search-bar-container{position:relative;width:100%}.search-icon{color:var(--gray-400);font-size:.9rem;left:10px}.tree-search-input{background-color:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--border-radius-md);font-size:.9rem;padding:.6rem 1rem .6rem 2.2rem;transition:all .2s ease;width:100%}.tree-search-input:focus{background-color:#fff;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle);outline:none}.test-case-tree{flex:1 1;overflow-y:auto;padding:.5rem}.tree-controls{border-bottom:1px solid var(--gray-100);display:flex;gap:.5rem;justify-content:flex-end;padding:.5rem 1rem}.tree-control-button{background:none;border:none;border-radius:4px;color:var(--gray-500);cursor:pointer;font-size:.8rem;padding:4px}.tree-control-button:hover{background-color:var(--gray-100);color:var(--gray-900)}.tree-node{margin-bottom:2px}.node-content{align-items:center;border:1px solid #0000;border-radius:var(--border-radius-md);color:var(--gray-700);cursor:pointer;display:flex;padding:.6rem .5rem;transition:all .15s ease}.node-content:hover{background-color:var(--gray-50)}.node-content.selected{background-color:var(--primary-subtle);border-color:#4f46e51a;color:var(--primary-dark);font-weight:500}.expand-icon{align-items:center;color:var(--gray-400);display:flex;font-size:.7rem;height:20px;justify-content:center;margin-right:4px;transition:transform .2s ease;width:20px}.node-spacer{width:24px}.node-icon{color:var(--gray-400);font-size:1rem;margin-right:10px;text-align:center;width:20px}.folder-icon{color:#fbbf24}.file-icon{color:var(--gray-400)}.node-content.selected .file-icon{color:var(--primary)}.node-content-text{flex:1 1;font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-actions{display:none;gap:4px}.node-content:hover .node-actions{display:flex}.tree-action-button{align-items:center;background:none;border:none;border-radius:4px;color:var(--gray-500);cursor:pointer;display:flex;font-size:.8rem;height:24px;justify-content:center;width:24px}.tree-action-button:hover{background-color:#fff;box-shadow:var(--shadow-sm);color:var(--primary)}.node-children{border-left:1px solid var(--gray-200);margin-left:24px;padding-left:4px}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{animation:fadeIn .2s ease-out;max-width:550px;padding:2.5rem}.modal-content h3{color:var(--gray-900);display:inline-block;font-weight:700;margin-bottom:2rem;padding-bottom:.5rem}.modal-content h3:after{background-color:#009688;border-radius:2px;width:40px}.form-group label{color:var(--gray-700);font-size:.9rem}.form-group input,.form-group select,.form-group textarea{background-color:#f8fafc;border:1px solid #e2e8f0;color:var(--gray-900);padding:.75rem 1rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background-color:#fff;border-color:#009688;box-shadow:0 0 0 3px #0096881a}.modal-actions{margin-top:2rem}.modal-button{border-radius:6px;font-size:.95rem;padding:.75rem 1.5rem;transition:all .2s}.modal-button.cancel{background-color:#f1f5f9;border:1px solid #0000;color:#64748b}.modal-button.cancel:hover{background-color:#e2e8f0;color:#475569}.modal-button.confirm,.modal-button.create,.modal-button.update{background-color:#009688;box-shadow:0 4px 6px -1px #00968833,0 2px 4px -1px #0096881a;color:#fff}.modal-button.confirm:hover,.modal-button.create:hover,.modal-button.update:hover{background-color:#00897b;box-shadow:0 10px 15px -3px #0096884d,0 4px 6px -2px #00968826;transform:translateY(-1px)}.modal-button.delete{background-color:#ef4444}.modal-button.delete:hover{background-color:#dc2626}.tree-empty{color:var(--gray-500);font-style:italic;padding:3rem;text-align:center}.tree-error{background-color:#fee2e2;border:1px solid #fecaca;border-radius:var(--border-radius-md);color:#b91c1c;margin:1rem;padding:1rem}.ai-model-selector{align-items:center;display:flex;margin-right:15px}.ai-model-selector-label{font-size:14px;margin-right:8px;white-space:nowrap}.ai-model-dropdown{min-width:180px;position:relative}.ai-model-selected{align-items:center;background-color:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:8px 12px}.ai-model-selected:hover{background-color:#f5f5f5}.ai-icon{color:#6772e5;margin-right:8px}.ai-model-options{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 2px 8px #00000026;left:0;max-height:300px;overflow-y:auto;position:absolute;top:100%;width:100%;z-index:1000}.ai-model-option{border-bottom:1px solid #eee;cursor:pointer;padding:10px 12px}.ai-model-option:last-child{border-bottom:none}.ai-model-option:hover{background-color:#f5f5f5}.ai-model-option.selected{background-color:#f0f7ff}.model-name{font-weight:500;margin-bottom:4px}.model-description{color:#666;font-size:12px;margin-bottom:4px}.model-tag{border-radius:10px;display:inline-block;font-size:10px;margin-top:4px;padding:2px 6px}.model-tag.default{background-color:#e6f7ff;border:1px solid #91d5ff;color:#1890ff}.running-test-indicator{margin-bottom:15px}.current-test-running{align-items:center;background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:1px solid #2196f3;border-radius:8px;color:#1565c0;display:flex;font-weight:500;gap:8px;padding:12px 16px}.current-test-running .spinning{animation:spin 1s linear infinite;color:#2196f3}.running-tests-summary{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;overflow:hidden}.running-tests-header{align-items:center;background:#e9ecef;border-bottom:1px solid #dee2e6;color:#495057;display:flex;font-weight:600;gap:8px;padding:12px 16px}.running-tests-header svg{color:#28a745}.running-tests-list{max-height:200px;overflow-y:auto}.running-test-item{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:12px 16px}.running-test-item:last-child{border-bottom:none}.test-info{flex-direction:column;gap:4px}.execution-name,.test-timing{font-size:.85em}.test-timing{color:#6c757d;gap:6px}.test-timing svg{color:#17a2b8}@media (max-width:768px){.running-test-item{align-items:flex-start;flex-direction:column;gap:8px}.test-timing{align-self:flex-end}}.reasoning-panel{background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 8px 32px #0000001a;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:20px 0;overflow:hidden}.reasoning-header{align-items:center;background:#0a2540;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;transition:all .3s ease;-webkit-user-select:none;user-select:none}.reasoning-header:hover{background:#051a2e;box-shadow:0 4px 12px #00bfa566}.brain-icon,.header-title{color:#fff}.generating-badge{background:#fff3;color:#fff;display:inline-flex;padding:4px 12px}.generating-badge .spinning{animation:spin 1s linear infinite}.toggle-icon{color:#fff;font-size:16px}.reasoning-content{background:#fff;max-height:800px;overflow-y:auto;padding:20px}.reasoning-content::-webkit-scrollbar{width:8px}.reasoning-content::-webkit-scrollbar-track{background:#f5f5f5}.reasoning-content::-webkit-scrollbar-thumb{background:#00bfa5;border-radius:4px}.reasoning-content::-webkit-scrollbar-thumb:hover{background:#008a7a}.overall-status{background:linear-gradient(135deg,#00bfa51a,#0a25401a);border-left:4px solid #00bfa5;border-radius:8px;margin-bottom:16px;padding:12px 16px}.status-message{color:#0a2540;font-size:14px;font-weight:500;line-height:1.6}.thoughts-section{margin-bottom:20px}.thoughts-header{align-items:center;color:#fbbf24;display:flex;font-size:14px;font-weight:600;gap:8px;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.thoughts-list{display:flex;flex-direction:column;gap:8px}.thought-item{align-items:flex-start;background:#fbbf240d;border-left:3px solid #fbbf24;border-radius:6px;display:flex;gap:10px;padding:10px 12px}.thought-marker{flex-shrink:0;font-size:16px}.thought-text{color:#0a2540;font-size:13px;line-height:1.5}.split-section{background:#00bfa50d;border:1px solid #00bfa533;border-radius:8px;margin-bottom:20px;overflow:hidden}.split-header{align-items:center;background:#0a2540;color:#fff;display:flex;font-size:14px;font-weight:600;gap:8px;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase}.split-info{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.split-item{align-items:center;display:flex;gap:12px;justify-content:space-between}.split-label,.split-value{font-size:13px}.split-value{color:#0a2540}.progress-bar{background:#6366f133;flex:1 1}.progress-fill{background:#00bfa5}.split-phases{border-top:1px solid #6366f133;margin-top:12px;padding-top:12px}.phases-label{font-size:12px;margin-bottom:8px}.phase-badge{align-items:center;border:1px solid #00bfa566;border-radius:20px;display:inline-flex;gap:6px;margin-bottom:8px;margin-right:8px;padding:6px 12px}.phase-number{align-items:center;background:#0a2540;border-radius:50%;color:#fff;display:flex;font-size:11px;font-weight:600;height:20px;justify-content:center;width:20px}.phase-title,.strategy-description{color:#0a2540;font-size:12px}.strategy-description{background:#6366f11a;border-radius:6px;line-height:1.5;margin-top:12px}.phases-section{margin-bottom:20px}.phases-header{align-items:center;color:#00bfa5;display:flex;font-size:14px;font-weight:600;gap:8px;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.phases-list{flex-direction:column;gap:10px}.phase-item{background:#6366f10d;border:1px solid #6366f133;border-radius:8px;padding:12px;transition:all .3s ease}.phase-item.completed{background:#22c55e0d;border-color:#22c55e66}.phase-item.in-progress{background:#3b82f60d;border-color:#3b82f666;box-shadow:0 0 12px #3b82f633}.phase-item.pending{background:#6b72800d;border-color:#6b728066}.phase-header{align-items:center;display:flex;gap:8px;margin-bottom:8px}.phase-icon{font-size:14px}.phase-item.completed .phase-icon{color:#00bfa5}.phase-item.in-progress .phase-icon{color:#3b82f6}.phase-item.pending .phase-icon{color:#6b7280}.phase-name{color:#0a2540;flex:1 1;font-size:13px;font-weight:600}.phase-status{color:#666;font-size:11px;font-weight:500;text-transform:uppercase}.phase-description{color:#0a2540;font-size:12px;line-height:1.4;margin-bottom:8px}.phase-details{background:#0003;border-radius:4px;color:#666;font-size:12px;line-height:1.5;margin-left:22px;padding:8px}.phase-details ul{margin:0;padding-left:16px}.phase-details li{margin:4px 0}.current-step-section{background:#00bfa50d;border:1px solid #00bfa533;border-radius:8px;margin-bottom:20px;overflow:hidden}.current-step-header{align-items:center;background:#0a2540;color:#fff;display:flex;font-size:14px;font-weight:600;gap:8px;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase}.current-step-content{padding:16px}.step-info{display:flex;flex-direction:column;gap:10px}.step-item{align-items:center;display:flex;gap:8px}.step-label{color:#666;font-size:12px;font-weight:600;text-transform:uppercase}.step-action{background:#00bfa5;border-radius:4px;color:#fff;font-size:13px;font-weight:600;padding:4px 10px}.step-description{color:#0a2540;font-size:13px;line-height:1.5;padding:8px 0}.step-reasoning{background:#00bfa51a;border-radius:6px;color:#0a2540;font-size:12px;line-height:1.5;padding:10px 12px}.step-reasoning strong{color:#0a2540}.step-element{background:#00bfa51a;border-radius:6px;color:#0a2540;font-family:Monaco,Menlo,monospace;font-size:12px;line-height:1.5;padding:10px 12px;word-break:break-all}.step-element strong{color:#0a2540}.timeline-section{margin-bottom:20px}.timeline-header{align-items:center;color:#00bfa5;display:flex;font-size:14px;font-weight:600;gap:8px;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.timeline-items{border-left:2px solid #8b5cf64d;display:flex;flex-direction:column;gap:0;margin-left:8px;padding-left:0}.timeline-item{border-bottom:1px solid #8b5cf61a;padding:12px 0 12px 16px;position:relative}.timeline-item:last-child{border-bottom:none}.timeline-marker{border:2px solid #fff;border-radius:50%;height:14px;left:-9px;position:absolute;top:16px;width:14px}.timeline-item.success .timeline-marker,.timeline-marker{background:#00bfa5}.timeline-item.error .timeline-marker{background:#000}.timeline-item.warning .timeline-marker{background:#999}.timeline-time{color:#666;font-size:11px;font-weight:600;margin-bottom:4px;text-transform:uppercase}.timeline-message{color:#0a2540;font-size:12px;line-height:1.5}.statistics-section{background:#00bfa50d;border:1px solid #00bfa533;border-radius:8px;margin-bottom:20px;overflow:hidden}.stats-header{background:#0a2540;color:#fff;font-size:14px;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:16px}.stat-item{gap:4px}.stat-value{color:#0a2540}.reasoning-loading{align-items:center;color:#666;display:flex;font-size:14px;gap:12px;justify-content:center;padding:40px 20px}.reasoning-loading .spinning{animation:spin 1s linear infinite}.steps-progress-section{background:#00bfa50d;border:1px solid #00bfa533;border-radius:8px;margin-bottom:20px;overflow:hidden}.steps-progress-header{align-items:center;background:#0a2540;color:#fff;display:flex;font-size:12px;font-weight:600;gap:8px;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase}.steps-progress-content{display:flex;flex-direction:column;gap:12px;padding:16px}.steps-comparison{align-items:center;display:flex;gap:20px;justify-content:center}.steps-generated,.steps-planned{align-items:center;display:flex;flex-direction:column;gap:6px}.steps-label{color:#666;font-size:11px;font-weight:600;text-transform:uppercase}.steps-count{font-size:32px;font-weight:700}.steps-count,.steps-count.generated-count,.steps-count.planned-count{color:#00bfa5}.steps-separator{color:#00bfa5;font-size:24px;font-weight:300}.progress-bar-large{background:#ffffff1a;border-radius:4px;height:8px;overflow:hidden;width:100%}.progress-fill-large{background:#00bfa5;height:100%;transition:width .3s ease}.progress-percentage{color:#00bfa5;font-size:12px;font-weight:600;text-align:center}.split-details-section{background:#00bfa50d;border:1px solid #00bfa533;border-radius:8px;margin-bottom:20px;overflow:hidden}.split-details-header{align-items:center;background:#0a2540;color:#fff;display:flex;font-size:12px;font-weight:600;gap:8px;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase}.split-details-content{display:flex;flex-direction:column;gap:14px;padding:16px}.split-strategy-box{background:#f5f5f5;border-left:3px solid #00bfa5;border-radius:6px;padding:12px}.strategy-title{color:#666;font-size:11px;font-weight:600;margin-bottom:6px;text-transform:uppercase}.strategy-text{line-height:1.5}.split-phases-box{background:#f5f5f5;border-left:3px solid #00bfa5;border-radius:6px;padding:12px}.phases-title{color:#666;font-size:11px;font-weight:600;margin-bottom:10px;text-transform:uppercase}.phases-flow{flex-wrap:wrap;gap:8px}.phase-flow-item,.phases-flow{align-items:center;display:flex}.phase-flow-item{gap:6px}.phase-flow-number{align-items:center;background:#0a2540;border-radius:50%;color:#fff;display:flex;font-size:11px;font-weight:600;height:24px;justify-content:center;width:24px}.phase-flow-name{background:#00bfa5;border-radius:4px;color:#000;font-size:11px;font-weight:500;padding:4px 8px;white-space:nowrap}.phase-flow-arrow{color:#00bfa5;font-size:14px;font-weight:300}.split-breakdown{background:#f5f5f5;border-left:3px solid #00bfa5;border-radius:6px;padding:12px}.breakdown-title{color:#666;font-size:11px;font-weight:600;margin-bottom:10px;text-transform:uppercase}.breakdown-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,1fr)}.breakdown-item{align-items:center;background:#fff;border-radius:4px;display:flex;flex-direction:column;gap:4px;padding:8px}.breakdown-label{color:#999;font-size:10px;font-weight:600;text-transform:uppercase}.breakdown-value{color:#0a2540;font-size:18px;font-weight:700}.breakdown-value.generated{color:#00bfa5}.breakdown-value.remaining{color:#999}.split-strategy-section{background:#00bfa50d;border:1px solid #00bfa533;border-radius:8px;margin-bottom:20px;overflow:hidden}.split-strategy-section .split-header{align-items:center;background:#0a2540;color:#fff;display:flex;font-size:12px;font-weight:600;gap:8px;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase}.split-content{display:flex;flex-direction:column;gap:12px;padding:16px}.split-info{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.split-stat{align-items:center;background:#f5f5f5;border-radius:4px;display:flex;font-size:12px;justify-content:space-between;padding:8px 10px}.split-label{color:#666;font-weight:500}.split-value{color:#00bfa5;font-weight:600}.progress-bar{background:#ffffff1a;border-radius:3px;height:6px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(90deg,#00bfa5,#00bfa5);height:100%;transition:width .3s ease}.split-phases{display:flex;flex-direction:column;gap:8px}.phases-label{color:#666;font-size:11px;font-weight:600;text-transform:uppercase}.phases-list{display:flex;flex-wrap:wrap;gap:6px}.phase-badge{background:#00bfa533;border:1px solid #00bfa54d;border-radius:12px;color:#0a2540;display:inline-block;font-size:11px;font-weight:500;padding:4px 10px}.strategy-description{background:#ffffff0d;border-radius:4px;display:flex;flex-direction:column;gap:6px;padding:10px}.strategy-label{color:#666;font-size:11px;font-weight:600;text-transform:uppercase}.strategy-text{color:#0a2540;font-size:12px;line-height:1.4}@media (max-width:768px){.reasoning-panel{margin:16px 0}.reasoning-header{padding:12px 16px}.reasoning-content{max-height:600px;padding:16px}.stats-grid{gap:8px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));padding:12px}.phase-badge{margin-bottom:6px;margin-right:6px}}.planning-panel{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #64c8ff33;border-radius:12px;box-shadow:0 8px 32px #0000004d;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:20px 0;overflow:hidden}.planning-header{align-items:center;background:linear-gradient(90deg,#0f3460,#16213e);border-bottom:2px solid #64c8ff4d;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;transition:all .3s ease}.planning-header:hover{background:linear-gradient(90deg,#1a4d7a,#1e2a47);border-bottom-color:#64c8ff80}.brain-icon{animation:pulse 2s ease-in-out infinite;color:#64c8ff;font-size:20px}.header-title{color:#e0e0e0;font-size:16px;font-weight:600;letter-spacing:.5px}.generating-badge{background:#64c8ff33;border:1px solid #64c8ff66;border-radius:20px;color:#64c8ff;padding:4px 10px}.toggle-icon{color:#64c8ff;cursor:pointer;transition:transform .3s ease}.planning-content{display:flex;flex-direction:column;gap:20px;max-height:80vh;overflow-y:auto;padding:20px}.planning-loading{align-items:center;color:#64c8ff;display:flex;font-size:14px;gap:12px;justify-content:center;padding:40px}.spinning{animation:spin 1s linear infinite}.planning-section,.reasoning-section,.recovery-section{background:#141e3280;border:1px solid #64c8ff26;border-radius:8px;overflow:hidden}.section-header{background:linear-gradient(90deg,#0f3460cc,#16213ecc);border-bottom:1px solid #64c8ff33;padding:14px 16px;transition:all .3s ease}.section-header:hover{background:linear-gradient(90deg,#1a4d7ae6,#1e2a47e6);border-bottom-color:#64c8ff66}.section-icon{color:#64c8ff;font-size:16px}.section-title{color:#e0e0e0;font-size:14px;font-weight:600}.target-badge{background:#4caf5033;border:1px solid #4caf5066;border-radius:12px;color:#81c784;font-size:11px;font-weight:500;margin-left:auto;padding:2px 8px}.section-content{display:flex;flex-direction:column;gap:16px}.subsection{background:#0f1e3266;border:1px solid #64c8ff1a;border-radius:6px;overflow:hidden}.subsection-title{align-items:center;background:#1e325099;border-bottom:1px solid #64c8ff1a;color:#b0d4ff;display:flex;font-size:13px;font-weight:600;gap:8px;padding:10px 12px}.subsection-title svg{color:#64c8ff;font-size:14px}.subsection-content{display:flex;flex-direction:column;gap:12px;padding:12px}.analysis-item{display:flex;flex-direction:column;gap:6px}.label{color:#b0d4ff;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.complexity-display{align-items:center;display:flex;gap:10px}.complexity-bar{background:#0000004d;border:1px solid #64c8ff33;border-radius:12px;flex:1 1;height:24px;overflow:hidden}.complexity-fill{border-radius:12px;height:100%;transition:width .3s ease}.complexity-value{color:#e0e0e0;font-size:13px;font-weight:600;min-width:50px;text-align:right}.factors-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.factors-list li{align-items:flex-start;color:#c0d4e8;display:flex;font-size:12px;gap:8px}.factor-icon{color:#64c8ff;flex-shrink:0;font-weight:700}.factor-text{flex:1 1}.analysis-description{color:#d0e0f0;font-size:12px;line-height:1.5}.analysis-description,.decomposition-info{background:#64c8ff0d;border-left:3px solid #64c8ff;border-radius:4px;padding:10px}.decomposition-strategy{color:#d0e0f0;font-size:12px;line-height:1.5;margin:0}.subtasks-container{display:flex;flex-direction:column;gap:10px}.subtasks-title{color:#b0d4ff;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.subtask-item{background:#0f284699;border:1px solid #64c8ff26;border-radius:6px;display:flex;flex-direction:column;gap:8px;padding:10px}.subtask-header{gap:10px}.subtask-header,.subtask-order{align-items:center;display:flex}.subtask-order{background:linear-gradient(135deg,#64c8ff,#4a9fd8);border-radius:50%;color:#0f3460;flex-shrink:0;font-size:11px;font-weight:700;height:24px;justify-content:center;width:24px}.subtask-name{color:#e0e0e0;flex:1 1;font-size:12px;font-weight:600}.subtask-steps{background:#64c8ff33;border-radius:4px;color:#64c8ff;font-size:11px;font-weight:500;padding:2px 6px}.subtask-description{color:#b0d4ff;font-size:11px;line-height:1.4}.subtask-actions{display:flex;flex-wrap:wrap;gap:6px}.action-badge{background:#4caf5033;border:1px solid #4caf504d;border-radius:4px;color:#81c784;font-size:10px;font-weight:500;padding:3px 8px}.dependency-group{background:#0f284666;border-radius:4px;display:flex;flex-direction:column;gap:8px;padding:10px}.dependency-type{color:#b0d4ff;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.dependency-item{align-items:center;background:#0003;border-radius:4px;color:#d0e0f0;display:flex;font-size:11px;gap:8px;padding:6px}.dep-action,.dep-source,.dep-state,.dep-target{background:#64c8ff26;border-radius:3px;font-weight:500;padding:2px 6px}.dep-arrow{color:#64c8ff;font-size:10px}.dep-description{color:#909aaa;font-style:italic;margin-left:auto}.risks-container{display:flex;flex-direction:column;gap:10px}.risk-item{background:#0003;border-left:4px solid;border-radius:4px;padding:10px}.risk-high{background:#ff6b6b1a;border-left-color:#ff6b6b}.risk-medium{background:#ffa5001a;border-left-color:orange}.risk-low{background:#81c7841a;border-left-color:#81c784}.risk-header{align-items:center;display:flex;gap:8px;margin-bottom:6px}.risk-severity{background:#0000004d;border-radius:3px;font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase}.risk-high .risk-severity{color:#ff6b6b}.risk-medium .risk-severity{color:orange}.risk-low .risk-severity{color:#81c784}.risk-title{color:#e0e0e0;flex:1 1;font-size:12px;font-weight:600}.risk-description{color:#c0d4e8;font-size:11px;line-height:1.4;margin-bottom:6px}.risk-mitigation{background:#64c8ff0d;border-left:2px solid #64c8ff;border-radius:3px;color:#b0d4ff;font-size:11px;padding:6px}.plan-summary{background:linear-gradient(135deg,#4caf501a,#64c8ff0d);border:1px solid #4caf5033}.plan-overview{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.plan-stat{background:#0003;border:1px solid #64c8ff1a;border-radius:4px;display:flex;flex-direction:column;gap:4px;padding:10px}.stat-label{color:#b0d4ff;font-size:11px;font-weight:600}.stat-value{color:#64c8ff;font-size:14px}.execution-plan{background:#64c8ff0d;border-left:3px solid #64c8ff;border-radius:4px;padding:10px}.execution-plan strong{color:#b0d4ff}.execution-plan p{color:#d0e0f0;font-size:12px;line-height:1.5;margin:4px 0}.react-traces{gap:16px}.react-trace,.react-traces{display:flex;flex-direction:column}.react-trace{background:#0f284666;border:1px solid #64c8ff1a;border-radius:6px;gap:12px;padding:12px}.trace-step{background:#0003;border-left:3px solid;border-radius:4px;display:flex;flex-direction:column;gap:6px;padding:10px}.thought-step{border-left-color:gold}.action-step{border-left-color:#64c8ff}.observation-step{border-left-color:#81c784}.reflection-step{border-left-color:#ff9800}.step-header{align-items:center;color:#b0d4ff;display:flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.5px;text-transform:uppercase}.step-header svg{font-size:13px}.step-content{color:#d0e0f0;font-size:12px;line-height:1.5}.action-name{color:#64c8ff;font-weight:600;margin-bottom:4px}.action-params{background:#0000004d;border-radius:3px;overflow-x:auto;padding:6px}.action-params code{color:#81c784;font-family:Courier New,monospace;font-size:10px}.trace-arrow{color:#64c8ff;display:flex;font-size:14px;justify-content:center}.tools-list{display:flex;flex-direction:column;gap:10px}.tool-item{background:#0f284666;border:1px solid #64c8ff1a;border-radius:4px;padding:10px}.tool-header{align-items:center;display:flex;gap:8px;margin-bottom:6px}.tool-name{color:#e0e0e0;flex:1 1;font-size:12px}.tool-status{background:#4caf5033;border-radius:3px;color:#81c784;font-size:10px;font-weight:500;padding:2px 6px}.tool-description{color:#b0d4ff;font-size:11px;line-height:1.4;margin-bottom:6px}.tool-result{background:#64c8ff0d;border-left:2px solid #64c8ff;border-radius:3px;color:#d0e0f0;font-size:11px;padding:6px}.traces-timeline{display:flex;flex-direction:column;gap:8px;padding-left:20px;position:relative}.traces-timeline:before{background:linear-gradient(180deg,#64c8ff80,#64c8ff1a);bottom:0;content:"";left:8px;position:absolute;top:0;width:2px}.trace-item{display:flex;gap:12px;position:relative}.trace-marker{background:#64c8ff;border:2px solid #1a1a2e;border-radius:50%;box-shadow:0 0 8px #64c8ff80;height:12px;left:-28px;position:absolute;top:4px;width:12px}.trace-item.trace-error .trace-marker{background:#ff6b6b;box-shadow:0 0 8px #ff6b6b80}.trace-item.trace-warning .trace-marker{background:orange;box-shadow:0 0 8px #ffa50080}.trace-item.trace-success .trace-marker{background:#81c784;box-shadow:0 0 8px #81c78480}.trace-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.trace-timestamp{color:#909aaa;font-size:10px}.trace-type-badge{background:#64c8ff33;border-radius:3px;color:#64c8ff;display:inline-block;font-size:10px;font-weight:600;padding:2px 6px;text-transform:uppercase;width:fit-content}.trace-message{color:#d0e0f0;font-size:12px;line-height:1.4}.trace-details{background:#0000004d;border-radius:3px;overflow-x:auto;padding:6px}.trace-details code{color:#81c784;font-family:Courier New,monospace;font-size:10px}.context-info{background:#64c8ff0d;border-left:3px solid #64c8ff;border-radius:4px;padding:10px}.context-info p{color:#d0e0f0;font-size:12px;line-height:1.5;margin:4px 0}.context-info strong{color:#b0d4ff}.failures-list{display:flex;flex-direction:column;gap:10px}.failure-item{background:#ff6b6b0d;border:1px solid #ff6b6b33;border-left:4px solid #ff6b6b;border-radius:4px;padding:10px}.failure-header{align-items:center;display:flex;gap:8px;margin-bottom:8px}.failure-icon{color:#ff6b6b;font-size:14px}.failure-type{background:#ff6b6b33;color:#ff6b6b;text-transform:uppercase}.failure-step,.failure-type{border-radius:3px;font-size:11px;font-weight:600;padding:2px 6px}.failure-step{background:#64c8ff33;color:#64c8ff;margin-left:auto}.failure-details{display:flex;flex-direction:column;gap:6px}.failure-message,.failure-root-cause{color:#d0e0f0;font-size:11px;line-height:1.4}.failure-message strong,.failure-root-cause strong{color:#f99}.failure-stack{background:#0000004d;border-radius:3px;overflow-x:auto;padding:6px}.failure-stack strong{color:#f99}.failure-stack code{color:#81c784;font-family:Courier New,monospace;font-size:10px}.failure-summary{background:#ff6b6b1a;border-left:3px solid #ff6b6b;border-radius:4px;color:#d0e0f0;font-size:12px;line-height:1.5;padding:10px}.failure-summary strong{color:#f99}.strategy-group{background:#0f284666;border-radius:4px;display:flex;flex-direction:column;gap:10px;padding:10px}.strategy-type{align-items:center;border-bottom:1px solid #64c8ff1a;color:#b0d4ff;display:flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.5px;padding-bottom:8px;text-transform:uppercase}.strategy-type svg{font-size:14px}.strategy-item{background:#0003;border-left:3px solid;border-radius:4px;padding:10px}.strategy-item.automated{border-left-color:#81c784}.strategy-item.escalation{border-left-color:#ff9800}.strategy-header{align-items:center;display:flex;gap:8px;margin-bottom:6px}.strategy-name{color:#e0e0e0;flex:1 1;font-size:12px;font-weight:600}.success-rate{background:#81c78433;color:#81c784}.escalation-badge,.success-rate{border-radius:3px;font-size:10px;font-weight:600;padding:2px 6px}.escalation-badge{background:#ff980033;color:#ff9800}.strategy-description{color:#b0d4ff;font-size:11px;line-height:1.4;margin-bottom:6px}.strategy-implementation{background:#0000004d;border-radius:3px;margin-bottom:6px;overflow-x:auto;padding:6px}.strategy-implementation strong{color:#b0d4ff}.strategy-implementation code{color:#81c784;font-family:Courier New,monospace;font-size:10px}.strategy-result{background:#81c7841a;border-left:2px solid #81c784;border-radius:3px;color:#d0e0f0;font-size:11px;padding:6px}.strategy-result strong{color:#81c784}.escalation-reason{background:#ff98001a;border-left:2px solid #ff9800;border-radius:3px;color:#d0e0f0;font-size:11px;margin-bottom:6px;padding:6px}.escalation-reason strong{color:#ffb74d}.recommended-action{background:#ff98001a;border-left:2px solid #ff9800;border-radius:3px;color:#d0e0f0;font-size:11px;padding:6px}.recommended-action strong{color:#ffb74d}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.stat-box{background:#0f284699;border:1px solid #64c8ff1a;border-radius:4px}.stat-box .stat-label{color:#b0d4ff;font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.stat-box .stat-value{color:#64c8ff;font-size:18px;font-weight:700}.planning-content::-webkit-scrollbar{width:8px}.planning-content::-webkit-scrollbar-track{background:#0f1e324d;border-radius:4px}.planning-content::-webkit-scrollbar-thumb{background:#64c8ff4d;border-radius:4px}.planning-content::-webkit-scrollbar-thumb:hover{background:#64c8ff80}@media (max-width:768px){.planning-header{padding:12px 16px}.header-title{font-size:14px}.planning-content,.section-content{gap:12px;padding:12px}.subsection-content{gap:10px;padding:10px}.plan-overview,.stats-grid{grid-template-columns:repeat(2,1fr)}.subtask-item{padding:8px}.react-trace{gap:10px;padding:10px}.trace-step{padding:8px}}.state-machine-panel{background:linear-gradient(135deg,#f8fafc,#f0f4f8);border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #00000014;color:#1e293b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:16px 0;overflow:hidden}.state-machine-panel.error,.state-machine-panel.loading,.state-machine-panel.no-data{align-items:center;display:flex;justify-content:center;min-height:200px;text-align:center}.state-machine-panel.loading{flex-direction:column;gap:16px}.spinner{border:3px solid #e2e8f0;border-top-color:#1e40af;height:40px;width:40px}.state-machine-panel.error{background-color:#dc26260d;border-color:#dc2626}.state-machine-panel.error p,.state-machine-panel.no-data p{color:#1e293b;font-size:14px}.panel-header{align-items:center;background-color:#f8fafccc;border-bottom:1px solid #e2e8f0;cursor:pointer;display:flex;justify-content:space-between;padding:16px;transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.panel-header:hover{background-color:#f0f4f8e6}.header-left{align-items:center;display:flex;flex:1 1;gap:12px}.state-machine-icon{color:#1e40af;flex-shrink:0;height:24px;width:24px}.panel-header h3{color:#1e40af;font-size:16px;font-weight:600;margin:0}.generating-badge{align-items:center;background-color:#1e40af14;border-radius:4px;color:#1e40af;display:flex;font-size:12px;font-weight:500;gap:6px;padding:4px 8px}.generating-badge svg{height:14px;width:14px}.generating-badge svg.spinning{animation:spin 1s linear infinite}.toggle-icon{color:#64748b;flex-shrink:0;height:20px;transition:transform .2s ease;width:20px}.state-machine-panel.collapsed .toggle-icon{transform:rotate(180deg)}.section{border-bottom:1px solid #e2e8f0}.section:last-child{border-bottom:none}.section-header{background-color:#f8fafc80;border-bottom:1px solid #e2e8f0;cursor:pointer;gap:8px;padding:12px 16px;transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.section-header:hover{background-color:#f0f4f8cc}.section-header h4{color:#1e40af;flex:1 1;font-size:14px;font-weight:600}.section-content{background-color:#f8fafc4d;padding:16px}.state-display{flex-wrap:wrap;gap:12px;margin-bottom:16px}.state-box,.state-display{align-items:center;display:flex}.state-box{background-color:#e2e8f080;border:1px solid #cbd5e1;border-radius:6px;flex-direction:column;gap:6px;padding:10px 14px}.state-box.current{background-color:#1e40af14;border-color:#1e40af}.state-box.previous{background-color:#7c3aed14;border-color:#7c3aed}.state-icon{font-size:20px}.state-name{color:#1e293b;font-size:11px;font-weight:600;text-align:center}.arrow{color:#64748b;font-size:16px}.state-info{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.info-row{background-color:#e2e8f066;border-radius:6px;display:flex;flex-direction:column;font-size:12px;gap:4px;padding:10px}.info-row .label{color:#64748b;font-size:11px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.info-row .value{color:#1e293b;font-size:13px;font-weight:600}.info-row .confidence{align-items:center;display:flex;gap:8px}.confidence-bar{background-color:#cbd5e180;border-radius:2px;height:4px;margin-top:4px;overflow:hidden;width:100%}.confidence-fill{background:linear-gradient(90deg,#059669,#1e40af);border-radius:2px;height:100%;transition:width .3s ease}.error-count{color:#dc2626!important}.retry-count{color:#ea580c!important}.history-timeline{display:flex;flex-direction:column;gap:10px;max-height:350px;overflow-y:auto}.timeline-item{background-color:#e2e8f04d;border-left:2px solid #cbd5e1;border-radius:6px;display:flex;font-size:12px;gap:12px;padding:10px}.timeline-marker{display:flex;flex-shrink:0;justify-content:center;min-width:20px}.marker-dot{background-color:#e2e8f0;border:2px solid #cbd5e1;border-radius:50%;height:10px;width:10px}.timeline-content{display:flex;flex:1 1;flex-direction:column;gap:4px}.transition-info{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.from-state,.to-state{background-color:#e2e8f099;border-radius:4px;color:#1e293b;font-size:11px;font-weight:500;padding:2px 6px}.transition-info .arrow{color:#64748b;font-size:12px}.transition-details{color:#64748b;display:flex;flex-wrap:wrap;font-size:11px;gap:12px}.event{color:#1e293b;font-weight:500}.time{color:#94a3b8}.stats-grid{grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.stat-box{background-color:#e2e8f066;border:1px solid #cbd5e1;border-radius:6px;padding:12px;text-align:center;transition:all .2s ease}.stat-box:hover{background-color:#e2e8f099;border-color:#94a3b8}.stat-box.error{background-color:#dc262614;border-color:#dc2626}.stat-box.warning{background-color:#ea580c14;border-color:#ea580c}.stat-label{color:#64748b;font-size:10px;margin-bottom:6px}.stat-value{color:#1e293b;font-size:22px;font-weight:700}.stat-box.error .stat-value{color:#dc2626}.stat-box.warning .stat-value{color:#ea580c}.history-timeline::-webkit-scrollbar{width:6px}.history-timeline::-webkit-scrollbar-track{background:#e2e8f04d;border-radius:3px}.history-timeline::-webkit-scrollbar-thumb{background:#94a3b866;border-radius:3px}.history-timeline::-webkit-scrollbar-thumb:hover{background:#94a3b899}@media (max-width:768px){.state-display{flex-direction:column;gap:8px}.state-info{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.state-machine-panel{margin:12px 0;padding:12px}}.tab-navigation{background-color:#fff;border-bottom:2px solid #e0e0e0;border-radius:8px 8px 0 0;display:flex;margin-bottom:20px}.tab-button{background:none;border:none;border-radius:8px 8px 0 0;color:#666;flex:1 1;font-size:16px;font-weight:500;justify-content:center;padding:12px 24px}.tab-button:hover{background-color:#f0f0f0}.tab-button.active{background-color:#00bfa5;border-bottom:3px solid #00bfa5}.tab-button:focus{box-shadow:0 0 0 2px #00bfa540;outline:none}.tab-button svg{fill:currentColor;height:18px;width:18px}.tab-content{background-color:#fff;border-radius:0 0 8px 8px;box-shadow:0 2px 4px #0000001a;min-height:400px;padding:20px}.description-tab,.results-tab{width:100%}.description-tab h3,.results-tab h3{color:#333;font-size:18px;font-weight:600;margin-bottom:20px;margin-top:0}.results-tab{padding:0}.results-tab h3{font-size:24px}.test-steps-container{animation:fadeIn .3s ease;margin:1.25rem;position:relative}.test-steps-flow{background-color:var(--gray-100);box-shadow:var(--shadow-sm);flex-wrap:wrap;gap:1.25rem;margin-top:1.25rem;padding:1.25rem}.test-step-box,.test-steps-flow{border:1px solid var(--gray-200);border-radius:var(--border-radius-lg);display:flex}.test-step-box{background:#fff;box-shadow:var(--shadow-xs);box-sizing:border-box;cursor:grab;flex-direction:column;height:170px;margin-bottom:0;padding:1rem;position:relative;transition:all var(--transition-normal);width:250px}.test-step-box.dragging{cursor:grabbing;opacity:.5}.test-step-box.drag-over{border-color:var(--primary-lighter);box-shadow:var(--shadow-md);transform:scale(1.02)}.test-step-drag-handle{color:var(--gray-500);cursor:grab;position:absolute;right:1rem;top:1rem;transition:all var(--transition-fast)}.test-step-drag-handle:hover{color:var(--gray-700);transform:translateY(-1px)}.test-step-box:not(:last-child):after{background-color:var(--gray-300);border-radius:1px;content:"";height:2px;position:absolute;right:-20px;top:50%;width:20px}.test-step-description{color:var(--gray-700);flex-grow:1;font-size:var(--font-size-base);line-height:1.5;margin-bottom:.75rem;overflow-y:auto;padding-right:.5rem}.test-step-footer{display:flex;flex-direction:column;gap:.5rem;margin-top:auto;padding:0 .5rem}.action-input,.action-select{background-color:#fff;border:1px solid var(--gray-300);border-radius:var(--border-radius-md);box-sizing:border-box;font-size:var(--font-size-sm);height:36px;padding:.5rem .75rem;transition:all var(--transition-fast);width:calc(100% - 2px)}.action-dropdown-container{position:relative;width:100%}.action-dropdown-button{align-items:center;background-color:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:8px 12px;-webkit-user-select:none;user-select:none;width:100%}.action-dropdown-button:hover{background-color:#f5f5f5}.action-icon{color:#6772e5;margin-right:8px}.action-dropdown{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 2px 8px #00000026;left:0;margin-top:4px;max-height:300px;overflow-y:auto;position:absolute;top:100%;width:100%;z-index:1000}.action-option{border-bottom:1px solid #eee;cursor:pointer;padding:10px 12px}.action-option:last-child{border-bottom:none}.action-option:hover{background-color:#f5f5f5}.action-option.selected{background-color:#f0f7ff}.action-input::placeholder{color:var(--gray-500)}.action-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px #5e60ce33;outline:none}.test-steps-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.25rem}.test-steps-actions{align-items:center;display:flex;gap:.75rem}.environment-selector-container{position:relative}.environment-selector-label{color:var(--gray-600);font-size:var(--font-size-xs);font-weight:500;margin-bottom:.25rem}.environment-selector-button{border:1px solid var(--gray-300);border-radius:var(--border-radius-md);font-size:var(--font-size-sm);padding:.5rem .75rem;transition:all var(--transition-fast)}.environment-selector-button:hover{background-color:var(--gray-100);border-color:var(--gray-300);box-shadow:var(--shadow-sm)}.environment-selector-button svg{color:var(--gray-600);margin-left:.75rem;transition:transform var(--transition-fast)}.environment-selector-button:hover svg{transform:translateY(-1px)}.test-case-header-unified{align-items:flex-start;animation:fadeIn .3s ease;background-color:#fff;border:1px solid var(--gray-200);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);display:flex;gap:2rem;justify-content:space-between;margin-bottom:1.5rem;padding:1.5rem}.header-main-info{display:flex;flex:1 1;flex-direction:column;gap:.5rem;min-width:0}.title-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.title-row h2{color:var(--gray-900);font-size:1.5rem;font-weight:600;line-height:1.2;margin:0}.edit-test-case-btn{align-items:center;background:none;border:none;border-radius:4px;color:var(--gray-400);cursor:pointer;display:flex;font-size:1rem;justify-content:center;padding:.25rem;transition:all .2s ease}.edit-test-case-btn:hover{background-color:var(--gray-100);color:var(--primary)}.meta-row{align-items:center;color:var(--gray-500);display:flex;flex-wrap:wrap;font-size:var(--font-size-sm);gap:.5rem}.separator{color:var(--gray-300)}.test-description{color:var(--gray-600);font-size:var(--font-size-base);line-height:1.5;margin-top:.5rem}.header-controls-area{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:1rem}.selectors-group{align-items:center;display:flex;gap:1rem}.run-button svg{margin-right:8px}.environment-selector{-webkit-appearance:none;appearance:none;background-color:#fff;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='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:16px;border:1px solid var(--gray-300);border-radius:var(--border-radius-md);box-shadow:var(--shadow-xs);cursor:pointer;font-size:var(--font-size-sm);min-width:200px;padding:.5rem 2.5rem .5rem .75rem;transition:all var(--transition-fast)}.environment-selector:focus{border-color:var(--primary);box-shadow:0 0 0 .2rem #5e60ce40;outline:none}.environment-selector:disabled{background-color:var(--gray-100);cursor:not-allowed;opacity:.7}.generate-button-container,.run-button-container{display:inline-block;position:relative}.generate-button{align-items:center;background:linear-gradient(135deg,var(--primary-light) 0,var(--primary) 100%);border:none;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;display:flex;font-size:var(--font-size-base);font-weight:600;justify-content:center;padding:.75rem 1.25rem;transition:all var(--transition-normal)}.generate-button:before{background:linear-gradient(135deg,var(--primary) 0,var(--primary-darker) 100%);border-radius:var(--border-radius-md);content:"";height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity var(--transition-normal);width:100%;z-index:-1}.generate-button:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.generate-button:hover:before{opacity:1}.generate-button:active{box-shadow:var(--shadow-sm);transform:translateY(1px)}.generate-button:disabled{background:linear-gradient(135deg,var(--gray-300) 0,var(--gray-400) 100%);box-shadow:none;cursor:not-allowed;opacity:.7;transform:none}.generate-button svg{filter:drop-shadow(0 1px 1px rgba(0,0,0,.1));font-size:1.125rem;margin-right:.625rem;transition:transform var(--transition-fast)}.generate-button:hover svg{transform:translateY(-1px)}.generate-button.generating{background:linear-gradient(135deg,var(--primary-light) 0,var(--primary) 100%);cursor:not-allowed;opacity:.9}.generate-button.generating .spinner{animation:spin 1s ease-in-out infinite;border:.1875rem solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:1.125rem;margin-right:.625rem;width:1.125rem}.generate-button.disabled{background:linear-gradient(135deg,var(--gray-300) 0,var(--gray-400) 100%);box-shadow:none;cursor:not-allowed;opacity:.7}.run-button{align-items:center;background:linear-gradient(135deg,#22c55e,#15803d);border:none;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:500;justify-content:center;min-width:120px;padding:.625rem 1rem;transition:all var(--transition-normal)}.run-button:hover{background:linear-gradient(135deg,#34d399,#16a34a);box-shadow:var(--shadow-md);transform:translateY(-1px)}.run-button:active{box-shadow:var(--shadow-xs);transform:translateY(1px)}.run-button svg{font-size:1rem;margin-right:.5rem;transition:transform var(--transition-fast)}.run-button.disabled{background:linear-gradient(135deg,var(--gray-400) 0,var(--gray-500) 100%);box-shadow:none;cursor:not-allowed;opacity:.7}.test-type-badge-detail{background-color:#666;border-radius:999px;color:#fff;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.025em;margin:0;padding:.25rem .75rem;text-transform:uppercase}.test-type-badge-detail.ui{background-color:#4caf50}.test-type-badge-detail.api{background-color:#2196f3}.generation-duration{align-items:center;color:var(--gray-600);display:flex;font-size:var(--font-size-sm);gap:.25rem;margin-top:.5rem}.duration-value{color:var(--primary);font-weight:600}.test-case-header h2{color:var(--gray-900);font-size:var(--font-size-2xl);font-weight:600;line-height:1.2;margin:0 0 .5rem}.last-updated{align-items:center;color:var(--gray-600);display:flex;font-size:var(--font-size-xs);gap:.25rem;margin-top:.25rem}.test-case-header{position:relative}.test-case-header h2 span,.test-case-header p span{cursor:pointer}.test-case-header h2 span:hover,.test-case-header p span:hover{color:var(--primary);text-decoration:underline}.test-case-name-input{border:1px solid var(--gray-300);border-radius:var(--border-radius-md);box-shadow:var(--shadow-xs);font-size:1.25rem;font-weight:600;margin-bottom:.75rem;padding:.75rem 1rem;transition:all var(--transition-fast);width:100%}.test-case-name-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px #5e60ce40;outline:none}.test-case-description-input{border:1px solid var(--gray-300);border-radius:var(--border-radius-md);box-shadow:var(--shadow-xs);font-size:var(--font-size-base);line-height:1.5;margin-bottom:.75rem;min-height:80px;padding:.75rem 1rem;resize:vertical;transition:all var(--transition-fast);width:100%}.test-case-description-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px #5e60ce40;outline:none}.edit-test-case-button{align-items:center;background:none;border:none;color:var(--primary);cursor:pointer;display:flex;font-size:var(--font-size-base);gap:.25rem;position:absolute;right:1rem;top:1rem;transition:all var(--transition-fast)}.edit-test-case-button:hover{color:var(--primary-darker);transform:translateY(-1px)}.test-steps-table-container{animation:fadeIn .3s ease;border:1px solid var(--gray-200);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);margin-bottom:1.25rem;overflow-x:auto;width:100%}.test-steps-table{background-color:#fff;border-collapse:initial;border-spacing:0;font-size:var(--font-size-sm);width:100%}.test-steps-table thead{background-color:var(--gray-50);border-bottom:2px solid var(--gray-200);position:sticky;top:0;z-index:1}.test-steps-table th{color:var(--gray-700);font-size:var(--font-size-xs);font-weight:600;letter-spacing:.5px;padding:.75rem 1rem;text-align:left;text-transform:uppercase}.test-steps-table tbody tr{border-bottom:1px solid var(--gray-200);transition:background-color var(--transition-fast)}.test-steps-table tbody tr:hover{background-color:var(--gray-50)}.test-steps-table td{color:var(--gray-700);line-height:1.5;padding:.75rem 1rem;vertical-align:middle}.drag-handle-column{width:40px}.step-number-column{text-align:center;width:50px}.step-description-column{width:25%}.step-action-column{width:15%}.step-target-column{width:45%}.step-value-column{width:15%}.step-confidence-column{width:12%}.step-actions-column{width:10%}.drag-handle-cell{cursor:grab;text-align:center;transition:all var(--transition-fast);width:30px}.drag-handle-cell.disabled{cursor:not-allowed;opacity:.6}.drag-handle-cell.disabled .drag-handle{color:var(--gray-400)}.step-number-cell{color:var(--gray-600);font-size:14px;font-weight:600;padding:8px;text-align:center}.step-description-cell{color:var(--gray-800);font-weight:500;line-height:1.5}.step-action-cell .action-dropdown-container{width:100%}.step-target-cell .target-element-container{display:flex;flex-direction:column;gap:6px}.step-target-cell .target-row{align-items:center;display:flex;gap:8px}.step-target-cell .target-label{color:var(--gray-500);flex-shrink:0;font-size:11px;font-weight:600;text-align:right;width:40px}.step-target-cell .css-selector-input,.step-target-cell .element-path-input{background-color:var(--gray-50);border:1px solid var(--gray-300);border-radius:var(--border-radius-md);box-shadow:var(--shadow-xs);font-family:Consolas,monospace;font-size:var(--font-size-xs);margin:0;padding:.5rem;transition:all var(--transition-fast);width:100%}.step-target-cell .css-selector-input:focus,.step-target-cell .element-path-input:focus{background-color:#fff;border-color:var(--primary);box-shadow:0 0 0 2px #5e60ce40;outline:none}.step-target-cell .css-selector-input::placeholder,.step-target-cell .element-path-input::placeholder{color:var(--gray-400);font-style:italic}.step-css-cell .css-selector-input{background-color:var(--gray-50);border:1px solid var(--gray-300);border-radius:var(--border-radius-md);box-shadow:var(--shadow-xs);font-family:Consolas,monospace;font-size:var(--font-size-xs);margin:0;padding:.625rem;transition:all var(--transition-fast);width:100%}.step-css-cell .css-selector-input:focus{background-color:#fff;border-color:var(--success);box-shadow:0 0 0 2px #28a74540}.step-css-cell .css-selector-input::placeholder{color:var(--gray-500);font-style:italic}.step-value-cell .action-input-container{width:100%}.step-actions-cell{text-align:center}.empty-value{color:var(--gray-500);font-size:var(--font-size-xs);font-style:italic}.test-step-row.dragging{background-color:#f0f7ff;opacity:.5}.test-step-row.drag-over{background-color:var(--gray-50);border-top:2px solid var(--primary)}.test-steps-table .action-input,.test-steps-table .action-select,.test-steps-table .element-path-input{background-color:#fff;border:1px solid var(--gray-300);border-radius:var(--border-radius-md);font-size:var(--font-size-sm);padding:.5rem;transition:all var(--transition-fast)}.test-steps-table .element-path-input{font-family:monospace}.test-steps-table .action-input-container{align-items:center;display:flex}@media (max-width:992px){.test-steps-table td,.test-steps-table th{padding:.625rem .5rem}.step-description-column{width:20%}.test-steps-table{font-size:var(--font-size-xs)}}.element-locator-container{align-items:center;display:flex;width:100%}.locator-info-tooltip{animation:fadeIn .2s ease;background-color:var(--gray-800);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);color:#fff;font-size:var(--font-size-xs);left:0;line-height:1.4;max-width:300px;padding:.5rem .75rem;position:absolute;top:calc(100% + 5px);z-index:100}.locator-info-tooltip:before{border-color:#0000 #0000 var(--gray-800) #0000;border-style:solid;border-width:5px;bottom:100%;content:"";left:10px;position:absolute}.locator-help-icon{color:#999;cursor:help;font-size:14px;margin-left:5px;transition:color .2s}.locator-help-icon:hover{color:#4a90e2}.locator-status{border-radius:3px;font-size:12px;margin-left:8px;padding:3px 6px}.locator-status.valid{background-color:#e6f7e6;border:1px solid #a5d6a7;color:#2e7d32}.locator-status.invalid{background-color:#fdecea;border:1px solid #ef9a9a;color:#d32f2f}.test-results-table{border-collapse:collapse;margin-top:20px;width:100%}.test-results-table td,.test-results-table th{border:1px solid #ccc;padding:10px;text-align:left}.test-results-table th{background-color:#f0f0f0}.test-results-table .passed{color:#4caf50;font-weight:700}.test-results-table .failed{color:#f44336;font-weight:700}.test-runs-list{margin-top:20px}.test-run-item{background-color:#f5f5f5;border-left:5px solid;border-radius:5px;cursor:pointer;margin-bottom:15px;padding:15px}.test-run-item.passed{border-left-color:#4caf50}.test-run-item.failed{border-left-color:#f44336}.test-run-header{align-items:center;display:flex;justify-content:space-between}.test-run-id{font-weight:700}.test-run-result{border-radius:3px;color:#fff;font-weight:700;padding:5px 10px}.test-run-result.passed{background-color:#4caf50}.test-run-result.failed{background-color:#f44336}.toggle-details-btn{background:none;border:none;cursor:pointer;font-size:16px;margin-left:10px}.test-run-details,.test-run-error,.test-run-output{margin-top:10px}.test-run-error pre,.test-run-output pre{background-color:#e0e0e0;border-radius:3px;overflow-x:auto;padding:10px}.test-run-error strong,.test-run-output strong{display:block;margin-bottom:5px}.test-case-details{background-color:#f5f5f5;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.test-case-details .test-name{color:#333;font-size:1.5em;margin:0 0 10px}.test-case-details .test-description{color:#666;line-height:1.4;margin:0 0 10px}.test-case-details .test-case-id{color:#007bff;font-family:Monaco,Menlo,Courier New,monospace;font-size:.95em;font-weight:600;margin:0 0 10px}.test-case-details .updated-at{color:#888;font-size:.9em;margin:0}.form-group input{border:1px solid #ccc}.modal-overlay{background-color:#0009;height:100%;transition:all .3s ease;width:100%}.modal-content{box-shadow:0 10px 25px #0003;overflow:hidden;transform:translateY(0);transition:transform .3s ease;width:500px}.modal-content h3{color:#4f46e5;font-size:1.5rem;margin-bottom:20px;margin-top:0;padding-bottom:10px;position:relative}.modal-content h3:after{background:linear-gradient(90deg,#0a2540,#00bfa5);border-radius:3px;bottom:0;content:"";height:3px;left:0;position:absolute;width:50px}.modal-content p{color:#4b5563;font-size:.95rem;line-height:1.6;margin-bottom:20px}.modal-actions{margin-top:25px}.modal-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;justify-content:center;padding:10px 20px;transition:all .2s ease}.modal-button.cancel{background-color:#f3f4f6;border:1px solid #e5e7eb;color:#4b5563}.modal-button.cancel:hover{background-color:#e5e7eb;color:#1f2937}.modal-button.confirm{background:linear-gradient(135deg,#0a2540,#00bfa5);box-shadow:0 4px 6px #4f46e526;color:#fff}.modal-button.confirm:hover{box-shadow:0 6px 8px #4f46e533;transform:translateY(-1px)}.modal-button.confirm:active{transform:translateY(1px)}.modal-content .form-group{margin-bottom:18px;position:relative}.modal-content .form-group label{color:#4b5563;font-size:14px;margin-bottom:8px}.modal-content .form-group input,.modal-content .form-group select{background-color:#f9fafb;border:1px solid #d1d5db;border-radius:8px;padding:12px 16px;transition:all .2s ease}.modal-content .form-group input:hover,.modal-content .form-group select:hover{border-color:#a5b4fc}.modal-content .form-group input:focus,.modal-content .form-group select:focus{background-color:#fff;border-color:#00bfa5;box-shadow:0 0 0 3px #6366f126}.modal-content .form-group select{-webkit-appearance:none;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='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}.environment-selector-container{align-items:center;display:flex;margin-right:15px}.environment-selector-button{align-items:center;background-color:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;min-width:180px;padding:8px 12px;-webkit-user-select:none;user-select:none}.environment-selector-button:hover{background-color:#f5f5f5}.environment-selector-button:disabled{cursor:not-allowed;opacity:.6}.environment-selector-button svg{color:#6c757d;margin-left:8px}.environment-selector-button:empty:after{color:#333;content:"Select Environment *"}.environment-selector-button:empty:after span{color:#dc3545}.environment-dropdown{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 2px 8px #00000026;left:0;margin-top:4px;max-height:300px;overflow-y:auto;position:absolute;top:100%;width:100%;z-index:1000}.environment-option{align-items:center;border-bottom:1px solid #eee;cursor:pointer;display:flex;justify-content:space-between;padding:10px 12px}.environment-option:last-child{border-bottom:none}.environment-option:hover{background-color:#f5f5f5}.environment-option.selected{background-color:#f0f7ff}.environment-item-content{display:flex;flex:1 1;flex-direction:column}.environment-name{font-weight:500;margin-bottom:4px}.environment-url{margin-bottom:2px}.environment-description,.environment-login,.environment-url{color:#6c757d;font-size:12px}.environment-description{font-style:italic}.environment-edit-button{background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;padding:4px 8px}.environment-edit-button:hover{background-color:#e9ecef;color:#495057}.environment-dropdown-item.add-new{background-color:#f8f9fa}.environment-dropdown-item.add-new:hover{background-color:#e9ecef}.environment-dropdown-item.add-new .environment-name{align-items:center;color:#28a745;display:flex;gap:8px}.delete-step-button{background:none;border:none;color:#ff4d4f;cursor:pointer;margin-left:5px;padding:5px;transition:all .2s}.delete-step-button:hover{color:#ff7875;transform:scale(1.1)}.modal-button.delete{background-color:#ff4d4f;color:#fff}.modal-button.delete:hover{background-color:#ff7875}.action-input-container{align-items:center;display:flex;flex:1 1;position:relative}.action-input{flex:1 1;font-size:14px;padding:5px 8px}.action-input,.env-vars-dropdown{border:1px solid #ddd;border-radius:4px}.env-vars-dropdown{background-color:#fff;box-shadow:0 2px 8px #00000026;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;width:250px;z-index:1000}.env-vars-dropdown-header{background-color:#f5f5f5;border-bottom:1px solid #ddd;font-weight:700;padding:8px 12px}.env-vars-dropdown-item{cursor:pointer;padding:8px 12px;transition:background-color .2s}.env-vars-dropdown-item:hover{background-color:#f0f0f0}.env-var-item-content{display:flex;flex-direction:column}.env-var-name{color:#1890ff;font-weight:500}.env-var-description{color:#888;font-size:12px;margin-top:2px}.element-path-input{background-color:#f9f9f9;border:1px solid #ddd;margin-bottom:5px;margin-top:8px}.element-path-input:focus{background-color:#fff}.element-path-label{color:#666;font-size:12px;margin-top:5px}.test-step-controls{display:flex;flex-direction:column;margin-bottom:10px;width:100%}.element-locator-container{background-color:#f0f7ff;border-left:3px solid #4a90e2;border-radius:4px;margin-top:10px;padding:8px}.element-path-label{color:#333;display:block;font-size:13px;font-weight:700;margin-bottom:5px}.element-path-input{background-color:#fff;border:1px solid #ccc;border-radius:4px;color:#333;font-family:monospace;font-size:14px;padding:8px;width:100%}.element-path-input:focus{border-color:#4a90e2;box-shadow:0 0 3px #4a90e280;outline:none}.element-path-input::placeholder{color:#999;font-style:italic}.custom-variables-container{margin-top:10px}.custom-variables-list{list-style:none;margin:0;padding:0}.custom-variable-item{align-items:center;display:flex;gap:8px;margin-bottom:8px}.custom-variable-name,.custom-variable-value{border:1px solid #ccc;border-radius:4px;flex:1 1;padding:8px}.remove-variable-button{background:none;border:none;border-radius:4px;color:#f44336;cursor:pointer;font-size:14px;padding:4px 8px}.remove-variable-button:hover{background-color:#f443361a}.add-variable-button{align-items:center;background:none;border:1px dashed #2196f3;border-radius:4px;color:#2196f3;cursor:pointer;display:flex;font-size:14px;gap:8px;justify-content:center;margin-top:8px;padding:8px 12px;text-align:center;width:100%}.add-variable-button:hover{background-color:#2196f31a}.custom-variable-labels{color:#666;display:flex;font-size:12px;margin-bottom:4px}.custom-variable-labels span{flex:1 1;padding:0 8px}.action-button,.add-step-button,.generate-button,.run-button{align-items:center;background:linear-gradient(135deg,#34d399,#10b981);border:none;border-radius:6px;box-shadow:0 4px 6px #32325d1c,0 1px 3px #00000014;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;justify-content:center;min-width:120px;padding:10px 16px;transition:all .3s ease}.action-button:hover,.add-step-button:hover,.generate-button:hover,.run-button:hover{background:linear-gradient(135deg,#20bf6b,#0b8a45);box-shadow:0 7px 14px #32325d1a,0 3px 6px #00000014;transform:translateY(-1px)}.action-button:active,.add-step-button:active,.generate-button:active,.run-button:active{box-shadow:var(--shadow-xs);transform:translateY(1px)}.action-button.disabled,.action-button:disabled,.add-step-button:disabled,.generate-button.disabled,.generate-button:disabled,.run-button.disabled,.run-button:disabled{background:linear-gradient(135deg,var(--gray-400) 0,var(--gray-500) 100%);box-shadow:none;cursor:not-allowed;opacity:.7}.action-button svg,.add-step-button svg,.generate-button svg,.run-button svg{font-size:1rem;margin-right:.5rem;transition:transform var(--transition-fast)}.run-button:hover svg{transform:translateY(-1px)}.generate-button.generating{background:linear-gradient(135deg,#fd7e14,#e76f51)}.modal-content form{width:100%}.modal-content .form-group{margin-bottom:15px}.modal-content .form-group label{display:block;font-weight:500;margin-bottom:5px}.modal-content .form-group input,.modal-content .form-group select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.modal-content .form-group input:focus,.modal-content .form-group select:focus{border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e240;outline:none}.api-step-editor-modal{display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow-y:auto}.api-step-editor-modal h3{background-color:#fff;border-bottom:1px solid #e5e7eb;margin:-30px -30px 20px;padding:30px 30px 20px;position:sticky;top:0;z-index:1}.api-step-editor-modal .modal-actions{background-color:#fff;border-top:1px solid #e5e7eb;bottom:0;margin:20px -30px -30px;padding:20px 30px 30px;position:sticky;z-index:1}.api-step-editor-modal .form-group textarea{border:1px solid #ddd;border-radius:4px;font-family:Courier New,monospace;font-size:13px;padding:12px;resize:vertical;width:100%}.api-step-editor-modal .form-group textarea:focus{border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e240;outline:none}.api-step-editor-modal .form-help-text{color:#6b7280;display:block;font-size:12px;font-style:italic;margin-top:6px}.edit-api-step-button{align-items:center;background:#4a90e2;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:13px;gap:6px;padding:8px 16px;transition:background .2s}.edit-api-step-button:hover{background:#357abd}.edit-api-step-button svg{font-size:12px}@media (max-width:768px){.test-steps-flow{align-items:center;flex-direction:column}.test-step-box{flex:1 1 100%;margin:8px 0;max-width:none}.test-step-box:not(:last-child):after{bottom:-20px;content:"↓";right:50%;top:auto;transform:translateX(50%)}}.spinner{animation:spin 1s ease-in-out infinite;border:2px solid #ffffff4d;border-top-color:#fff;display:inline-block;height:16px;margin-right:8px;width:16px}.generating-indicator{align-items:center;background-color:#f8f9fa;border-left:4px solid #007bff;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:15px;padding:10px 15px}.generating-indicator .spinner{border-color:#007bff4d;margin-right:10px}.generating-indicator-text{color:#495057;flex-grow:1;font-weight:500}.step-generation-info{background-color:#f8f9fa;border-left:4px solid #007bff;border-radius:4px;margin-bottom:10px;margin-top:10px;padding:10px;width:100%}.step-generation-info .spinner{border-color:#007bff4d;margin-right:10px}.step-generation-info-text{color:#495057;flex-grow:1;font-weight:500}.stop-generation-button{align-items:center;align-self:flex-end;background-color:#fee2e2;border:none;border-radius:4px;color:#b91c1c;cursor:pointer;display:flex;font-size:14px;gap:5px;margin-left:auto;padding:5px 10px;transition:background-color .2s}.stop-generation-button:hover{background-color:#c82333}.stop-generation-button svg{margin-right:6px}.spinner{border:3px solid #0000001a;border-top-color:#0369a1;height:20px;margin-right:10px;width:20px}.view-screenshot-button{align-items:center;background:none;border:none;border-radius:4px;color:#4a90e2;cursor:pointer;display:inline-flex;justify-content:center;margin-right:8px;padding:6px 10px;transition:all .2s ease}.view-screenshot-button:hover{background-color:#4a90e21a;transform:translateY(-1px)}.view-screenshot-button:active{transform:translateY(1px)}.view-screenshot-button:disabled{color:#adb5bd;cursor:not-allowed;opacity:.7}.view-screenshot-button:disabled:hover{background-color:initial;transform:none}.screenshot-modal{max-height:90vh;max-width:90vw;overflow:visible;transition:all .3s ease;width:80vw}.zoomed-modal{display:flex;flex-direction:column;height:98vh;max-height:98vh;max-width:98vw;width:98vw}.modal-header{border-bottom:1px solid #eee;margin-bottom:15px;padding-bottom:10px}.modal-close-button{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:18px;justify-content:center;padding:5px;transition:all .2s ease}.modal-close-button:hover{background-color:#f443361a;color:#f44336}.screenshot-container{align-items:center;background-color:#f5f5f5;border-radius:4px;display:flex;flex-direction:column;margin-bottom:15px;max-height:70vh;overflow:auto;padding:15px;transition:max-height .3s ease}.zoomed-modal .screenshot-container{flex:1 1;max-height:90vh;overflow:auto;padding:20px;position:relative}.screenshot-image-container{align-items:center;display:flex;justify-content:center;max-height:60vh;overflow:auto;transition:all .3s ease;width:100%}.zoomed-modal .screenshot-image-container{flex:1 1;height:100%;max-height:none;overflow:auto;padding:100px;position:relative;width:100%}.step-screenshot{border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 4px #0000001a;cursor:zoom-in;height:auto;max-width:100%;object-fit:contain;transform-origin:center center;transition:transform .3s ease}.step-screenshot.zoomed{cursor:zoom-out;height:auto;left:0;margin:100px;max-width:none;position:absolute;top:0;transform:scale(1.25);width:auto;z-index:1000}.screenshot-description{color:#666;font-size:14px;margin-bottom:15px;text-align:center}.loading-indicator{align-items:center;color:#666;display:flex;flex-direction:column;justify-content:center;padding:20px;text-align:center}.loading-indicator .spinner{margin-bottom:10px}.error-message{background-color:#ffebee;border:1px solid #ffcdd2;color:#d32f2f;text-align:center}.no-screenshot{color:#666;font-style:italic;padding:20px;text-align:center}.stop-execution-button{align-items:center;background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;padding:8px 12px;transition:all .3s ease}.stop-execution-button:hover{background:linear-gradient(135deg,#f44336,#d32f2f);box-shadow:0 4px 6px #0000001a;transform:translateY(-1px)}.stop-execution-button:active{box-shadow:0 1px 2px #0000001a;transform:translateY(1px)}.stop-execution-button svg{font-size:16px;margin-right:8px}.tooltip{background-color:#333;border-radius:4px;box-shadow:0 2px 5px #0003;left:50%;margin-top:8px;max-width:250px;top:100%;transform:translateX(-50%);width:max-content}.tooltip:before{border:5px solid;border-color:#0000 #0000 #333;bottom:100%;content:"";left:50%;margin-left:-5px;position:absolute}.run-button-container{position:relative}.execution-dropdown{background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 12px #00000026;left:0;max-height:300px;max-width:350px;min-width:250px;overflow-y:auto;position:absolute;top:calc(100% + 5px);z-index:1000}.execution-dropdown-header{background:#f8f9fa;border-bottom:1px solid #e9ecef;border-radius:6px 6px 0 0;color:#333;font-size:14px;padding:12px 15px}.execution-dropdown-option{border-bottom:1px solid #f0f0f0;cursor:pointer;padding:12px 15px;transition:background-color .2s ease}.execution-dropdown-option:hover{background-color:#f8f9fa}.execution-dropdown-option.standalone{align-items:center;border-top:1px solid #e9ecef;color:#007bff;display:flex;font-weight:500;gap:8px}.execution-dropdown-option.standalone:hover{background-color:#e3f2fd}.execution-option-info{display:flex;flex-direction:column;gap:4px}.execution-name{color:#333;font-size:14px;font-weight:500}.execution-date{color:#6c757d;font-size:12px}.execution-dropdown-separator{background:#e9ecef;height:1px;margin:0}.close-dropdown-btn{align-items:center;background:none;border:none;color:#6c757d;cursor:pointer;display:flex;float:right;font-size:16px;justify-content:center;margin-top:-2px;padding:4px}.close-dropdown-btn:hover{color:#333}.execution-dropdown-message{align-items:center;color:#6c757d;display:flex;font-style:italic;gap:8px;justify-content:center;padding:15px;text-align:center}.execution-dropdown-option.create-new{align-items:center;color:#28a745;display:flex;font-weight:500;gap:8px}.execution-dropdown-option.create-new:hover{background-color:#e8f5e8}.execution-details{align-items:center;display:flex;gap:10px}.execution-status{border-radius:3px;font-size:11px;font-weight:600;padding:2px 6px;text-transform:uppercase}.execution-status.new{background-color:#e3f2fd;color:#1976d2}.execution-status.in-progress{background-color:#fff3cd;color:#856404}.execution-status.done{background-color:#d4edda;color:#155724}.step-actual-url{background-color:#f0f7ff;border-left:3px solid #06c;border-radius:4px;color:#06c;font-family:Courier New,monospace;font-size:13px;margin-top:8px;padding:8px 12px;word-break:break-all}.step-actual-url strong{color:#004080;margin-right:8px}.step-element-path{font-family:Courier New,monospace}.step-element-path,.step-value{color:#666;font-size:13px;margin-top:6px}.step-description-text{color:#333;font-size:14px;line-height:1.5;margin-top:8px}.step-json-description{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;color:#212529;font-family:Monaco,Menlo,Courier New,monospace;font-size:12px;line-height:1.6;margin:8px 0 0;overflow-x:auto;padding:12px;white-space:pre}.step-status{max-width:400px;overflow:hidden}.step-status .error-message{word-wrap:break-word;background-color:#fff3cd;border-left:3px solid #ffc107;border-radius:4px;box-sizing:border-box;color:#856404;font-size:13px;margin-top:8px;max-width:100%;overflow:hidden;padding:8px 12px;text-align:left;width:100%}.step-result-row.passed .error-message{background-color:#d4edda;border-left-color:#28a745;color:#155724}.step-result-row.passed .error-message svg{color:#28a745}.step-result-row.failed .error-message{background-color:#f8d7da;border-left-color:#dc3545;color:#721c24}.step-result-row.failed .error-message svg{color:#dc3545}.step-status .error-message svg{color:#ff9800;margin-right:6px}.response-json{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;box-sizing:border-box;color:#212529;font-family:Monaco,Menlo,Courier New,monospace;font-size:11px;line-height:1.5;margin:8px 0 0;max-height:300px;max-width:100%;overflow-x:auto;overflow-y:auto;padding:12px;white-space:pre}.step-confidence-cell{font-size:13px;padding:8px!important;text-align:center}.confidence-text{align-items:center;display:flex;flex-direction:column;gap:2px}.confidence-main{color:#333;font-size:14px;font-weight:600}.confidence-breakdown{color:#666;display:flex;flex-direction:column;font-size:11px;gap:1px}.confidence-breakdown small{display:block;white-space:nowrap}.no-confidence{color:#999;font-size:12px;font-style:italic}.test-steps-container .modal-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.test-steps-container .modal-content{animation:fadeIn .2s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:550px;padding:2.5rem;width:100%}.test-steps-container .modal-content h3{color:var(--gray-900);display:inline-block;font-size:1.5rem;font-weight:700;margin-bottom:2rem;margin-top:0;padding-bottom:.5rem;position:relative}.test-steps-container .modal-content h3:after{background-color:#34d399;border-radius:2px;bottom:0;content:"";height:3px;left:0;position:absolute;width:40px}.test-steps-container .form-group{margin-bottom:1.5rem}.test-steps-container .form-group label{color:var(--gray-700);display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.test-steps-container .form-group input,.test-steps-container .form-group select,.test-steps-container .form-group textarea{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:var(--gray-900);font-size:.95rem;padding:.75rem 1rem;transition:all .2s;width:100%}.test-steps-container .form-group input:focus,.test-steps-container .form-group select:focus,.test-steps-container .form-group textarea:focus{background-color:#fff;border-color:#34d399;box-shadow:0 0 0 3px #34d3991a;outline:none}.test-steps-container .modal-actions{align-items:center;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.test-steps-container .modal-button{border:none;border-radius:6px;cursor:pointer;font-weight:600;transition:all .2s}.test-steps-container .modal-button.cancel{background-color:#f1f5f9;border:1px solid #0000;color:#64748b;font-size:.95rem;padding:.75rem 1.5rem}.test-steps-container .modal-button.cancel:hover{background-color:#e2e8f0;color:#475569}.test-steps-container .modal-button.confirm{background-color:#34d399!important;box-shadow:0 4px 6px -1px #34d39933,0 2px 4px -1px #34d3991a;color:#fff!important;font-size:1rem;min-width:150px;padding:.75rem 2.5rem}.test-steps-container .modal-button.confirm:hover{background-color:#10b981!important;box-shadow:0 10px 15px -3px #34d3994d,0 4px 6px -2px #34d39926;transform:translateY(-1px)}.test-suites-container{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;padding:20px}.suites-header{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:30px;padding:20px}.suites-header h2{color:#2c3e50;font-size:28px;font-weight:600;margin:0}.create-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;box-shadow:0 4px 12px #667eea66;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s ease}.create-button:hover{box-shadow:0 6px 16px #667eea99;transform:translateY(-2px)}.create-button:active{transform:translateY(0)}.suites-list{gap:12px}.suite-item{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.suite-item:hover{box-shadow:0 4px 16px #00000026}.suite-header{background:#fafbfc;border-bottom:1px solid #ecf0f1;gap:12px;padding:16px}.expand-button{align-items:center;background:none;border:none;border-radius:4px;color:#7f8c8d;cursor:pointer;display:flex;font-size:16px;justify-content:center;min-width:32px;padding:4px 8px;transition:all .2s ease}.expand-button:hover:not(:disabled){background:#ecf0f1;color:#2c3e50}.expand-button:disabled{cursor:not-allowed;opacity:.5}.suite-info{align-items:center;display:flex;flex:1 1;gap:12px}.suite-details{flex:1 1}.suite-name{color:#2c3e50;font-size:16px;margin:0}.suite-description{color:#7f8c8d;font-size:13px;margin:4px 0 0}.suite-meta{align-items:center;display:flex;gap:8px;margin-top:6px}.badge{border-radius:12px;color:#fff;display:inline-block;font-size:11px;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.test-count{color:#95a5a6;font-size:12px;font-weight:500}.suite-actions{display:flex;gap:8px}.action-button{color:#7f8c8d;font-size:14px;padding:8px 12px;transition:all .2s ease}.action-button:hover{background:#ecf0f1}.action-button.edit:hover{color:#3498db}.action-button.delete:hover{color:#e74c3c}.suite-content{background:#f8f9fa;border-top:1px solid #ecf0f1;padding:16px}.tests-list{margin-bottom:16px}.tests-list h5{color:#2c3e50;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.tests-list ul{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.test-item{align-items:center;background:#fff;border-left:3px solid #3498db;border-radius:4px;color:#2c3e50;display:flex;font-size:13px;gap:8px;padding:8px 12px}.test-name{flex:1 1}.test-type{background:#ecf0f1;border-radius:3px;color:#7f8c8d;display:inline-block;font-size:11px;font-weight:600;padding:2px 8px;text-transform:uppercase}.remove-test-button{align-items:center;background:none;border:none;border-radius:4px;color:#bdc3c7;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s ease}.remove-test-button:hover{background:#fee2e2;color:#dc2626}.test-item:hover .remove-test-button{color:#e74c3c}.child-suites{border-top:1px solid #ecf0f1;margin-top:16px;padding-top:16px}.child-suites h5{color:#2c3e50;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.error-message{background:#fadbd8;border-left:4px solid #c0392b;color:#c0392b;margin-bottom:16px;padding:12px 16px}.loading{color:#7f8c8d;font-size:16px;padding:40px}.empty-state{background:#fff;border-radius:8px;color:#7f8c8d;padding:60px 20px}.empty-state p{font-size:16px}.modal-overlay{animation:fadeIn .2s ease}.modal-content{animation:slideUp .3s ease;box-shadow:0 10px 40px #0003;padding:30px}.modal-content h3{color:#2c3e50;font-size:22px;font-weight:600;margin:0 0 20px}.form-group input,.form-group select,.form-group textarea{border:1px solid #bdc3c7;border-radius:4px;box-sizing:border-box;font-size:14px;padding:10px 12px;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-row{grid-gap:16px;gap:16px}.cancel-button,.submit-button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.cancel-button{background:#ecf0f1;color:#2c3e50}.cancel-button:hover{background:#bdc3c7}.submit-button{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea66}.submit-button:hover{box-shadow:0 6px 16px #667eea99}@media (max-width:768px){.test-suites-container{padding:12px}.suites-header{align-items:flex-start;flex-direction:column;gap:12px}.suites-header h2{font-size:22px}.create-button{justify-content:center;width:100%}.suite-header{align-items:flex-start;flex-direction:column}.suite-actions{justify-content:flex-end;width:100%}.form-row{grid-template-columns:1fr}.modal-content{padding:20px}.form-actions{flex-direction:column}.cancel-button,.submit-button{width:100%}}.modal-large{max-height:80vh;max-width:600px;overflow-y:auto}.tests-selection{margin:20px 0}.tests-list-modal{background:#fff;border:1px solid #e0e0e0;border-radius:6px;max-height:400px;overflow-y:auto}.test-checkbox-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;padding:12px 16px;transition:background-color .2s ease}.test-checkbox-item:hover{background-color:#f9f9f9}.test-checkbox-item input[type=checkbox]{cursor:pointer;height:18px;margin-right:12px;width:18px}.test-checkbox-item label{align-items:center;cursor:pointer;display:flex;flex:1 1;gap:12px;margin:0}.test-checkbox-item .test-name{color:#2c3e50;font-weight:500}.test-checkbox-item .test-type{background:#e8f4f8;border-radius:4px;color:#0277bd;font-size:12px;margin-left:auto;padding:4px 8px}.action-button.add{background-color:#4caf50;color:#fff}.action-button.add:hover{background-color:#45a049}.action-button.add:disabled{background-color:#ccc;cursor:not-allowed}.popup-overlay{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;opacity:1;position:fixed;top:0;transition:opacity .5s ease;width:100%;z-index:1500}.popup-overlay.hidden{opacity:0}.popup-content{background-color:#fff;border-radius:8px;opacity:1;padding:30px;text-align:center;transform:scale(1);transition:opacity .5s ease,transform .5s ease;width:300px}.popup-content.fade-out{opacity:0;transform:scale(.9)}.result-icon{font-size:50px;margin-bottom:20px}.result-icon.passed{color:green}.result-icon.failed{color:red}.close-popup-button{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:10px 20px}.close-popup-button:hover{background-color:#0056b3}.environments-container{background-color:#f8f9fa;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.environments-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.environments-header h2{color:#333;font-size:1.5rem;margin:0}.add-environment-button{align-items:center;background-color:var(--secondary-dark);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 16px;transition:background-color .2s}.add-environment-button:disabled{background-color:#6c757d;cursor:not-allowed}.environments-message,.loading-message,.no-environments-message{align-items:center;color:#6c757d;display:flex;flex-direction:column;justify-content:center;padding:30px;text-align:center}.environments-message svg,.no-environments-message svg{color:#6c757d;font-size:24px;margin-bottom:10px}.add-first-environment-button{background-color:#007bff;border-radius:4px;display:flex;font-size:14px;gap:8px;margin-top:15px;padding:8px 16px;transition:background-color .2s}.add-first-environment-button:hover{background-color:#0069d9}.environments-table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-x:auto}.environments-table{border-collapse:collapse;text-align:left;width:100%}.environments-table th{background-color:#f8f9fa;border-bottom:2px solid #e9ecef;color:#6c757d;font-size:.85rem;font-weight:600;padding:16px;text-transform:uppercase;white-space:nowrap}.environments-table td{border-bottom:1px solid #e9ecef;color:#333;font-size:.95rem;padding:16px;vertical-align:middle}.environments-table tr:last-child td{border-bottom:none}.environments-table tr:hover{background-color:#f8f9fa}.env-name{color:var(--primary);font-weight:600}.env-url{color:#666;font-family:monospace}.text-muted{color:#adb5bd;font-style:italic}.actions-cell{align-items:center;display:flex;gap:8px;justify-content:flex-end}.delete-button,.edit-button{background:none;font-size:16px;padding:5px}.delete-button,.edit-button{border:none;border-radius:4px;cursor:pointer;transition:background-color .2s}.edit-button{background-color:var(--primary-dark);color:#fff;margin-right:5px;padding:6px 10px}.edit-button:hover{background-color:#0069d9}.delete-button{color:#dc3545}.delete-button:hover{background-color:#dc35451a}.delete-button:disabled,.edit-button:disabled{color:#6c757d;cursor:not-allowed}.delete-button:disabled:hover,.edit-button:disabled:hover{background-color:initial}.login-button{background-color:#17a2b8;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-right:5px;padding:6px 10px;transition:background-color .2s}.login-button:hover{background-color:#138496}.login-button:disabled{background-color:#6c757d;cursor:not-allowed}.environment-form-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.environment-form-container h3{color:#333;font-size:1.2rem;margin-bottom:20px;margin-top:0}.form-group{margin-bottom:15px}.form-group label{color:#333}.form-group input{border:1px solid #ced4da;font-size:14px;padding:8px 12px}.form-group input:focus{border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.form-actions{gap:10px}.cancel-button,.save-button{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 16px;transition:background-color .2s}.cancel-button{background-color:#f8f9fa;border:1px solid #ced4da;color:#212529}.cancel-button:hover{background-color:#e2e6ea}.save-button{background-color:#007bff;color:#fff}.save-button:hover{background-color:#0069d9}.error-message{gap:8px;margin-bottom:15px;padding:10px}.error-message svg{color:#721c24}.success-message{align-items:center;background-color:#d4edda;border-radius:4px;color:#155724;display:flex;gap:8px;margin-bottom:15px;padding:10px}.api-schema-upload{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.api-schema-upload h3{align-items:center;color:#333;display:flex;gap:10px;margin-bottom:20px}.no-project-message{color:#666;font-style:italic;padding:40px;text-align:center}.upload-section{background:#f8f9fa;border-radius:6px;margin-bottom:30px;padding:20px}.upload-section h4{color:#555;margin-bottom:15px}.upload-form{display:flex;flex-direction:column;gap:15px}.form-group{gap:5px}.form-group label{color:#555}.form-group input[type=file],.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px}.form-group textarea{min-height:60px}.upload-button{align-self:flex-start;background:#007bff;border-radius:4px;font-size:14px;padding:10px 20px;transition:background .2s}.upload-button:hover:not(:disabled){background:#0056b3}.upload-button:disabled{background:#ccc;cursor:not-allowed}.schemas-list h4{color:#555;margin-bottom:15px}.no-schemas{color:#999;font-style:italic;padding:30px;text-align:center}.schemas-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.schema-card{background:#fff;border:1px solid #e0e0e0;border-radius:6px;padding:15px;transition:box-shadow .2s}.schema-card:hover{box-shadow:0 4px 8px #0000001a}.schema-header{align-items:center;display:flex;gap:10px;margin-bottom:10px}.schema-icon{color:#28a745;font-size:20px}.schema-header h5{color:#333;font-size:16px;margin:0}.schema-description{color:#666;font-size:14px;margin-bottom:10px;min-height:20px}.schema-meta{align-items:center;display:flex;font-size:12px;justify-content:space-between;margin-bottom:10px}.schema-type{background:#e3f2fd;border-radius:3px;color:#1976d2;font-weight:500;padding:3px 8px;text-transform:uppercase}.schema-date{color:#999}.delete-schema-button{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;padding:6px 12px;transition:background .2s;width:100%}.delete-schema-button:hover{background:#c82333}.conflict-notifications-container{margin:0 auto;max-width:1200px;padding:20px}.conflict-notifications-header{align-items:center;border-bottom:2px solid #e74c3c;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.conflict-notifications-header h2{align-items:center;color:#e74c3c;display:flex;font-size:24px;gap:10px}.conflict-count{background:#e74c3c;border-radius:20px;color:#fff;font-size:14px;font-weight:700;padding:5px 15px}.conflict-notifications-empty,.conflict-notifications-loading{color:#666;padding:60px 20px;text-align:center}.conflict-notifications-empty i{color:#27ae60;font-size:64px;margin-bottom:20px}.conflict-notifications-empty h3{color:#333;font-size:24px;margin-bottom:10px}.conflict-notifications-list{display:flex;flex-direction:column;gap:20px;max-height:calc(100vh - 200px);overflow-y:auto;padding-right:10px}.conflict-notifications-list::-webkit-scrollbar{width:8px}.conflict-notifications-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.conflict-notifications-list::-webkit-scrollbar-thumb{background:#e74c3c;border-radius:4px}.conflict-notifications-list::-webkit-scrollbar-thumb:hover{background:#c0392b}.conflict-notification-card{background:#fff;border:2px solid #e74c3c;border-radius:8px;box-shadow:0 2px 8px #e74c3c1a;padding:20px;transition:all .3s ease}.conflict-notification-card:hover{box-shadow:0 4px 12px #e74c3c33}.conflict-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:15px}.conflict-test-info{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.conflict-test-info h3{color:#333;font-size:18px;margin:0}.conflict-step-badge{background:#3498db;color:#fff}.conflict-step-badge,.conflict-type-badge{border-radius:12px;font-size:12px;font-weight:700;padding:3px 10px}.conflict-type-badge{text-transform:uppercase}.conflict-type-badge.status_mismatch{background:#e74c3c;color:#fff}.conflict-type-badge.schema_mismatch{background:#f39c12;color:#fff}.conflict-details-btn{background:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background .3s ease}.conflict-details-btn:hover{background:#2980b9}.conflict-summary{background:#fff3cd;border-left:4px solid #f39c12;border-radius:4px;margin-bottom:15px;padding:15px}.conflict-summary p{color:#856404;margin:0}.conflict-details{border-top:1px solid #eee;margin-top:20px;max-height:600px;overflow-y:auto;padding-right:10px;padding-top:20px}.conflict-details::-webkit-scrollbar{width:6px}.conflict-details::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.conflict-details::-webkit-scrollbar-thumb{background:#95a5a6;border-radius:3px}.conflict-details::-webkit-scrollbar-thumb:hover{background:#7f8c8d}.conflict-section{margin-bottom:20px}.conflict-section h4{color:#333;font-size:16px;margin-bottom:10px}.conflict-code-block{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;font-family:Courier New,monospace;font-size:13px;padding:15px}.conflict-code-block pre{word-wrap:break-word;margin:5px 0 0;white-space:pre-wrap}.conflict-comparison{grid-gap:20px;background:#f8f9fa;border-radius:8px;display:grid;gap:20px;grid-template-columns:1fr auto 1fr;margin:20px 0;padding:20px}.conflict-actual,.conflict-expected{border-radius:4px;padding:15px}.conflict-expected{background:#fff;border:2px solid #3498db}.conflict-actual{background:#fff;border:2px solid #e74c3c}.conflict-actual h4,.conflict-expected h4{font-size:14px;margin:0 0 10px}.conflict-arrow{align-items:center;color:#95a5a6;display:flex;font-size:24px}.status-badge{font-size:14px;font-weight:700;margin-bottom:10px;padding:5px 12px}.status-badge.expected{background:#3498db;color:#fff}.status-badge.actual{background:#e74c3c;color:#fff}.response-preview{margin-top:10px;max-height:200px;overflow-y:auto}.response-preview pre{background:#f8f9fa;border-radius:4px;font-size:12px;margin:0;padding:10px}.conflict-resolution{background:#d4edda;border:1px solid #c3e6cb;border-radius:4px;margin:20px 0;padding:15px}.conflict-resolution h4,.conflict-resolution p{color:#155724;margin:0 0 10px}.corrected-expectation{background:#fff;border-left:4px solid #28a745;border-radius:4px;color:#155724;font-weight:700;padding:10px}.conflict-actions{border-top:1px solid #eee;display:flex;gap:15px;margin-top:20px;padding-top:20px}.conflict-actions button{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;flex:1 1;font-size:16px;font-weight:700;gap:8px;justify-content:center;padding:12px 20px;transition:all .3s ease}.btn-approve{background:#27ae60;color:#fff}.btn-approve:hover{background:#229954;box-shadow:0 4px 8px #27ae604d;transform:translateY(-2px)}.btn-reject{background:#e74c3c;color:#fff}.btn-reject:hover{background:#c0392b;box-shadow:0 4px 8px #e74c3c4d;transform:translateY(-2px)}@media (max-width:768px){.conflict-comparison{gap:10px;grid-template-columns:1fr}.conflict-arrow{justify-content:center;transform:rotate(90deg)}.conflict-actions{flex-direction:column}}.conflict-popup-overlay{align-items:center;animation:fadeIn .3s ease;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.conflict-popup{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:700px;width:90%}.conflict-popup-header{align-items:center;background:linear-gradient(135deg,#e74c3c,#c0392b);border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:20px 25px}.conflict-popup-title{align-items:center;display:flex;gap:12px}.conflict-popup-title i{animation:pulse 2s infinite;font-size:24px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.conflict-popup-title h2{font-size:22px;font-weight:600;margin:0}.conflict-popup-count{background:#ffffff4d;border-radius:12px;font-size:13px;font-weight:700;padding:4px 12px}.conflict-popup-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;transition:background .3s ease;width:32px}.conflict-popup-close:hover{background:#ffffff4d}.conflict-popup-body{flex:1 1;overflow-y:auto;padding:25px}.conflict-popup-test-info{margin-bottom:20px}.conflict-popup-test-info h3{color:#333;font-size:20px;margin:0 0 10px}.conflict-popup-badges{display:flex;gap:10px}.conflict-popup-badge{border-radius:12px;font-size:12px;font-weight:700;padding:4px 12px;text-transform:uppercase}.conflict-popup-badge.step{background:#3498db;color:#fff}.conflict-popup-badge.type{background:#e74c3c;color:#fff}.conflict-popup-summary{background:#fff3cd;border-left:4px solid #f39c12;border-radius:4px;margin-bottom:20px;padding:15px}.conflict-popup-summary p{color:#856404;line-height:1.6;margin:0}.conflict-popup-comparison{grid-gap:15px;background:#f8f9fa;border-radius:8px;display:grid;gap:15px;grid-template-columns:1fr auto 1fr;margin:20px 0;padding:20px}.conflict-popup-actual,.conflict-popup-expected{text-align:center}.conflict-popup-actual h4,.conflict-popup-expected h4{color:#666;font-size:14px;margin:0 0 10px}.conflict-popup-status{background:#3498db;border-radius:6px;color:#fff;display:inline-block;font-weight:700;padding:8px 16px}.conflict-popup-status.actual{background:#e74c3c}.conflict-popup-arrow{align-items:center;color:#95a5a6;display:flex;font-size:24px}.conflict-popup-toggle-details{background:#ecf0f1;border:none;border-radius:6px;color:#34495e;cursor:pointer;font-weight:600;margin-top:15px;padding:10px;transition:background .3s ease;width:100%}.conflict-popup-toggle-details:hover{background:#d5dbdb}.conflict-popup-details{animation:slideDown .3s ease;border-top:2px solid #ecf0f1;margin-top:20px;padding-top:20px}@keyframes slideDown{0%{max-height:0;opacity:0}to{max-height:1000px;opacity:1}}.conflict-popup-section{margin-bottom:20px}.conflict-popup-section h4{color:#333;font-size:15px;margin:0 0 10px}.conflict-popup-code{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;font-family:Courier New,monospace;font-size:12px;padding:12px}.conflict-popup-code pre{word-wrap:break-word;margin:5px 0 0;white-space:pre-wrap}.conflict-popup-resolution{background:#d4edda;border:1px solid #c3e6cb;border-radius:4px;margin-top:15px;padding:15px}.conflict-popup-resolution h4,.conflict-popup-resolution p{color:#155724;margin:0 0 10px}.conflict-popup-resolution p{line-height:1.6}.conflict-popup-corrected{background:#fff;border-left:4px solid #28a745;border-radius:4px;color:#155724;font-weight:700;padding:10px}.conflict-popup-actions{border-top:1px solid #ecf0f1;display:flex;gap:15px;padding:20px 25px}.conflict-popup-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:16px;font-weight:700;gap:8px;justify-content:center;padding:14px 20px;transition:all .3s ease}.conflict-popup-btn.approve{background:#27ae60;color:#fff}.conflict-popup-btn.approve:hover{background:#229954;box-shadow:0 4px 12px #27ae604d;transform:translateY(-2px)}.conflict-popup-btn.reject{background:#e74c3c;color:#fff}.conflict-popup-btn.reject:hover{background:#c0392b;box-shadow:0 4px 12px #e74c3c4d;transform:translateY(-2px)}@media (max-width:768px){.conflict-popup{max-height:95vh;width:95%}.conflict-popup-comparison{gap:10px;grid-template-columns:1fr}.conflict-popup-arrow{justify-content:center;transform:rotate(90deg)}.conflict-popup-actions{flex-direction:column}}.placeholder-help{background:#f8f9fa;margin:0 auto;max-width:1200px;min-height:100%;padding:30px}.help-header{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin-bottom:40px;padding:30px;text-align:center}.help-header h1{color:#2c3e50;font-size:2.5em;margin:0 0 10px}.help-header p{color:#7f8c8d;font-size:1.2em;margin:0}.help-content{display:flex;flex-direction:column;gap:30px}.help-section{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;padding:30px}.help-section h2{border-bottom:3px solid #3498db;color:#2c3e50;font-size:1.8em;margin:0 0 20px;padding-bottom:10px}.help-section h3{color:#34495e;font-size:1.3em;margin:20px 0 10px}.syntax-boxes{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:20px}.syntax-box{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;padding:20px;text-align:center}.syntax-box strong{display:block;font-size:1.1em;margin-bottom:10px}.syntax-box code{background:#fff3;border-radius:5px;font-size:1.1em;padding:8px 15px}.info-box{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-left:5px solid #2196f3;border-radius:8px;color:#1976d2;margin-bottom:20px;padding:15px 20px}.info-box strong{color:#0d47a1}.help-table{border-collapse:collapse;margin-top:20px;width:100%}.help-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.help-table th{font-weight:600;padding:12px;text-align:left}.help-table tbody tr{border-bottom:1px solid #ecf0f1}.help-table tbody tr:hover{background:#f8f9fa}.help-table td{padding:12px}.help-table td:first-child{font-weight:600}.help-table code{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:5px;color:#fff;font-size:.9em;padding:4px 10px}.example-block{background:#fffbf0;border-left:5px solid #f39c12;border-radius:8px;margin-bottom:20px;padding:20px}.example-block h3{color:#d68910;margin:0 0 15px}.example-block pre{background:#fff;border-radius:5px;font-size:.95em;line-height:1.6;margin:0;overflow-x:auto;padding:15px}.tips-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:20px}.tip-card{border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:20px}.tip-card.do{background:linear-gradient(135deg,#f0fff4,#dcffea);border-left:5px solid #27ae60}.tip-card.dont{background:linear-gradient(135deg,#fff5f5,#ffe0e0);border-left:5px solid #e74c3c}.tip-card h3{font-size:1.4em;margin:0 0 15px}.tip-card.do h3{color:#229954}.tip-card.dont h3{color:#c0392b}.tip-card ul{margin:0;padding-left:20px}.tip-card li{line-height:1.6;margin:8px 0}.tip-card code{background:#0000000d;border-radius:3px;padding:2px 6px}.help-footer{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;color:#7f8c8d;margin-top:40px;padding:20px;text-align:center}@media (max-width:768px){.placeholder-help{padding:15px}.help-header{padding:20px}.help-header h1{font-size:1.8em}.help-section{padding:20px}.help-section h2{font-size:1.5em}.syntax-boxes,.tips-grid{grid-template-columns:1fr}}.metrics-dashboard-container{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;padding:2rem}.metrics-header{margin-bottom:2rem;text-align:center}.metrics-header h1{color:#1f2937;font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.metrics-header p{color:#6b7280;font-size:1rem;margin:0}.metrics-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.plan-selector{align-items:center;display:flex;gap:.5rem}.plan-selector label{color:#374151;font-weight:600}.plan-selector select{background-color:#fff;border:2px solid #e5e7eb;border-radius:.5rem;cursor:pointer;font-size:1rem;padding:.75rem 1rem;transition:all .3s ease}.plan-selector select:focus,.plan-selector select:hover{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.plan-selector select:focus{outline:none}.plan-selector select:disabled{cursor:not-allowed;opacity:.5}.loading-spinner{background-color:#dbeafe;border-radius:.5rem;color:#1e40af;display:inline-flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem}.loading-spinner:before{animation:spin .6s linear infinite;border:2px solid #1e40af;border-radius:50%;border-top-color:#0000;content:"";display:inline-block;height:1rem;width:1rem}.metrics-tabs{background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem;padding:1rem}.tab-button{background-color:#fff;border-radius:.5rem;padding:.75rem 1.5rem}.tab-button:hover{border-color:#3b82f6;color:#3b82f6}.tab-button.active{background-color:#3b82f6;border-color:#3b82f6}.metrics-content{background-color:#fff;border-radius:.75rem;box-shadow:0 4px 6px #0000001a;padding:2rem}.no-data{color:#9ca3af;font-size:1.1rem;padding:2rem}.metrics-overview{animation:fadeIn .3s ease}.metrics-grid{grid-gap:1.5rem;gap:1.5rem}.metric-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:.75rem;box-shadow:0 4px 6px #0000001a;color:#fff;padding:1.5rem;transition:transform .3s ease,box-shadow .3s ease}.metric-card:hover{box-shadow:0 8px 12px #00000026}.metric-label{font-size:.875rem;margin-bottom:.5rem;opacity:.9}.metric-value{font-size:2rem;margin-bottom:.5rem}.metric-subtext{font-size:.875rem;opacity:.8}.metrics-trend{animation:fadeIn .3s ease}.metrics-trend h3{color:#1f2937;margin-bottom:1.5rem;margin-top:0}.trend-table{overflow-x:auto}.trend-table table{border-collapse:collapse;font-size:.95rem;width:100%}.trend-table thead{background-color:#f3f4f6;border-bottom:2px solid #e5e7eb}.trend-table th{color:#374151;font-weight:600;padding:1rem;text-align:left}.trend-table td{border-bottom:1px solid #e5e7eb;color:#6b7280;padding:1rem}.trend-table tbody tr:hover{background-color:#f9fafb}.metrics-performance{grid-gap:2rem;animation:fadeIn .3s ease;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.performance-section h3{color:#1f2937;font-size:1.25rem;margin-bottom:1rem;margin-top:0}.suite-list{display:flex;flex-direction:column;gap:1rem}.suite-item{border:1px solid #e5e7eb;padding:1rem;transition:all .3s ease}.suite-item:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a}.suite-item.flaky{border-left:4px solid #f59e0b}.suite-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.suite-id{color:#1f2937;font-size:1.05rem;font-weight:600}.suite-duration{background-color:#dbeafe;color:#1e40af}.flakiness-score,.suite-duration{border-radius:.25rem;font-size:.875rem;font-weight:600;padding:.25rem .75rem}.flakiness-score{background-color:#fef3c7;color:#92400e}.suite-stats{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat{display:flex;flex-direction:column;gap:.25rem}.stat-label{color:#9ca3af}.stat-value{color:#1f2937;font-size:1.1rem}.metrics-failure{animation:fadeIn .3s ease}.failure-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.failure-card{background:linear-gradient(135deg,#f093fb,#f5576c);border-radius:.75rem;box-shadow:0 4px 6px #0000001a;color:#fff;padding:1.5rem;text-align:center;transition:transform .3s ease}.failure-card:hover{transform:translateY(-4px)}.failure-label{font-size:.875rem;font-weight:600;margin-bottom:.75rem;opacity:.9}.failure-value{font-size:2.5rem;font-weight:700}.metrics-dashboard-full{grid-gap:2rem;animation:fadeIn .3s ease;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.dashboard-section{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem}.dashboard-section h3{color:#1f2937;font-size:1.1rem;font-weight:600;margin-bottom:1rem;margin-top:0}.stats-summary{display:flex;flex-direction:column;gap:.75rem}.stat-item{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;justify-content:space-between;padding:.75rem}.stat-name{color:#6b7280;font-size:.95rem;font-weight:600}.stat-val{color:#1f2937;font-size:1.1rem;font-weight:700}.mini-suite-list{display:flex;flex-direction:column;gap:.5rem}.mini-suite{align-items:center;background-color:#fff;border-left:3px solid #3b82f6;border-radius:.5rem;display:flex;font-size:.95rem;justify-content:space-between;padding:.75rem}.mini-suite span:first-child{color:#1f2937;font-weight:600}.mini-suite span:last-child{color:#6b7280;font-size:.875rem}@media (max-width:768px){.metrics-dashboard-container{padding:1rem}.metrics-header h1{font-size:1.75rem}.metrics-dashboard-full,.metrics-grid,.metrics-performance{grid-template-columns:1fr}.metrics-tabs{flex-direction:column}.tab-button{width:100%}.trend-table{font-size:.85rem}.trend-table td,.trend-table th{padding:.75rem .5rem}}.execution-plans-container{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;padding:2rem}.plans-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.plans-header h2{color:#1f2937;font-size:2rem;font-weight:700;margin:0}.btn-primary{background-color:#3b82f6;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.btn-primary:hover{background-color:#2563eb;box-shadow:0 4px 12px #3b82f64d;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.5;transform:none}.btn-secondary{background-color:#e5e7eb;border:none;border-radius:.5rem;color:#374151;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.btn-secondary:hover{background-color:#d1d5db}.error-message{border-left:4px solid #dc2626;border-radius:.5rem;padding:1rem}.create-plan-form{background-color:#fff;border-radius:.75rem;box-shadow:0 4px 6px #0000001a;margin-bottom:2rem;padding:2rem}.create-plan-form h3{color:#1f2937;font-size:1.5rem;margin-bottom:1.5rem;margin-top:0}.form-group{margin-bottom:1.5rem}.form-group label{font-size:.95rem}.form-group input,.form-group select,.form-group textarea{border:2px solid #e5e7eb;border-radius:.5rem;font-family:inherit;font-size:1rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-actions{margin-top:2rem}.form-actions button{flex:1 1}.plans-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr}.plan-details,.plans-list{background-color:#fff;border-radius:.75rem;box-shadow:0 4px 6px #0000001a;padding:1.5rem}.plan-details h3,.plans-list h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;margin-top:0}.loading,.no-data{color:#9ca3af;font-size:1rem}.plans-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr}.plan-card{background-color:#f9fafb;border:2px solid #e5e7eb;border-radius:.5rem;cursor:pointer;padding:1rem;transition:all .3s ease}.plan-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f61a;transform:translateY(-2px)}.plan-card.selected{background-color:#eff6ff;border-color:#3b82f6;box-shadow:0 4px 12px #3b82f633}.plan-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.plan-header h4{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0}.plan-type{border-radius:.25rem;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.plan-type.parallel{background-color:#dbeafe;color:#1e40af}.plan-type.sequential{background-color:#fef3c7;color:#92400e}.plan-type.hybrid{background-color:#e9d5ff;color:#6b21a8}.plan-description{color:#6b7280;font-size:.9rem;line-height:1.4;margin-bottom:.75rem}.plan-meta{grid-gap:.75rem;border-bottom:1px solid #e5e7eb;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;margin-bottom:1rem;padding-bottom:1rem}.meta-item{display:flex;flex-direction:column;gap:.25rem}.meta-item .label{color:#9ca3af;font-size:.75rem;font-weight:600;text-transform:uppercase}.meta-item .value{color:#1f2937;font-size:.95rem;font-weight:500}.status{border-radius:.25rem;font-size:.75rem;font-weight:600;padding:.25rem .5rem;text-transform:uppercase}.status.active{background-color:#d1fae5;color:#065f46}.status.inactive{background-color:#fee2e2;color:#991b1b}.status.scheduled{background-color:#dbeafe;color:#1e40af}.plan-actions{display:flex;gap:.5rem}.btn-small{border:none;border-radius:.25rem;cursor:pointer;flex:1 1;font-size:.85rem;font-weight:600;padding:.5rem .75rem;transition:all .3s ease}.btn-execute{background-color:#d1fae5;color:#065f46}.btn-execute:hover{background-color:#a7f3d0}.btn-delete{background-color:#fee2e2;color:#991b1b}.btn-delete:hover{background-color:#fecaca}.details-section{border-bottom:1px solid #e5e7eb;margin-bottom:2rem;padding-bottom:1.5rem}.details-section:last-child{border-bottom:none}.details-section h4{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.details-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.detail-item{background-color:#f9fafb;border-radius:.5rem;display:flex;flex-direction:column;gap:.25rem;padding:.75rem}.detail-item .label{color:#9ca3af;font-size:.75rem;font-weight:600;text-transform:uppercase}.detail-item .value{color:#1f2937;font-size:1rem;font-weight:600}.description-box{background-color:#f9fafb;border-left:4px solid #3b82f6;border-radius:.5rem;margin-top:1rem;padding:1rem}.description-box strong{color:#1f2937;display:block;margin-bottom:.5rem}.description-box p{color:#6b7280;line-height:1.5;margin:0}.suites-list{display:flex;flex-direction:column;gap:.75rem}.suite-item{background-color:#f9fafb;border-left:3px solid #3b82f6;padding:.75rem}.suite-name{font-weight:600}.suite-order{color:#9ca3af;font-size:.85rem}.history-item{align-items:center;background-color:#f9fafb;border-radius:.5rem;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:.75rem}.history-item .label{color:#6b7280;font-weight:600}.history-item .value{color:#1f2937;font-weight:500}@media (max-width:1024px){.plans-content{grid-template-columns:1fr}}@media (max-width:768px){.execution-plans-container{padding:1rem}.plans-header{align-items:flex-start;flex-direction:column;gap:1rem}.plans-header h2{font-size:1.5rem}.btn-primary{width:100%}.details-grid,.form-row{grid-template-columns:1fr}.plan-header{align-items:flex-start;flex-direction:column;gap:.5rem}.plan-meta{grid-template-columns:1fr}}.add-suite-btn{background-color:#10b981;border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.add-suite-btn:hover{background-color:#059669}.suite-item{align-items:center;background-color:#f3f4f6;border-radius:.5rem;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:.75rem 1rem}.suite-name{color:#1f2937;font-weight:500}.suite-order{color:#6b7280;font-size:.875rem}.remove-suite-btn{background-color:#ef4444;border:none;border-radius:.25rem;color:#fff;cursor:pointer;font-size:.75rem;padding:.25rem .5rem;transition:all .2s}.remove-suite-btn:hover{background-color:#dc2626}.modal-content{box-shadow:0 25px 50px -12px #00000040;max-width:400px;width:100%}.modal-content h3{font-size:1.25rem;margin:0 0 1.5rem}.modal-content small{color:#6b7280;display:block;font-size:.75rem;margin-top:.25rem}.modal-actions{gap:1rem}.cancel-btn{background-color:#e5e7eb;border:none;border-radius:.5rem;color:#374151;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.cancel-btn:hover{background-color:#d1d5db}.confirm-btn{background-color:#3b82f6;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.confirm-btn:hover{background-color:#2563eb}.confirm-btn:disabled{cursor:not-allowed;opacity:.5}.help-text{color:#6b7280;display:block;font-size:.75rem;margin-top:.25rem}.refresh-btn{background:none;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:1rem;padding:.25rem .5rem}.refresh-btn:hover{background-color:#f3f4f6}.status-badge{border-radius:4px;padding:.25rem .5rem}.status-badge.passed{background-color:#dcfce7;color:#166534}.status-badge.failed{background-color:#fee2e2;color:#991b1b}.status-badge.running{background-color:#dbeafe;color:#1e40af}.status-badge.skipped{background-color:#f3f4f6;color:#4b5563}.runs-list{display:flex;flex-direction:column;gap:.5rem}.run-item{border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;padding:.75rem;transition:all .2s ease}.run-item:hover{background-color:#f8fafc;border-color:#3b82f6}.run-item.selected{background-color:#eff6ff;border-color:#3b82f6}.run-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.run-date{color:#6b7280;font-size:.875rem}.run-stats{display:flex;font-size:.875rem;gap:1rem}.run-stats .stat{align-items:center;display:flex;gap:.25rem}.run-stats .stat.passed{color:#16a34a}.run-stats .stat.failed{color:#dc2626}.run-stats .stat.skipped{color:#6b7280}.run-stats .stat.duration{color:#2563eb}.test-results-section{border-top:2px solid #3b82f6}.run-summary{align-items:center;background-color:#f8fafc;border-radius:6px;display:flex;gap:1rem;margin-bottom:1rem;padding:.75rem}.run-summary .passed{color:#16a34a;font-weight:500}.run-summary .failed{color:#dc2626;font-weight:500}.test-results-list{display:flex;flex-direction:column;gap:.5rem;max-height:400px;overflow-y:auto}.test-result-item{background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:.75rem}.test-result-item.passed{border-left:4px solid #16a34a}.test-result-item.error,.test-result-item.failed{border-left:4px solid #dc2626}.test-result-item.skipped{border-left:4px solid #6b7280}.test-info{align-items:center;display:flex;gap:.5rem;margin-bottom:.5rem}.test-meta,.test-suite{color:#6b7280;font-size:.75rem}.test-meta{display:flex;gap:1rem}.test-meta .duration{color:#2563eb}.test-meta .retries{color:#f59e0b}.error-message{background-color:#fef2f2;font-size:.75rem;margin-top:.5rem;padding:.5rem;word-break:break-word}.plan-details-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.plan-details-header h3{margin:0}.settings-btn{background-color:#6b7280;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem}.settings-btn:hover{background-color:#4b5563}.settings-modal{max-height:80vh;max-width:500px;overflow-y:auto}.settings-section{border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem;padding-bottom:1.5rem}.settings-section:last-of-type{border-bottom:none}.settings-section h4{color:#374151;font-size:1rem;margin:0 0 1rem}.checkbox-group{flex-direction:column;gap:.5rem;margin-bottom:1rem}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem}.checkbox-label input[type=checkbox]{cursor:pointer;height:1rem;width:1rem}.requirements-container{margin:0 auto;max-width:1400px;padding:1.5rem}.requirements-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.requirements-header h2{color:#1f2937;margin:0}.create-btn{background-color:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1rem}.create-btn:hover{background-color:#2563eb}.coverage-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:1.5rem}.coverage-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1rem;text-align:center}.coverage-label{color:#6b7280;font-size:.75rem;margin-bottom:.5rem;text-transform:uppercase}.coverage-value{color:#1f2937;font-size:1.5rem;font-weight:600}.coverage-value.covered{color:#16a34a}.coverage-value.uncovered{color:#dc2626}.coverage-value.good{color:#16a34a}.coverage-value.warning{color:#f59e0b}.coverage-value.bad{color:#dc2626}.filters-row{display:flex;gap:1rem;margin-bottom:1rem}.filters-row select{border:1px solid #d1d5db;border-radius:6px;min-width:150px;padding:.5rem}.requirements-content{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1.5fr}.requirements-list{display:flex;flex-direction:column;gap:.75rem;max-height:70vh;overflow-y:auto}.requirement-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;padding:.75rem;transition:all .2s ease}.requirement-card:hover{border-color:#3b82f6;box-shadow:0 2px 4px #3b82f61a}.requirement-card.selected{background-color:#eff6ff;border-color:#3b82f6}.req-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.req-id{color:#3b82f6;font-family:monospace;font-weight:600}.req-title{color:#1f2937;font-weight:500;line-height:1.3;margin-bottom:.5rem}.req-footer{align-items:center;display:flex;font-size:.75rem;justify-content:space-between}.req-type{color:#6b7280}.priority-critical,.priority-high,.priority-low,.priority-medium,.req-priority{border-radius:4px;font-size:.7rem;font-weight:600;padding:.125rem .5rem;text-transform:uppercase}.priority-critical{background-color:#fef2f2;color:#991b1b}.priority-high{background-color:#fef3c7;color:#92400e}.priority-medium{background-color:#dbeafe;color:#1e40af}.priority-low{background-color:#f3f4f6;color:#4b5563}.req-status,.status-approved,.status-deprecated,.status-draft,.status-implemented,.status-verified{border-radius:4px;font-size:.7rem;font-weight:600;padding:.125rem .5rem}.status-verified{background-color:#dcfce7;color:#166534}.status-implemented{background-color:#dbeafe;color:#1e40af}.status-approved{background-color:#fef3c7;color:#92400e}.status-draft{background-color:#f3f4f6;color:#4b5563}.status-deprecated{background-color:#fee2e2;color:#991b1b}.requirement-details{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.details-header{align-items:flex-start;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.details-header h3{color:#1f2937;margin:0}.details-actions{display:flex;gap:.5rem}.delete-btn,.edit-btn{border-radius:4px;font-size:.75rem;padding:.25rem .5rem}.edit-btn{background-color:#f3f4f6;color:#374151}.edit-btn:hover{background-color:#e5e7eb}.delete-btn{background-color:#fee2e2;color:#991b1b}.delete-btn:hover{background-color:#fecaca}.details-content{margin-bottom:1.5rem}.detail-row{display:flex;margin-bottom:.75rem}.detail-row.description{flex-direction:column}.detail-label{color:#6b7280;font-weight:500;min-width:100px}.detail-value{color:#1f2937}.detail-row.description p{color:#4b5563;line-height:1.5;margin:.5rem 0 0}.linked-tests-section{border-top:1px solid #e5e7eb;padding-top:1rem}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.section-header h4{color:#374151;margin:0}.link-test-btn{background-color:#10b981;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.75rem;padding:.25rem .75rem}.link-test-btn:hover{background-color:#059669}.linked-tests-list{display:flex;flex-direction:column;gap:.5rem}.linked-test-item{align-items:center;background-color:#f9fafb;border-radius:4px;display:flex;justify-content:space-between;padding:.5rem}.test-name{color:#1f2937}.coverage-type{border-radius:4px;font-size:.7rem;font-weight:600;padding:.125rem .5rem}.coverage-type.full{background-color:#dcfce7;color:#166534}.coverage-type.partial{background-color:#fef3c7;color:#92400e}.coverage-type.exploratory{background-color:#dbeafe;color:#1e40af}.unlink-btn{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:1rem}.unlink-btn:hover{color:#dc2626}.no-tests{background-color:#f9fafb;border-radius:4px;color:#6b7280;font-style:italic;padding:1rem;text-align:center}.modal-content{padding:1.5rem}.modal-content h3{color:#1f2937;margin:0 0 1rem}.form-group{margin-bottom:1rem}.form-group label{margin-bottom:.25rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:.5rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.modal-actions{gap:.5rem;margin-top:1.5rem}.cancel-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;padding:.5rem 1rem}.cancel-btn:hover{background-color:#f3f4f6}.submit-btn{background-color:#3b82f6;border-radius:6px;padding:.5rem 1rem}.submit-btn:hover{background-color:#2563eb}.submit-btn:disabled{background-color:#9ca3af;cursor:not-allowed}.loading,.no-data{color:#6b7280;padding:2rem;text-align:center}.error-message{border-radius:6px;color:#991b1b}@media (max-width:900px){.requirements-content{grid-template-columns:1fr}.coverage-summary{grid-template-columns:repeat(2,1fr)}}.dashboard{background-color:var(--gray-100);display:flex;flex-direction:row;height:100vh;overflow:hidden}.dashboard-sidebar{background-color:var(--primary);color:#fff;display:flex;flex-direction:column;flex-shrink:0;position:relative;transition:width .3s ease,padding .3s ease;width:260px;z-index:20}.dashboard-sidebar.collapsed{width:70px}.dashboard-sidebar.collapsed .nav-item span,.dashboard-sidebar.collapsed .sidebar-logo{display:none}.dashboard-sidebar.collapsed .nav-item{justify-content:center;padding:.75rem}.dashboard-sidebar.collapsed .nav-icon{font-size:1.2rem;margin:0}.sidebar-toggle-btn{align-items:center;background:none;border:none;border-radius:4px;color:#fff9;cursor:pointer;display:flex;justify-content:center;margin-left:auto;padding:8px;transition:all .2s}.dashboard-sidebar.collapsed .sidebar-toggle-btn{margin:0 auto}.sidebar-toggle-btn:hover{background-color:#ffffff1a;color:#fff}.sidebar-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;padding:1.5rem}.sidebar-logo{color:#fff;font-size:1.5rem;font-weight:800;letter-spacing:-.02em}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:.5rem;overflow-y:auto;padding:1.5rem 1rem}.nav-item{align-items:center;background:none;border:none;border-radius:var(--border-radius-md);color:#ffffffb3;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:.75rem;padding:.75rem 1rem;text-align:left;text-decoration:none;transition:all .2s ease;width:100%}.nav-item:hover{background-color:#ffffff1a;color:#fff}.nav-item.active{background-color:var(--secondary);box-shadow:0 4px 12px #0000001a;color:var(--primary-dark);font-weight:600}.nav-icon{text-align:center;width:1.25rem}.sidebar-footer{border-top:1px solid #ffffff1a;padding:1rem}.dashboard-main-area{background-color:var(--gray-50);display:flex;flex:1 1;flex-direction:column;overflow:hidden}.dashboard-header{align-items:center;background-color:#fff;border-bottom:1px solid var(--gray-200);box-shadow:var(--shadow-sm);display:flex;height:70px;justify-content:space-between;padding:1rem 2rem;z-index:10}.project-selector-container{align-items:center;display:flex;margin-right:15px;position:relative}.project-selector-label{color:var(--gray-700);font-size:14px;font-weight:500;margin-right:8px;white-space:nowrap}.project-selector-button{align-items:center;background-color:#fff;border:1px solid var(--gray-300);border-radius:var(--border-radius-md);cursor:pointer;display:flex;font-size:14px;justify-content:space-between;min-width:180px;padding:8px 12px;-webkit-user-select:none;user-select:none}.project-selector-button:hover{background-color:#f5f5f5}.project-icon{color:#6772e5;margin-right:8px}.dropdown-icon{color:#6c757d;margin-left:8px}.project-dropdown{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 2px 8px #00000026;left:0;margin-top:4px;max-height:300px;overflow-y:auto;position:absolute;top:100%;width:100%;z-index:1000}.project-option{border-bottom:1px solid #eee;cursor:pointer;padding:10px 12px}.project-option:last-child{border-bottom:none}.project-option:hover{background-color:#f5f5f5}.project-option.selected{background-color:#f0f7ff}.generate-button-container{position:relative}.generate-from-file-button{background:var(--primary);border-radius:8px;box-shadow:0 4px 12px #4f46e540,0 1px 3px #00000014;display:flex;font-size:15px;font-weight:600;justify-content:center;min-width:160px;overflow:hidden;padding:12px 20px;position:relative;transition:all .3s ease;z-index:1}.generate-from-file-button:before{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);content:"";height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .3s ease;width:100%;z-index:-1}.generate-from-file-button:active{box-shadow:0 3px 5px #4f46e533,0 1px 2px #00000014;transform:translateY(1px)}.generate-from-file-button.disabled{background:linear-gradient(135deg,#cbd5e1,#94a3b8);box-shadow:none;cursor:not-allowed;opacity:.7;transform:none}.generate-from-file-button svg{filter:drop-shadow(0 1px 1px rgba(0,0,0,.1));font-size:18px;margin-right:10px}.tooltip{background-color:var(--gray-800);border-radius:6px;bottom:-40px;box-shadow:0 4px 6px #0000001a;color:#fff;font-size:12px;padding:8px 12px;position:absolute;right:0;white-space:nowrap;z-index:100}.tooltip svg{margin-right:4px}.dashboard-content{flex-direction:column;padding:0}.dashboard-content,.dashboard-main{background-color:var(--gray-50);display:flex;flex:1 1;overflow:hidden}.dashboard-main{animation:fadeIn .3s ease-in-out;gap:1.5rem;height:100%;padding:1.5rem}.tree-container{background-color:#fff;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;max-width:500px;min-width:200px;overflow-x:auto;resize:horizontal;width:280px}.test-case-tree-container{min-width:0;overflow-x:auto}.content-container{background-color:#fff;border:1px solid var(--gray-200);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);flex:1 1;overflow:auto;padding:1.5rem}.content-container.full-width{flex:1 1;width:100%}.show-tree-btn{align-items:center;background-color:var(--primary);border:none;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;display:inline-flex;font-size:var(--font-size-sm);font-weight:500;gap:.5rem;margin-bottom:1rem;padding:8px 16px;transition:all var(--transition-fast)}.show-tree-btn:hover{background-color:var(--primary-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.test-executions-tab-container{animation:fadeIn .3s ease-in-out;background-color:initial!important;flex:1 1!important;height:calc(100vh - 180px)!important;margin:0!important;overflow-y:auto;padding:0!important;width:100%!important}.environments-tab-container{animation:fadeIn .3s ease-in-out}.api-schemas-tab-container,.environments-tab-container{background-color:#fff;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);flex:1 1;margin:1rem;overflow-y:auto;padding:1.5rem}.help-tab-container{background:#f8f9fa;flex:1 1;margin:0;overflow-y:auto;padding:0}.loading-message,.no-environments-message{align-items:center;color:var(--gray-600);display:flex;font-size:var(--font-size-base);justify-content:center;padding:2.5rem;text-align:center}.env-form-group{animation:fadeIn .3s ease;margin-bottom:1.25rem}.env-form-label{color:var(--gray-700);display:block;font-size:var(--font-size-sm);font-weight:500;margin-bottom:.5rem}.add-first-environment-button{align-items:center;background-color:var(--primary);border:none;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;display:inline-flex;font-size:var(--font-size-sm);font-weight:500;gap:.5rem;margin-top:1.25rem;padding:.6rem 1rem;transition:all var(--transition-fast)}.add-first-environment-button:hover{background-color:var(--primary-dark);transform:translateY(-1px)}.error-message,.success-message{align-items:center;animation:fadeIn .3s ease-in-out;border-radius:var(--border-radius-md);display:flex;font-size:var(--font-size-sm);gap:.5rem;margin:1rem 0;padding:.75rem 1rem}.error-message{background-color:var(--danger-light);border:1px solid var(--danger-lighter);box-shadow:var(--shadow-xs);color:var(--danger-dark)}.success-message{background-color:var(--success-light);border:1px solid var(--success-lighter);box-shadow:var(--shadow-xs);color:var(--success-dark)}.no-test-selected{animation:fadeIn .3s ease;color:var(--gray-500);height:100%;justify-content:center;padding:2.5rem}.empty-state,.no-test-selected{align-items:center;display:flex}.empty-state{background-color:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;max-width:400px;padding:2rem;text-align:center}.empty-state svg{color:var(--gray-400);font-size:3rem;margin-bottom:1rem;opacity:.8}.empty-state h3{color:var(--gray-700);font-weight:600;margin-bottom:.5rem;margin-top:1rem}.empty-state p{color:var(--gray-600);font-size:var(--font-size-sm);margin:0}@media (max-width:768px){.dashboard-main{flex-direction:column;gap:1rem;padding:1rem}.tree-container{margin-bottom:1rem;max-height:300px;width:100%}.content-container.full-width{width:100%}.dashboard-header{align-items:flex-start;flex-direction:column;gap:1rem;height:auto;padding:1rem}.nav-item{font-size:var(--font-size-xs);padding:.75rem 1rem}#project-selector{width:100%}.generate-from-file-button{justify-content:center;width:100%}.content-container{padding:1rem}.dashboard-tabs{padding:0 1rem}.environments-tab-container{margin:.5rem;padding:1rem}}.execution-plans-tab-container,.metrics-tab-container,.requirements-tab-container{background-color:var(--gray-50);flex:1 1;overflow-y:auto;padding:0}.tree-container{transition:all .3s ease}.google-login-button{align-items:center;background-color:#fff;border:1px solid #dadce0;border-radius:4px;color:#757575;cursor:pointer;display:flex;font-family:Roboto,sans-serif;font-size:14px;font-weight:500;justify-content:center;margin:10px 0;padding:10px 15px;transition:background-color .3s,box-shadow .3s;width:100%}.google-login-button:hover{background-color:#f8f9fa;box-shadow:0 1px 2px #0000001a}.google-login-button svg{margin-right:10px}.google-login-button span{margin-left:5px}.login-container{align-items:center;background-color:#f5f5f5;display:flex;justify-content:center;min-height:100vh}.login-box{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:2rem}.login-form{margin:0 auto;max-width:320px;padding:1rem;width:100%}.login-form h2{background:linear-gradient(135deg,var(--primary) 0,var(--secondary) 100%);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:2rem;font-weight:700;margin-bottom:2rem;text-align:center}.error-message{background-color:#fee2e2;border-radius:.375rem;color:#dc2626;font-size:.875rem;margin-bottom:1rem;padding:.75rem}.form-group{margin-bottom:1.25rem;position:relative}.form-group label{color:#6b7280;font-size:.875rem}.form-group input{background-color:#fff;border:2px solid #e5e7eb;border-radius:.5rem;box-sizing:border-box;font-size:1rem;padding:.75rem 1rem;transition:all .2s ease}.form-group input:hover{border-color:#d1d5db}.form-group input:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-subtle)}button[type=submit]{align-self:center;background:var(--primary);border:none;border-radius:9999px;box-shadow:var(--shadow-md);box-sizing:border-box;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:1rem;padding:.875rem;transition:all .2s;width:100%}button[type=submit]:hover{opacity:.9}.login-divider{align-items:center;color:#6b7280;display:flex;margin:20px 0}.login-divider:after,.login-divider:before{border-bottom:1px solid #e5e7eb;content:"";flex:1 1}.login-divider span{font-size:.875rem;font-weight:500;padding:0 10px}.modal-content{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-close{background:#f3f4f6;border-radius:.5rem;font-size:1.25rem;height:2rem;line-height:1;transition:all .2s;width:2rem}.modal-close:hover{background:#e5e7eb;color:#374151}.landing-page{background-color:var(--gray-50);color:var(--gray-900);font-family:var(--font-family);font-size:16px;min-height:100vh;overflow-x:hidden}.nav-container{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background-color:#fffffff2;border-bottom:1px solid var(--gray-200);padding:1rem 1.5rem;position:sticky;top:0;z-index:100}.nav-content{justify-content:space-between;margin:0 auto;max-width:1200px}.logo-container,.nav-content{align-items:center;display:flex}.logo-container{gap:.75rem}.logo-text{color:var(--primary);font-size:1.75rem;font-weight:800;letter-spacing:-.03em}.nav-links{display:flex;gap:2rem}.nav-link{color:var(--gray-600);font-size:.95rem;font-weight:600;text-decoration:none;transition:all .2s}.nav-link:hover{color:var(--primary)}.hero-section{align-items:center;background-color:var(--primary);color:#fff;display:flex;justify-content:center;min-height:auto;overflow:hidden;padding:8rem 2rem 6rem;position:relative;text-align:center}.hero-section:before{background:radial-gradient(circle at 50% 50%,#34d3991a 0,#0000 70%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.container{background:#0000;margin:0 auto;max-width:1200px;padding:0}.hero-title{color:#fff;font-size:clamp(3rem,5vw,4.5rem);font-weight:800;letter-spacing:-.02em;line-height:1.1;margin-bottom:1.5rem}.hero-highlight{-webkit-text-fill-color:initial!important;background:none!important;color:var(--secondary)!important}.hero-subtitle{color:var(--gray-200);font-size:clamp(1.25rem,2vw,1.5rem);font-weight:500;line-height:1.5;margin-bottom:1.5rem;max-width:700px}.hero-description,.hero-subtitle{margin-left:auto;margin-right:auto}.hero-description{color:var(--gray-300);font-size:1.125rem;font-weight:400;line-height:1.6;margin-bottom:2.5rem;max-width:800px}.hero-actions{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:3rem}.cta-button{align-items:center;background:var(--secondary);border:none;border-radius:9999px;box-shadow:0 4px 14px #34d39966;color:var(--primary-dark);cursor:pointer;display:inline-flex;font-size:1rem;font-weight:700;gap:.5rem;padding:.875rem 2rem;transition:all .2s ease}.cta-button:hover{background:var(--secondary-light);box-shadow:0 6px 20px #34d39980;transform:translateY(-2px)}.secondary-button{align-items:center;background:#0000;border:1px solid #ffffff4d;border-radius:9999px;color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.875rem 2rem;text-decoration:none;transition:all .2s ease}.secondary-button:hover{background:#ffffff1a;border-color:#fff;color:#fff}.hero-stats{flex-wrap:wrap;gap:3rem;justify-content:center;margin-top:3rem}.hero-stats,.stat-item{align-items:center;display:flex}.stat-item{flex-direction:column}.stat-number{-webkit-text-fill-color:initial;background:none;color:var(--secondary);font-size:2.5rem;font-weight:700}.stat-label{color:var(--gray-300);font-size:.875rem;margin-top:.25rem}.landing-section-header{background:#0000!important;border:none!important;box-shadow:none!important;margin-bottom:3.5rem;outline:none!important;padding:0!important;text-align:center}.landing-section-header *,.landing-section-header h2,.landing-section-header p,.landing-section-header span{border:none!important;box-shadow:none!important;outline:none!important;text-decoration:none!important}.landing-page .landing-section-header h2.section-title{color:var(--gray-900)!important;font-size:3.5rem!important;font-weight:800!important;letter-spacing:-.02em!important;line-height:1.1!important}.landing-page .landing-section-header p.section-subtitle{color:var(--gray-600)!important;font-size:1.25rem!important;line-height:1.6!important}.landing-page .landing-section-header .hero-highlight{-webkit-text-fill-color:#0000!important;background:linear-gradient(135deg,var(--primary) 0,var(--secondary) 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:#0000!important}.section-title{color:var(--gray-900)!important;font-size:3.5rem!important;font-weight:800!important;letter-spacing:-.02em!important;line-height:1.1!important;margin-bottom:1rem!important}.section-subtitle,.section-title{border:none!important;box-shadow:none!important;outline:none!important;text-decoration:none!important}.section-subtitle{font-weight:500!important;margin:0 auto!important;max-width:600px!important}.section-description,.section-subtitle{color:var(--gray-600)!important;font-size:1.25rem!important;line-height:1.6!important}.section-description{margin:0 auto 2.5rem!important;max-width:800px!important}.features-section{background:#0000;overflow:hidden;padding:4rem 3rem;position:relative}.features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin:0 auto;max-width:1200px}.feature-card{background:#fff;border:1px solid var(--gray-100);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);display:flex;flex-direction:column;height:100%;padding:2rem;transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-xl);transform:translateY(-5px)}.feature-icon{background:#f9fafb;border-radius:12px;height:3rem;margin-bottom:1.5rem;padding:.75rem;width:3rem}.feature-icon.pink{background:#ff33991a;color:#f39}.feature-icon.blue{background:#6366f11a;color:#6366f1}.feature-icon.purple{background:#9333ea1a;color:#9333ea}.feature-icon.green{background:#10b9811a;color:#10b981}.feature-icon.orange{background:#f59e0b1a;color:#f59e0b}.feature-icon.teal{background:#14b8a61a;color:#14b8a6}.feature-title{color:var(--gray-900);font-size:1.25rem;font-weight:700;margin-bottom:.75rem}.feature-description{color:var(--gray-600);flex-grow:1;font-size:1rem;line-height:1.6}.no-code-section{background:#0000;padding:3rem}.no-code-features-container{display:flex;flex-direction:column;gap:3rem;margin:3rem auto 0;max-width:1200px}.no-code-feature{align-items:flex-start;background:#fff;border:1px solid #ffffff1a;border-radius:.5rem;box-shadow:0 10px 25px #00000026;display:flex;gap:2rem;padding:2.5rem;transition:transform .3s,box-shadow .3s}.no-code-feature:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-5px)}.no-code-feature-icon-container{align-items:center;background:linear-gradient(135deg,#ff33991a,#6366f11a);border-radius:1rem;display:flex;flex-shrink:0;height:4rem;justify-content:center;width:4rem}.no-code-feature-icon{color:#6366f1;height:2rem;width:2rem}.no-code-feature-content h3{color:var(--gray-900);font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.no-code-feature-content p{color:var(--gray-600);font-size:1rem;line-height:1.6}@media (max-width:768px){.no-code-feature{align-items:center;flex-direction:column;text-align:center}.no-code-feature-icon-container{margin-bottom:1.5rem}}.contact-section{background:#0000;padding:4rem 3rem}.contact-container{gap:3rem;grid-template-columns:1fr 2fr;margin:0 auto;max-width:1200px}@media (max-width:768px){.contact-container{grid-template-columns:1fr}}.contact-info{display:flex;flex-direction:column;justify-content:center}.contact-card{background:#f9fafb;border-radius:1rem;box-shadow:0 4px 20px #0000000d;padding:2rem}.contact-title{color:#000;font-size:1.25rem;font-weight:700;margin-bottom:.75rem}.contact-name{color:#000}.contact-email,.contact-name{font-weight:500;margin-bottom:.5rem}.contact-email{color:#6366f1;display:block;text-decoration:none}.contact-email:hover{text-decoration:underline}.contact-phone{color:#4b5563;font-weight:500}.contact-form-container{background:#fff;border-radius:.5rem;box-shadow:0 4px 20px #0000000d;padding:2rem}.contact-form{gap:1.5rem}.contact-form,.form-group{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{font-size:1.3rem}.form-group input,.form-group textarea{border:1px solid #e5e7eb;border-radius:.5rem;font-size:1.3rem;padding:.75rem 1rem;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{box-shadow:0 0 0 3px #6366f11a}.contact-submit{align-self:flex-start;background:var(--secondary);border:none;border-radius:.5rem;cursor:pointer;font-weight:600;margin-top:.5rem;padding:.875rem 1.5rem;transition:all .2s;width:30%}.form-message{animation:fadeIn .3s ease-out;border-radius:.5rem;font-weight:500;margin-top:1.5rem;padding:1rem}.form-message.success{background-color:#d1fae5;border:1px solid #a7f3d0;color:#047857}.form-message.error{background-color:#fee2e2;border:1px solid #fecaca;color:#b91c1c}.form-actions{margin-top:1.5rem}.retry-button{background:#0000;border:1px solid #6366f1;border-radius:.5rem;color:#6366f1;cursor:pointer;font-weight:600;padding:.875rem 1.5rem;transition:all .2s}.retry-button:hover{background:#6366f11a;transform:translateY(-2px)}.database-driven-section{background:#0000;padding:3rem}.database-benefits-container{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(2,1fr);margin:3rem auto 0;max-width:1200px}.database-benefit-card{background:#fff;border:1px solid #ffffff1a;border-radius:.5rem;box-shadow:0 10px 25px #00000026;padding:2.5rem;transition:transform .3s,box-shadow .3s}.database-benefit-card .benefit-icon{background:linear-gradient(135deg,#ff33991a,#6366f11a);border-radius:.75rem;color:#6366f1;height:3rem;margin-bottom:1.5rem;padding:.75rem;width:3rem}.database-benefit-card h3{color:var(--gray-900);font-size:1.5rem;font-weight:700;margin-bottom:1rem}.database-benefit-card p{color:var(--gray-600);font-size:1rem;line-height:1.6}@media (max-width:768px){.database-benefits-container{grid-template-columns:1fr}}.screenshots-section{background:#0000;padding:4rem 3rem}.screenshots-container{display:flex;flex-direction:column;gap:4rem;margin:3rem auto 0;max-width:1200px}.screenshot-item{align-items:center;display:flex;gap:3rem}.screenshot-item:nth-child(2n){flex-direction:row-reverse}.screenshot-image{border-radius:1rem;box-shadow:0 10px 25px #0000001a;flex:1 1;overflow:hidden;position:relative;transition:transform .3s,box-shadow .3s}.screenshot-image:hover{box-shadow:0 15px 30px #00000026;transform:translateY(-5px)}.screenshot-image img{border-radius:.5rem;display:block;height:auto;width:100%}.screenshot-description{flex:1 1}.screenshot-description h3{color:var(--gray-900);display:inline-block;font-size:1.5rem;font-weight:700;margin-bottom:1rem}.screenshot-description p{color:var(--gray-600);font-size:1.1rem;line-height:1.7}@media (max-width:768px){.screenshot-item,.screenshot-item:nth-child(2n){flex-direction:column;gap:2rem}}.about-section{background:#0000;padding:4rem 3rem}.about-content{margin:2rem auto 0;max-width:1000px}.about-content,.about-text{background:#0000}.about-text h3{color:var(--gray-900);font-size:1.5rem;font-weight:600;margin:2rem 0 1rem}.about-text h3:first-child{margin-top:0}.about-text p{color:var(--gray-600);font-size:1.1rem;line-height:1.7;margin-bottom:1.5rem}.problem-solutions{grid-gap:1.5rem;display:grid;gap:1.5rem;margin:2rem 0}.solution-item{align-items:flex-start;background:#f9fafb;border:1px solid #e5e7eb;border-radius:1rem;display:flex;gap:1rem;padding:1.5rem}.solution-icon{color:#6366f1;flex-shrink:0;margin-top:.25rem}.solution-item h4{font-weight:600;margin:0 0 .5rem}.solution-item h4,.solution-item p{color:var(--primary);font-size:1.3rem}.solution-item p{line-height:1.6;margin:0}.team-section{background:#0000;padding:4rem 3rem}.team-grid{display:flex;flex-direction:row;flex-wrap:wrap;gap:2rem;justify-content:center;margin:0 auto}.team-member{background:#fff;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a;max-width:400px;padding:2rem;text-align:center;width:100%}.member-photo{border:0;margin-bottom:1.5rem}.member-image{border-radius:.5rem;height:189px;object-fit:cover;width:155px}.member-info h3{color:#000;font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.member-role{color:var(--secondary);font-size:1.4rem;font-weight:500;margin:0 0 1rem}.member-bio{color:var(--gray-600)}.member-bio,.member-bio-highlight{font-size:1rem;line-height:1.6;margin:0 0 1.5rem}.member-bio-highlight{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-left:4px solid #0ea5e9;border-radius:.75rem;color:#374151;padding:1rem;text-align:left}.member-bio-highlight strong{color:#0f172a;font-weight:600}.member-links{display:flex;justify-content:center}.linkedin-link{align-items:center;background:#0077b5;background:var(--secondary);border-radius:.5rem;color:#fff;display:flex;font-size:1.3rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:background-color .2s}.member-skills{margin:1.5rem 0;text-align:left}.skills-category{background:#f3f4f6;border-left:3px solid #6366f1;border-radius:.5rem;margin-bottom:1rem;padding:.75rem}.h3-title-primary{color:#0a2540}.skills-category:last-child{margin-bottom:0}.skills-category strong{color:#fff;display:block;font-size:1.4rem;font-weight:600;margin-bottom:.25rem}.skills-category{color:#fff;font-size:1.3rem;line-height:1.5}.product-section{background:#0000;padding:4rem 3rem}.product-content{background:#0000;margin:0 auto;max-width:1000px}.product-overview{margin-bottom:3rem}.product-overview h3{color:#fff;font-size:1.5rem;font-weight:600;margin:0 0 1rem}.stage-indicator{background:#fff;border-radius:.5rem;padding:1.3rem}.stage-badge{background:#0ea5e9;border-radius:.5rem;color:#fff;display:inline-block;font-size:.875rem;font-weight:500;margin-bottom:1rem;padding:.5rem 1rem}.stage-indicator p{color:var(--primary);font-size:1.3rem;line-height:1.7;margin:0}.product-features{background:#0000;margin-bottom:3rem;margin-top:2rem}.product-features h3{color:#fff;font-size:1.5rem;font-weight:600;margin:0 0 2rem;text-align:center}.feature-highlights{grid-gap:1.5rem;background:#0000;display:grid;gap:1.5rem}.highlight-item{align-items:flex-start;background:#0000;display:flex;gap:1rem}.highlight-icon{color:#00bfa5;flex-shrink:0;margin-top:.25rem}.highlight-item h4{color:var(--gray-900);font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.highlight-item p{color:var(--gray-600);font-size:1rem;line-height:1.6;margin:0}.product-cta{background:#fff;border-radius:1.5rem;padding:2.5rem;text-align:center}.product-cta h3{background:#fff;color:#000;font-size:1.75rem;font-weight:600;margin:0 0 1rem}.product-cta p{color:var(--primary);font-size:1.3rem;line-height:1.7;margin:0 auto 2rem;max-width:600px}@media (max-width:768px){.about-section,.product-section,.team-section{padding:1rem}.highlight-item,.solution-item{flex-direction:column;text-align:center}.product-cta{padding:2rem 1.5rem}}.footer{background-color:var(--primary);border-top:none;color:var(--gray-300);padding:4rem 2rem 2rem}.footer-content{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;margin:0 auto 3rem;max-width:1200px}.footer-logo{align-items:center;display:flex;gap:.75rem}.footer-links{display:flex;flex-wrap:wrap;gap:4rem}.footer-column{display:flex;flex-direction:column;gap:1rem}.footer-column h4{color:#fff;font-size:1.1rem;font-weight:700;letter-spacing:.05em;margin-bottom:1rem;text-transform:uppercase}.footer-column a{color:var(--gray-300);font-size:1rem;text-decoration:none;transition:color .2s}.footer-column a:hover{color:var(--secondary)}.footer-column span{color:#fff;font-size:1.3rem}.footer-bottom{align-items:center;border-top:1px solid #ffffff1a;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin:0 auto;max-width:1200px;padding-top:2rem}.footer-text{color:var(--gray-400);font-size:.875rem}.footer-legal{display:flex;gap:1.5rem}.footer-legal a{color:var(--gray-400);font-size:.875rem;text-decoration:none}.footer-legal a:hover{color:var(--secondary)}@media (max-width:768px){.footer-bottom,.footer-content{align-items:center;flex-direction:column;text-align:center}.footer-links{gap:2rem}}.use-cases-section{background:#0000;padding:4rem 3rem}.use-cases-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin:0 auto;max-width:1200px}.use-case-card{background:#fff;border:1px solid #ffffff1a;border-radius:.5rem;box-shadow:0 10px 25px #00000026;padding:2.5rem;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.use-case-icon{color:#6366f1;height:3rem;margin:0 auto 1.5rem;width:3rem}.use-case-title{color:#111827;font-size:1.8rem;font-weight:700;margin-bottom:1rem}.use-case-description{color:var(--gray-600);font-size:1rem;line-height:1.5}@media (max-width:768px){.hero-section{min-height:auto;padding:3rem 1rem}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.2rem}.hero-description{font-size:1rem}.hero-stats{gap:2rem}.about-section,.contact-section,.features-section,.product-section,.screenshots-section,.team-section,.use-cases-section{padding:3rem 1rem}.section-title{font-size:48px!important}.section-subtitle{font-size:20px!important}.section-description{font-size:1rem}.contact-container,.features-grid,.use-cases-grid{grid-template-columns:1fr}.nav-links{gap:1rem}.nav-link{font-size:1.2rem}}.feature-card,.landing-section-header,.process-step,.use-case-card{animation:fadeIn .6s ease-out forwards}.modal-overlay{inset:0;z-index:50}.modal-content{border-radius:1rem;max-width:28rem;padding:2rem;position:relative}.modal-close{font-size:1.5rem;position:absolute;right:1rem;top:1rem}.modal-close:hover{color:#111827}.clients-container{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;padding:2rem;width:100%}.clients-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.clients-header h1{color:#333;font-size:2rem;font-weight:600;margin:0}.new-client-btn{align-items:center;background:var(--secondary-dark);border:none;border-radius:8px;box-shadow:0 2px 10px #4caf5033;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.new-client-btn:active{box-shadow:0 2px 5px #4caf5033;transform:translateY(0)}.loading-icon{color:#4caf50}.clients-controls{margin-bottom:1.5rem}.search-container{max-width:400px}.search-input:focus{border-color:#4caf50;box-shadow:0 2px 10px #4caf501a}.client-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.client-card{background-color:#fff;border:1px solid #f0f0f0;border-radius:12px;box-shadow:0 4px 15px #00000014;overflow:hidden;transition:all .3s ease}.client-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-5px)}.client-card-header{background:linear-gradient(135deg,#f5f7fa,#e4e8eb);border-bottom:1px solid #f0f0f0;padding:1.25rem}.client-card-header h3{color:#333;font-size:1.25rem;font-weight:600;margin:0}.client-card-body{padding:1.25rem}.client-info{display:flex;flex-direction:column;gap:.75rem}.info-item{font-size:.9rem}.info-label{color:#757575}.client-card-footer{background-color:#f9f9f9;border-top:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:1rem 1.25rem}.delete-btn,.edit-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.6rem 1rem;transition:all .3s ease}.edit-btn{background-color:#f5f5f5;border:1px solid #e0e0e0;color:#333}.edit-btn:hover{background-color:#eee;border-color:#bdbdbd}.delete-btn{background-color:#fff5f5;border:1px solid #ffcdd2;color:#e74c3c}.delete-btn:hover:not(:disabled){background-color:#ffebee;border-color:#ef9a9a;color:#c0392b}.delete-btn:disabled{opacity:.7}.no-clients{background-color:#f9f9f9;border:1px dashed #e0e0e0;border-radius:8px;color:#757575;font-size:1.1rem;padding:3rem 1rem;text-align:center}@media (max-width:768px){.clients-container{padding:1rem}.clients-header{align-items:flex-start;flex-direction:column;gap:1rem}.client-cards{grid-template-columns:1fr}}@media (max-width:480px){.client-card-footer{flex-direction:column;gap:.75rem}.delete-btn,.edit-btn{justify-content:center;width:100%}}.new-client-container{align-items:center;display:flex;flex-direction:column;margin:0 auto;max-width:600px;padding:20px}.new-client-container h1{color:#2c3e50;margin-bottom:20px;text-align:center}.new-client-container form{margin:0 auto;max-width:400px;width:100%}.form-group{margin-bottom:20px}.form-group label{color:#2c3e50;font-weight:700;margin-bottom:5px}.form-group input{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:10px;transition:border-color .3s;width:100%}.form-group input:focus{border-color:#3498db;outline:none}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.form-actions{margin-top:24px}.button-group{gap:12px;justify-content:center;margin:0 auto;max-width:400px;width:100%}.cancel-btn,.submit-btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:16px;font-weight:500;height:40px;justify-content:center;line-height:1;padding:0;transition:all .3s ease;width:140px}.submit-btn{background-color:#3498db}.submit-btn:hover:not(:disabled){background-color:#2980b9}.cancel-btn{background-color:#e74c3c;color:#fff}.cancel-btn:hover:not(:disabled){background-color:#c0392b}.cancel-btn:disabled,.submit-btn:disabled{cursor:not-allowed;opacity:.7}.error{background-color:#fde8e7;border-radius:4px;color:#e74c3c;font-size:14px;margin:0 auto 20px;max-width:400px;padding:10px;width:100%}.users-container{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;padding:2rem;width:100%}.users-header{border-bottom:1px solid #e0e0e0;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.users-header,.users-header h1{align-items:center;display:flex}.users-header h1{color:#333;font-size:2rem;font-weight:600;gap:.75rem;margin:0}.header-icon{color:#4a6cf7}.new-user-btn{align-items:center;background:var(--secondary-dark);border:none;border-radius:8px;box-shadow:0 2px 10px #4a6cf733;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.new-user-btn:active{box-shadow:0 2px 5px #4a6cf733;transform:translateY(0)}.loading-icon{color:#4a6cf7}.users-controls{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1.5rem}.search-input{border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 5px #0000000d;transition:all .3s ease}.search-input:focus{border-color:#4a6cf7;box-shadow:0 2px 10px #4a6cf71a}.filters-container{display:flex;flex-wrap:wrap;gap:1rem}.filter-group{align-items:center;gap:.5rem}.filter-group label{color:#555;font-weight:500;gap:.25rem}.filter-select{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px;padding:.6rem .75rem;transition:all .3s ease}.filter-select:focus{border-color:#4a6cf7;box-shadow:0 2px 5px #4a6cf71a}.user-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.user-card{background-color:#fff;border:1px solid #f0f0f0;border-radius:12px;box-shadow:0 4px 15px #00000014;overflow:hidden;transition:all .3s ease}.user-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-5px)}.user-card-header{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:1.25rem}.user-card-header h3{color:#333;font-size:1.25rem;font-weight:600;margin:0}.role-badge{align-items:center;border-radius:6px;display:inline-block;display:flex;font-size:.85rem;font-weight:500;gap:.35rem;padding:.4rem .75rem}.role-badge.admin{background-color:#dc3545;color:#fff}.role-badge.user{background-color:#6c757d;color:#fff}.user-card-body{padding:1.25rem}.user-info{display:flex;flex-direction:column;gap:1rem}.info-item{font-size:.95rem;justify-content:space-between}.info-item,.info-label{align-items:center;display:flex}.info-label{color:#555;font-weight:500;gap:.35rem}.info-value{color:#333;max-width:60%;overflow:hidden;text-overflow:ellipsis}.select-wrapper{align-items:center;display:flex;gap:.5rem;position:relative}.client-select,.role-select{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px;font-size:.9rem;min-width:130px;padding:.5rem;transition:all .3s ease}.client-select:focus,.role-select:focus{border-color:#4a6cf7;box-shadow:0 2px 5px #4a6cf71a;outline:none}.updating-spinner{color:#4a6cf7;font-size:.9rem}.no-users{align-items:center;background-color:#f9f9f9;border:1px dashed #e0e0e0;border-radius:8px;color:#757575;display:flex;flex-direction:column;font-size:1.1rem;gap:1rem;padding:3rem 1rem;text-align:center}.no-users svg{color:#adb5bd;font-size:2.5rem}.new-user-form-container{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 4px 15px #00000014;margin-bottom:2rem;padding:1.5rem}.new-user-form-container h2{align-items:center;color:#333;display:flex;font-size:1.5rem;font-weight:600;gap:.5rem;margin-bottom:1.5rem;margin-top:0}.new-user-form{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.form-group input,.form-group select{border:1px solid #ced4da;border-radius:8px;font-size:.95rem;padding:.75rem;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus{border-color:#4a6cf7;box-shadow:0 2px 10px #4a6cf71a;outline:none}.input-error{border-color:#dc3545!important}.field-error{color:#dc3545;display:block;font-size:.85rem;margin-top:.35rem}.submit-btn{align-items:center;background:linear-gradient(135deg,#4a6cf7,#3b5fe2);border:none;border-radius:8px;box-shadow:0 2px 10px #4a6cf733;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.submit-btn:hover{background:linear-gradient(135deg,#3b5fe2,#2a4cd0);box-shadow:0 4px 15px #4a6cf74d;transform:translateY(-2px)}.submit-btn:active{box-shadow:0 2px 5px #4a6cf733;transform:translateY(0)}.form-error{background-color:#f8d7da;color:#dc3545}.form-error,.form-success{align-items:center;border-radius:8px;display:flex;gap:.5rem;margin-bottom:1.25rem;padding:.75rem}.form-success{background-color:#d4edda;color:#28a745}@media (max-width:768px){.users-container{padding:1rem}.users-header{align-items:flex-start;flex-direction:column;gap:1rem}.new-user-form,.user-cards{grid-template-columns:1fr}.users-controls{flex-direction:column}.filters-container{justify-content:space-between;width:100%}}@media (max-width:480px){.filter-group{align-items:flex-start;flex-direction:column}.filter-select{width:100%}.form-actions,.submit-btn{justify-content:center}.submit-btn{width:100%}}.user-menu{position:relative}.user-menu-button{background:none;border:none;cursor:pointer;padding:0}.user-icon{align-items:center;background-color:#34495e;border-radius:50%;color:#fff;display:flex;font-size:16px;font-weight:700;height:36px;justify-content:center;transition:background-color .3s;width:36px}.user-menu-button:hover .user-icon{background-color:#2c3e50}.user-dropdown{background-color:#fff;border-radius:4px;box-shadow:0 2px 10px #0000001a;margin-top:8px;min-width:200px;position:absolute;right:0;top:100%;z-index:1000}.user-info{padding:12px 16px}.user-name{color:#2c3e50;display:block;font-weight:700;margin-bottom:4px}.user-role{color:#7f8c8d;display:block;font-size:12px;text-transform:capitalize}.dropdown-divider{background-color:#ecf0f1;height:1px;margin:4px 0}.dropdown-item{background:none;border:none;color:#2c3e50;cursor:pointer;display:block;padding:8px 16px;text-align:left;transition:background-color .3s;width:100%}.dropdown-item:hover{background-color:#f8f9fa}.projects-container{background-color:var(--gray-50);font-family:Inter,system-ui,-apple-system,sans-serif;margin:0;min-height:100vh;padding:2rem;width:100%}.projects-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.projects-header h1{align-items:center;color:var(--gray-900);display:flex;font-size:2rem;font-weight:700;gap:.75rem;margin:0}.header-icon{color:var(--primary)}.create-project-button{align-items:center;background:var(--primary);border:none;border-radius:9999px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.create-project-button:active{box-shadow:0 2px 5px #6366f133;transform:translateY(0)}.error-container{align-items:center;background-color:#ffebee;border-radius:8px;box-shadow:0 2px 8px #d32f2f1a;color:#d32f2f;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem}.error-container svg{font-size:1.25rem}.loading-container{align-items:center;display:flex;flex-direction:column;gap:1rem;height:50vh;justify-content:center}.loading-icon{color:#00bfa5;font-size:3rem}.projects-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1.5rem}.search-container{flex:1 1;min-width:250px;position:relative}.search-icon{color:#9e9e9e;left:1rem;position:absolute;top:50%;transform:translateY(-50%)}.search-input{background-color:#fff;border:1px solid var(--gray-300);border-radius:9999px;box-shadow:var(--shadow-sm);font-size:1rem;padding:.75rem 1rem .75rem 2.5rem;transition:all .2s ease;width:100%}.search-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle);outline:none}.filter-container{align-items:center;display:flex;gap:.75rem}.filter-container label{align-items:center;color:#555;display:flex;font-weight:500;gap:.35rem}.filter-select{background-color:#fff;border:1px solid var(--gray-300);border-radius:9999px;color:var(--gray-700);font-size:.9rem;min-width:180px;padding:.6rem 1rem;transition:all .2s ease}.filter-select:focus{border-color:#00bfa5;box-shadow:0 2px 5px #6366f11a;outline:none}.project-form-container{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 4px 15px #00000014;margin-bottom:2rem;padding:1.5rem;transition:all .3s ease}.project-form-container.editing{background:linear-gradient(90deg,#f8f9fa,#f3f4f6);border-left:4px solid #00bfa5}.project-form-container h2{align-items:center;color:#333;display:flex;font-size:1.5rem;font-weight:600;gap:.5rem;margin-bottom:1.5rem;margin-top:0}.project-form{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.form-group,.form-group label{margin-bottom:.5rem}.form-group label{align-items:center;color:#495057;display:flex;gap:.35rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #ced4da;border-radius:8px;font-size:.95rem;padding:.75rem;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#00bfa5;box-shadow:0 2px 10px #6366f11a;outline:none}.form-group textarea{min-height:100px}.form-actions{gap:1rem;grid-column:1/-1;margin-top:1rem}.submit-button{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;box-shadow:0 2px 10px #10b98133;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.submit-button:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 15px #10b9814d;transform:translateY(-2px)}.submit-button:active{box-shadow:0 2px 5px #10b98133;transform:translateY(0)}.submit-button.update{background:linear-gradient(135deg,#0a2540,#00bfa5);box-shadow:0 2px 10px #6366f133}.submit-button.update:hover{background:linear-gradient(135deg,#4f46e5,#4338ca);box-shadow:0 4px 15px #6366f14d}.cancel-button{align-items:center;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;color:#4b5563;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.cancel-button:hover{background-color:#e5e7eb;color:#374151}.projects-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.project-card{background-color:#fff;border:1px solid var(--gray-200);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:100%;overflow:hidden;transition:all .3s ease}.project-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-xl);transform:translateY(-4px)}.project-card-header{align-items:center;background:#fff;border-bottom:1px solid var(--gray-100);display:flex;justify-content:space-between;padding:1.5rem}.project-card-header h3{color:var(--gray-900);font-size:1.25rem;font-weight:700;margin:0;max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-actions{display:flex;gap:.5rem}.action-button{align-items:center;background:none;border-radius:50%;color:#6c757d;display:flex;font-size:1rem;height:2rem;justify-content:center;transition:all .3s ease;width:2rem}.action-button:hover{background-color:#0000000d;transform:translateY(-2px)}.action-button.view:hover{background-color:var(--primary-subtle);color:var(--primary)}.action-button.edit:hover{background-color:#f59e0b1a;color:#f59e0b}.action-button.delete:hover{background-color:#ef44441a;color:#ef4444}.project-card-body{display:flex;flex-direction:column;flex-grow:1;padding:1.25rem}.project-description{color:#6c757d;flex-grow:1;line-height:1.5;margin-bottom:1rem;margin-top:0}.project-client{align-items:center;border-top:1px solid #f0f0f0;color:#495057;display:flex;font-size:.9rem;gap:.5rem;margin:0;padding-top:.75rem}.client-icon{color:#00bfa5}.no-projects{align-items:center;background-color:#f9f9f9;border:1px dashed #e0e0e0;border-radius:8px;color:#757575;display:flex;flex-direction:column;font-size:1.1rem;gap:1rem;padding:3rem 1rem;text-align:center}.no-projects-icon{color:#adb5bd;font-size:2.5rem}@media (max-width:768px){.projects-container{padding:1rem}.projects-header{align-items:flex-start;flex-direction:column;gap:1rem}.project-form,.projects-list{grid-template-columns:1fr}.projects-controls{align-items:stretch;flex-direction:column}.filter-container{width:100%}}@media (max-width:480px){.form-actions{flex-direction:column;gap:.75rem}.cancel-button,.submit-button{justify-content:center;width:100%}.project-card-header{align-items:flex-start;flex-direction:column;gap:.75rem}.project-card-header h3{max-width:100%}.project-actions{align-self:flex-end}}.project-detail-container{margin:0 auto;max-width:1200px;padding:20px}.project-detail-header{align-items:center;display:flex;gap:20px;margin-bottom:20px}.project-detail-header h1{color:var(--gray-900);flex-grow:1;font-size:2rem;font-weight:700;margin:0}.back-button{align-items:center;background-color:#fff;border:1px solid var(--gray-300);border-radius:9999px;color:var(--gray-600);cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.back-button:hover{background-color:var(--gray-50);border-color:var(--gray-400);color:var(--gray-900)}.add-test-cases-button{align-items:center;background-color:var(--primary);border:none;border-radius:9999px;box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.add-test-cases-button:hover{background-color:var(--primary-dark);box-shadow:var(--shadow-md)}.project-description{background-color:#fff;border:1px solid var(--gray-200);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);margin-bottom:2rem;padding:1.5rem}.project-description p{color:var(--gray-600);font-size:1.05rem;line-height:1.6;margin:0}.test-cases-section{margin-top:30px}.test-cases-section h2{color:#333;font-size:1.5rem;margin-bottom:20px;margin-top:0}.no-test-cases{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;color:#6c757d;padding:30px;text-align:center}.no-test-cases p{margin-bottom:20px}.test-cases-list{background-color:#fff;border:1px solid var(--gray-200);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.test-cases-list table{border-collapse:collapse;width:100%}.test-cases-list td,.test-cases-list th{border-bottom:1px solid var(--gray-100);padding:1rem 1.5rem;text-align:left}.test-cases-list th{background-color:var(--gray-50);color:var(--gray-700);font-size:.9rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.test-cases-list tr:last-child td{border-bottom:none}.test-cases-list tr:hover{background-color:#f8f9fa}.test-case-actions{display:flex;gap:10px}.action-button{border:none;border-radius:4px;cursor:pointer;font-weight:500;padding:6px 12px;transition:background-color .2s}.action-button.run{background-color:#007bff;color:#fff}.action-button.run:hover{background-color:#0069d9}.action-button.remove{background-color:#dc3545;color:#fff}.action-button.remove:hover{background-color:#c82333}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{border:1px solid var(--gray-200);border-radius:var(--border-radius-xl);box-shadow:var(--shadow-2xl);display:flex;flex-direction:column;max-width:800px}.modal-header{border-bottom:1px solid #dee2e6;padding:15px 20px}.modal-header h2{color:#333;font-size:1.25rem}.close-button{background:none;border:none;color:#6c757d;cursor:pointer;font-size:1.25rem;padding:5px}.close-button:hover{color:#343a40}.modal-body{max-height:60vh;overflow-y:auto}.available-test-cases{display:flex;flex-direction:column;gap:10px;margin-top:15px}.test-case-item{align-items:flex-start;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;display:flex;gap:15px;padding:12px;transition:background-color .2s,border-color .2s}.test-case-item:hover{background-color:#f8f9fa}.test-case-item.selected{background-color:#e6f7ff;border-color:#91d5ff}.test-case-checkbox{align-items:center;border:2px solid #ced4da;border-radius:4px;color:#007bff;display:flex;height:20px;justify-content:center;margin-top:2px;width:20px}.test-case-item.selected .test-case-checkbox{background-color:#007bff;border-color:#007bff;color:#fff}.test-case-info{flex-grow:1}.test-case-info h4{color:#333;margin:0 0 5px}.test-case-info p{color:#6c757d;font-size:.9rem;margin:0}.modal-footer{border-top:1px solid #dee2e6;gap:10px;padding:15px 20px}.modal-footer button{border:none;border-radius:4px;cursor:pointer;font-weight:500;padding:8px 15px}.cancel-button{background-color:#6c757d;color:#fff}.cancel-button:hover{background-color:#5a6268}.add-button{background-color:#28a745;color:#fff}.add-button:hover{background-color:#218838}.add-button:disabled{background-color:#a3d7b5;cursor:not-allowed}.error-message{align-items:center;background-color:#f8d7da;color:#721c24;display:flex;gap:10px;margin-bottom:20px;padding:10px 15px}.loading{color:#6c757d;padding:30px}@media (max-width:768px){.project-detail-header{align-items:flex-start;flex-direction:column}.test-case-actions{flex-direction:column;gap:5px}.action-button{width:100%}}.ai-models-admin-container{margin:0;padding:20px;width:100%}.ai-models-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.add-model-btn{align-items:center;background-color:var(--secondary-dark);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;gap:8px;padding:8px 16px}.ai-models-list{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow-x:auto;overflow-y:hidden}.ai-models-list::-webkit-scrollbar{height:8px}.ai-models-list::-webkit-scrollbar-track{background:#f1f1f1}.ai-models-list::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.ai-models-list::-webkit-scrollbar-thumb:hover{background:#555}.ai-models-list table{border-collapse:collapse;min-width:1000px;width:100%}.ai-models-list td,.ai-models-list th{border-bottom:1px solid #eee;padding:12px 16px;text-align:left}.ai-models-list th{background-color:#f5f5f5;font-weight:600}.ai-models-list tr:hover{background-color:#f9f9f9}.ai-models-list tr.editing{background-color:#f0f7ff}.actions{display:flex;gap:8px}.cancel-btn,.delete-btn,.edit-btn,.save-btn{background:none;border:none;border-radius:4px;cursor:pointer;padding:6px}.edit-btn{color:#1890ff}.delete-btn{color:#ff4d4f}.delete-btn:disabled{color:#d9d9d9;cursor:not-allowed}.save-btn{color:#52c41a}.cancel-btn{color:#ff4d4f}.edit-btn:hover,.save-btn:hover{background-color:#1890ff1a}.cancel-btn:hover,.delete-btn:hover{background-color:#ff4d4f1a}.status-badge{border-radius:10px;display:inline-block;font-size:12px;padding:4px 8px}.status-badge.active{background-color:#e6f7ff;border:1px solid #91d5ff;color:#1890ff}.status-badge.inactive{background-color:#fff1f0;border:1px solid #ffa39e;color:#ff4d4f}.default-icon{color:#52c41a}.model-form{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;padding:20px}.form-group label{font-weight:500;margin-bottom:8px}.form-group input[type=text],.form-group textarea{border:1px solid #d9d9d9;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.form-group textarea{min-height:80px}.checkbox-group,.checkbox-group label{align-items:center;display:flex}.checkbox-group label{gap:8px;margin-bottom:0}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.form-actions button{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;gap:8px;padding:8px 16px}.form-actions .save-btn{background-color:#1890ff;color:#fff}.form-actions .cancel-btn{background-color:#f5f5f5;color:#000000a6}.form-actions .save-btn:hover{background-color:#40a9ff}.form-actions .cancel-btn:hover{background-color:#e8e8e8}.modal-overlay{background-color:#00000080}.modal-content{background-color:#fff;border-radius:8px;max-width:90%;padding:50px;width:400px}.modal-actions button{border:none;border-radius:4px;cursor:pointer;padding:8px 16px}.modal-actions .delete-btn{background-color:#ff4d4f;color:#fff}.modal-actions .cancel-btn{background-color:#f5f5f5;color:#000000a6}.no-models{text-align:center}.loading,.no-models{color:#999;padding:24px}.access-denied{align-items:center;color:#999;display:flex;flex-direction:column;justify-content:center;padding:40px;text-align:center}.access-denied svg{color:#d9d9d9;margin-bottom:16px}.contact-requests-container{margin:0;padding:2rem;width:100%}.contact-requests-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.contact-requests-header h2{color:#111827;font-size:1.75rem;margin:0}.refresh-button{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:.5rem;color:#374151;font-weight:500;padding:.5rem 1rem;transition:all .2s}.refresh-button:hover{background:#e5e7eb}.error-container,.loading-container,.no-requests{background:#f9fafb;border-radius:.5rem;color:#4b5563;padding:2rem;text-align:center}.error-container{background:#fee2e2;border:1px solid #fecaca;color:#ef4444}.requests-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.request-card{background:#fff;border-radius:.75rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:1.5rem;transition:transform .2s,box-shadow .2s}.request-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.request-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.request-header h3{color:#111827;font-size:1.25rem;font-weight:600;margin:0}.status-badge{border-radius:.5rem;font-size:.75rem;font-weight:500;padding:.25rem .75rem;text-transform:uppercase}.status-badge.new{background:#dbeafe;color:#2563eb}.status-badge.in-progress{background:#fef3c7;color:#d97706}.status-badge.resolved{background:#d1fae5;color:#059669}.request-date{color:#6b7280;font-size:.875rem;margin-bottom:1rem}.request-message{background:#f9fafb;border-radius:.5rem;color:#374151;margin-bottom:1.5rem;max-height:200px;overflow-y:auto;padding:1rem;white-space:pre-wrap;word-break:break-word}.request-actions{align-items:center;display:flex;gap:1rem}.status-select{background-color:#fff;border:1px solid #d1d5db;border-radius:.375rem;color:#374151;cursor:pointer;font-size:.875rem;max-width:150px;padding:.5rem;width:100%}.status-select:focus{border-color:#00bfa5;box-shadow:0 0 0 3px #6366f11a;outline:none}.status-updating{color:#6b7280;font-size:.875rem;font-style:italic}.status-error{color:#ef4444;font-size:.875rem}@media (max-width:768px){.contact-requests-container{padding:1rem}.requests-list{grid-template-columns:1fr}.contact-requests-header{align-items:flex-start;flex-direction:column;gap:1rem}}.user-requests-container{margin:0;padding:24px;width:100%}.user-requests-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:32px;padding-bottom:16px}.header-content h2{align-items:center;color:#2c3e50;display:flex;font-size:28px;gap:12px;margin:0}.submit-request-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.submit-request-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.submit-request-btn:active{transform:translateY(0)}.requests-table-container{overflow-x:auto}.requests-table{text-align:left}.requests-table th{background-color:#f8f9fa;border-bottom:2px solid #e9ecef;color:#6c757d;font-size:.85rem;white-space:nowrap}.requests-table td{border-bottom:1px solid #e9ecef;color:#333;font-size:.95rem;vertical-align:middle}.requests-table tr:last-child td{border-bottom:none}.request-row{cursor:pointer;transition:background-color .2s}.request-row:hover{background-color:#f8f9fa}.request-type-badge{align-items:center;border-radius:4px;color:#fff;display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:4px 8px;white-space:nowrap}.request-title-cell{color:#2c3e50;font-weight:600;max-width:200px}.request-desc-cell,.request-title-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.request-desc-cell{color:#7f8c8d;max-width:300px}.request-status-badge{align-items:center;display:inline-flex;font-size:13px;font-weight:600;gap:6px;white-space:nowrap}.priority-badge{display:inline-block;padding:4px 8px}.request-date-cell{color:#95a5a6;font-size:13px;white-space:nowrap}.actions-cell,.actions-header{text-align:right}.view-btn{background-color:initial;border:1px solid #667eea;border-radius:4px;color:#667eea;cursor:pointer;font-size:13px;font-weight:600;padding:6px 12px;transition:all .2s}.view-btn:hover{background-color:#667eea;color:#fff}.user-requests-container .modal-overlay{align-items:center!important;animation:fadeIn .2s ease;background:#0009;bottom:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;left:0!important;overflow-y:auto;padding:20px;position:fixed!important;right:0!important;top:0!important;z-index:10000}.user-requests-container .modal-content{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;direction:ltr!important;flex-shrink:0;margin:0 auto;max-height:90vh;max-width:700px;overflow-y:auto;position:relative;text-align:left!important;width:calc(100% - 40px)}.user-requests-container .modal-content *{direction:ltr}.user-requests-container .modal-content input,.user-requests-container .modal-content label,.user-requests-container .modal-content select,.user-requests-container .modal-content textarea{text-align:left!important}.user-requests-container .modal-header{align-items:center;border-bottom:2px solid #ecf0f1;display:flex;justify-content:space-between;padding:24px}.user-requests-container .modal-header h2{align-items:center;color:#2c3e50;display:flex;font-size:24px;gap:10px;margin:0}.user-requests-container .close-btn{background:none;border:none;color:#95a5a6;cursor:pointer;font-size:24px;padding:4px 8px;transition:color .2s}.user-requests-container .close-btn:hover{color:#e74c3c}.user-requests-container .modal-body{padding:24px}.user-requests-container .request-form{direction:ltr;padding:24px;text-align:left}.user-requests-container .form-group{margin-bottom:20px;text-align:left}.user-requests-container .form-group label{color:#2c3e50;display:block;font-size:14px;font-weight:600;margin-bottom:8px;text-align:left}.user-requests-container .form-group input[type=text],.user-requests-container .form-group select,.user-requests-container .form-group textarea{border:2px solid #e0e0e0;border-radius:8px;direction:ltr;font-family:inherit;font-size:14px;padding:12px;text-align:left;transition:border-color .2s;width:100%}.user-requests-container .form-group input[type=text]:focus,.user-requests-container .form-group select:focus,.user-requests-container .form-group textarea:focus{border-color:#667eea;outline:none}.user-requests-container .form-group textarea{min-height:120px;resize:vertical}.user-requests-container .readonly-input{background-color:#f8f9fa;cursor:not-allowed}.user-requests-container .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;text-align:left}.user-requests-container .type-selector{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);text-align:left}.user-requests-container .type-option{cursor:pointer}.user-requests-container .type-option input[type=radio]{display:none}.user-requests-container .type-option-content{align-items:center;border:2px solid #e0e0e0;border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:16px;text-align:center;transition:all .2s}.user-requests-container .type-option-content svg{font-size:24px}.user-requests-container .type-option-content span{color:#2c3e50;font-weight:600}.user-requests-container .type-option.selected .type-option-content{background:#f8f9fa;border-width:3px}.user-requests-container .type-option:hover .type-option-content{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.user-requests-container .modal-actions{border-top:2px solid #ecf0f1;display:flex;gap:12px;justify-content:flex-end;padding-top:20px}.user-requests-container .cancel-btn,.user-requests-container .submit-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s}.user-requests-container .cancel-btn{background:#ecf0f1;color:#7f8c8d}.user-requests-container .cancel-btn:hover{background:#bdc3c7}.user-requests-container .submit-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.user-requests-container .submit-btn:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.user-requests-container .cancel-btn:disabled,.user-requests-container .submit-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.user-requests-container .details-modal{max-width:800px}.user-requests-container .request-meta-header{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.user-requests-container .badge{align-items:center;border-radius:6px;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:6px 12px}.user-requests-container .badge-bug{background:#fee;color:#e74c3c}.user-requests-container .badge-feature{background:#e3f2fd;color:#2196f3}.user-requests-container .badge-improvement{background:#fff3e0;color:#ff9800}.user-requests-container .badge-question{background:#f3e5f5;color:#9c27b0}.user-requests-container .badge-status{background:#f8f9fa}.user-requests-container .badge-priority-low{background:#d5f4e6;color:#27ae60}.user-requests-container .badge-priority-medium{background:#fff3cd;color:#f39c12}.user-requests-container .badge-priority-high{background:#ffe5e5;color:#e74c3c}.user-requests-container .badge-priority-critical{background:#f8d7da;color:#c0392b}.user-requests-container .detail-section{margin-bottom:24px}.user-requests-container .detail-section h3{color:#2c3e50;font-size:16px;font-weight:600;margin:0 0 12px}.user-requests-container .detail-text{color:#7f8c8d;line-height:1.6;margin:0;white-space:pre-wrap}.user-requests-container .detail-link{color:#667eea;text-decoration:none;word-break:break-all}.user-requests-container .detail-link:hover{text-decoration:underline}.user-requests-container .admin-notes{background:#fff8e1;border-left:4px solid #fbc02d;border-radius:8px;padding:16px}.user-requests-container .timeline{background:#f8f9fa;border-radius:8px;padding:16px}.user-requests-container .timeline-item{color:#7f8c8d;font-size:14px;padding:8px 0}.user-requests-container .timeline-item strong{color:#2c3e50;margin-right:8px}@media (max-width:768px){.requests-grid{grid-template-columns:1fr}.user-requests-header{align-items:flex-start;flex-direction:column;gap:16px}.form-row,.type-selector{grid-template-columns:1fr}.modal-content{border-radius:0;margin:0;max-width:100%}}.admin-requests-container{margin:0;padding:24px;width:100%}.admin-requests-header{border-bottom:2px solid #e0e0e0;margin-bottom:24px;padding-bottom:16px}.admin-requests-header h2{align-items:center;color:#2c3e50;display:flex;font-size:28px;gap:12px;margin:0}.header-subtitle{color:#7f8c8d;font-size:14px;margin:8px 0 0}.filters-bar{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:16px;margin-bottom:24px;padding:16px}.filter-group{display:flex;flex-direction:column;gap:6px;min-width:200px}.filter-group label{align-items:center;color:#2c3e50;display:flex;font-size:13px;font-weight:600;gap:6px}.filter-group select{background:#fff;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .2s}.filter-group select:focus{border-color:#667eea;outline:none}.filter-stats{background:#f8f9fa;border-radius:6px;color:#7f8c8d;font-size:14px;margin-left:auto;padding:8px 16px}.filter-stats strong{color:#2c3e50;font-size:18px}.empty-state,.loading-state{color:#7f8c8d;padding:60px 20px;text-align:center}.empty-state svg,.loading-state svg{margin-bottom:16px}.empty-state h3{color:#2c3e50;margin:16px 0 8px}.empty-state p{margin-bottom:24px}.requests-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.requests-table{border-collapse:collapse;width:100%}.requests-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.requests-table th{font-size:13px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.requests-table tbody tr{border-bottom:1px solid #ecf0f1;cursor:pointer;transition:background-color .2s}.requests-table tbody tr:hover{background-color:#f8f9fa}.requests-table td{color:#2c3e50;font-size:14px;padding:16px}.title-cell{font-weight:600;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-cell{color:#7f8c8d;font-size:13px}.type-badge{border-radius:6px;color:#fff;font-size:12px;padding:6px 12px}.status-badge,.type-badge{align-items:center;display:inline-flex;font-weight:600;gap:6px;white-space:nowrap}.status-badge{font-size:13px}.priority-badge{border-radius:4px;font-size:12px;font-weight:600;padding:4px 10px;text-transform:capitalize;white-space:nowrap}.priority-badge.priority-low{background:#d5f4e6;color:#27ae60}.priority-badge.priority-medium{background:#fff3cd;color:#f39c12}.priority-badge.priority-high{background:#ffe5e5;color:#e74c3c}.priority-badge.priority-critical{background:#f8d7da;color:#c0392b;font-weight:700}.action-btn{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 16px;transition:all .2s}.action-btn:hover{background:#764ba2;transform:translateY(-1px)}.admin-requests-container .modal-overlay{align-items:center!important;animation:fadeIn .2s ease;background:#0009;bottom:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;left:0!important;overflow-y:auto;padding:20px;position:fixed!important;right:0!important;top:0!important;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.admin-requests-container .modal-content{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;direction:ltr!important;flex-shrink:0;margin:0 auto;max-height:90vh;max-width:800px;overflow-y:auto;position:relative;text-align:left!important;width:calc(100% - 40px)}.admin-requests-container .modal-content *{direction:ltr}.admin-requests-container .modal-content input,.admin-requests-container .modal-content label,.admin-requests-container .modal-content select,.admin-requests-container .modal-content textarea{text-align:left!important}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.edit-modal{max-width:600px}.modal-header{align-items:flex-start;border-bottom:2px solid #ecf0f1;padding:24px}.modal-header h2{color:#2c3e50}.request-title-modal{color:#2c3e50;font-size:24px;font-weight:600;margin:8px 0}.badges-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.badge{align-items:center;border-radius:6px;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:6px 12px}.badge-type{color:#fff}.badge-status{background:#f8f9fa}.badge-priority-low{background:#d5f4e6;color:#27ae60}.badge-priority-medium{background:#fff3cd;color:#f39c12}.badge-priority-high{background:#ffe5e5;color:#e74c3c}.badge-priority-critical{background:#f8d7da;color:#c0392b}.close-btn{background:none;border:none;color:#95a5a6;cursor:pointer;font-size:24px;padding:4px 8px;transition:color .2s}.close-btn:hover{color:#e74c3c}.modal-body{padding:24px}.detail-row,.detail-section{margin-bottom:24px}.detail-row{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr}.detail-section h4{color:#7f8c8d;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.detail-text{color:#2c3e50;line-height:1.6;margin:0;white-space:pre-wrap}.detail-link{color:#667eea;text-decoration:none;word-break:break-all}.detail-link:hover{text-decoration:underline}.admin-notes{background:#fff8e1;border-left:4px solid #fbc02d;border-radius:8px;padding:16px}.admin-requests-container .form-group{margin-bottom:20px;text-align:left}.admin-requests-container .form-group label{color:#2c3e50;display:block;font-size:14px;font-weight:600;margin-bottom:8px;text-align:left}.admin-requests-container .form-group select,.admin-requests-container .form-group textarea{border:2px solid #e0e0e0;border-radius:8px;direction:ltr;font-family:inherit;font-size:14px;padding:12px;text-align:left;transition:border-color .2s;width:100%}.admin-requests-container .form-group select:focus,.admin-requests-container .form-group textarea:focus{border-color:#667eea;outline:none}.admin-requests-container .form-group textarea{min-height:100px;resize:vertical}.admin-requests-container .status-options{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);text-align:left}.admin-requests-container .status-option{cursor:pointer}.admin-requests-container .status-option input[type=radio]{display:none}.admin-requests-container .status-option-content{align-items:center;border:2px solid #e0e0e0;border-radius:8px;display:flex;flex-direction:column;gap:6px;padding:12px;text-align:center;transition:all .2s}.status-option-content svg{font-size:20px}.status-option-content span{color:#2c3e50;font-size:13px;font-weight:600}.status-option.selected .status-option-content{background:#f8f9fa;border-width:3px}.status-option:hover .status-option-content{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.modal-actions{border-top:2px solid #ecf0f1;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.cancel-btn,.edit-status-btn,.save-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s}.cancel-btn{background:#ecf0f1;color:#7f8c8d}.cancel-btn:hover{background:#bdc3c7}.edit-status-btn,.save-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.edit-status-btn:hover,.save-btn:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.cancel-btn:disabled,.save-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:1200px){.status-options{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.requests-table-container{overflow-x:auto}.requests-table{min-width:1000px}.filters-bar{align-items:stretch;flex-direction:column}.filter-group{min-width:100%}.detail-row,.status-options{grid-template-columns:1fr}.modal-content{border-radius:0;margin:0;max-width:100%}}.monitoring-container{background:linear-gradient(135deg,#f5f5f5,#e8e8e8);color:#333;min-height:calc(100vh - 60px);padding:20px}.monitoring-header{align-items:center;border-bottom:2px solid #d0d0d0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.monitoring-header h1{color:#06c;font-size:28px;font-weight:700;margin:0}.monitoring-header p{color:#666;font-size:14px;margin:5px 0 0}.header-controls{align-items:center;display:flex;gap:15px}.time-range-select{background-color:#fff;border:1px solid #06c;border-radius:4px;color:#333;cursor:pointer;font-size:14px;padding:8px 12px;transition:all .3s ease}.time-range-select:hover{background-color:#f0f0f0;border-color:#0052a3}.refresh-button{background-color:#06c;border-radius:4px;padding:8px 16px}.refresh-button:hover:not(:disabled){background-color:#0052a3;transform:scale(1.05)}.error-alert{background-color:#ef44441a;border:1px solid #ef4444;border-radius:6px;color:#fca5a5}.spinner{border:4px solid #0f3460;border-top-color:#00d4ff}.health-card{background:linear-gradient(135deg,#fff,#f5f5f5);border:2px solid #06c;border-radius:8px;box-shadow:0 8px 32px #0066cc1a;margin-bottom:30px;padding:25px}.health-header{align-items:center;border-bottom:1px solid #06c;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.health-header h2{color:#06c;font-size:20px;margin:0}.health-status{align-items:center;display:flex;gap:10px}.status-indicator{border-radius:50%;display:inline-block;height:12px;width:12px}.status-text{font-size:14px;font-weight:600}.tables-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.table-status{background-color:#0066cc0d;border:1px solid #0066cc4d;border-radius:6px;padding:15px;text-align:center}.table-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.table-name{color:#666;font-size:12px;font-weight:600;text-transform:uppercase}.table-indicator{border-radius:50%;display:inline-block;height:8px;width:8px}.table-count{color:#06c;font-size:24px;font-weight:700;margin-bottom:5px}.table-label{color:#999;font-size:12px}.recent-activity{border-top:1px solid #06c3;padding-top:20px}.recent-activity h3{color:#666;font-size:14px;font-weight:600;margin:0 0 15px;text-transform:uppercase}.activity-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr)}.activity-item{text-align:center}.activity-value{color:#06c;display:block;font-size:24px;font-weight:700;margin-bottom:5px}.activity-label{color:#999;font-size:12px;text-transform:uppercase}.metrics-section{margin-bottom:30px}.metrics-section h2{border-bottom:2px solid #d0d0d0;color:#06c;font-size:20px;margin:0 0 20px;padding-bottom:10px}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.metric-card{background:linear-gradient(135deg,#fff,#f5f5f5);border:1px solid #0066cc4d;border-radius:8px}.metric-card:hover{border-color:#06c;box-shadow:0 8px 32px #0066cc26;transform:translateY(-2px)}.metric-card h3{border-bottom:1px solid #06c3;color:#06c;font-size:16px;font-weight:600;margin:0 0 15px;padding-bottom:10px}.metric-item{align-items:center;border-bottom:1px solid #0066cc1a;display:flex;justify-content:space-between;padding:10px 0}.metric-item:last-child{border-bottom:none}.metric-label{color:#666;font-size:13px;font-weight:500}.metric-value{color:#06c;font-size:18px}.alerts-section{margin-bottom:30px}.alerts-section h2{border-bottom:2px solid #d0d0d0;color:#06c;font-size:20px;margin:0 0 20px;padding-bottom:10px}.alerts-list{display:flex;flex-direction:column;gap:12px}.alert-item{background-color:#0066cc0d;border-left:4px solid;border-radius:4px;padding:15px;transition:all .3s ease}.alert-item:hover{background-color:#0066cc1a}.alert-header{display:flex;gap:10px;margin-bottom:8px}.alert-severity{background-color:#0066cc1a;border-radius:3px;color:#06c;font-size:11px;font-weight:700;padding:2px 8px;text-transform:uppercase}.alert-type{color:#666;font-size:12px;font-weight:600;text-transform:uppercase}.alert-message{color:#333;font-size:14px;line-height:1.5}.no-alerts{background-color:#10b9811a;border:1px solid #10b981;border-radius:6px;color:#86efac;font-weight:600;padding:20px;text-align:center}.error-categories,.no-alerts{margin-bottom:30px}.error-categories h2{border-bottom:2px solid #d0d0d0;color:#06c;font-size:20px;margin:0 0 20px;padding-bottom:10px}.categories-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.category-item{align-items:center;background:linear-gradient(135deg,#fff,#f5f5f5);border:1px solid #0066cc4d;border-radius:6px;display:flex;justify-content:space-between;padding:15px;transition:all .3s ease}.category-item:hover{border-color:#06c;box-shadow:0 4px 16px #0066cc1a}.category-name{color:#666;font-weight:500;text-transform:capitalize}.category-count{background-color:#0066cc1a;border-radius:12px;color:#06c;font-size:18px;padding:4px 12px}@media (max-width:768px){.monitoring-header{align-items:flex-start;flex-direction:column;gap:15px}.header-controls{flex-direction:column;width:100%}.refresh-button,.time-range-select{width:100%}.activity-grid,.metrics-grid,.tables-grid{grid-template-columns:1fr}}.phase4-container{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;min-height:100vh;padding:20px}.phase4-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:30px;padding:25px}.phase4-header h1{color:#1f2937;font-size:28px;font-weight:700;margin:0}.phase4-header p{color:#6b7280;font-size:14px;margin:5px 0 0}.refresh-button{align-items:center;background:#0a2540;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s ease}.refresh-button:hover:not(:disabled){box-shadow:0 4px 12px #00bfa566;transform:translateY(-2px)}.refresh-button:disabled{cursor:not-allowed;opacity:.6}.error-alert{background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;font-weight:500;gap:10px;margin-bottom:20px;padding:15px 20px}.error-alert,.loading-spinner{align-items:center;display:flex}.loading-spinner{flex-direction:column;gap:20px;height:400px;justify-content:center}.spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#667eea;height:50px;width:50px}.phase4-tabs{border-radius:12px;box-shadow:0 2px 8px #0000001a;flex-wrap:wrap;gap:10px;margin-bottom:30px;padding:15px}.phase4-tabs,.tab-button{background:#fff;display:flex}.tab-button{align-items:center;border:2px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s ease}.tab-button:hover{border-color:#0a2540;color:#0a2540}.tab-button.active{background:#0a2540;border-color:#0000;color:#fff}.tab-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:30px}.section-title{border-bottom:2px solid #e5e7eb;color:#1f2937;font-size:18px;font-weight:700;margin-bottom:20px;margin-top:30px;padding-bottom:10px}.section-title:first-child{margin-top:0}.metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.metric-card{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-left:4px solid #667eea;border-radius:10px;padding:20px;transition:all .3s ease}.metric-card:hover{box-shadow:0 4px 12px #667eea33;transform:translateY(-4px)}.metric-label{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.metric-value{color:#1f2937;font-size:28px;font-weight:700}.recommendations-list{display:flex;flex-direction:column;gap:12px}.recommendation-item{background:#f9fafb;border-left:4px solid #667eea;border-radius:8px;display:flex;gap:15px;padding:15px;transition:all .3s ease}.recommendation-item:hover{background:#f3f4f6;transform:translateX(4px)}.rec-priority{border-radius:4px;color:#fff;font-size:11px;font-weight:700;height:fit-content;padding:4px 8px;white-space:nowrap}.rec-content{flex:1 1}.rec-title{color:#1f2937;font-weight:600;margin-bottom:4px}.rec-impact{color:#6b7280;font-size:12px}.index-analysis{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.index-section h4{color:#1f2937;font-size:14px;font-weight:700;margin:0 0 12px}.index-list{display:flex;flex-direction:column;gap:8px}.index-item{background:#f3f4f6;border-radius:6px;color:#374151;font-family:Courier New,monospace;font-size:13px;padding:8px 12px}.index-item.warning{background:#fef3c7;color:#92400e}.jobs-list{display:flex;flex-direction:column;gap:12px}.job-item{background:#f9fafb;border-left:4px solid #667eea;border-radius:8px;padding:15px}.job-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.job-id{color:#1f2937;font-family:Courier New,monospace;font-size:13px;font-weight:600}.job-status{border-radius:4px;font-size:11px;font-weight:700;padding:4px 10px;text-transform:uppercase}.job-status.completed{background:#d1fae5;color:#065f46}.job-status.processing{background:#dbeafe;color:#1e40af}.job-status.failed{background:#fee2e2;color:#991b1b}.job-details{color:#6b7280;display:flex;font-size:12px;gap:15px}.tools-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.tool-card{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border:1px solid #e5e7eb;border-radius:8px;padding:15px;text-align:center;transition:all .3s ease}.tool-card:hover{box-shadow:0 4px 12px #667eea33;transform:translateY(-4px)}.tool-name{color:#1f2937;font-size:13px;font-weight:600;margin-bottom:8px}.tool-stat{color:#6b7280;font-size:12px;margin:4px 0}.categories-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.category-card{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border:1px solid #e5e7eb;border-radius:8px;padding:15px;text-align:center}.category-name{color:#1f2937;font-size:13px;font-weight:600;margin-bottom:8px}.category-count{color:#667eea;font-size:24px;font-weight:700}@media (max-width:768px){.phase4-container{padding:15px}.phase4-header{align-items:flex-start;flex-direction:column;gap:15px}.phase4-header h1{font-size:22px}.phase4-tabs{flex-direction:column}.tab-button{justify-content:center;width:100%}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.tab-content{padding:20px}.index-analysis{grid-template-columns:1fr}}.section-title-with-button{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px;margin-top:30px}.run-ab-test-btn{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 18px;transition:all .3s ease}.run-ab-test-btn:hover{box-shadow:0 4px 12px #10b98166;transform:translateY(-2px)}.run-ab-test-btn:active{transform:translateY(0)}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px}.modal-header h2{color:#1f2937;font-size:20px;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.modal-close:hover{background:#f3f4f6;color:#1f2937}.modal-body{padding:20px}.form-group{margin-bottom:16px}.form-group label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.form-group input,.form-group textarea{border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;transition:all .2s ease;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#10b981;box-shadow:0 0 0 3px #10b9811a;outline:none}.form-group textarea{resize:vertical}.modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:20px}.btn-cancel{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:all .2s ease}.btn-cancel:hover{background:#e5e7eb}.btn-submit{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:all .2s ease}.btn-submit:hover:not(:disabled){box-shadow:0 4px 12px #10b98166;transform:translateY(-2px)}.btn-submit:disabled{cursor:not-allowed;opacity:.6}.button-group{gap:10px}.batch-link-btn,.button-group{align-items:center;display:flex}.batch-link-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;gap:6px;padding:10px 18px;transition:all .3s ease}.batch-link-btn:hover{box-shadow:0 4px 12px #3b82f666;transform:translateY(-2px)}.batch-link-btn:active{transform:translateY(0)}.batch-link-modal{max-width:700px}.batch-link-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:24px;padding:16px}.batch-link-section h3{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 12px}.runs-list{border:1px solid #e5e7eb;border-radius:6px;max-height:300px;overflow:hidden;overflow-y:auto}.runs-header{align-items:center;background:#f3f4f6;border-bottom:1px solid #e5e7eb;color:#374151;display:flex;font-size:14px;font-weight:600;gap:10px;padding:12px;position:sticky;top:0}.runs-header input[type=checkbox]{cursor:pointer;height:18px;width:18px}.run-item{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;gap:10px;padding:10px 12px;transition:background .2s ease}.run-item:hover{background:#f9fafb}.run-item input[type=checkbox]{cursor:pointer;flex-shrink:0;height:18px;width:18px}.run-id{color:#1f2937;font-size:14px}.run-id,.run-result{font-weight:600;min-width:80px}.run-result{border-radius:4px;font-size:12px;padding:4px 8px;text-align:center;text-transform:uppercase}.run-result.completed{background:#d1fae5;color:#065f46}.run-result.failed{background:#fee2e2;color:#991b1b}.run-result.running{background:#fef3c7;color:#92400e}.run-time{color:#6b7280;font-size:13px;margin-left:auto;min-width:60px;text-align:right}.no-runs{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px}.loading-text,.no-runs{color:#6b7280;font-size:14px;padding:16px;text-align:center}.ab-test-results-container{margin-top:20px}.section-subtitle{border-bottom:2px solid #e5e7eb;color:#1f2937;font-size:16px;font-weight:600;margin-bottom:16px;padding-bottom:8px}.ab-test-result-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:12px;padding:16px;transition:all .2s ease}.ab-test-result-card:hover{border-color:#d1d5db;box-shadow:0 4px 12px #00000026}.result-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.test-id{color:#1f2937;font-size:16px;font-weight:700}.winner-badge{border-radius:6px;font-size:13px;font-weight:600;padding:6px 12px;text-transform:uppercase}.winner-badge.a{background:#dbeafe;border:1px solid #93c5fd;color:#1e40af}.winner-badge.b{background:#fce7f3;border:1px solid #fbcfe8;color:#be185d}.winner-badge.tie{background:#f3f4f6;border:1px solid #d1d5db;color:#6b7280}.result-variants{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:12px}.variant-result{background:#f9fafb;border-left:4px solid #3b82f6;border-radius:6px;padding:12px}.variant-name{color:#374151;font-size:14px;font-weight:600;margin-bottom:6px}.variant-stats{align-items:center;display:flex;gap:8px}.success-rate{color:#10b981;font-size:18px;font-weight:700}.sample-size{color:#6b7280;font-size:12px}.result-footer{align-items:center;border-top:1px solid #e5e7eb;color:#6b7280;display:flex;font-size:13px;justify-content:space-between;padding-top:12px}.confidence{color:#374151;font-weight:600}.created-date{font-size:12px}@media (max-width:768px){.result-variants{grid-template-columns:1fr}.result-header{align-items:flex-start;flex-direction:column;gap:8px}.winner-badge{align-self:flex-start}}.page-container{margin:0;padding:20px;width:100%}.generation-cost-analytics{width:100%}.analytics-header{border-bottom:2px solid #e0e0e0;margin-bottom:30px;padding-bottom:20px}.analytics-header h1{color:#333;font-size:32px;margin:0 0 8px}.analytics-header .page-description{color:#666;font-size:16px;margin:0 0 15px}.period-selector{align-items:center;display:flex;gap:10px}.period-selector label{color:#666;font-weight:500}.period-selector select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 12px}.period-selector select:hover{border-color:#06c}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:40px}.stat-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:20px;transition:transform .2s,box-shadow .2s}.stat-card:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.stat-label{color:#666;font-size:12px;font-weight:500;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.stat-value{color:#333;font-size:24px;font-weight:600}.stat-value.total-sum{color:#06c}.trends-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:30px;padding:30px}.trends-section h3{color:#333;margin:0 0 20px}.trends-chart{align-items:flex-end;background:#f8f9fa;border-radius:4px;display:flex;gap:2px;height:200px;justify-content:space-between;margin-bottom:30px;padding:10px}.trend-bar{align-items:center;cursor:pointer;display:flex;flex:1 1;flex-direction:column;justify-content:flex-end;min-width:20px}.trend-fill{background:linear-gradient(0deg,#06c,#4da6ff);border-radius:2px 2px 0 0;min-height:2px;transition:background .2s;width:100%}.trend-bar:hover .trend-fill{background:linear-gradient(0deg,#0052a3,#3d8cd9)}.trend-label{color:#666;font-size:10px;margin-top:5px;text-orientation:mixed;white-space:nowrap;writing-mode:vertical-rl}.trends-table{overflow-x:auto}.trends-table table{border-collapse:collapse;width:100%}.trends-table th{background:#f8f9fa;border-bottom:2px solid #e0e0e0;color:#333;font-weight:600;padding:12px;text-align:left}.trends-table td{border-bottom:1px solid #e0e0e0;padding:12px}.trends-table tr:hover{background:#f8f9fa}.jobs-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:30px}.jobs-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;-webkit-user-select:none;user-select:none}.jobs-header h3{color:#333;margin:0}.toggle-btn{background:none;border:none;color:#666;cursor:pointer;font-size:20px;padding:5px 10px}.toggle-btn:hover{color:#06c}.jobs-table{margin-top:20px;overflow-x:auto}.jobs-table table{border-collapse:collapse;width:100%}.jobs-table th{background:#f8f9fa;border-bottom:2px solid #e0e0e0;color:#333;font-weight:600;padding:12px;text-align:left}.jobs-table td{border-bottom:1px solid #e0e0e0;padding:12px}.jobs-table tr:hover{background:#f8f9fa}.job-id{color:#666;font-family:monospace;font-size:12px}.cost-cell{color:#06c;font-weight:500}.request-types{color:#666;font-size:12px}.loading{color:#666;font-size:18px;padding:60px 20px;text-align:center}.error-message{background:#fff3cd;border:1px solid #ffc107;border-radius:4px;color:#856404;padding:20px}.no-data{color:#999;font-size:16px;padding:60px 20px;text-align:center}@media (max-width:768px){.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.analytics-header{align-items:flex-start;flex-direction:column;gap:15px}.trend-label{font-size:8px}.jobs-table,.trends-table{font-size:14px}}.status-bar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-top:2px solid #dee2e6;bottom:0;box-shadow:0 -2px 10px #0000001a;left:0;position:fixed;right:0;z-index:10001}.status-bar-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px;min-height:50px;padding:8px 20px}.running-tests-info{align-items:center;display:flex;flex:1 1;gap:12px}.running-tests-info .spinning{animation:spin 1s linear infinite;color:#2196f3;font-size:14px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.running-count{color:#495057;font-size:14px;font-weight:600}.running-tests-details{-ms-overflow-style:none;display:flex;flex:1 1;gap:16px;max-width:calc(100vw - 300px);overflow-x:auto;scrollbar-width:none}.running-tests-details::-webkit-scrollbar{display:none}.running-test-summary{align-items:center;color:#6c757d;display:flex;font-size:13px;gap:8px;min-width:0;white-space:nowrap}.running-test-summary.generating{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:1px solid #ffc107;border-radius:12px;padding:4px 12px}.activity-icon{color:#2196f3;font-size:12px}.running-test-summary.generating .activity-icon{color:#ff9800}.generation-label{color:#856404;font-size:12px;font-style:italic}.test-name{color:#343a40;font-weight:500;max-width:200px;overflow:hidden;text-overflow:ellipsis}.execution-name{color:#6c757d;font-style:italic}.test-timing{align-items:center;color:#17a2b8;display:flex;gap:4px}.test-timing svg{font-size:12px}.stop-all-btn{align-items:center;background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:20px;box-shadow:0 2px 4px #dc354533;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;justify-content:center;min-width:120px;padding:8px 16px;transition:all .2s ease}.stop-all-btn:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#a71e2a);box-shadow:0 4px 8px #dc35454d;transform:translateY(-1px)}.stop-all-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.stop-all-btn .spinning{animation:spin 1s linear infinite}@media (max-width:768px){.status-bar-content{flex-direction:column;gap:8px;min-height:60px;padding:8px 15px}.running-tests-info{justify-content:center;width:100%}.running-tests-details{justify-content:flex-start;max-width:100%}.running-test-summary{font-size:12px}.test-name{max-width:150px}.stop-all-btn{font-size:12px;min-width:100px;padding:6px 12px}}@media (max-width:480px){.running-tests-details{align-items:flex-start;flex-direction:column;gap:4px}.running-test-summary{justify-content:space-between;width:100%}}.app{background-color:var(--gray-100);display:flex;flex-direction:column;font-family:var(--font-family);min-height:100vh}body.status-bar-active{padding-bottom:70px}@media (max-width:768px){body.status-bar-active{padding-bottom:80px}}.top-nav{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#ffffffe6;border-bottom:1px solid var(--gray-200);color:var(--gray-800);padding:.75rem 2rem;position:sticky;top:0;z-index:1000}.nav-brand,.top-nav{align-items:center;display:flex}.nav-brand{margin-right:2rem}.nav-logo{height:32px;width:auto}.nav-menu{align-items:center;flex-grow:1}.admin-menu,.main-menu,.nav-menu{display:flex;gap:1rem}.admin-menu-item,.menu-item{border-radius:var(--border-radius-full);color:var(--gray-600);font-size:var(--font-size-sm);font-weight:500;overflow:hidden;padding:.5rem 1rem;position:relative;text-decoration:none;transition:all var(--transition-fast)}.admin-menu-item:hover,.menu-item:hover{background-color:var(--gray-100);color:var(--primary);transform:translateY(-1px)}.admin-menu-item.active,.menu-item.active{background-color:var(--primary-subtle);color:var(--primary);font-weight:600}.nav-auth{margin-left:auto}.nav-auth a{background-color:var(--primary);border-radius:var(--border-radius-full);box-shadow:var(--shadow-sm);color:#fff;font-size:var(--font-size-sm);font-weight:500;padding:.5rem 1.25rem;text-decoration:none;transition:all var(--transition-fast)}.nav-auth a:hover{background-color:var(--primary-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.header{align-items:center;background-color:var(--primary);box-shadow:var(--shadow-sm);color:#fff;display:flex;height:60px;justify-content:space-between;padding:.75rem 1.5rem;position:relative;z-index:10}.header .logo-title-container{align-items:center;display:flex;gap:1rem}.header h1{font-size:1.5rem;font-weight:600;letter-spacing:.25px;margin:0}.header-actions{align-items:center;display:flex;gap:.5rem}.header-buttons{align-items:center;display:flex;gap:1rem}.generate-from-file-button{background-color:var(--secondary);display:inline-flex}.generate-from-file-button,.logout-button{align-items:center;border:none;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;font-size:var(--font-size-sm);gap:.5rem;padding:.6rem 1rem;transition:all var(--transition-fast)}.logout-button{background-color:var(--gray-600);display:flex}.logout-button:hover{background-color:var(--gray-700);box-shadow:var(--shadow-md);transform:translateY(-1px)}.logout-button svg{font-size:16px}.logo{height:40px;width:auto}.button-container{display:flex;justify-content:flex-end;z-index:1}.upload-button{align-items:center;background-color:var(--success);border:none;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;display:inline-flex;font-size:var(--font-size-sm);font-weight:500;gap:.5rem;padding:.6rem 1.25rem;transition:all var(--transition-fast);z-index:100}.upload-button:hover{background-color:var(--success-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.main-content{background-color:var(--gray-100);display:flex;flex:1 1;overflow:hidden}.sidebar{background-color:#fff;border-right:1px solid var(--gray-200);box-shadow:var(--shadow-sm);overflow-y:auto;width:250px}.content{background-color:var(--gray-100);flex:1 1;overflow-y:auto;padding:1.5rem}@media (max-width:768px){.top-nav{flex-wrap:wrap;padding:.75rem 1rem}.nav-menu{justify-content:space-between;margin-top:.75rem;order:3;width:100%}.nav-brand{margin-right:1rem}.sidebar{width:220px}.content{padding:1rem}}
/*# sourceMappingURL=main.a81b9015.css.map*/