.modal-ai-generate .form-control:not(textarea){height:40px}.tech-stack-header{margin-top:20px;font-weight:700;font-size:18px!important}.tech-stack-description{color:var(--color-header-font-grey);margin-bottom:15px}.tech-stack-row{display:flex;flex-wrap:wrap;margin-bottom:10px}.tech-stack-col{padding:5px}.tech-stack-presets{display:flex;gap:10px}#save_stack{flex-shrink:0}#stack_presets{flex-grow:1}.ai-section{margin-bottom:20px;padding:15px;background-color:var(--color-background-content-lighter);border-radius:5px;border-left:4px solid #007bff}.ai-section h3{margin-top:0;font-size:18px;font-weight:700;color:var(--color-text-default);margin-bottom:15px}.subsection{margin-bottom:15px}.subsection h4{font-size:15px;font-weight:700;color:var(--color-text-default);margin-bottom:8px}.subsection p{margin:0;line-height:1.5}.overview-section{border-left-color:#28a745}.issues-section{border-left-color:#dc3545}.improvements-section{border-left-color:#fd7e14}.insights-section{border-left-color:#6f42c1}.error-message{color:#dc3545;padding:10px;background-color:#f8d7da;border-radius:4px;margin-bottom:15px}.tech-stack-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-bottom:6px}.tech-stack-col{display:flex;align-items:center;gap:5px;cursor:pointer}.other-input-container{display:none;margin-top:10px;margin-bottom:15px}@media (max-width:992px){.tech-stack-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.tech-stack-grid{grid-template-columns:repeat(2,1fr)}}.results-container-ai-all ul li{margin-bottom:12px}.ai-insights-container,.tech-recommendations-container{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif;margin-bottom:2.5rem;color:var(--color-text-default)}.section-title{display:flex;align-items:center;font-size:1.35rem;font-weight:700;color:var(--color-text-default);margin-bottom:.35rem}.section-title svg{margin-right:.6rem}.icon-bolt{color:#6366f1}.icon-settings{color:#6366f1}.section-description{color:var(--color-header-font-grey);margin-bottom:1.75rem;font-size:1.1rem}.insight-section{background-color:var(--color-background-content-lighter);border-radius:10px;padding:1.5rem;margin-bottom:1.25rem}.insight-section h3{font-size:1.45rem;font-weight:700;margin-top:0;margin-bottom:1rem;color:var(--color-text-default)}.insight-section>p{line-height:1.75;color:var(--color-text-default);font-size:1.15rem}.performance-summary{background-color:var(--color-background-content-lighter);border-left:4px solid #10b981}.throughput-analysis{background-color:var(--color-background-content-lighter);border-left:4px solid #3b82f6}.areas-for-improvement{background-color:var(--color-background-content-lighter);border-left:4px solid #f97316}.areas-for-improvement ul{padding-left:0;list-style:none}.areas-for-improvement ul li{position:relative;padding:.75rem 1rem .75rem 1.25rem;margin-bottom:.75rem;background-color:var(--color-background-content-lighter-2);border-radius:6px;border:1px solid var(--color-border-color);line-height:1.75;font-size:1.15rem;color:var(--color-text-default)}.areas-for-improvement ul li strong{color:#c2410c;display:block;margin-bottom:.25rem}.next-steps{background-color:var(--color-background-content-lighter);border-left:4px solid #6b7280}.tech-stack-section{border-radius:10px;padding-bottom:.5rem;margin-bottom:1.5rem}.tech-stack-section h3{font-size:1.25rem;margin-top:0;margin-bottom:1rem;color:var(--color-text-default)}.tech-stack-details{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.tech-item{background-color:var(--color-background-content-lighter-2);padding:.85rem 1.1rem;border-radius:8px;box-shadow:var(--color-shadow-inset);border:1px solid var(--color-border-color)}.tech-item strong{color:var(--color-header-font-grey);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.tailored-recommendations h3{font-size:1.15rem;font-weight:700;margin-bottom:1.25rem;color:var(--color-text-default)}.recommendation-item{border:1px solid var(--color-border-color);border-radius:10px;margin-bottom:1rem;overflow:hidden;transition:box-shadow .3s ease,border-color .3s ease;background-color:var(--color-background-content-lighter-2)}.recommendation-item:hover{box-shadow:0 4px 12px rgba(0,0,0,.08);border-color:var(--color-border-color-light)}.recommendation-item.expanded{border-color:#93c5fd;box-shadow:0 4px 12px rgba(59,130,246,.1)}.recommendation-header{display:flex;align-items:center;padding:1.25rem;cursor:pointer;background-color:var(--color-background-content-lighter-2);user-select:none}.recommendation-number{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;min-width:2.25rem;background-color:var(--color-background-content-selected);border-radius:50%;margin-right:1rem;font-weight:700;font-size:.95rem;color:#3b82f6}.high-impact .recommendation-number{background-color:#fee2e2;color:#b91c1c}.medium-impact .recommendation-number{background-color:#ffedd5;color:#c2410c}.low-impact .recommendation-number{background-color:#e0f2fe;color:#0369a1}.recommendation-title{flex:1}.recommendation-title h4{margin-top:0;margin-bottom:.25rem;display:flex;align-items:center;font-size:1.15rem}.recommendation-title p{margin:0;color:var(--color-header-font-grey);font-size:.9rem}.expand-icon{display:flex;align-items:center;color:#9ca3af;transition:transform .3s ease;margin-left:.5rem}.recommendation-item.expanded .expand-icon{transform:rotate(180deg)}.recommendation-details{padding:0;max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s ease;background-color:var(--color-background-content-lighter)}.recommendation-item.expanded .recommendation-details{padding:1.5rem;max-height:5000px;border-top:1px solid var(--color-border-color);overflow-y:auto}.tech-specific-recommendation{background-color:var(--color-background-content-lighter);border-radius:8px;padding:1.25rem;border-left:4px solid #3b82f6}.tech-specific-recommendation p{margin-top:0;line-height:1.75;font-size:1.15rem;color:var(--color-text-default)}.tech-specific-recommendation p:last-child{margin-bottom:0}.impact-badge{font-size:.7rem;font-weight:600;padding:.2rem .6rem;border-radius:1rem;margin-left:.75rem;text-transform:uppercase;letter-spacing:.03em}.high-impact .impact-badge{background-color:rgba(185,28,28,.2);color:#fca5a5!important}.medium-impact .impact-badge{background-color:rgba(194,65,12,.2);color:#fdba74!important}.low-impact .impact-badge{background-color:rgba(3,105,161,.2);color:#7dd3fc!important}.tech-stack-buttons{display:flex;gap:10px;margin-top:10px}.tech-stack-presets{margin-bottom:15px}#reset_stack{background-color:var(--color-background-content-lighter);border-color:var(--color-border-color)}#delete_stack{background-color:var(--color-background-content-lighter);border-color:#dc3545;color:#dc3545}#delete_stack .icon-delete{width:18px;height:18px;background-color:#7d7d7d}#delete_stack:hover .icon-delete{background-color:#dc3545}.delete-stack-btn{background-color:var(--color-background-content-lighter);border-color:#dc3545;color:#dc3545;padding:10px 12px!important;margin-left:initial!important}.delete-stack-btn .icon-delete{width:18px;height:18px;background-color:#7d7d7d}.delete-stack-btn:hover .icon-delete{background-color:#dc3545}.preview-stack-btn{background-color:var(--color-background-content-lighter);border-color:var(--pink);color:var(--pink);padding:10px 12px!important}.preview-stack-btn .icon-preview{width:18px;height:18px;background-color:#7d7d7d}.preview-stack-btn:hover .icon-preview{background-color:var(--pink)}.inline-flex-button{display:inline-flex;align-items:center;justify-content:center;gap:2px}.results-container-ai-all input[type=checkbox],input[type=radio]{margin:0;vertical-align:middle;cursor:pointer;width:1.5rem;height:1.5rem;border-color:hsl(var(--pink))!important;border-radius:8px!important}.modal-ai-generate input,.modal-ai-generate select,.modal-ai-generate textarea{border-color:hsl(214.3 31.8% 91.4%);cursor:pointer}.modal-ai-generate label{margin-bottom:initial!important;font-weight:500;align-items:center;line-height:1;display:flex}.tech-stack-selection{margin-top:20px;margin-bottom:20px;padding:15px;background-color:var(--color-background-content-lighter);border-radius:8px;border:1px solid var(--color-border-color)}.tech-stack-header{margin-bottom:20px}.tech-stack-title{font-size:18px;font-weight:600;margin-bottom:10px}.tech-stack-name-field{margin-top:20px;margin-bottom:15px}.stack-options-container{display:flex;gap:15px;margin-bottom:20px}.stack-option{flex:1;padding:20px;background-color:var(--color-background-content-lighter-2);border:1px solid var(--color-border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:center}.stack-option:hover{border-color:#6366f1;box-shadow:0 4px 8px rgba(0,0,0,.05)}.stack-option.selected{border-color:#6366f1;background-color:var(--color-background-content-selected)}.stack-option-title{font-weight:700;font-size:16px;margin-bottom:10px}.stack-option-description{color:var(--color-header-font-grey);font-size:14px}.saved-stacks-container{display:none;margin-bottom:20px}.saved-stacks-container.visible{display:block}.saved-stacks-container-top{display:flex;align-items:center;justify-content:center}.create-stack-form{display:none}.create-stack-form.visible{display:block}.tech-stack-actions{display:flex;justify-content:space-between;gap:10px;margin-top:20px}.tech-stack-action-buttons{display:flex;gap:10px}.tech-stack-form-container,.tech-stack-selection{transition:opacity .3s ease,height .3s ease}.tech-stack-form-container{display:none}.tech-stack-form-container.visible{display:block}.initial-view .back-to-stack-selection,.initial-view .create-stack-form,.initial-view .saved-stacks-container,.initial-view .submitGenerateAI{display:none}.create-stack-view .stack-options-container,.saved-stacks-view .stack-options-container,.saved-stacks-view .tech-stack-form-container{display:none}.modal-ai-generate .buttons-container{display:flex;gap:10px;margin-top:20px}.stack-actions button{flex:1}.stack-actions{display:flex;margin-top:10px;gap:10px;margin-bottom:15px}.continue-actions{margin-top:10px;margin-bottom:15px;width:fit-content}.continue-actions button{width:100%;margin-left:initial!important}.tech-stack-selection{margin-top:20px;margin-bottom:20px;padding:15px;background-color:var(--color-background-content-lighter);border-radius:8px;border:1px solid var(--color-border-color)}.tech-stack-title{font-size:18px;font-weight:600;margin-bottom:10px}.stack-options-container{display:flex;gap:15px;margin-bottom:20px}.stack-option{flex:1;padding:20px;background-color:var(--color-background-content-lighter-2);border:1px solid var(--color-border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:center}.stack-option:hover{border-color:#6366f1;box-shadow:0 4px 8px rgba(0,0,0,.05)}.stack-option.selected{border-color:#6366f1;background-color:var(--color-background-content-selected)}.stack-option-title{font-weight:700;font-size:16px;margin-bottom:10px}.stack-option-description{color:var(--color-header-font-grey);font-size:14px}.saved-stacks-container{display:none;margin-bottom:20px}.saved-stacks-container.visible{display:block}.saved-stacks-container-top{display:flex;align-items:center;gap:10px}.stack-actions{display:flex;margin-top:10px;gap:10px;margin-bottom:15px}.create-stack-form{display:none}.create-stack-form.visible{display:block}.tech-stack-name-field{margin-top:20px;margin-bottom:15px}.continue-actions{margin-top:10px;margin-bottom:15px;width:fit-content}.continue-actions button{width:100%;margin-left:initial!important}.tech-stack-form-container{display:none}.tech-stack-form-container.visible{display:block}.tech-stack-actions{display:flex;justify-content:space-between;gap:10px;margin-top:20px}.tech-stack-action-buttons{display:flex;gap:10px}.icon-delete,.icon-preview{width:18px;height:18px;background-color:#7d7d7d}.preview-stack-btn:hover .icon-preview{background-color:var(--pink)}.delete-stack-btn:hover .icon-delete{background-color:#dc3545}.tech-stack-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:15px}.tech-stack-col{display:flex;align-items:center;gap:5px;cursor:pointer}.tech-stack-form-container input[type=checkbox],.tech-stack-form-container input[type=radio]{margin:0;cursor:pointer;width:16px;height:16px;border-radius:5px!important;color:#6366f1!important;border:1px solid #6366f1!important}.other-input-container{display:none;margin-top:10px;margin-bottom:15px}@media (max-width:992px){.tech-stack-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.tech-stack-grid{grid-template-columns:repeat(2,1fr)}}.initial-view .back-to-stack-selection,.initial-view .create-stack-form,.initial-view .saved-stacks-container,.initial-view .submitGenerateAI{display:none}.create-stack-view .stack-options-container,.saved-stacks-view .stack-options-container,.saved-stacks-view .tech-stack-form-container{display:none}.inline-flex-button{display:inline-flex;align-items:center;justify-content:center;gap:2px}.tech-stack-buttons{display:flex;gap:10px;margin-top:10px}.buttons-container{display:flex;gap:10px;margin-top:20px}.submit-container-left-all .btn{margin-left:initial!important}.empty-ai-analysis-container{background-color:var(--color-background-content-lighter-2);border-radius:8px;box-shadow:var(--color-shadow-inset);padding:2rem;margin-bottom:2rem;min-height:400px;display:flex;flex-direction:column}.empty-ai-header{margin-bottom:2rem}.empty-ai-header h2{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:var(--color-text-default)}.empty-ai-header p{color:var(--color-header-font-grey);margin-bottom:0}.empty-ai-content{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-grow:1;padding:2rem;text-align:center}.empty-state-illustration{margin-bottom:1.5rem}.empty-state-illustration img{max-width:180px;height:auto}.empty-state-message h3{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--color-text-default)}.empty-state-message p{color:var(--color-header-font-grey);margin-bottom:1.5rem;max-width:500px}.icon-stars{display:inline-block;width:18px;height:18px;margin-right:4px}.inline-flex-button{display:inline-flex;align-items:center;justify-content:center}.action-buttons{display:flex;align-items:center;justify-content:flex-end;gap:2px}.action-buttons a.download{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:4px;color:var(--color-header-font-grey);transition:all .2s ease}.action-buttons a.download:hover{color:var(--color-text-default);background-color:var(--color-background-content-selected)}.action-buttons a.generate-pdf-ai-result:hover{color:#4338ca;background-color:var(--color-background-content-selected)}.action-buttons a.delete-ai-result:hover{color:#dc2626;background-color:#fee2e2}.review-summary{padding:16px 20px;background-color:var(--color-background-content-lighter);border-radius:10px;border:1px solid var(--color-border-color);margin-bottom:16px}.review-item{margin-bottom:10px;font-size:13px;color:var(--color-text-default);display:flex;align-items:center;gap:10px}.review-item:last-child{margin-bottom:0}.review-item-name{font-size:16px;font-weight:700;color:var(--color-text-default);padding-bottom:10px;border-bottom:1px solid #e5e7eb;margin-bottom:10px;display:flex;align-items:center;gap:8px}.review-item-name svg{flex-shrink:0}.review-label{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;min-width:85px;flex-shrink:0}.review-pills{display:flex;flex-wrap:wrap;gap:5px}.review-pill.ai-tech-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;font-size:12px}.review-pill-icon{display:inline-block;width:12px;height:12px;background-color:#4539ed;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;flex-shrink:0}.review-context{font-size:12px;color:#6b7280;font-style:italic}.ai-tech-pill{display:inline-block;padding:2px 8px;background-color:var(--color-background-content-selected);border:1px solid #bfdbfe;border-radius:12px;font-size:12px;color:#1d4ed8;font-weight:500}.accordion-chevron{font-style:normal;font-size:14px;color:var(--color-header-font-grey);margin-left:auto}.action-buttons .fa-print{font-size:14px}.modal-ai-generate i{flex-shrink:0;display:block;vertical-align:middle;--tw-text-opacity:1;color:rgb(99 102 241);margin-right:4px;height:14px!important;width:14px!important;background-color:#6056fc;background-size:100% 100%;fill:#fff}.tech-stack-details i{flex-shrink:0;display:block;vertical-align:middle;--tw-text-opacity:1;color:rgb(99 102 241);margin-right:4px;height:14px!important;width:14px!important;background-color:#6056fc;background-size:100% 100%;fill:#fff}.tech-stack-item{font-weight:500;align-items:center;line-height:1;display:flex}.tech-items{display:flex;gap:8px;flex-direction:column;margin-top:8px}i.java{-webkit-mask-image:url(/img/icons/svg/ai/java.svg);mask-image:url(/img/icons/svg/ai/java.svg)}i.javascript{-webkit-mask-image:url(/img/icons/svg/ai/javascript.svg);mask-image:url(/img/icons/svg/ai/javascript.svg);height:14px!important;width:14px!important}i.database{-webkit-mask-image:url(/img/icons/svg/ai/database.svg);mask-image:url(/img/icons/svg/ai/database.svg)}i.cloud{-webkit-mask-image:url(/img/icons/svg/ai/cloud.svg);mask-image:url(/img/icons/svg/ai/cloud.svg)}i.cassandra{-webkit-mask-image:url(/img/icons/svg/ai/cassandra.svg);mask-image:url(/img/icons/svg/ai/cassandra.svg)}i.dynamodb{-webkit-mask-image:url(/img/icons/svg/ai/dynamodb.svg);mask-image:url(/img/icons/svg/ai/dynamodb.svg)}i.elasticsearch{-webkit-mask-image:url(/img/icons/svg/ai/elasticsearch.svg);mask-image:url(/img/icons/svg/ai/elasticsearch.svg)}i.firebase{-webkit-mask-image:url(/img/icons/svg/ai/firebase.svg);mask-image:url(/img/icons/svg/ai/firebase.svg)}i.mysql{-webkit-mask-image:url(/img/icons/svg/ai/mysql.svg);mask-image:url(/img/icons/svg/ai/mysql.svg)}i.oracle{-webkit-mask-image:url(/img/icons/svg/ai/oracle.svg);mask-image:url(/img/icons/svg/ai/oracle.svg)}i.postgresql{-webkit-mask-image:url(/img/icons/svg/ai/postgresql.svg);mask-image:url(/img/icons/svg/ai/postgresql.svg)}i.redis{-webkit-mask-image:url(/img/icons/svg/ai/redis.svg);mask-image:url(/img/icons/svg/ai/redis.svg)}i.sqlite{-webkit-mask-image:url(/img/icons/svg/ai/sqlite.svg);mask-image:url(/img/icons/svg/ai/sqlite.svg)}i.mongodb{-webkit-mask-image:url(/img/icons/svg/ai/mongodb.svg);mask-image:url(/img/icons/svg/ai/mongodb.svg)}i.typescript{-webkit-mask-image:url(/img/icons/svg/ai/typescript.svg);mask-image:url(/img/icons/svg/ai/typescript.svg)}i.python{-webkit-mask-image:url(/img/icons/svg/ai/python.svg);mask-image:url(/img/icons/svg/ai/python.svg)}i.csharp{-webkit-mask-image:url(/img/icons/svg/ai/csharp.svg);mask-image:url(/img/icons/svg/ai/csharp.svg)}i.go{-webkit-mask-image:url(/img/icons/svg/ai/go.svg);mask-image:url(/img/icons/svg/ai/go.svg)}i.ruby{-webkit-mask-image:url(/img/icons/svg/ai/ruby.svg);mask-image:url(/img/icons/svg/ai/ruby.svg)}i.php{-webkit-mask-image:url(/img/icons/svg/ai/php.svg);mask-image:url(/img/icons/svg/ai/php.svg)}i.kotlin{-webkit-mask-image:url(/img/icons/svg/ai/kotlin.svg);mask-image:url(/img/icons/svg/ai/kotlin.svg)}i.swift{-webkit-mask-image:url(/img/icons/svg/ai/swift.svg);mask-image:url(/img/icons/svg/ai/swift.svg)}i.rust{-webkit-mask-image:url(/img/icons/svg/ai/rust.svg);mask-image:url(/img/icons/svg/ai/rust.svg)}i.other{-webkit-mask-image:url(/img/icons/svg/ai/other.svg);mask-image:url(/img/icons/svg/ai/other.svg)}i.spring{-webkit-mask-image:url(/img/icons/svg/ai/spring.svg);mask-image:url(/img/icons/svg/ai/spring.svg)}i.springboot{-webkit-mask-image:url(/img/icons/svg/ai/springboot.svg);mask-image:url(/img/icons/svg/ai/springboot.svg)}i.react{-webkit-mask-image:url(/img/icons/svg/ai/react.svg);mask-image:url(/img/icons/svg/ai/react.svg)}i.angular{-webkit-mask-image:url(/img/icons/svg/ai/angular.svg);mask-image:url(/img/icons/svg/ai/angular.svg)}i.vue{-webkit-mask-image:url(/img/icons/svg/ai/vue.svg);mask-image:url(/img/icons/svg/ai/vue.svg)}i.nextjs{-webkit-mask-image:url(/img/icons/svg/ai/nextjs.svg);mask-image:url(/img/icons/svg/ai/nextjs.svg)}i.express{-webkit-mask-image:url(/img/icons/svg/ai/express.svg);mask-image:url(/img/icons/svg/ai/express.svg)}i.django{-webkit-mask-image:url(/img/icons/svg/ai/django.svg);mask-image:url(/img/icons/svg/ai/django.svg)}i.flask{-webkit-mask-image:url(/img/icons/svg/ai/flask.svg);mask-image:url(/img/icons/svg/ai/flask.svg)}i.dotnetcore{-webkit-mask-image:url(/img/icons/svg/ai/dotnetcore.svg);mask-image:url(/img/icons/svg/ai/dotnetcore.svg)}i.aspnet{-webkit-mask-image:url(/img/icons/svg/ai/aspnet.svg);mask-image:url(/img/icons/svg/ai/aspnet.svg)}i.apache{-webkit-mask-image:url(/img/icons/svg/ai/apache.svg);mask-image:url(/img/icons/svg/ai/apache.svg)}i.iis{-webkit-mask-image:url(/img/icons/svg/ai/iis.svg);mask-image:url(/img/icons/svg/ai/iis.svg)}i.caddy{-webkit-mask-image:url(/img/icons/svg/ai/caddy.svg);mask-image:url(/img/icons/svg/ai/caddy.svg)}i.gunicorn{-webkit-mask-image:url(/img/icons/svg/ai/gunicorn.svg);mask-image:url(/img/icons/svg/ai/gunicorn.svg)}i.wildfly{-webkit-mask-image:url(/img/icons/svg/ai/wildfly.svg);mask-image:url(/img/icons/svg/ai/wildfly.svg)}i.websphere{-webkit-mask-image:url(/img/icons/svg/ai/websphere.svg);mask-image:url(/img/icons/svg/ai/websphere.svg)}i.nodejs{-webkit-mask-image:url(/img/icons/svg/ai/nodejs.svg);mask-image:url(/img/icons/svg/ai/nodejs.svg)}i.heroku{-webkit-mask-image:url(/img/icons/svg/ai/heroku.svg);mask-image:url(/img/icons/svg/ai/heroku.svg)}i.netlify{-webkit-mask-image:url(/img/icons/svg/ai/netlify.svg);mask-image:url(/img/icons/svg/ai/netlify.svg)}i.vercel{-webkit-mask-image:url(/img/icons/svg/ai/vercel.svg);mask-image:url(/img/icons/svg/ai/vercel.svg)}i.digitalocean{-webkit-mask-image:url(/img/icons/svg/ai/digitalocean.svg);mask-image:url(/img/icons/svg/ai/digitalocean.svg)}i.ibmcloud{-webkit-mask-image:url(/img/icons/svg/ai/ibmcloud.svg);mask-image:url(/img/icons/svg/ai/ibmcloud.svg)}i.oraclecloud{-webkit-mask-image:url(/img/icons/svg/ai/oraclecloud.svg);mask-image:url(/img/icons/svg/ai/oraclecloud.svg)}i.alibabacloud{-webkit-mask-image:url(/img/icons/svg/ai/alibabacloud.svg);mask-image:url(/img/icons/svg/ai/alibabacloud.svg)}i.neo4j{-webkit-mask-image:url(/img/icons/svg/ai/neo4j.svg);mask-image:url(/img/icons/svg/ai/neo4j.svg)}i.sqlserver{-webkit-mask-image:url(/img/icons/svg/ai/sqlserver.svg);mask-image:url(/img/icons/svg/ai/sqlserver.svg)}i.noneonpremise{-webkit-mask-image:url(/img/icons/svg/ai/noneonpremise.svg);mask-image:url(/img/icons/svg/ai/noneonpremise.svg)}.concern-item{background-color:var(--color-background-content-lighter-2);border-radius:6px;padding:1rem 1.25rem;margin-bottom:.75rem;box-shadow:0 1px 3px rgba(0,0,0,.06);border:1px solid var(--color-border-color)}.concern-item:last-child{margin-bottom:0}.concern-item strong{display:block;font-size:1rem;font-weight:600;color:#1e40af;margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.025em}.concern-item p{margin:0;color:var(--color-text-default);line-height:1.75;font-size:1.15rem}.tech-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.tech-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.tech-section>strong{display:block;font-size:1.15rem;font-weight:700;color:#1e40af;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid #bfdbfe}.tech-section>strong i{margin-right:.4rem}.numbered-insights{padding-left:1.5rem;margin:.75rem 0 0 0;counter-reset:none}.numbered-insights li{padding:.75rem 0;border-bottom:1px solid var(--color-border-color);line-height:1.75;font-size:1.15rem;color:var(--color-text-default)}.numbered-insights li:last-child{border-bottom:none;padding-bottom:0}.formatted-recommendation{line-height:1.75;color:var(--color-text-default);font-size:1.15rem}.formatted-recommendation p{margin-bottom:.5rem}.inline-code{background-color:var(--color-background-content-lighter);color:#e11d48;padding:2px 6px;border-radius:3px;font-family:'SF Mono',Menlo,Consolas,monospace;font-size:.85em;word-break:break-word}.code-block{margin:12px 0;padding:0;width:100%;overflow-x:auto;border-radius:8px;border:none!important;background:#1e1e2e}.code-block code{display:block;white-space:pre;word-break:normal;overflow-x:auto;line-height:1.6;background-color:#1e1e2e;color:#cdd6f4;padding:16px 20px;border-radius:8px;font-family:'SF Mono','Fira Code',Menlo,Consolas,monospace;font-size:13px;box-shadow:0 1px 3px rgba(0,0,0,.1);border:initial!important;font-size:.85rem}.feedback-section{background-color:var(--color-background-content-lighter);border-radius:10px;padding:1.5rem;margin-top:2.5rem;margin-bottom:1rem;border:1px solid #e9d5ff;border-left:4px solid #8b5cf6}.feedback-section h3{font-size:1.1rem;font-weight:700;margin-top:0;margin-bottom:.35rem;color:var(--color-text-default)}.feedback-section p{color:var(--color-header-font-grey);margin-bottom:1.25rem;font-size:.9rem}.feedback-controls{display:flex;flex-direction:column;gap:1rem}.rating-container{display:flex;flex-direction:column;gap:.5rem}.rating-stars{display:flex;gap:.5rem}.rating-stars i{font-size:1.5rem;color:#f59e0b;cursor:pointer;transition:transform .2s ease}.rating-stars i:hover{transform:scale(1.2)}.rating-stars i.fa-star{color:#f59e0b}.rating-stars i.fa-star-o{color:#d1d5db}.rating-label{color:var(--color-header-font-grey);font-size:.875rem}#feedback-comment{min-height:80px;resize:vertical;border:1px solid var(--color-border-color);border-radius:6px;padding:.75rem;font-family:inherit}.submit-feedback{align-self:flex-start;padding:.5rem 1rem;font-weight:500}.feedback-submitted .rating-stars i{opacity:.7}.feedback-submitted textarea{background-color:var(--color-background-content-lighter)}@media (max-width:768px){.feedback-controls{gap:.75rem}.rating-stars i{font-size:1.25rem}#feedback-comment{min-height:60px}}.ai-analyses-filters{display:flex;gap:12px;margin-bottom:16px}#aiSearchInput{width:275px;height:44px;padding:6px 12px;font-size:14px;line-height:1.42857143;border:0;box-shadow:0 0 0 1px rgb(35 38 59 / 5%),0 1px 3px 0 rgb(35 38 59 / 15%);outline:0;transition:all .7s ease;border-radius:4px}#aiSearchInput:focus{width:30rem}#aiAnalysesTable{width:100%}#aiAnalysesTable thead th{text-align:left;padding:12px 16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:rgba(0,0,0,.51);border-bottom:2px solid #e5e7eb}#aiAnalysesTable tbody td{padding:16px 16px;vertical-align:middle;border-bottom:1px solid var(--color-border-color);font-size:14px;text-align:left}#aiAnalysesTable tbody td:first-child{font-weight:500;color:var(--color-text-default)}#aiAnalysesTable tbody td a{color:#4539ed;text-decoration:none}#aiAnalysesTable tbody td a:hover{text-decoration:underline}.ai-analysis-row{cursor:pointer;transition:background .15s}.ai-analysis-row:hover{background:var(--color-background-content-selected)}.ai-tech-tag{display:inline-block;background-color:var(--color-background-content-lighter);color:var(--color-text-default);padding:2px 8px;border-radius:4px;font-size:11px;margin-right:3px;margin-bottom:2px}.badge-load{display:inline-block;background:#dbeafe;color:#2563eb;padding:3px 10px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.badge-jmeter{display:inline-block;background:#fef3c7;color:#d97706;padding:3px 10px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.ai-delete-btn{color:#d1d5db;font-size:16px}.ai-delete-btn:hover{color:#ef4444}.ai-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:16px}.ai-page-info{font-size:13px;color:#6b7280}.ai-analyses-empty{text-align:center;padding:40px;color:#9ca3af}.ai-detail-container{max-width:900px}.ai-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ai-back-link{color:#6b7280;text-decoration:none;font-size:13px}.ai-back-link:hover{color:var(--color-text-default)}.ai-detail-title{font-size:22px;font-weight:700;margin-bottom:4px;color:var(--color-text-default)}.ai-detail-meta{display:flex;gap:12px;align-items:center;margin-bottom:24px;color:#6b7280;font-size:13px}.ai-detail-section{margin-bottom:24px;background-color:var(--color-background-content-lighter-2);border:1px solid var(--color-border-color);border-radius:8px;padding:20px}.ai-detail-block{margin-bottom:16px;line-height:1.7;font-size:14px;color:var(--color-text-default)}.ai-detail-block p{margin:0 0 8px}.ai-detail-block ol,.ai-detail-block ul{margin:8px 0;padding-left:24px}.ai-detail-block li{margin-bottom:6px}.ai-detail-block pre{background:#1e1e2e;color:#cdd6f4;padding:16px;border-radius:6px;overflow-x:auto;font-size:12px;line-height:1.5;margin:12px 0}.ai-detail-block code{font-family:'SF Mono','Fira Code','Fira Mono',Menlo,Consolas,monospace;font-size:12px}.ai-detail-block li code,.ai-detail-block p code{background-color:var(--color-background-content-lighter);color:#e11d48;padding:1px 5px;border-radius:3px}.ai-detail-block a{color:#4539ed;word-break:break-all}.ai-detail-block a:hover{text-decoration:underline}.ai-stats-grid{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}.ai-stat-item{display:flex;flex-direction:column;justify-content:center;background-color:var(--color-background-content-lighter-2);padding:10px 14px;border-radius:8px;border:1px solid var(--color-border-color);flex:1;min-width:100px}.ai-stat-label{font-size:10px;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;white-space:nowrap}.ai-stat-value{font-size:20px;font-weight:700;color:var(--color-text-default);white-space:nowrap}.ai-stat-value small{font-size:12px;font-weight:400;color:#9ca3af}.ai-stat-success{border-left:3px solid #10b981}.ai-stat-error{border-left:3px solid #ef4444}.ai-stat-error .ai-stat-value{color:#ef4444}.ai-config-grid{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.ai-config-card{display:flex;align-items:center;gap:8px;background:var(--color-background-content-lighter);border:1px solid var(--color-border-color);border-radius:6px;padding:8px 14px;font-size:13px}.ai-config-icon{font-size:16px}.ai-config-label{color:#6b7280;font-size:12px}.ai-config-val{font-weight:600;color:var(--color-text-default)}.ai-response-codes{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.ai-response-code{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:6px;font-size:13px;background:var(--color-background-content-lighter);border:1px solid var(--color-border-color)}.ai-code-success{background:#ecfdf5;border-color:#10b981;color:#065f46}.ai-code-warn{background:#fffbeb;border-color:#f59e0b;color:#92400e}.ai-code-error{background:#fef2f2;border-color:#ef4444;color:#991b1b}.ai-tech-category{display:flex;align-items:center;gap:6px;margin-bottom:6px;flex-wrap:wrap}.ai-tech-category-label{font-size:12px;color:#6b7280;font-weight:600;min-width:80px}.ai-tech-pill{display:inline-block;background:#eeecfd;color:#4539ed;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500}.ai-errors-table{font-size:13px}.code-block-wrapper{position:relative;margin:12px 0}.code-block-wrapper pre{margin:0;background:#1e1e2e;border-radius:8px;padding:16px 48px 16px 16px;overflow-x:auto}.code-block-wrapper pre code{background:0 0!important;color:#e2e8f0!important;padding:0!important;border:none!important;border-radius:0!important;font-family:'SF Mono','Fira Code',Menlo,Consolas,monospace;font-size:13px;line-height:1.6;white-space:pre-wrap;word-break:break-all}.code-copy-btn{position:absolute;top:10px;right:10px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.5);border-radius:4px;padding:4px 8px;font-size:14px;cursor:pointer;transition:all .15s;line-height:1;z-index:1}.code-copy-btn:hover{background:rgba(255,255,255,.15);color:#fff}.detail-tech-icon{display:inline-block!important;width:14px!important;height:14px!important;background-color:#4539ed;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;vertical-align:-2px;margin-right:4px}.ai-detail-numbered{padding-left:20px;margin:8px 0}.ai-detail-numbered li{margin-bottom:10px;line-height:1.6}.ai-detail-keyed-section{margin-bottom:16px}.ai-detail-keyed-section h4{font-size:15px;font-weight:600;color:var(--color-text-default);margin:16px 0 6px}.ai-detail-keyed-section:first-child h4{margin-top:0}.ai-detail-context{background:var(--color-background-content-lighter)}.ai-insight-section h3,.ai-recommendation-section h3{font-size:15px;font-weight:600;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--color-border-color)}.ai-section-summary{color:#059669}.ai-section-concerns{color:#dc2626}.ai-section-bottlenecks{color:#d97706}.ai-section-optimizations{color:#7c3aed}@media print{#backend_topnotifications,.ai-back-link,.ai-detail-header,.ai-print-btn,.backend-feedback,.cd-top,.features-list,.features-sidebar,.logo-name-wrapper,.navbar,.navbar-fixed-top,.side-bar,.sidebar,.switch-team,.top-menu-container,.topbarContainer,.topmenu,.topnotifications,[class*=side-bar],[class*=sidebar],[class*=topbar],[class*=topmenu],footer,header,nav{display:none!important}body{margin:0!important;padding:20px 30px!important;padding-left:30px!important}.ai-detail-container,.container{max-width:100%!important;width:100%!important;padding:0 20px!important;margin:0!important;margin-left:0!important}.padding-top-50{padding-top:10px!important}.padding-left-50{padding-left:0!important;margin-left:0!important}#addContainer{display:none!important}.ai-detail-title{font-size:20px!important;margin-bottom:8px!important}.ai-detail-section{border:1px solid #ddd!important;break-inside:avoid;padding:16px!important;margin-bottom:16px!important}.ai-detail-block{margin-bottom:12px!important}.ai-detail-block pre{background:#f5f5f5!important;color:#333!important;border:1px solid #ddd;padding:12px!important;font-size:11px!important}.ai-detail-block li{margin-bottom:6px!important}.ai-tech-pill{border:1px solid #ccc;background:#f9f9f9!important;color:#000!important}.ai-detail-page-break{page-break-before:always}.ai-stat-item{border:1px solid #ddd!important;padding:10px!important}.ai-detail-keyed-section{margin-bottom:12px!important}.ai-detail-numbered li{margin-bottom:8px!important}h2,h3,h4{page-break-after:avoid}}.stack-cards-container{display:flex;flex-wrap:wrap;gap:12px;padding:16px 0;margin-bottom:16px}.stack-card{min-width:180px;max-width:220px;border:2px solid #e5e7eb;border-radius:10px;padding:14px;cursor:pointer;position:relative;transition:all .15s;flex-shrink:0;background-color:var(--color-background-content-lighter-2)}.stack-card:hover{border-color:#4539ed;box-shadow:0 2px 8px rgba(69,57,237,.1)}.stack-card.selected{border-color:#4539ed;background:rgba(69,57,237,.1);box-shadow:0 2px 8px rgba(69,57,237,.15)}.stack-card-name{font-weight:600;font-size:14px;margin-bottom:8px;color:var(--color-text-default);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stack-card-tags{display:flex;flex-wrap:wrap;gap:4px}.stack-card-tag{display:inline-block;background-color:var(--color-background-content-lighter);color:var(--color-text-default);padding:3px 6px;border-radius:4px;font-size:10px;white-space:nowrap;line-height:14px}.stack-tag-icon{display:inline-block!important;width:10px!important;height:10px!important;min-width:10px;min-height:10px;background-color:#6b7280;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;flex-shrink:0;vertical-align:-1px}.stack-card-tag-more{background:#eeecfd;color:#4539ed;font-weight:500}.stack-card-badge{position:absolute;top:-8px;right:8px;background:#4539ed;color:#fff;font-size:10px;padding:1px 6px;border-radius:8px}.stack-card-actions{position:absolute;top:6px;right:6px;display:none;gap:2px}.stack-card:hover .stack-card-actions{display:flex}.stack-card-delete,.stack-card-edit{background-color:var(--color-background-content-lighter-2);border:1px solid var(--color-border-color);border-radius:4px;cursor:pointer;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--color-header-font-grey);transition:all .1s}.stack-card-edit:hover{color:#4539ed;border-color:#4539ed}.stack-card-delete:hover{color:#ef4444;border-color:#ef4444}.stack-card-new{border:2px dashed #d1d5db;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--color-header-font-grey);min-height:90px}.stack-card-new:hover{border-color:#4539ed;color:#4539ed}.stack-card-icon{font-size:24px;font-weight:300}.stack-card-new .stack-card-name{color:inherit;font-size:13px;margin-bottom:0}.tech-chips-grid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}.tech-chips-grid+.tech-chips-grid{margin-top:8px;padding-top:10px;border-top:1px solid var(--color-border-color)}.tech-chip{display:inline-flex;align-items:center;cursor:pointer;margin:0}.tech-chip input{display:none}.tech-chip span{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid #d1d5db;border-radius:20px;font-size:13px;transition:all .15s;user-select:none;background-color:var(--color-background-content-lighter-2)}.tech-chip span i{display:inline-block;width:16px;height:16px;background-color:#6b7280;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;vertical-align:middle;flex-shrink:0}.tech-chip input:checked+span i{background-color:var(--color-background-content-lighter-2)}.tech-chip input:checked+span{background:#4539ed;color:#fff;border-color:#4539ed;box-shadow:0 1px 4px rgba(69,57,237,.2)}.tech-chip span:hover{border-color:#4539ed;background:var(--color-background-content-selected)}.tech-chip input:checked+span:hover{background:#3b2fd4}.wizard-section{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--color-border-color)}.wizard-section:last-of-type{border-bottom:none;padding-bottom:0}.wizard-section-title{font-size:14px;font-weight:700;color:var(--color-text-default);margin:0 0 2px}.wizard-section-desc{font-size:12px;color:var(--color-header-font-grey);margin:0 0 12px;font-weight:400}.infrastructure-row{display:flex;gap:12px}.infrastructure-row .form-group{flex:1;margin-bottom:0}.infrastructure-row .form-group label{font-size:12px;color:var(--color-text-default);font-weight:600;margin-bottom:6px}.infra-icon{display:inline-block!important;width:13px!important;height:13px!important;background-color:#4539ed;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;vertical-align:-2px;margin-right:4px}.infrastructure-row .form-control{border-radius:6px;border:1px solid #d1d5db;height:38px}.custom-tech-section{margin:10px 0 0;padding:12px 16px;border:1px solid var(--color-border-color);border-radius:8px;background-color:var(--color-background-content-lighter-2)}.custom-tech-section>label{font-size:13px;font-weight:600;color:var(--color-text-default);margin-bottom:6px;display:block}.custom-tech-input-row{display:flex;gap:8px;margin-top:8px}.custom-tech-input-row .form-control{border-radius:6px;border:1px solid #d1d5db}.custom-tech-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.custom-tech-tag{display:inline-flex;align-items:center;gap:6px;background-color:var(--color-background-content-lighter-2);color:var(--color-text-default);padding:4px 10px;border-radius:16px;font-size:12px;border:1px solid var(--color-border-color)}.custom-tech-tag-remove{cursor:pointer;color:#9ca3af;font-size:14px;line-height:1}.custom-tech-tag-remove:hover{color:#ef4444}.custom-tech-limit{font-size:11px;color:#d97706;margin-top:4px;display:block}.save-options{margin:16px 0}.save-option-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.save-toggle span{font-size:13px;padding:6px 14px}.save-update-options{display:flex;gap:8px}.save-update-options .btn{border-radius:20px;padding:6px 16px;font-size:13px}.wizard-step{animation:fadeIn .2s ease-in}.wizard-step1-header{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}.stack-count-badge{background-color:var(--color-background-content-lighter);color:var(--color-header-font-grey);font-size:12px;font-weight:600;padding:2px 10px;border-radius:12px}.stack-cards-container{max-height:520px;overflow-y:auto}.wizard-step h3.ai-header{font-size:20px;font-weight:700;color:var(--color-text-default);margin-bottom:12px}.wizard-step .form-group{margin-bottom:12px}.wizard-step .form-group>label{font-size:13px;font-weight:600;color:var(--color-text-default);margin-bottom:8px;display:block}#stackNameInput{margin-top:4px}.wizard-step .form-control{border-radius:6px}.modal-ai-generate .modal-dialog-large{max-width:800px;margin:30px auto}.modal-ai-generate .modal-content.limits-modal{max-height:90vh;overflow:hidden}.modal-ai-generate .modal-footer{max-height:90vh;overflow-y:auto;padding:20px 24px;border:none}.wizard-no-stacks-desc{font-size:13px;color:#6b7280;margin:0 0 12px;line-height:1.5}.wizard-analysis-time{font-size:12px;color:#6b7280;margin:12px 0 0;text-align:center}.wizard-step.hidden{display:none!important}.modal-ai-generate .buttons-container{display:flex;gap:10px;justify-content:flex-end;padding:14px 0 0;margin-top:16px}#wizardBackBtn{border-radius:6px;padding:8px 20px}#generateAIBtn{border-radius:6px;padding:8px 24px;font-weight:600;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}#wizardContinueBtn,#wizardStep2ContinueBtn{border-radius:6px;padding:8px 28px;font-weight:600}@media (max-width:768px){.infrastructure-row{flex-direction:column}.stack-cards-container{flex-wrap:nowrap}}.stack-card-tag{display:inline-block;background-color:var(--color-background-content-lighter);color:var(--color-text-default);padding:1px 4px;border-radius:3px;font-size:10px;margin-right:2px}.stack-card-tag-more{background:#eeecfd;color:#4539ed}@keyframes fadeIn{from{opacity:0}to{opacity:1}}