@import"https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap";:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#000;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;padding:0;width:100vw;height:100vh;overflow:hidden;background:#000}#root{width:100%;height:100%}*{margin:0;padding:0;box-sizing:border-box;font-family:Manrope,sans-serif;font-optical-sizing:auto;font-style:normal}body{font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#000;color:#fff;overflow:visible}#root{height:100vh;width:100vw;overflow:visible}.app{height:100vh;width:100vw;min-height:100vh;background:transparent;position:relative;overflow-x:hidden;overflow-y:auto;scroll-snap-type:y proximity;scroll-behavior:smooth}.app-sections{width:100%;position:relative}.main-section{height:100vh;width:100%;display:flex;align-items:center;justify-content:center;position:relative;scroll-snap-align:start;transition:opacity .5s ease,pointer-events 0s .5s;opacity:1;pointer-events:auto}.main-section.hidden{opacity:0;pointer-events:none;transition:opacity .5s ease,pointer-events 0s 0s}.chat-section{min-height:100vh;width:100%;max-width:900px;margin:0 auto;display:flex;flex-direction:column;scroll-snap-align:start;transition:opacity .5s ease,pointer-events 0s .5s;opacity:1;pointer-events:auto}.chat-section.hidden{opacity:0;pointer-events:none;transition:opacity .5s ease,pointer-events 0s 0s}.chat-section-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;position:sticky;top:0;z-index:10}.chat-section-header h2{color:#fff;font-size:1.3rem;font-weight:600;margin:0}.scroll-to-top-button{width:40px;height:40px;border-radius:50%;border:none;background:#ffffff1a;color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.scroll-to-top-button:hover{background:#fff3;transform:scale(1.05)}.scroll-to-top-button:active{transform:scale(.95)}.chat-section-content{padding:20px}.chat-section-footer{padding:16px 24px 20px;display:flex;flex-direction:column;align-items:center;gap:16px;position:sticky;bottom:0;z-index:10}.chat-control-buttons{display:flex;align-items:center;gap:8px}.chat-voice-button{width:36px;height:36px;border-radius:50%;border:none;background:#ffd70033;color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.chat-voice-button:hover:not(:disabled){background:#ffd7004d;transform:scale(1.05)}.chat-voice-button:active:not(:disabled){transform:scale(.95)}.chat-voice-button.recording{background:#ff00004d;animation:pulse 1.5s ease-in-out infinite}.chat-voice-button.speaking{background:#00ff004d;animation:pulse 1.5s ease-in-out infinite}.chat-voice-button.processing{background:#ffa5004d;animation:pulse 1.5s ease-in-out infinite}.chat-voice-button.connecting{background:#0000ff4d;animation:pulse 1.5s ease-in-out infinite}.chat-voice-button.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.chat-voice-button .button-content{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.chat-voice-button .lightning-icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.chat-voice-button .lightning-icon img{width:100%;height:100%;object-fit:contain}.chat-voice-button .lightning-icon.transforming{transform:scale(.8)}.chat-voice-button .pause-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;transition:opacity .3s ease}.chat-voice-button .pause-icon.visible{opacity:1}.chat-voice-button .pause-bars{display:flex;gap:3px;align-items:center}.chat-voice-button .pause-bar{width:2px;height:8px;background:#fff;border-radius:1px}.chat-voice-button .connecting-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.chat-mute-button{width:32px;height:32px;border-radius:50%;border:none;background:#ffffff1a;color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative}.chat-mute-button:hover:not(:disabled){background:#fff3;transform:scale(1.05)}.chat-mute-button:active:not(:disabled){transform:scale(.95)}.chat-mute-button.muted{background:#f003;color:#ff6b6b}.chat-mute-button:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.chat-audio-wave-container{width:30px;height:30px;display:flex;align-items:center;justify-content:center;position:relative;margin:8px auto}.audio-wave-small{width:24px;height:24px}.audio-wave-small canvas{width:24px;height:24px}.main-container{position:relative;width:100%;height:100%;max-width:900px;margin:0 auto;display:flex;padding:0 24px;flex-direction:column;z-index:1;overflow:visible}.top-controls{display:flex;justify-content:space-between;align-items:center;position:absolute;top:0;width:100%;max-width:900px;margin:0 auto;z-index:1000;left:0;padding:24px 42px;background:linear-gradient(180deg,#000,#0000)}.connection-status{display:flex;align-items:center}.status-indicator{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:500;transition:all .3s ease}.status-indicator.connected{background:#4caf5026;color:#4caf50;border:1px solid rgba(76,175,80,.3)}.status-indicator.connecting{background:#ffc10726;color:#ffc107;border:1px solid rgba(255,193,7,.3)}.status-indicator.error{background:#f4433626;color:#f44336;border:1px solid rgba(244,67,54,.3)}.status-dot{width:8px;height:8px;border-radius:50%;transition:all .3s ease}.status-indicator.connected .status-dot{background:#4caf50;box-shadow:0 0 8px #4caf5080}.status-indicator.connecting .status-dot{background:#ffc107;animation:pulse 1.5s ease-in-out infinite}.status-indicator.error .status-dot{background:#f44336;animation:pulse 1s ease-in-out infinite}.status-text{font-size:.85rem}.clear-history-button{background:#f4433626;border:1px solid rgba(244,67,54,.3);border-radius:36px;padding:.75rem 1rem;color:#f44336;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .3s ease;font-size:.9rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:200px;height:56px}.clear-history-button:hover{background:#f4433640;border-color:#f4433680;transform:translateY(-1px)}.clear-history-button:active{transform:translateY(0)}.clear-icon{font-size:1.1rem;filter:grayscale(100%) brightness(.5) sepia(100%) hue-rotate(-10deg) saturate(600%)}.language-selector{position:relative;display:flex;justify-content:flex-end}.language-button{background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:36px;padding:.75rem 1rem;color:#e0e0e0;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .3s ease;font-size:.9rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);height:56px}.language-button:hover{background:#ffffff1f;border-color:#ffffff4d}.language-icon{font-size:1.1rem}.language-text{font-weight:500}.language-arrow{font-size:.8rem;transition:transform .3s ease}.language-arrow.open{transform:rotate(180deg)}.language-dropdown{position:absolute;top:100%;right:0;background:#000000f2;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:.5rem;margin-top:.5rem;max-height:300px;overflow-y:auto;z-index:1000;min-width:280px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 20px 60px #00000080}.language-dropdown::-webkit-scrollbar{width:6px}.language-dropdown::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.language-dropdown::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.language-option{width:100%;padding:.75rem 1rem;background:transparent;border:none;border-radius:8px;color:#e0e0e0;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;transition:all .2s ease;text-align:left}.language-option:hover{background:#ffffff14}.language-option.selected{background:#0ef3;color:#0ef}.language-native{font-weight:500;font-size:.95rem}.language-english{font-size:.8rem;opacity:.7}.messages-area{flex:1;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;padding-top:100px;background-color:#14171f}.messages-content{padding:24px 16px 0;display:flex;flex-direction:column;gap:16px}.messages-content>.message:last-child,.messages-content>.welcome-message{margin-bottom:200px}.messages-area::-webkit-scrollbar{width:6px}.messages-area::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.messages-area::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.messages-area::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.welcome-message{flex:1;display:flex;align-items:center;justify-content:center}.welcome-text{font-size:1.2rem;color:#888;text-align:center;opacity:.7}.speech-warning{font-size:1rem;color:gold;text-align:center;background:#ffd7001a;padding:1rem 2rem;border-radius:12px;border:1px solid rgba(255,215,0,.3);max-width:500px;line-height:1.5}.message{display:flex;width:100%;animation:slideIn .3s ease-out}.message-user{justify-content:flex-end}.message-bot{justify-content:flex-start}.message-content{max-width:70%;padding:1rem 1.5rem;border-radius:36px;font-size:1.05rem;line-height:1.5;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;position:relative;box-sizing:border-box;overflow-x:hidden}.message-user .message-content{background:linear-gradient(135deg,gold 0% 100%);color:#000;font-weight:800;border-bottom-right-radius:4px}.message-bot .message-content{background:#ffffff14;color:#e0e0e0;border:1px solid rgba(255,255,255,.1);border-bottom-left-radius:4px}.message-error .message-content{background:#f4433626;color:#f44336;border:1px solid rgba(244,67,54,.3);border-bottom-left-radius:4px}.message-temporary{opacity:.8}.typing-indicator{display:inline-block;margin-left:4px;animation:blink 1s ease-in-out infinite}.typing-dots{display:flex;gap:4px;padding:.5rem 0}.typing-dots span{width:8px;height:8px;background:#888;border-radius:50%;animation:typingDots 1.4s ease-in-out infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}.control-area{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:900px;padding:0 0 24px;position:absolute;bottom:0;left:50%;transform:translate(-50%);pointer-events:none;z-index:100;overflow:visible}.control-area.realtime-mode{top:50%;bottom:auto;transform:translate(-50%,-50%);padding-bottom:0}.mute-control{position:absolute;bottom:34px;left:50%;transform:translate(-50%);z-index:101;pointer-events:none}.mute-button{width:56px;height:56px;border-radius:50%;border:none;background:#ffffff1a;color:#fff;cursor:pointer;transition:background .3s ease,transform .3s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;border:2px solid rgba(255,255,255,.2);--mic-level: 0}.mute-button:not(.muted){box-shadow:0 4px 16px #0003,0 0 calc(10px + var(--mic-level) * 150px) rgba(76,175,80,calc(var(--mic-level) * .7)),0 0 calc(5px + var(--mic-level) * 90px) rgba(76,175,80,calc(var(--mic-level) * .9)),0 0 calc(2px + var(--mic-level) * 50px) rgba(76,175,80,var(--mic-level));border-color:rgba(76,175,80,calc(.2 + var(--mic-level) * .8));transition:background .3s ease,transform .3s ease,border-color .1s ease}.mute-button svg{transition:all .3s ease}.mute-button:hover:not(:disabled){background:#ffffff26;transform:scale(1.05);box-shadow:0 6px 20px #0000004d}.mute-button:active:not(:disabled){transform:scale(.95)}.mute-button.muted{background:#f4433633;border-color:#f4433680;color:#f44336}.mute-button.muted:hover:not(:disabled){background:#f443364d;box-shadow:0 6px 20px #f4433666}.mute-button:disabled{opacity:.3;cursor:not-allowed;transform:scale(1)}.connection-error-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:2000}.connection-error-box{position:relative;background:#f4433626;border:1px solid rgba(244,67,54,.3);border-radius:16px;padding:2rem;max-width:400px;width:90%;text-align:center;color:#f44336;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 20px 60px #f443364d}.connection-error-box h3{margin:0 0 1rem;font-size:1.3rem;font-weight:600}.connection-error-box p{margin:.5rem 0;line-height:1.5;font-size:1rem}.connection-error-box .attempt-counter{margin:1rem 0;font-size:.9rem;opacity:.8}.retry-button{margin-top:1.5rem;background:#f44336;color:#fff;border:none;border-radius:36px;padding:.75rem 2rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.retry-button:hover{background:#d32f2f;transform:translateY(-2px);box-shadow:0 8px 20px #f4433680}.retry-button:active{transform:translateY(0)}.control-area button{pointer-events:auto}.voice-button{background:gold;border:none;width:240px;height:120px;margin-bottom:-24px;border-radius:240px 240px 0 0;cursor:pointer;transition:all .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 -8px 32px #ffd70066;position:relative;overflow:visible;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}.voice-button.realtime-button{width:200px;height:200px;border-radius:50%;margin-bottom:0;box-shadow:0 0 32px #ffd70066;transition:box-shadow .3s ease}.voice-button.realtime-button:hover{box-shadow:0 0 50px #ffd70080}.voice-button.realtime-button.recording{height:200px;transform:scale(1.1);box-shadow:0 0 60px #ffd700cc,0 0 80px #ffd70099}.voice-button.speaking{animation:speakingPulse .8s ease-in-out infinite;box-shadow:0 0 40px #ffd700e6,0 0 60px #ffd700b3}.voice-button.processing{animation:processingPulse 1.5s ease-in-out infinite}@keyframes speakingPulse{0%,to{transform:scale(1);box-shadow:0 0 40px #ffd700e6,0 0 60px #ffd700b3}50%{transform:scale(1.05);box-shadow:0 0 50px gold,0 0 70px #ffd700cc}}@keyframes processingPulse{0%,to{box-shadow:0 8px 32px #ffd7004d}50%{box-shadow:0 8px 48px #ffd70099,0 0 60px #ffd70066}}.voice-button:hover:not(.disabled){box-shadow:0 -12px 40px #ffd70080}.voice-button:active:not(.disabled){transform:translateY(5px) scale(.98);box-shadow:0 -4px 20px #ffd70099}.voice-button.recording{height:240px;border-radius:50%;animation:recordingPulse 1.5s ease-in-out infinite;box-shadow:0 0 60px #ffd700cc,0 0 80px #ffd70099;transform:translateY(-60px);margin-bottom:0}.voice-button.disabled{background:#333;cursor:not-allowed;box-shadow:none;opacity:.5}.voice-button:focus{outline:none}.recording-dot{width:32px;height:32px;background:#000;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);animation:recordingDot 1.5s ease-in-out infinite}.button-content{display:flex;align-items:center;justify-content:center;z-index:2;position:relative}.lightning-icon{font-size:3rem;transition:all .4s ease;-webkit-user-select:none;user-select:none;position:absolute;display:flex;align-items:center;justify-content:center}.lightning-icon svg,.lightning-icon img{width:60px;height:60px;transition:all .4s ease}.lightning-icon.transforming{opacity:0;transform:scale(0) rotate(180deg)}.recording-circle{width:50px;height:50px;background:#000;border-radius:50%;position:absolute;opacity:0;transform:scale(0) rotate(-180deg);transition:all .4s ease}.recording-circle.visible{opacity:1;transform:scale(1) rotate(0);animation:circlePulse 1.5s ease-in-out infinite}.pause-icon{position:absolute;opacity:0;transform:scale(0) rotate(-180deg);transition:all .4s ease;z-index:3}.pause-icon.visible{opacity:1;transform:scale(1) rotate(0)}.pause-bars{display:flex;gap:8px;align-items:center;justify-content:center}.pause-bar{width:12px;height:36px;background:#000;border-radius:3px}.center-loader{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:50px;height:50px;border:4px solid transparent;border-top-color:#000;border-right-color:#000;border-bottom-color:#000;border-radius:50%;animation:spinInPlace 1.2s linear infinite;z-index:3}.processing-loader{position:absolute;width:60px;height:60px;border:4px solid rgba(0,0,0,.1);border-top-color:#000;border-radius:50%;animation:spin 1s linear infinite;z-index:4}.connecting-loader{position:absolute;width:180px;height:180px;border:4px solid transparent;border-top-color:#000;border-right-color:#000;border-bottom-color:#000;border-radius:50%;animation:spinInPlace 1.2s linear infinite;z-index:0;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none}.voice-button:not(.realtime-button) .connecting-loader{width:calc(100% + 10px);height:calc(100% + 10px)}@keyframes spinInPlace{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.connection-attempt-text{position:absolute;top:-40px;left:50%;transform:translate(-50%);color:gold;font-size:.9rem;font-weight:600;white-space:nowrap;z-index:5;text-shadow:0 2px 8px rgba(0,0,0,.5)}.recording-indicator{width:16px;height:16px;background:#000;border-radius:50%;animation:blink 1s ease-in-out infinite}.audio-wave{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:320px;height:320px;display:flex;align-items:center;justify-content:center;pointer-events:none}.audio-wave canvas{width:100%;height:100%}.modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.error-modal{background:linear-gradient(135deg,#2c2c2c,#1a1a1a);border-radius:16px;border:1px solid rgba(255,0,0,.3);max-width:400px;width:90%;overflow:hidden;box-shadow:0 20px 60px #00000080}.modal-header{background:#f4433626;padding:1.5rem;text-align:center;border:1px solid rgba(244,67,54,.3)}.modal-header h3{color:#f44336;font-size:1.2rem;font-weight:600}.modal-body{padding:2rem;text-align:center}.modal-body p{color:#f44336;line-height:1.6;font-size:1rem}.modal-footer{padding:1rem 2rem 2rem;text-align:center}.close-button{background:#f44336;border:none;border-radius:36px;color:#fff;padding:.75rem 2rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.close-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #f4433680;background:#d32f2f}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%{transform:scale(1);box-shadow:0 8px 32px #00eeff4d}50%{transform:scale(1.05);box-shadow:0 12px 40px #00eeff80}to{transform:scale(1);box-shadow:0 8px 32px #00eeff4d}}@keyframes recordingPulse{0%{box-shadow:0 -16px 60px #ffd700cc,0 0 80px #ffd70099}50%{box-shadow:0 -20px 70px gold,0 0 100px #ffd700cc}to{box-shadow:0 -16px 60px #ffd700cc,0 0 80px #ffd70099}}@keyframes recordingDot{0%{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(1.1);opacity:.8}to{transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes lightningPulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.9}to{transform:scale(1);opacity:1}}@keyframes circlePulse{0%{transform:scale(1) rotate(0)}50%{transform:scale(1.15) rotate(0)}to{transform:scale(1) rotate(0)}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:.3}}@keyframes typingDots{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-10px);opacity:1}}@media (max-width: 768px){.main-container{padding:0 1rem}.top-controls{flex-direction:column;gap:.75rem;align-items:stretch;padding:1rem 1rem 3rem}.messages-area{background-color:#1c1c1c}.connection-status{justify-content:center}.clear-history-button{padding:.625rem .875rem;font-size:.85rem;width:100%;justify-content:center}.language-selector{justify-content:center}.language-button{padding:.625rem .875rem;font-size:.85rem}.language-dropdown{min-width:260px;max-height:250px}.language-option{padding:.625rem .875rem}.language-native{font-size:.9rem}.language-english{font-size:.75rem}.messages-content>.message:last-child,.messages-content>.welcome-message{margin-bottom:180px}.voice-button{width:200px;height:100px;border-radius:200px 200px 0 0}.voice-button.recording{height:200px;transform:translateY(-50px);margin-bottom:0}.lightning-icon{font-size:2.5rem}.lightning-icon svg,.lightning-icon img{width:50px;height:50px}.recording-circle{width:40px;height:40px}.recording-dot{width:26px;height:26px}.audio-wave{width:320px;height:320px}.message-content{max-width:85%;font-size:1rem;padding:.875rem 1.25rem}.pause-bar{width:10px;height:30px}.center-loader{width:40px;height:40px;border-width:3px}.processing-loader{width:50px;height:50px}.connecting-loader{width:180px;height:180px;border-width:3px}.connection-attempt-text{top:-35px;font-size:.85rem}.mute-button{width:48px;height:48px}.mute-button svg{width:20px;height:20px}.modal-body{padding:1.5rem}.speech-warning{font-size:.9rem;padding:.875rem 1.5rem}.welcome-text{font-size:1rem;padding:0 1rem}}.scroll-to-chat-container{position:fixed;bottom:24px;right:24px;z-index:1000;pointer-events:none}.scroll-to-chat-button{width:56px;height:56px;border-radius:50%;border:none;background:#ffffff1a;color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;border:2px solid rgba(255,255,255,.2);position:relative;box-shadow:0 4px 16px #0003}.scroll-to-chat-button:hover{background:#ffffff26;transform:scale(1.05);box-shadow:0 6px 20px #0000004d;border-color:#ffffff4d}.scroll-to-chat-button:active{transform:scale(.95)}.chat-badge{position:absolute;top:-8px;right:-8px;background:#f44336;color:#fff;border-radius:50%;width:20px;height:20px;font-size:.7rem;font-weight:600;display:flex;align-items:center;justify-content:center;border:2px solid #000;animation:badgePulse 2s ease-in-out infinite}@keyframes badgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.chat-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:#888}.chat-empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.chat-empty-state p{font-size:1.2rem;margin:0 0 .5rem;color:#ccc}.chat-empty-state small{font-size:.9rem;opacity:.7}.chat-messages{display:flex;flex-direction:column;gap:12px}.chat-message{display:flex;flex-direction:column;animation:chatMessageSlideIn .3s ease-out}@keyframes chatMessageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-message-user{align-items:flex-end}.chat-message-bot,.chat-message-error{align-items:flex-start}.chat-message-content{padding:12px 16px;border-radius:12px;font-size:1rem;line-height:1.5;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;position:relative;box-sizing:border-box;overflow-x:hidden}.chat-message-user .chat-message-content{background:#ffd70033;color:#fff;margin-left:auto;max-width:80%}.chat-message-bot .chat-message-content{background:#ffffff1a;color:#e0e0e0;margin-right:auto;max-width:80%}.chat-message-error .chat-message-content{background:#f4433633;color:#ff6b6b;margin-right:auto;max-width:80%}.chat-message-time{font-size:.7rem;color:#888;margin-top:4px;text-align:right}.chat-clear-button{background:#f4433626;border:1px solid rgba(244,67,54,.3);border-radius:36px;padding:.75rem 1.5rem;color:#f44336;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .3s ease;font-size:.9rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:160px;height:48px}.chat-clear-button:hover:not(:disabled){background:#f4433640;border-color:#f4433680;transform:translateY(-1px)}.chat-clear-button:active:not(:disabled){transform:translateY(0)}.chat-clear-button:disabled{opacity:.3;cursor:not-allowed;transform:none}@media (max-width: 768px){.scroll-to-chat-container{bottom:20px;right:20px}.scroll-to-chat-button{width:48px;height:48px}.chat-badge{width:18px;height:18px;font-size:.65rem;top:-6px;right:-6px}.chat-section-header{padding:16px 20px}.chat-section-header h2{font-size:1.1rem}.scroll-to-top-button{width:36px;height:36px}.chat-section-content{padding:0 12px}.chat-message-content{max-width:85%;font-size:.95rem;padding:10px 14px}.chat-message-time{font-size:.7rem}.chat-section-footer{padding:12px 20px 16px}.chat-clear-button{padding:.625rem 1.25rem;font-size:.85rem;min-width:140px;height:44px}.chat-empty-icon{font-size:3rem}.chat-empty-state p{font-size:1.1rem}.chat-empty-state small{font-size:.85rem}}.markdown-message{line-height:1.6;color:inherit;font-family:inherit;width:100%;max-width:100%;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.markdown-paragraph{margin:0 0 1rem;line-height:1.6;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.markdown-paragraph:last-child{margin-bottom:0}.markdown-strong{font-weight:700;color:#e0e0e0}.markdown-em{font-style:italic;color:silver}.markdown-inline-code{background:#ffffff1a;color:#0ef;padding:.2em .4em;border-radius:4px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9em;border:1px solid rgba(255,255,255,.1);overflow-wrap:break-word;word-wrap:break-word;max-width:100%}.markdown-code-block{background:#0000004d;color:#e0e0e0;padding:1rem;border-radius:8px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9em;border:1px solid rgba(255,255,255,.1);overflow-x:auto;overflow-y:hidden;display:block;white-space:pre;max-width:100%;box-sizing:border-box}.markdown-pre{background:#0000004d;border-radius:8px;padding:1rem;margin:1rem 0;overflow-x:auto;overflow-y:hidden;border:1px solid rgba(255,255,255,.1);max-width:100%;box-sizing:border-box}.markdown-pre .markdown-code-block{background:transparent;padding:0;margin:0;border:none}.markdown-list,.markdown-ordered-list{margin:.5rem 0 1rem;padding-left:1.5rem;max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.markdown-list-item{margin:.25rem 0;line-height:1.5;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.markdown-ordered-list{list-style-type:decimal}.markdown-list{list-style-type:disc}.markdown-blockquote{margin:1rem 0;padding:.75rem 1rem;border-left:4px solid #00EEFF;background:#00eeff0d;border-radius:0 8px 8px 0;font-style:italic;color:silver;max-width:100%;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;box-sizing:border-box}.markdown-h1,.markdown-h2,.markdown-h3,.markdown-h4,.markdown-h5,.markdown-h6{margin:1.5rem 0 .75rem;font-weight:600;line-height:1.3;color:#e0e0e0;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;max-width:100%}.markdown-h1{font-size:1.5rem;border-bottom:2px solid rgba(255,255,255,.1);padding-bottom:.5rem}.markdown-h2{font-size:1.3rem;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.25rem}.markdown-h3{font-size:1.1rem}.markdown-h4,.markdown-h5,.markdown-h6{font-size:1rem}.markdown-hr{border:none;height:1px;background:#fff3;margin:1.5rem 0}.markdown-link{color:#0ef;text-decoration:none;border-bottom:1px solid rgba(0,238,255,.3);transition:all .3s ease;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.markdown-link:hover{color:gold;border-bottom-color:gold;background:#00eeff1a;padding:.1em .2em;border-radius:3px}.markdown-table{width:100%;max-width:100%;border-collapse:collapse;margin:1rem 0;border:1px solid rgba(255,255,255,.1);border-radius:8px;overflow:hidden;overflow-x:auto;display:block;box-sizing:border-box}.markdown-th,.markdown-td{padding:.75rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.1);overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.markdown-th{background:#ffffff0d;font-weight:600;color:#e0e0e0}.markdown-td{color:silver}.markdown-tr:last-child .markdown-td{border-bottom:none}.markdown-pre .hljs{background:#0000004d!important;color:#e0e0e0!important}@media (max-width: 768px){.markdown-paragraph{font-size:.95rem}.markdown-code-block,.markdown-pre{font-size:.8rem;padding:.75rem}.markdown-table{font-size:.9rem}.markdown-th,.markdown-td{padding:.5rem}.markdown-h1{font-size:1.3rem}.markdown-h2{font-size:1.1rem}}.star-field-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}
