*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2,#f093fb);min-height:100vh;overflow-x:hidden}.app-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}.main-card{width:100%;max-width:900px;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:25px;box-shadow:0 25px 50px #00000026;overflow:hidden;position:relative}.progress-bar{height:4px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.content-area{padding:3rem;min-height:600px;display:flex;flex-direction:column;justify-content:center}.step{display:none;animation:fadeInUp .6s ease}.step.active{display:block}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.step-header{text-align:center;margin-bottom:3rem}.step-title{font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem}.step-subtitle{font-size:1.2rem;color:#666;line-height:1.6}.welcome-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:2rem}.option-card{background:#fff;padding:2rem;border-radius:20px;box-shadow:0 10px 30px #0000001a;cursor:pointer;transition:all .3s ease;border:3px solid transparent;text-align:center}.option-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px #00000026;border-color:#667eea}.option-icon{font-size:3rem;margin-bottom:1rem}.option-title{font-size:1.3rem;font-weight:600;color:#333;margin-bottom:.5rem}.option-desc{color:#666;font-size:.95rem;line-height:1.5}.description-area{background:#f8f9ff;border-radius:20px;padding:2rem;margin-bottom:2rem}.description-input{width:100%;min-height:150px;border:none;background:transparent;font-size:1.1rem;resize:vertical;outline:none;line-height:1.6;color:#333}.description-input::placeholder{color:#aaa}.input-suggestions{display:flex;flex-wrap:wrap;gap:1rem;margin:2rem 0}.suggestion-chip{background:#fff;border:2px solid #667eea;color:#667eea;padding:.7rem 1.5rem;border-radius:25px;font-size:.9rem;transition:all .3s ease}.preferences-grid{display:grid;gap:2rem;margin:2rem 0}.preference-section{background:#f8f9ff;padding:2rem;border-radius:20px}.preference-title{font-size:1.3rem;font-weight:600;color:#333;margin-bottom:1.5rem}.preference-options{display:flex;flex-wrap:wrap;gap:1rem}.preference-chip{background:#fff;border:2px solid #e0e0e0;padding:.8rem 1.5rem;border-radius:15px;cursor:pointer;transition:all .3s ease;color:#555}.preference-chip:hover,.preference-chip.selected{border-color:#667eea;background:#667eea;color:#fff;transform:scale(1.02)}.results-container{max-height:500px;overflow-y:auto;padding-right:1rem}.case-study-card{background:#fff;border-radius:20px;padding:2rem;margin-bottom:2rem;box-shadow:0 10px 30px #0000001a;border-left:5px solid #667eea;transition:all .3s ease}.case-study-card:hover{transform:translate(10px);box-shadow:0 15px 40px #00000026}.case-title{font-size:1.4rem;font-weight:600;color:#333;margin-bottom:1rem}.case-details{display:grid;gap:1rem;margin-bottom:1.5rem}.case-detail{display:flex;align-items:flex-start;gap:.5rem}.case-label{font-weight:600;color:#667eea;min-width:100px;font-size:.9rem}.case-value{color:#555;line-height:1.5;font-size:.95rem}.case-metrics{background:#f0f4ff;padding:1.5rem;border-radius:15px;margin-top:1rem}.metrics-title{font-weight:600;color:#333;margin-bottom:1rem;font-size:1rem}.metric-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #e0e8ff}.metric-item:last-child{border-bottom:none}.metric-label{color:#666;font-size:.9rem}.metric-value{font-weight:600;color:#667eea;font-size:.95rem}.contact-form{background:#f8f9ff;padding:2rem;border-radius:20px;margin:2rem 0}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column}.form-label{font-weight:600;color:#333;margin-bottom:.5rem;font-size:.95rem}.form-input{padding:1rem;border:2px solid #e0e8ff;border-radius:12px;font-size:1rem;transition:border-color .3s ease;background:#fff}.form-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-textarea{min-height:120px;resize:vertical;grid-column:1 / -1}.navigation{display:flex;justify-content:space-between;align-items:center;margin-top:3rem;padding-top:2rem;border-top:1px solid #e0e8ff}.nav-btn{padding:1rem 2rem;border:none;border-radius:15px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:120px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 10px 30px #667eea4d}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 15px 35px #667eea66}.btn-secondary{background:#fff;color:#667eea;border:2px solid #667eea}.btn-secondary:hover{background:#667eea;color:#fff}.btn-disabled{background:#e0e0e0;color:#999;cursor:not-allowed}.ai-analysis{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1rem 1.5rem;border-radius:15px;margin:1rem 0;display:none;align-items:center;gap:1rem}.ai-analysis.show{display:flex;animation:slideIn .3s ease}.ai-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.keywords-found{background:#e8f5e8;border:2px solid #4caf50;color:#2e7d32;padding:1rem;border-radius:12px;margin:1rem 0;display:none}.keywords-found.show{display:block;animation:slideIn .3s ease}.keyword-tag{display:inline-block;background:#4caf50;color:#fff;padding:.3rem .8rem;border-radius:15px;font-size:.8rem;margin:.2rem}@media(max-width:768px){.content-area{padding:2rem 1.5rem}.step-title{font-size:2rem}.welcome-options{grid-template-columns:1fr;gap:1rem}.form-grid{grid-template-columns:1fr}.navigation{flex-direction:column;gap:1rem}.navigation>div{display:flex;gap:1rem;width:100%}.nav-btn{flex:1}}@media(max-width:480px){.content-area{padding:1.5rem 1rem}.step-title{font-size:1.7rem}.option-card{padding:1.5rem}}.results-container::-webkit-scrollbar{width:6px}.results-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.results-container::-webkit-scrollbar-thumb{background:#667eea;border-radius:10px}.results-container::-webkit-scrollbar-thumb:hover{background:#764ba2}.streaming-container{min-height:400px}.streaming-case-study{transition:opacity .5s ease;margin-bottom:1.5rem}.streaming-text{max-height:300px;overflow-y:auto;background:#f8f9ff;padding:1rem;border-radius:12px;margin-top:1rem;font-family:Inter,sans-serif;line-height:1.6;color:#333}.streaming-text pre{font-family:Inter,sans-serif!important;white-space:pre-wrap;word-wrap:break-word;margin:0}.typing-cursor{display:inline-block;width:2px;height:1em;background:#667eea;animation:blink 1s infinite;margin-left:2px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.streaming-content .case-study-card{border-left:4px solid #667eea}.streaming-progress{color:#667eea;font-style:italic;margin:.5rem 0}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease}.modal-container{width:90%;max-width:600px;background:#fff;border-radius:25px;box-shadow:0 25px 50px #00000040;overflow:hidden;animation:slideInUp .4s ease}@keyframes slideInUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:2rem 2rem 1rem;border-bottom:1px solid #e0e8ff;text-align:center}.modal-title{font-size:1.5rem;font-weight:600;color:#333;margin:0}.modal-body{padding:2rem}.progress-steps{margin:2rem 0}.progress-step{display:flex;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid #f0f4ff;transition:all .3s ease}.progress-step:last-child{border-bottom:none}.progress-step.active{background:#f8f9ff;border-radius:10px;padding:1rem;margin:.5rem 0;border-bottom:1px solid #e0e8ff}.progress-step.completed{opacity:.7}.step-icon{font-size:1.2rem;width:2rem;text-align:center}.step-text{flex:1;font-weight:500;color:#333}.step-status{font-size:1.1rem;min-width:1.5rem;text-align:center}.project-summary{background:#f8f9ff;border-radius:15px;padding:1.5rem;margin-bottom:1.5rem;border:1px solid #e0e8ff}.summary-section{margin-bottom:1rem}.summary-section:last-child{margin-bottom:0}.summary-title{font-weight:600;color:#667eea;margin-bottom:.5rem;font-size:.9rem}.summary-content{font-family:Inter,sans-serif;line-height:1.5;color:#555;font-size:.9rem;background:#fff;padding:.8rem;border-radius:8px;border:1px solid #f0f4ff;max-height:80px;overflow-y:auto}.summary-keywords{display:flex;flex-wrap:wrap;gap:.4rem}.summary-keyword-tag{background:#667eea;color:#fff;padding:.3rem .8rem;border-radius:15px;font-size:.8rem;font-weight:500}.project-summary-results{background:#f8f9ff;border-radius:15px;padding:1.5rem;margin-bottom:2rem;border:1px solid #e0e8ff}.project-summary-results .summary-content{max-height:100px;font-size:.95rem}.project-summary-results .summary-title{font-size:1rem;margin-bottom:.8rem}@media(max-width:768px){.modal-container{width:95%;margin:1rem}.modal-body{padding:1.5rem}.progress-step{padding:.8rem 0}.step-text{font-size:.9rem}}.text-danger{color:red;margin-top:3px}
