:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;padding:0;min-width:320px;min-height:100vh;width:100%;height:100%}#root{width:100%;height:100vh;margin:0;padding:0}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.app{display:flex;flex-direction:column;height:100vh;width:100vw;margin:0;padding:0;background:#f5f5f5;box-sizing:border-box}.header{background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#008ee3;padding:1rem;text-align:center;box-shadow:0 2px 4px #0000001a}.header h1{margin:0;font-size:1.8rem;color:#008ee3}.header p{margin:.5rem 0 0;opacity:.8;color:#0277bd}.config-section{padding:1rem;background:#fff;border-bottom:1px solid #e0e0e0}@media (max-width: 768px){.config-section{padding:.75rem}}.url-input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:8px;font-size:.9rem;box-sizing:border-box}.url-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.chat-container{flex:1;display:flex;flex-direction:column;background:#fff;overflow:hidden}.messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:1rem}.message{display:flex;max-width:70%}@media (max-width: 768px){.message{max-width:85%}}@media (max-width: 480px){.message{max-width:95%}}.message.user{align-self:flex-end}.message.assistant{align-self:flex-start}.message-content{padding:.75rem 1rem;border-radius:18px;word-wrap:break-word;white-space:pre-wrap}.message.user .message-content{background:#008ee3;color:#fff;border-bottom-right-radius:4px}.message.assistant .message-content{background:#f1f1f1;color:#333;border-bottom-left-radius:4px}.message.assistant .message-content h1,.message.assistant .message-content h2,.message.assistant .message-content h3{margin:.5em 0 .3em;color:#2c3e50}.message.assistant .message-content h1{font-size:1.1em;font-weight:600}.message.assistant .message-content h2{font-size:1em;font-weight:600}.message.assistant .message-content h3{font-size:.95em;font-weight:600}.message-content ul,.message-content ol{margin-top:0;margin-bottom:0;padding-left:1.2em}.message-content li{margin-bottom:.2em}.message-content p{margin:0}.message.assistant .message-content p{line-height:1.4}.message.assistant .message-content li{line-height:1.3}.message.assistant .message-content strong{font-weight:600;color:#34495e}.message.assistant .message-content em{font-style:italic;color:#7f8c8d}.message.assistant .message-content code{background:#f8f9fa;border:1px solid #e9ecef;border-radius:3px;padding:.1em .3em;font-family:Monaco,Courier New,monospace;font-size:.9em}.message.assistant .message-content pre{background:#f8f9fa;border:1px solid #e9ecef;border-radius:5px;padding:.8em;overflow-x:auto;margin:.5em 0}.message.assistant .message-content pre code{background:none;border:none;padding:0}.message.assistant .message-content blockquote{border-left:3px solid #667eea;margin:.5em 0;padding-left:1em;color:#555;font-style:italic}.message.assistant .message-content table{border-collapse:collapse;margin:.6em 0;width:100%;font-size:.92em;display:block;overflow-x:auto}.message.assistant .message-content th,.message.assistant .message-content td{border:1px solid #e1e4e8;padding:.45em .7em;text-align:left;vertical-align:top}.message.assistant .message-content th{background:#f6f8fa;font-weight:600}.message.assistant .message-content tr:nth-child(2n) td{background:#fafbfc}.message.assistant .message-content .mermaid-block{background:#fff;border:1px solid #e9ecef;border-radius:6px;padding:.6em;margin:.6em 0;overflow-x:auto}.message.assistant .message-content .mermaid-block svg{max-width:100%;height:auto}.message.assistant .message-content .mermaid-error{background:#fff5f5;border:1px solid #fed7d7;color:#742a2a}.typing-indicator{display:flex;gap:4px;align-items:center}.typing-indicator span{width:8px;height:8px;border-radius:50%;background:#999;animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-10px);opacity:1}}.input-area{border-top:1px solid #e0e0e0;padding:1rem;background:#fff}.input-container{position:relative;display:flex;align-items:flex-end}@media (max-width: 480px){.input-container{flex-direction:column;align-items:stretch;gap:.75rem}.button-group{justify-content:center}}.input-container textarea{flex:1;width:100%;padding:.75rem 3rem .75rem .75rem;border:1px solid #e8e8e8;border-radius:12px;resize:none;font-family:inherit;font-size:.9rem;line-height:1.4;height:44px;min-height:44px;max-height:44px;box-sizing:border-box;background:#fafafa;overflow:hidden;color:#333;-ms-overflow-style:none;scrollbar-width:none}.input-container textarea::-webkit-scrollbar{display:none}.input-container textarea:focus{outline:none;border-color:#d0d0d0;box-shadow:none;background:#fff}.input-container textarea:disabled{background:#f5f5f5;cursor:not-allowed}.button-group{display:flex;gap:.5rem}.send-button,.clear-button{padding:.75rem;border:none;border-radius:12px;cursor:pointer;font-size:1rem;transition:all .2s}.send-button{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);background:transparent;color:#5a67d8;width:32px;height:32px;display:flex;align-items:center;justify-content:center;padding:0;border-radius:6px}.send-button:hover:not(:disabled){background:#f0f0f0;color:#4c51bf}.send-button:disabled{background:transparent;color:#ccc;cursor:not-allowed}.clear-button{background:#f44336;color:#fff}.clear-button:hover{background:#d32f2f;transform:translateY(-1px)}.footer{padding:.5rem 1rem;background:#fafafa;border-top:1px solid #e0e0e0;text-align:center;font-size:.9rem;color:#666}.messages::-webkit-scrollbar{width:6px}.messages::-webkit-scrollbar-track{background:#f1f1f1}.messages::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.messages::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (min-width: 768px) and (max-width: 1024px){.message{max-width:75%}.header h1{font-size:1.6rem}}@media (min-width: 1200px){.message{max-width:60%}.messages{padding:1.5rem 2rem}.config-section,.input-area{padding:1rem 2rem}.header h1{font-size:2rem}}@media (max-width: 480px){.header{padding:.75rem}.header h1{font-size:1.4rem}.header p{font-size:.9rem}.messages{padding:.75rem;gap:.75rem}.input-area{padding:.75rem}.url-input{padding:.5rem;font-size:.85rem}.send-button{right:.3rem;width:28px;height:28px}.clear-button{padding:.6rem;min-width:40px}}
