.analysis-results{background:linear-gradient(135deg,#fff,#f9fafb);border-radius:16px;padding:2.5rem;margin-top:4rem;box-shadow:0 8px 24px #0000001a;font-family:Poppins,sans-serif;transition:all .3s ease;border:1px solid #e5e7eb}.analysis-results h2{margin-top:0;text-align:center;color:#111827;font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;padding-bottom:.5rem;position:relative}.analysis-results h2:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:60px;height:3px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:2px}.result-content{line-height:1.6;color:#555;max-height:none;overflow-y:auto}.result-content table{width:100%;border-collapse:collapse;margin:1rem 0}.result-content th,.result-content td{border:none;padding:8px 12px;text-align:left}.result-content th{background-color:#f2f2f2;font-weight:700}.result-content tr:nth-child(2n){background-color:#f9f9f9}.result-content tr:hover{background-color:#f5f5f5}.export-button{position:fixed;bottom:20px;right:20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:50%;width:50px;height:50px;cursor:pointer;box-shadow:0 4px 12px #667eea4d;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-size:1.2rem;z-index:1000}.export-button:hover{transform:scale(1.1);box-shadow:0 6px 16px #667eea66}@media (max-width: 768px){.export-button{bottom:10px;right:10px;width:45px;height:45px;font-size:1rem}}.analysis-text{margin:0 0 1rem;white-space:pre-wrap;word-wrap:break-word;line-height:1.6}.analysis-table{width:100%;border-collapse:collapse;margin:10px 0;font-size:.9em}.analysis-th,.analysis-td{border:1px solid #ddd;padding:8px;text-align:left}.analysis-th{background-color:#f2f2f2;font-weight:700}.analysis-code{background-color:#f4f4f4;padding:2px 4px;border-radius:3px;font-family:monospace}.analysis-pre{background-color:#f4f4f4;padding:10px;border-radius:5px;overflow-x:auto;font-family:monospace}.analysis-link{color:#4a90e2;text-decoration:underline}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:2rem;text-align:center;font-family:Poppins,sans-serif}.loading-spinner{position:relative;width:80px;height:80px;margin-bottom:2rem}.spinner-ring{position:absolute;width:100%;height:100%;border:4px solid transparent;border-top:4px solid #667eea;border-radius:50%;animation:spin 1.5s cubic-bezier(.5,0,.5,1) infinite}.spinner-ring:nth-child(2){animation-delay:-.5s;border-top-color:#764ba2}.spinner-ring:nth-child(3){animation-delay:-1s;border-top-color:#f093fb}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-container h2{color:#374151;font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.loading-container p{color:#6b7280;font-size:1rem;margin:0;max-width:400px}.input-area-light{display:flex;align-items:center;background-color:#f9f9ff;border-radius:24px;padding:12px 20px;box-shadow:0 4px 20px #667eeab3;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;gap:12px;max-width:800px;margin:0 auto;bottom:20px;left:50%}.input-text-light{flex-grow:1;flex-shrink:1;min-width:300px;border:none;outline:none;background-color:#ffffff26;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 30px #0000001a;font-size:1rem;padding:12px 16px;border-radius:20px;color:#333;transition:box-shadow .2s ease}.input-text-light::placeholder{color:#999}.input-text-light:focus{box-shadow:inset 0 0 8px #6366f180}.icon-button{background:transparent;border:none;color:#6b5bff;cursor:pointer;font-size:1.6rem;padding:10px;border-radius:50%;transition:background-color .2s ease,color .2s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #6366f145;margin-left:4px}.export-button{padding:14px;font-size:1.8rem;border-radius:50%;background:transparent;border:none;color:#6b5bff;cursor:pointer;transition:background-color .2s ease,color .2s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #6366f145;margin-left:4px}.export-button:hover,.icon-button:hover{background-color:#dcdcff;color:#4b3bff}.send-button{background-color:#6b5bff;color:#fff;font-size:1.6rem;padding:10px;border-radius:50%;box-shadow:0 2px 6px #6366f145;transition:background-color .2s ease,color .2s ease;display:flex;align-items:center;justify-content:center}.send-button:hover{background-color:#4b3bff;color:#fff}.selected-file-info{display:flex;align-items:center;background-color:#f3f0ff;border-radius:12px;padding:6px;margin-left:8px;box-shadow:0 2px 6px #6366f145;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:1rem;color:#4b3bff;max-width:300px;min-width:200px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.selected-file-info .file-icon{font-size:1.3rem;margin-right:8px;color:#6b5bff;flex-shrink:0}.selected-file-info .file-name{font-weight:600;margin-right:12px;flex-shrink:1;flex-grow:1;min-width:60px;max-width:80px;overflow:hidden;text-overflow:ellipsis}.selected-file-info .file-size{font-weight:400;font-size:.9rem;color:#7c7caa;margin-right:12px;flex-shrink:0}.selected-file-info .file-type{display:none}.clear-file-button{background:transparent;border:none;color:#7c7caa;cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease;flex-shrink:0}.clear-file-button:hover{background-color:#dcdcff;color:#4b3bff}.chat-message{display:flex;margin-bottom:10px}.user-message{justify-content:flex-end}.ai-message{justify-content:flex-start}.chat-bubble{max-width:60%;padding:10px 15px;border-radius:20px;position:relative;box-shadow:0 2px 5px #0000001a}.user-message .chat-bubble{background-color:#4a90e2;color:#fff;border-bottom-right-radius:0}.ai-message .chat-bubble{background-color:#e5e5ea;color:#000;border-bottom-left-radius:0}.chat-role{font-weight:700;font-size:.85rem;margin-bottom:5px;display:block}.chat-text{margin:0;white-space:pre-wrap;word-wrap:break-word}.typing-indicator{display:inline-flex;align-items:center;gap:4px;padding:0}.typing-dots{display:flex;gap:3px;align-items:center}.typing-dots span{width:6px;height:6px;border-radius:50%;background-color:#999;animation:typing 1.4s infinite ease-in-out}.typing-dots span:nth-child(1){animation-delay:-.32s}.typing-dots span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.app{min-height:100vh;background:linear-gradient(135deg,#f8fafc,#fff);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .5s ease;padding:2rem;box-sizing:border-box}.app.shrink{justify-content:flex-start;padding-top:.5rem;padding-bottom:4rem}.app.shrink .app-header{justify-content:flex-start;padding:.5rem;position:fixed;top:-2.3rem;left:-.6rem;right:auto;width:auto;border-radius:12px;background:linear-gradient(135deg,#fff,#f9fafb);box-shadow:0 4px 16px #0000001a;transform:scale(.9);transition:all .6s cubic-bezier(.25,.46,.45,.94);align-items:center;gap:10px}.app-logo{height:120px;width:auto;margin-right:10px;margin-bottom:10px;transition:all .6s cubic-bezier(.25,.46,.45,.94)}.app.shrink .app-logo{height:50px;margin-right:5px;margin-bottom:0;align-self:center}.app.shrink .app-header h1{font-size:2.6rem;font-weight:700}.app-header p{font-family:Poppins,sans-serif;font-style:italic;position:absolute;top:85%;left:50%;transform:translate(-50%);margin:0;color:#bdbdbd;transition:all .6s cubic-bezier(.25,.46,.45,.94)}.app.shrink .app-header p{position:static;margin-top:.3rem;left:auto;transform:none;color:#aaa;font-size:.8rem}.app-main{padding:6rem;max-width:1200px;margin:0 auto;width:100%;transition:all .5s ease}.app.shrink .app-main{padding-top:.5rem}.chat-container{height:auto;width:100%;max-width:800px;padding:20px;background-color:#fff;border-radius:12px;box-shadow:0 0 20px #0000001a;margin:-10% auto 120px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.app.shrink .chat-container{margin-top:-20px;padding-top:10px}.app-header{background:linear-gradient(135deg,#fff,#f9fafb);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:3rem;display:flex;align-items:center;justify-content:center;color:#000;position:relative;transition:all .6s cubic-bezier(.25,.46,.45,.94);flex-wrap:nowrap;border-bottom:1px solid #e5e7eb;box-shadow:0 4px 20px #0000001a;max-width:1100px;margin:50px auto 40px;border-radius:20px;font-family:Poppins,sans-serif;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;gap:10px}.app-logo{height:160px;width:auto;margin-bottom:0;transition:all .6s cubic-bezier(.25,.46,.45,.94);filter:drop-shadow(0 0 10px rgba(102,126,234,.9))}.app-header h1{font-family:Poppins,sans-serif;margin:0 0 .5rem;font-size:5rem;font-weight:900;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;transition:all .6s cubic-bezier(.25,.46,.45,.94);text-shadow:0 4px 15px rgba(102,126,234,.7)}.app-header p{font-family:Poppins,sans-serif;font-style:italic;margin:-5px 0 0;color:#4a4a6a;font-size:1.5rem;text-align:left;width:100%;letter-spacing:.1em;text-shadow:0 2px 6px rgba(74,74,106,.5)}@media (max-width: 768px){.app-header{flex-direction:column;padding:2rem 1rem;max-width:90%;gap:20px}.app-logo{height:120px}.app-header h1{font-size:3.5rem;text-align:center}.app-header p{font-size:1.2rem;text-align:center;width:auto}}.app-logo{height:140px;width:auto;margin-right:25px;margin-bottom:10px;transition:all .6s cubic-bezier(.25,.46,.45,.94);filter:drop-shadow(0 0 8px rgba(102,126,234,.8))}.app-header h1{font-family:Poppins,sans-serif;margin:0 0 .5rem;font-size:4.5rem;font-weight:800;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;transition:all .6s cubic-bezier(.25,.46,.45,.94);text-shadow:0 3px 10px rgba(102,126,234,.6)}.app-header p{font-family:Poppins,sans-serif;font-style:italic;margin:-8px 0 0;color:#5a5a7a;font-size:1.3rem;text-align:center;width:100%;letter-spacing:.07em;text-shadow:0 1px 4px rgba(90,90,122,.4)}.app-logo{height:100px;width:auto;margin-right:15px;margin-bottom:10px;transition:all .6s cubic-bezier(.25,.46,.45,.94);filter:drop-shadow(0 0 5px rgba(102,126,234,.7))}.app-header h1{font-family:Poppins,sans-serif;margin:0 0 .5rem;font-size:3.5rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;transition:all .6s cubic-bezier(.25,.46,.45,.94);text-shadow:0 2px 8px rgba(102,126,234,.5)}.app-header p{font-family:Poppins,sans-serif;font-style:italic;margin:-10px 0 0;color:#6b6b8a;font-size:1.1rem;text-align:center;width:100%;letter-spacing:.05em;text-shadow:0 1px 3px rgba(107,107,138,.3)}.app-logo{height:100px;width:auto;margin-right:15px;margin-bottom:10px;transition:all .6s cubic-bezier(.25,.46,.45,.94)}.app-header h1{font-family:Poppins,sans-serif;margin:0 0 .5rem;font-size:3rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;transition:all .6s cubic-bezier(.25,.46,.45,.94)}.app-header p{font-family:Poppins,sans-serif;font-style:italic;margin:-10px 0 0;color:#bdbdbd;font-size:1rem;text-align:center;width:100%}.analyze-controls{display:flex;justify-content:center;margin:2rem 0}.analyze-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 24px;font-size:16px;font-weight:600;border-radius:8px;cursor:pointer;box-shadow:0 4px 12px #00000026;transition:all .3s ease;font-family:Poppins,sans-serif}.analyze-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #0003}.analyze-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.bottom-controls{position:fixed;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:1.5rem;z-index:10}.bottom-controls .file-uploader{position:static;transform:none}.export-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:10px 18px;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;box-shadow:0 4px 12px #667eea66;transition:all .3s ease;font-family:Poppins,sans-serif}.export-button:hover{background:linear-gradient(135deg,#5563c1,#5e3a8a);box-shadow:0 6px 16px #667eea99}.bottom-controls.results-view{left:20px;right:20px;transform:none;justify-content:space-between}.bottom-controls.results-view .file-uploader{width:293px;max-width:300px}.right-controls{display:flex;align-items:center;gap:.5rem}.bottom-controls.results-view .hamburger{margin-left:auto}.spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite;margin-right:8px}@keyframes spin{to{transform:rotate(360deg)}}.error-message{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626;border:1px solid #fca5a5;border-radius:8px;padding:16px 20px;margin:2rem auto;font-family:Poppins,sans-serif;font-size:16px;font-weight:500;box-shadow:0 4px 12px #dc262626;display:flex;align-items:center;justify-content:center;gap:10px;max-width:relative;text-align:center}.error-message:before{content:"⚠️";font-size:16px;margin-right:8px}.chat-text{margin:0 0 1rem;white-space:pre-wrap;word-wrap:break-word;line-height:1.6}.chat-table{width:100%;border-collapse:collapse;margin:10px 0;font-size:.9em}.chat-th,.chat-td{border:1px solid #ddd;padding:8px;text-align:left}.chat-th{background-color:#f2f2f2;font-weight:700}.chat-code{background-color:#f4f4f4;padding:2px 4px;border-radius:3px;font-family:monospace}.chat-pre{background-color:#f4f4f4;padding:10px;border-radius:5px;overflow-x:auto;font-family:monospace}.chat-link{color:#4a90e2;text-decoration:underline}
