html,body,#root{height:calc(100vh - 60px);margin:0}body{padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background-color:#efeef2}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media(prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin infinite 20s linear}}.App-header{background-color:#282c34;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(10px + 2vmin);color:#fff}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.composer-fixed{position:fixed!important;bottom:0!important;left:0!important;right:0!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;padding:12px 16px!important;background:#fff!important;border-top:1px solid #e0e0e0!important;box-shadow:0 -6px 16px -6px #00000014!important;z-index:9999!important}.composer-content-wrapper{flex:1 1 auto!important;min-width:0!important;display:flex!important}.composer-content-wrapper>.assistant-ui-composer{width:100%!important;display:flex!important}.composer-fixed form{display:flex!important;width:100%!important;gap:8px!important}.composer-fixed textarea{flex:1 1 auto!important;min-width:0!important;resize:none!important;padding:12px 16px!important;border:2px solid #e0e0e0!important;border-radius:24px!important;background:#fff!important;font-size:14px!important;outline:none!important;line-height:1.4!important}.composer-fixed .assistant-ui-composer-actions{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;flex:0 0 auto!important}.composer-input{width:90%!important;padding:12px 16px!important;border:2px solid #e0e0e0!important;border-radius:24px!important;background:#f5f5f5!important;font-size:14px!important;font-weight:1000!important;outline:none!important;line-height:1.4!important;box-sizing:border-box!important;transition:border-color .2s ease!important}.composer-input:focus{border-color:#007bff!important;box-shadow:0 0 0 3px #007bff1a!important}.composer-input:disabled{background-color:#f5f5f5!important;color:#6c757d!important;cursor:not-allowed!important}.composer-button{height:40px!important;padding:0 16px!important;border-radius:20px!important;background-color:#0d2b60!important;color:#fff!important;border:none!important;font-size:14px!important;font-weight:500!important;cursor:pointer!important;transition:all .2s ease!important;white-space:nowrap!important;box-sizing:border-box!important}.composer-button:hover{background-color:#5dade2!important;transform:translateY(-1px)!important;box-shadow:0 2px 8px #87ceeb4d!important}.composer-button:active{transform:translateY(0)!important;box-shadow:0 1px 4px #87ceeb33!important}.composer-button:disabled{background-color:#bdc3c7!important;color:#7f8c8d!important;cursor:not-allowed!important;transform:none!important;box-shadow:none!important}.composer-fixed button{height:40px!important;padding:0 14px!important;border-radius:20px!important;white-space:nowrap!important}.chat-container{padding-bottom:80px!important;width:100%!important;max-width:100%!important;margin:0!important;display:flex;flex-direction:column;height:calc(100vh - 120px);box-sizing:border-box;background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable both-edges;position:relative}.welcome-section{text-align:center;padding:20px;border-bottom:1px solid #e0e0e0;background:#fffc;flex-shrink:0}.welcome-section h2{color:#333;margin-bottom:12px;font-size:1.6rem;font-weight:600}.welcome-section p{color:#666;line-height:1.4;margin-bottom:8px;font-size:.9rem}.chat-content{flex:1;display:flex;flex-direction:column;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable both-edges;-webkit-overflow-scrolling:touch;max-height:100%;position:relative;min-height:0;padding-bottom:0!important}[data-testid=thread]{flex:1 1 auto!important;width:100%!important;overflow:visible!important;padding-bottom:220px!important}.aui-thread-root,.aui-thread,.aui-message-root,.aui-message,.aui-message-container,.aui-message-content,.aui-message-bubble,[data-testid=message]{width:100%!important}.quickchart-container{margin:1rem 0;width:100%;max-width:800px;border-radius:8px;overflow:hidden;box-shadow:0 2px 12px #0000001a;background:#fff;border:1px solid #e0e0e0}.quickchart-iframe{width:100%;height:300px;border:none;background:transparent;display:block}@media(max-width:768px){.quickchart-container{max-width:100%;margin:.75rem 0;border-radius:6px}.quickchart-iframe{height:300px}}.message .quickchart-container+*{margin-top:1rem}.message *+.quickchart-container{margin-top:1rem}[data-testid=thread],[data-testid=message-list],[data-testid=message]{align-items:stretch!important}.message-content{text-align:left!important;padding:8px 12px!important;word-wrap:break-word!important;white-space:pre-wrap!important}.user{font-weight:700!important}.help-dialog-overlay{position:fixed!important;inset:0!important;background-color:#00000080!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:10000!important;padding:20px!important}.help-dialog{background:#fff!important;border-radius:12px!important;box-shadow:0 10px 30px #0000004d!important;max-width:600px!important;width:100%!important;max-height:80vh!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}.help-dialog-header{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:20px 24px 16px!important;border-bottom:1px solid #e0e0e0!important;background:#f8f9fa!important}.help-dialog-header h3{margin:0!important;color:#333!important;font-size:1.2rem!important;font-weight:600!important}.help-dialog-close{background:none!important;border:none!important;font-size:24px!important;color:#666!important;cursor:pointer!important;padding:0!important;width:30px!important;height:30px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:50%!important;transition:background-color .2s ease!important}.help-dialog-close:hover{background-color:#e9ecef!important;color:#333!important}.help-dialog-content{padding:24px!important;overflow-y:auto!important;flex:1!important}.help-dialog-content pre{white-space:pre-wrap!important;word-wrap:break-word!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;font-size:14px!important;line-height:1.5!important;color:#333!important;margin:0!important;text-align:left!important}.help-dialog-footer{padding:16px 24px 20px!important;border-top:1px solid #e0e0e0!important;display:flex!important;justify-content:flex-end!important;background:#f5f5f5!important}.help-dialog-footer .composer-button{margin:0!important}.quickchart-container{margin:12px 0!important;border-radius:8px!important;overflow:hidden!important;box-shadow:0 2px 8px #0000001a!important;background:#fff!important;border:1px solid #e0e0e0!important;padding:8px!important}.loading-spinner{align-items:center!important;gap:16px!important;color:#333!important;font-size:20px!important;font-weight:700!important;font-style:normal!important}.spinner{width:40px!important;height:40px!important;border:5px solid #e0e0e0!important;border-top:5px solid #007bff!important;border-radius:50%!important;animation:spin 1s linear infinite!important}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.typing-dots{display:inline-flex!important;align-items:center!important;gap:2px!important;margin-left:8px!important}.typing-dot{width:4px!important;height:4px!important;background-color:#007bff!important;border-radius:50%!important;animation:typing 1.4s infinite ease-in-out!important}.typing-dot:nth-child(1){animation-delay:-.32s!important}.typing-dot:nth-child(2){animation-delay:-.16s!important}.typing-dot:nth-child(3){animation-delay:0s!important}@keyframes typing{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.llm-preamble-hidden{color:#fff!important}.svg-chart-container{margin:12px 0!important;border-radius:8px!important;box-shadow:0 2px 8px #0000001a!important;background:#fff!important;border:1px solid #e0e0e0!important;padding:8px!important;display:inline-block!important;width:auto!important;max-width:100%!important;box-sizing:border-box!important}.svg-chart-wrapper{display:inline-block!important;width:auto!important;line-height:0!important}.svg-chart-wrapper svg{display:block!important;width:auto!important;height:auto!important;max-width:100%!important;border-radius:4px!important}.chart-image-container{margin:12px 0!important;border-radius:8px!important;box-shadow:0 2px 8px #0000001a!important;background:#fff!important;border:1px solid #e0e0e0!important;padding:8px!important;display:inline-block!important;width:auto!important;max-width:100%!important;box-sizing:border-box!important;line-height:0!important}.chart-image{display:block!important;width:auto!important;height:auto!important;max-width:100%!important;border-radius:4px!important;box-shadow:0 1px 3px #0000001a!important}.error-boundary{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#ff6b6b,#ee5a24);padding:20px}.error-content{background:#fffffff2;border-radius:16px;padding:40px;max-width:600px;text-align:center;box-shadow:0 20px 40px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.error-content h2{color:#333;margin-bottom:16px;font-size:2rem}.error-content p{color:#666;margin-bottom:24px;font-size:1.1rem}.error-details{margin:20px 0;text-align:left}.error-details summary{cursor:pointer;font-weight:600;color:#333;margin-bottom:12px}.error-details pre{background:#f5f5f5;padding:12px;border-radius:8px;overflow-x:auto;font-size:.9rem;color:#e74c3c;margin:8px 0;white-space:pre-wrap;word-break:break-word}.retry-button,.reload-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;margin:0 8px;transition:all .3s ease}.retry-button:hover,.reload-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0003}.reload-button{background:linear-gradient(135deg,#f093fb,#f5576c)}
