body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*,.App{box-sizing:border-box}.App{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:20px}.chat-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:20px;box-shadow:0 20px 40px #0000001a;display:flex;flex-direction:column;height:80vh;max-width:800px;overflow:hidden;width:100%}.chat-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;position:relative;text-align:center}.chat-header h1{font-size:1.8em;font-weight:600;margin:0 0 5px}.chat-header p{font-size:.9em;margin:0;opacity:.9}.clear-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:20px;color:#fff;cursor:pointer;font-size:.8em;padding:8px 16px;position:absolute;right:20px;top:50%;transform:translateY(-50%);transition:all .3s ease}.clear-btn:hover{background:#ffffff4d}.chat-messages{display:flex;flex:1 1;flex-direction:column;gap:15px;overflow-y:auto;padding:20px}.welcome-message{color:#666;margin:50px 0;text-align:center}.welcome-message h2{color:#667eea;font-size:1.5em;margin-bottom:10px}.message{display:flex;margin-bottom:15px}.message.user{justify-content:flex-end}.message.bot{justify-content:flex-start}.message.error{justify-content:center}.message-content{border-radius:18px;max-width:70%;padding:12px 18px;position:relative}.message.user .message-content{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom-right-radius:5px;color:#fff}.message.bot .message-content{background:#f1f3f4;border-bottom-left-radius:5px;color:#333}.message.error .message-content{background:#fee;border:1px solid #ffcdd2;color:#d32f2f}.message-text{word-wrap:break-word;font-family:inherit;font-size:.95em;line-height:1.5;margin:0}.message-text.formatted{white-space:normal}.message-text:not(.formatted){white-space:pre-wrap}.message-paragraph{line-height:1.6;margin:0 0 12px}.message-paragraph:last-child{margin-bottom:0}.message-heading{color:inherit;font-weight:600;margin:16px 0 8px}.message.bot .message-heading{color:#2c3e50}.message.user .message-heading{color:#ffffffe6}.message-list{margin:8px 0 12px;padding-left:20px}.message-list:last-child{margin-bottom:0}.message-list li{line-height:1.5;margin:4px 0}.code-block{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:12px 0;overflow:hidden}.message.user .code-block{background:#ffffff1a;border-color:#fff3}.code-header{background:#e9ecef;color:#6c757d;font-size:.8em;font-weight:500;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.message.user .code-header{background:#ffffff26;color:#fffc}.code-content{background:#0000;color:#2c3e50;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85em;line-height:1.4;margin:0;overflow-x:auto;padding:12px}.message.user .code-content{color:#fffffff2}.message-content .formatted>:first-child{margin-top:0}.message-content .formatted>:last-child{margin-bottom:0}.citation-link{background:linear-gradient(135deg,#0066cc1a,#0066cc0d);border-bottom:2px solid #06c;border-radius:3px;color:#06c;display:inline-block;font-weight:600;margin:0 2px;padding:2px 4px;position:relative;text-decoration:none;transition:all .3s ease}.citation-link:hover{background:linear-gradient(135deg,#06c,#049);border-bottom-color:#049;box-shadow:0 4px 8px #0066cc4d;color:#fff;text-decoration:none;transform:translateY(-1px)}.citation-link:active{box-shadow:0 2px 4px #06c6;transform:translateY(0)}.message.user .citation-link{background:linear-gradient(135deg,#fff3,#ffffff1a);border-bottom-color:#fffc;color:#fffffff2}.message.user .citation-link:hover{background:linear-gradient(135deg,#fffffff2,#ffffffd9);border-bottom-color:#ffffffe6;box-shadow:0 4px 8px #ffffff4d;color:#333}.citation-link:after{content:" 🔗";font-size:.75em;margin-left:2px;opacity:.8;transition:all .3s ease}.citation-link:hover:after{opacity:1;transform:scale(1.1)}.message-paragraph strong{color:inherit;font-size:1.05em;font-weight:700;letter-spacing:.3px}.message.bot .message-paragraph strong{color:#1a365d;text-shadow:0 1px 2px #0000001a}.message.user .message-paragraph strong{color:#fffffffa;text-shadow:0 1px 2px #0000004d}.citation-section{background:linear-gradient(135deg,#f8f9fc,#f1f3f8);border-left:4px solid #06c;border-radius:6px;margin-top:16px;padding:12px;position:relative}.message.user .citation-section{background:linear-gradient(135deg,#ffffff26,#ffffff14);border-left-color:#ffffffb3}.citation-section:before{align-items:center;background:#06c;border-radius:50%;color:#fff;content:"📚";display:flex;font-size:10px;height:20px;justify-content:center;left:-2px;position:absolute;top:-2px;width:20px}.message.user .citation-section:before{background:#ffffffe6;color:#333}.citation-link[href*=category]:before{color:#06c;content:counter(citation-counter) ". ";counter-increment:citation-counter;font-weight:700;margin-right:4px}.message.user .citation-link[href*=category]:before{color:#ffffffe6}.message-content{counter-reset:citation-counter}.citation-link[title]:hover:before{background:#333;border-radius:4px;bottom:100%;color:#fff;content:attr(title);font-size:.75em;left:50%;opacity:.9;padding:4px 8px;pointer-events:none;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:1000}@media (max-width:768px){.citation-link{font-size:.9em;margin:1px;padding:3px 6px}.citation-section{margin-top:12px;padding:8px}.citation-link:after{content:" 🔗";font-size:.7em}}.citation-link:focus{border-radius:4px;outline:2px solid #06c;outline-offset:2px}.message.user .citation-link:focus{outline-color:#fffc}.citation-section .citation-link{border-bottom-width:3px;border-radius:6px;display:block;margin:6px 0;padding:8px 12px}.citation-section .citation-link:first-of-type{margin-top:8px}.citation-link.loading{opacity:.6;pointer-events:none}@media print{.citation-link:after{color:#666;content:" (" attr(href) ")";font-size:.8em}.citation-link{background:none!important;border:none!important;color:#06c!important;text-decoration:underline}}@media (prefers-contrast:high){.citation-link{border-bottom-width:3px;font-weight:700}.citation-link:hover{border-bottom-width:4px}}@media (prefers-reduced-motion:reduce){.citation-link{transition:none}.citation-link:hover{transform:none}.citation-link:after{transition:none}.citation-link:hover:after{transform:none}}.message-time{display:block;font-size:.7em;margin-top:5px;opacity:.7;text-align:right}.typing-indicator{display:flex;gap:4px;padding:8px 0}.typing-indicator span{animation:typing 1.4s ease-in-out infinite;background:#999;border-radius:50%;height:8px;width:8px}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.chat-input{background:#fff;border-top:1px solid #e0e0e0;padding:20px}.input-container{align-items:flex-end;display:flex;gap:10px}.input-container textarea{border:2px solid #e0e0e0;border-radius:20px;flex:1 1;font-family:inherit;font-size:.95em;line-height:1.4;max-height:120px;min-height:20px;outline:none;padding:12px 16px;resize:none;transition:border-color .3s ease}.input-container textarea:focus{border-color:#667eea}.input-container textarea:disabled{background:#f5f5f5;cursor:not-allowed}.send-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2em;height:50px;justify-content:center;transition:all .3s ease;width:50px}.send-btn:hover:not(:disabled){box-shadow:0 5px 15px #667eea66;transform:scale(1.05)}.send-btn:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width:768px){.App{padding:10px}.chat-container{border-radius:15px;height:90vh}.chat-header{padding:15px}.chat-header h1{font-size:1.5em}.clear-btn{font-size:.7em;padding:6px 12px;right:15px}.chat-messages{padding:15px}.message-content{max-width:85%}.chat-input{padding:15px}.send-btn{font-size:1.1em;height:45px;width:45px}}
/*# sourceMappingURL=main.f5fea7c6.css.map*/