html{font-size:clamp(14px,1.5vw,16px)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:1rem;line-height:1.5}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;font-size:.9em}:root{--demo-text-color:#495057;--bg-color:#fff;--text-color:#212529;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--radius-sm:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:1rem;--transition-fast:150ms ease;--transition-base:300ms ease;--transition-slow:500ms ease}@media (prefers-color-scheme:dark){:root{--demo-text-color:#f8f9fa;--bg-color:#212529;--text-color:#f8f9fa}}@media (prefers-color-scheme:light){:root{--demo-text-color:#495057;--bg-color:#fff;--text-color:#212529}}body.dark-mode{background-color:#1a1a1a;color:#f3f3f3;transition:background-color .3s ease,color .3s ease}body.dark-mode .modal-backdrop{background-color:#000000b3}body.dark-mode .btn-close{background-color:initial!important;border:none!important;color:#fff!important;filter:brightness(0) invert(1)!important;opacity:1!important}body.dark-mode .btn-close:hover{background-color:#ffffff1a!important;color:#ccc!important}body{background-color:#fff;color:#222;transition:background-color .3s ease,color .3s ease}#root,body,html{height:100%;margin:0;padding:0}#root,*,:after,:before,body,html{box-sizing:border-box}.app-layout{display:flex;flex-direction:column;height:100%;min-height:100vh}.main-content{display:flex;flex:1 1 auto;min-height:0;width:100%}.sidebar{background-color:#f8f9fa;border-right:1px solid #dee2e6;flex:0 0 auto;width:clamp(12rem,20%,18rem)}.content-area,.sidebar{height:auto;overscroll-behavior-y:contain}.content-area{box-sizing:border-box;display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow-y:auto;padding:clamp(1rem,2vw,1.5rem);width:100%}.page-section{margin-bottom:clamp(1rem,3vw,1.5rem)}.ai-helper-text{background:none;color:var(--text-color,#212529);font-size:clamp(1rem,2vw,1.1rem);font-weight:500;margin-bottom:1rem}.modal-content .input-group{align-items:stretch;flex-direction:column;gap:var(--spacing-sm)}.modal-content .input-group input,.modal-content .input-group textarea{margin-bottom:var(--spacing-sm)}.modal-content .input-group button{align-self:flex-end;margin-top:var(--spacing-xs)}.demo-text{background-color:#e9ecef;border-radius:var(--radius-md);color:var(--demo-text-color);margin:clamp(1rem,3vw,1.5rem) 0;padding:clamp(1rem,3vw,1.5rem)}.navbar{background-color:#212529!important;flex-shrink:0}.footer{background-color:#f8f9fa;border-top:1px solid #dee2e6;flex-shrink:0;font-size:clamp(.875rem,1.5vw,1rem);padding:clamp(.75rem,2vw,1.25rem)}.data-list{max-height:calc(100vh - 12.5rem);overflow-y:auto;padding:.625rem}.data-item{background-color:#fff;border:1px solid #dee2e6;border-radius:var(--radius-lg);box-shadow:0 .125rem .25rem #0000001a;margin:.625rem 0;padding:clamp(.875rem,2vw,1rem);transition:all var(--transition-base)}.data-item:hover{box-shadow:0 .25rem .5rem #00000026;transform:translateY(-.0625rem)}.data-item h3{color:#212529;font-size:clamp(1rem,2vw,1.1rem);margin:0 0 .5rem}.data-item p{color:#6c757d;font-size:clamp(.875rem,1.5vw,.9rem);margin:0}.status-badge{border-radius:.75rem;display:inline-block;font-size:clamp(.7rem,1.5vw,.8rem);font-weight:500;padding:clamp(.2rem,1vw,.5rem) clamp(.4rem,1.5vw,.625rem);text-transform:uppercase}.status-active{background-color:#d4edda;color:#155724}.status-completed{background-color:#d1ecf1;color:#0c5460}.status-pending{background-color:#fff3cd;color:#856404}.status-failed{background-color:#f8d7da;color:#721c24}@media (prefers-color-scheme:dark){.data-item{background-color:#2d3748;border-color:#4a5568}.data-item,.data-item h3{color:#f8f9fa}.data-item p{color:#a0aec0}}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:var(--radius-md);color:#721c24;font-size:clamp(.875rem,1.5vw,1rem);margin:.625rem 0;padding:clamp(.75rem,2vw,1rem)}.loading-spinner{border:.1875rem solid #f3f3f3;border-top-color:#007bff;display:inline-block;height:clamp(1rem,3vw,1.5rem);width:clamp(1rem,3vw,1.5rem)}.modal-overlay{align-items:center;background-color:#00000080!important;bottom:0;display:flex;justify-content:center;left:0;position:fixed!important;right:0;top:0;z-index:9999!important}.modal-content{background-color:#fff!important;border-radius:var(--radius-xl);max-height:80vh;max-width:90vw;min-width:clamp(18rem,90vw,31.25rem);overflow:auto;padding:clamp(1rem,3vw,1.5rem);pointer-events:auto!important;position:relative;z-index:10000!important}.modal-content button,.modal-content input,.modal-content select,.modal-content textarea{pointer-events:auto!important;user-select:auto!important;-webkit-user-select:auto!important}.project-item{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:var(--radius-md);cursor:pointer!important;margin:.5rem 0;padding:clamp(.75rem,1.5vw,1rem);pointer-events:auto!important;transition:background-color var(--transition-base)}.project-item:hover{background-color:#e9ecef}.form-input{border:1px solid #ced4da;border-radius:var(--radius-md);font-size:1rem;padding:clamp(.5rem,1vw,.75rem);pointer-events:auto!important;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}.form-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.btn{border:none;border-radius:var(--radius-md);cursor:pointer!important;font-size:clamp(.875rem,1.5vw,1rem);font-weight:500;letter-spacing:.5px;padding:clamp(.5rem,1vw,.75rem) clamp(1rem,2vw,1.25rem);pointer-events:auto!important;transition:background-color var(--transition-base)}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3;box-shadow:0 .25rem .5rem #00000026;transform:translateY(-1px)}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#545b62;box-shadow:0 .25rem .5rem #00000026;transform:translateY(-1px)}.btn:disabled{background-color:#6c757d;cursor:not-allowed!important;opacity:.65}body.dark-mode .top-action-bar{background:linear-gradient(135deg,#5cd68a,#4da3ff)}.top-action-bar{align-items:center;background:linear-gradient(135deg,#28a745,#20c997);border-radius:var(--radius-xl);box-shadow:0 .25rem .75rem #28a7454d;display:flex;flex-wrap:wrap;gap:clamp(.5rem,1.5vw,1rem);margin-bottom:clamp(1rem,2vw,1.5rem);padding:clamp(.75rem,2vw,1rem)}.top-action-bar .btn{box-shadow:0 .125rem .5rem #0003;font-size:clamp(.8rem,1.5vw,.95rem);font-weight:600;letter-spacing:.5px;text-transform:uppercase}.top-action-bar .btn:hover{box-shadow:0 .25rem .75rem #0000004d;transform:translateY(-2px)}@media (max-width:640px){.sidebar{border-bottom:1px solid #dee2e6;border-right:none;max-width:100%;min-width:auto;width:100%}.main-content{flex-direction:column}.content-area{padding:clamp(.75rem,2vw,1rem);width:100%}.modal-content{min-width:90%;min-width:clamp(16rem,95vw,90%)}}.fa,.fab,.far,.fas,.svg-inline--fa{display:inline-block;height:1em;max-width:1em;vertical-align:-.125em;width:auto}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.me-2{margin-right:.5rem!important}.ms-2{margin-left:.5rem!important}@media (min-width:641px) and (max-width:1024px){.sidebar{width:clamp(12rem,22vw,16rem)}.btn,.form-input{font-size:clamp(.9rem,2vw,1rem)}}@media (min-width:1025px){.sidebar{width:clamp(14rem,18vw,18rem)}}@media (-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){html{font-size:clamp(13px,1.4vw,16px)}}@media (-webkit-min-device-pixel-ratio:1.5),(min-resolution:144dpi){html{font-size:clamp(12px,1.3vw,16px)}}:root{--primary-color:#0d6efd;--primary-hover:#0b5ed7;--secondary-color:#6c757d;--success-color:#198754;--info-color:#0dcaf0;--warning-color:#ffc107;--danger-color:#dc3545;--light-color:#f8f9fa;--dark-color:#212529;--body-bg:#f8f9fa;--body-color:#212529;--body-bg-dark:#121212;--body-color-dark:#f8f9fa;--transition-speed:0.3s;--box-shadow:0 0.5rem 1rem #00000026;--box-shadow-sm:0 0.125rem 0.25rem rgba(0,0,0,.075);--box-shadow-lg:0 1rem 3rem rgba(0,0,0,.175);--focus-ring:0 0 0 0.25rem #0d6efd40;--border-radius:0.375rem}body{min-height:100vh}.app-wrapper>.container-fluid{flex-grow:1}.sidebar{box-shadow:var(--box-shadow-sm);height:100%;min-height:calc(100vh - 56px);overflow-y:auto;position:sticky;top:56px;transition:width .3s ease;z-index:100}.sidebar-item{cursor:pointer;transition:background-color .2s ease}.sidebar-item:hover{background-color:#0000000d}.dark-mode .sidebar-item:hover{background-color:#ffffff1a}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.focus-visible{outline:3px solid #0d6efd80;outline-offset:2px}.skip-link{background:var(--primary-color);color:#fff;left:0;padding:8px 12px;position:absolute;top:-40px;transition:top .3s ease;z-index:1050}.skip-link:focus{outline:none;top:0}.enhanced-btn{align-items:center;display:inline-flex;justify-content:center;position:relative;transition:all var(--transition-speed) ease}.enhanced-btn:focus{box-shadow:var(--focus-ring)}.enhanced-btn:active{transform:translateY(1px)}.btn-gradient-primary{background:linear-gradient(135deg,#0d6efd,#0b5ed7);border:none;color:#fff}.btn-gradient-primary:hover{background:linear-gradient(135deg,#0b5ed7,#0a58ca)}.btn-gradient-success{background:linear-gradient(135deg,#198754,#157347);border:none;color:#fff}.btn-gradient-info{background:linear-gradient(135deg,#0dcaf0,#0aa2c0);border:none;color:#fff}.glass-card{backdrop-filter:blur(10px);background:#ffffffe6;border-radius:var(--border-radius);transition:all var(--transition-speed) ease}.glass-card.dark-card{background:#0009;color:#fff}.form-wrapper.dark .glass-card{border:1px solid #ffffff1a}.dark-card.glass-card{background:#18181b;border:1px solid #333}.glass-card:hover{box-shadow:var(--box-shadow)}.dark-card{background:#212529f2;color:var(--body-color-dark)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.fade-in{animation:fadeIn .5s ease forwards}.slide-in-up{animation:slideInUp .5s ease forwards}.pulse{animation:pulse 1.5s infinite}.progress-bar-glow{background:linear-gradient(90deg,var(--primary-color) 0,var(--info-color) 50%,var(--success-color) 100%);border-radius:2px;box-shadow:0 0 10px #0d6efdb3;height:4px}body.dark-mode{background-color:var(--body-bg-dark);color:var(--body-color-dark)}body.dark-mode .card{background-color:#2a2a2a;border-color:#444}body.dark-mode input,body.dark-mode select,body.dark-mode textarea{background-color:#333;border-color:#555;color:#fff}body.dark-mode .bg-light{background-color:#333!important;color:#fff!important}.dark-mode .card-body,.dark-mode .card-header,.dark-mode .card-text,.dark-mode .card-title,.dark-mode h1,.dark-mode h2,.dark-mode h3,.dark-mode h4,.dark-mode h5,.dark-mode h6{color:#f8f9fa!important}.dark-mode .text-muted{color:#adb5bd!important}.form-floating>label{transition:all .25s ease}.form-control:focus+label,.form-control:not(:placeholder-shown)+label{color:var(--primary-color)}.form-control:focus{border-color:var(--primary-color);box-shadow:var(--focus-ring)}.enhanced-tooltip{display:inline-block;position:relative}.enhanced-tooltip .tooltip-text{background-color:#555;border-radius:6px;bottom:125%;color:#fff;left:50%;opacity:0;padding:5px;position:absolute;text-align:center;transform:translateX(-50%);transition:opacity .3s;visibility:hidden;width:120px;z-index:1}.enhanced-tooltip:hover .tooltip-text{opacity:1;visibility:visible}.table-hover tbody tr:hover{background-color:#0d6efd1a}.animated-modal .modal-content{animation:fadeIn .3s ease}.loading-spinner-container{align-items:center;display:flex;justify-content:center;padding:2rem}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #0d6efd4d;border-radius:50%;border-top:4px solid var(--primary-color);height:40px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.nav-link{position:relative;transition:all .3s ease}.nav-link:hover{color:var(--primary-color)}.nav-link:after{background-color:var(--primary-color);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.nav-link.active:after,.nav-link:hover:after{width:100%}.sidebar{box-shadow:0 0 10px #0000001a}.sidebar,.sidebar-item{transition:all .3s ease}.sidebar-item{border-left:3px solid #0000}.sidebar-item.active,.sidebar-item:hover{background-color:#0d6efd1a;border-left-color:var(--primary-color)}body.dark-mode .sidebar{background-color:var(--dark-color);box-shadow:0 0 10px #00000080}body.dark-mode .sidebar-item.active,body.dark-mode .sidebar-item:hover{background-color:#ffffff1a}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#555}body.dark-mode ::-webkit-scrollbar-track{background:#333}body.dark-mode ::-webkit-scrollbar-thumb{background:#666}.text-gradient{background:linear-gradient(90deg,var(--primary-color),var(--info-color));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:#0000}:focus-visible{box-shadow:var(--focus-ring);outline:none}.icon-with-label{align-items:center;display:inline-flex;gap:.5rem}@media (forced-colors:active){.btn,.card,.form-control,.nav-link{forced-color-adjust:none}}.alert-info,.alert-info h5,.alert-info p{background-color:#e3f7fd!important;border-color:#b6effb!important;color:#055160!important}body.dark-mode .alert-info,body.dark-mode .alert-info h5,body.dark-mode .alert-info p{background-color:#073642!important;border-color:#0dcaf0!important;color:#b6effb!important}.alert-warning,.alert-warning h5,.alert-warning p{background-color:#fff3cd!important;border-color:#ffeeba!important;color:#856404!important}body.dark-mode .alert-warning,body.dark-mode .alert-warning h5,body.dark-mode .alert-warning p{background-color:#332a00!important;border-color:#ffc107!important;color:#ffeeba!important}.info-message,.status-message,.table-empty-message{background:#e3f7fd;border-radius:8px;box-shadow:0 2px 8px #0d6efd12;color:#055160;font-size:1.1rem;font-weight:500;margin:1rem auto;max-width:500px;padding:1rem 1.5rem;text-align:center}td.table-empty-message{border:none!important}.dashboard-card-hover:focus,.dashboard-card-hover:hover{background:linear-gradient(90deg,#f8faff 80%,#e3f7fd);border:1.5px solid #0d6efd;box-shadow:0 6px 24px #0d6efd21,0 1.5px 8px #0000001a;color:#0d2233!important;outline:none;transition:box-shadow .2s,border .2s,background .2s}body.dark-mode .dashboard-card-hover:focus,body.dark-mode .dashboard-card-hover:hover{background:linear-gradient(90deg,#232a33 80%,#1a2633);color:#b6effb!important}body.dark-mode .info-message,body.dark-mode .status-message,body.dark-mode .table-empty-message{background:#1a1a1a!important;color:#b6effb!important}body.dark-mode .modal-header .fa-times,body.dark-mode .table-empty-message .fa-times,body.dark-mode .table-empty-message svg{color:#dc143c!important;fill:#ff6b6b!important;opacity:1!important}body.dark-mode .modal-header .btn-close{background-color:initial!important;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414'/%3E%3C/svg%3E")!important;background-position:50%!important;background-repeat:no-repeat!important;background-size:1.25em!important;box-shadow:0 0 8px #ffffff80!important;filter:brightness(10)!important;height:2.5em!important;opacity:1!important;transition:all .2s ease-in-out!important;width:2.5em!important}body.dark-mode .modal-header .btn-close:hover{background-color:#fff3!important;box-shadow:0 0 12px #fffc!important;transform:scale(1.1)!important}.modal-close-x{background:none;border:none;color:#dc143c;cursor:pointer;font-size:22px;font-weight:700;line-height:1;text-shadow:0 1px 4px #000,0 0 2px #fff;transition:color .2s}.modal-close-x[style*="background: #222"],.modal-close-x[style*="background:#222"],body.dark-mode .modal-close-x{color:#ff6b6b!important;text-shadow:0 1px 6px #000,0 0 2px #fff}.create-testcase-modal{background:linear-gradient(135deg,#23272b 80%,#1a2633);border:1px solid #333;border-radius:10px;box-shadow:0 8px 32px 0 #1f26875e;color:#fff;min-width:480px;padding:24px;position:relative}body:not(.dark-mode) .create-testcase-modal{background:linear-gradient(135deg,#f5f5f5 80%,#e3e3e3);border:1px solid #bbb;color:#222}body.dark-mode .btn-close,body.dark-mode .fa-times,body.dark-mode .fa-times-circle,body.dark-mode .modal-close-x,body.dark-mode .modal-header .btn-close,body.dark-mode .modal-header .fa-times{color:#ff6b6b!important;fill:#ff6b6b!important;opacity:1!important;text-shadow:0 1px 6px #000,0 0 2px #fff}.navbar,.navbar *{color:#fff!important;fill:#fff!important}.navbar .btn,.navbar .dropdown-toggle,.navbar .nav-link{border-color:#fff!important;color:#fff!important}body.dark-mode .table,body.dark-mode .table td,body.dark-mode .table th{background-color:#232a33!important;border-color:#444!important;color:#b6effb!important}body.dark-mode .table thead th{background-color:#1a2633!important;border-bottom:2px solid #0dcaf0!important;color:#f8f9fa!important}body.dark-mode .table-hover tbody tr:hover{background-color:#0d2233!important;color:#fff!important}body.dark-mode .table-striped tbody tr:nth-of-type(odd){background-color:#232a33!important}body.dark-mode .table-striped tbody tr:nth-of-type(2n){background-color:#1a2633!important}body.dark-mode .execution-history-row{background:linear-gradient(90deg,#1c1f1f 80%,#212223);border:1px solid #222;border-radius:8px;box-shadow:0 2px 8px #44454512;color:#e3e8e9;margin-bottom:1rem}body.dark-mode .execution-history-row:hover{background:linear-gradient(90deg,#293447 80%,#22304a);box-shadow:0 4px 16px #0d6efd21}body:not(.dark-mode) .table,body:not(.dark-mode) .table *{color:#212529!important}body.dark-mode .glass-card,body.dark-mode .glass-card.dark-card{background:#181a20eb!important;border:1.5px solid #444!important;border-radius:14px!important;box-shadow:0 6px 32px 0 #1f268721!important;color:#e3e8e9!important;padding:1.5rem!important}body.dark-mode .glass-card .card-header{background:#0000!important;border-bottom:1px solid #333!important;color:#f8f9fa!important;font-size:1.1rem;font-weight:600;letter-spacing:.01em;padding-bottom:.75rem}body.dark-mode .glass-card .card-body{background:#0000!important;color:#e3e8e9!important;padding:1.25rem .5rem .5rem!important}body.dark-mode .glass-card .list-group,body.dark-mode .glass-card .list-group-item{background:#0000!important;border:none!important;color:#e3e8e9!important;padding-left:0!important;padding-right:0!important}body.dark-mode .glass-card .list-group-item+.list-group-item{border-top:1px solid #232323!important}body.dark-mode .execution-history-row{background:#24262cfa!important;border:1px solid #232323!important;border-radius:8px!important;box-shadow:0 2px 8px #1f268712!important;color:#e3e8e9!important;margin-bottom:1rem!important;padding:1.1rem 1rem!important;transition:background .2s,box-shadow .2s}body.dark-mode .execution-history-row:hover{background:#2c303c!important;box-shadow:0 4px 16px #0d6efd21!important}body.dark-mode .execution-history-row .btn-outline-primary{background:#0000!important;border-color:#0dcaf0!important;color:#0dcaf0!important}body.dark-mode .execution-history-row .btn-outline-primary:hover{background:#0dcaf0!important;color:#18181b!important}body.dark-mode .badge.bg-success{background:linear-gradient(90deg,#198754 60%,#43e97b)!important}body.dark-mode .badge.bg-danger,body.dark-mode .badge.bg-success{border-radius:6px;color:#fff!important;font-size:.95em;font-weight:500;padding:.35em .9em}body.dark-mode .badge.bg-danger{background:linear-gradient(90deg,#dc3545 60%,#ff6b6b)!important}body.dark-mode .list-group-flush>.list-group-item{border-width:0!important}body.dark-mode .container-fluid{background:linear-gradient(120deg,#181a20 60%,#181a2f);border-radius:18px;padding:2rem 1.5rem}body.dark-mode .api-convert-box{background:linear-gradient(90deg,#232a33 80%,#1a2633)!important;border:1.5px solid #232323!important;border-radius:8px!important;color:#b6effb!important;font-family:Fira Mono,monospace;font-size:15px;min-height:200px;padding:14px;transition:background .2s;white-space:pre-wrap}body.dark-mode .api-convert-box::placeholder{color:#6c757d!important;opacity:1}body.dark-mode .modal-body,body.dark-mode .modal-content,body.dark-mode .modal-footer,body.dark-mode .modal-header{background:linear-gradient(120deg,#181a20 60%,#181a2f)!important;border-color:#232323!important;color:#fff!important}body.dark-mode .modal-content .form-control,body.dark-mode .modal-content input,body.dark-mode .modal-content select,body.dark-mode .modal-content textarea{background:#24262cfa!important;border:1px solid #444!important;border-radius:8px!important;box-shadow:0 2px 8px #1f268712!important;color:#fff!important;transition:border-color .2s,box-shadow .2s}body.dark-mode .modal-title{color:#fff!important;font-weight:700;letter-spacing:.5px}body.dark-mode .modal-content input::placeholder,body.dark-mode .modal-content textarea::placeholder{-webkit-background-clip:text;background-clip:text;color:#b0b0b0!important;-webkit-text-fill-color:#0000;opacity:1}body.dark-mode .modal-footer .btn-primary,body.dark-mode .modal-footer .btn-success{background:linear-gradient(90deg,#0dcaf0 60%)!important;border:none!important;border-radius:8px;box-shadow:0 2px 8px #0d6efd12;color:#18181b!important;font-weight:600;transition:background .2s}div[role=alert].alert-danger{display:none!important}body.dark-mode .test-data-generation-container{max-height:80vh;overflow-y:auto;scrollbar-color:#484848 #232a33;scrollbar-width:thin}body.dark-mode .test-data-generation-container::-webkit-scrollbar{background:#232a33;border-radius:3px;width:5px}body.dark-mode .test-data-generation-container::-webkit-scrollbar-thumb{background:#0dcaf0;border-radius:3px}body.dark-mode .test-data-generation-container::-webkit-scrollbar-thumb:hover{background:#43e97b}.footer{background-color:#222;border-top:1px solid #444;color:#eee;padding:15px 20px;text-align:center;width:100%;z-index:10}.app-wrapper{display:flex;flex-direction:column;min-height:100vh}.app-wrapper>.container-fluid{display:flex;flex:1 0 auto;flex-direction:column}body.dark-mode ::placeholder,body.dark-mode input::placeholder,body.dark-mode textarea::placeholder{color:#bfc9d1!important;opacity:1!important}body.dark-mode .form-check-input[type=radio]{background-color:#222!important;border:2px solid #bfc9d1!important}body.dark-mode .form-check-input[type=radio]:checked{background-color:#007bff!important;border-color:#007bff!important}body.dark-mode .form-check-input[type=radio]:focus{box-shadow:0 0 0 .2rem #007bff40!important}.themed-modal-dark .form-control{background-color:#343a40;border-color:#495057;color:#f8f9fa}.themed-modal-dark .form-control::placeholder{color:#adb5bd}.themed-modal-dark .list-group-item{background-color:#343a40;border-color:#495057;color:#f8f9fa}.themed-modal-dark .list-group-item:hover{background-color:#495057}.themed-modal-dark .list-group-item.active{background-color:#0d6efd;border-color:#0d6efd}.themed-modal-dark .btn-outline-primary{border-color:#0d6efd;color:#0d6efd}.project-selector-modal.dark-mode .btn-outline-primary:hover{background-color:#0d6efd;color:#fff}.themed-modal .search-container{margin-bottom:1rem;position:relative}.themed-modal .search-icon{color:#6c757d;left:10px;position:absolute;top:50%;transform:translateY(-50%)}.themed-modal-dark .search-icon{color:#adb5bd}.themed-modal .form-control.search-input{padding-left:35px}.themed-modal .project-list{max-height:300px;overflow-y:auto}.themed-modal .project-item{transition:background-color .2s ease}.themed-modal .current-project-badge{background-color:#0d6efd;border-radius:.25rem;color:#fff;display:inline-block;font-size:75%;font-weight:700;line-height:1;padding:.25em .6em;text-align:center;vertical-align:initial;white-space:nowrap}.themed-modal .text-muted{color:#6c757d!important}.themed-modal-dark .text-muted{color:#adb5bd!important}.themed-modal .list-group-item h6,.themed-modal .list-group-item small{color:inherit!important}.themed-modal-dark .list-group-item h6{color:#f3f3f3!important}.themed-modal-dark .list-group-item small{color:#adb5bd!important}.themed-modal .list-group-item{color:#212529!important}.themed-modal-dark .list-group-item{background-color:#343a40!important;border-color:#495057!important;color:#f3f3f3!important}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none}input{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.security-warning{background:#f44;border-radius:8px;color:#fff;font-weight:700;left:50%;padding:20px;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:9999}body{background:#1a1d29;color:#e0e0e0;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Arial,sans-serif;margin:0;padding:0}.login-container{align-items:center;background:linear-gradient(135deg,#1a1d29,#2d3142 50%,#4f5d75);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{backdrop-filter:blur(10px);background:#2a303cf2;border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 8px 32px #00000080;max-width:400px;padding:2rem;text-align:center;width:100%}.login-header{margin-bottom:2rem}.brand-title{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;font-size:2.5rem;font-weight:700;-webkit-text-fill-color:#0000;background-clip:text;margin:0 0 .5rem}.welcome-text{color:#9ca3af;font-size:1rem;margin:0}.tab-navigation{background:#1f232eb3;border-radius:8px;display:flex;gap:4px;margin-bottom:1.5rem;padding:4px}.tab-btn{background:#0000;border:none;border-radius:6px;color:#9ca3af;cursor:pointer;flex:1;font-size:.9rem;font-weight:500;padding:.75rem 1rem;transition:all .3s ease}.tab-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 8px #667eea4d;color:#fff}.tab-btn:hover:not(.active){background:#ffffff0d;color:#e5e7eb}.login-form{display:flex;flex-direction:column;gap:1rem}.name-row{display:flex;gap:.75rem}.half-width{flex:1}.input-group{position:relative}.login-input{background:#1f232ecc;border:1px solid #4b556380;border-radius:8px;box-sizing:border-box;color:#e5e7eb;font-size:.95rem;padding:1rem;transition:all .3s ease;width:100%}.login-input:focus{background:#1f232ef2;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.login-input::placeholder{color:#6b7280}.password-toggle{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:.9rem;padding:4px;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.password-toggle:hover{color:#e5e7eb}.signin-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:.5rem;padding:1rem;transition:all .3s ease;width:100%}.signin-btn:hover:not(:disabled){box-shadow:0 4px 16px #667eea66;transform:translateY(-1px)}.signin-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.error-message{background:#ef44441a;border:1px solid #ef44444d;border-radius:6px;color:#fca5a5}.error-message,.success-message{font-size:.9rem;margin-top:.5rem;padding:.75rem}.success-message{background:#22c55e1a;border:1px solid #22c55e4d;border-radius:6px;color:#86efac}.password-errors{margin-bottom:.5rem;margin-top:.5rem}.password-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:4px;color:#fca5a5;font-size:.8rem;margin-bottom:.25rem;padding:.5rem;text-align:left}.login-input.error{border:2px solid #ef4444;box-shadow:0 0 0 2px #ef444433}.login-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-text-security:none}.login-input[type=password]{-webkit-text-security:disc}.signup-link{color:#9ca3af;font-size:.9rem;margin-top:1.5rem}.signup-link .link{color:#667eea;cursor:pointer;font-weight:500;text-decoration:none}.signup-link .link:hover{text-decoration:underline}.signup-link .link.disabled{color:#6b7280;cursor:not-allowed;opacity:.5}.signup-link .link.disabled:hover{text-decoration:none}button:disabled{cursor:not-allowed;opacity:.6}input:disabled{cursor:not-allowed;opacity:.7}.tab-btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:480px){.login-card{margin:1rem;padding:1.5rem}.brand-title{font-size:2rem}.tab-btn{font-size:.85rem;padding:.6rem .8rem}}