.message{display:flex;flex-direction:column;gap:.5rem;max-width:80%;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{align-self:flex-end}.message.assistant{align-self:flex-start}.message-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem;font-size:.75rem;color:var(--text-secondary)}.message-role{font-weight:600}.message-time{opacity:.7}.message-content{padding:.875rem 1.125rem;border-radius:12px;line-height:1.5;word-wrap:break-word}.markdown-content p{margin:.5rem 0}.markdown-content p:first-child{margin-top:0}.markdown-content p:last-child{margin-bottom:0}.markdown-content ul,.markdown-content ol{margin:.75rem 0;padding-left:1.5rem}.markdown-content li,.markdown-content ul ul,.markdown-content ol ol,.markdown-content ul ol,.markdown-content ol ul{margin:.25rem 0}.markdown-content strong{font-weight:600;color:var(--text-primary)}.markdown-content em{font-style:italic}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{margin:1rem 0 .5rem;font-weight:600;line-height:1.3}.markdown-content h1:first-child,.markdown-content h2:first-child,.markdown-content h3:first-child,.markdown-content h4:first-child{margin-top:0}.markdown-content code{background:#0000000d;padding:.125rem .375rem;border-radius:3px;font-family:Courier New,monospace;font-size:.875em}.markdown-content pre{background:#0000000d;padding:.75rem;border-radius:6px;overflow-x:auto;margin:.75rem 0}.markdown-content pre code{background:none;padding:0}.message.user .message-content{background:var(--primary-color);color:#fff;border-bottom-right-radius:4px}.message.assistant .message-content{background:#fff;color:var(--text-primary);border:1px solid var(--border);border-bottom-left-radius:4px}.message.error .message-content{background:#fee2e2;border-color:var(--error);color:var(--error)}.message-footer{display:flex;gap:.5rem;font-size:.7rem}.model-tag{background:var(--background);color:var(--text-secondary);padding:.25rem .5rem;border-radius:4px;font-weight:500}@media (max-width: 768px){.message{max-width:90%}.message-content{padding:.75rem 1rem;font-size:.9375rem}}.chat-window{width:100%;max-width:800px;height:600px;background:var(--surface);border-radius:16px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border);background:var(--surface)}.chat-status{display:flex;align-items:center;gap:.5rem;font-weight:500;color:var(--text-secondary)}.status-indicator{width:10px;height:10px;border-radius:50%;background-color:var(--success)}.status-indicator.loading{background-color:var(--primary-color);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.clear-button{padding:.5rem 1rem;background:transparent;border:1px solid var(--border);border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-secondary);transition:all .2s}.clear-button:hover:not(:disabled){background:var(--background);border-color:var(--secondary-color)}.clear-button:disabled{opacity:.5;cursor:not-allowed}.messages-container{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;background:var(--background)}.messages-container::-webkit-scrollbar{width:8px}.messages-container::-webkit-scrollbar-track{background:transparent}.messages-container::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.messages-container::-webkit-scrollbar-thumb:hover{background:var(--secondary-color)}.typing-indicator{display:flex;gap:4px;padding:.5rem 0}.typing-indicator span{width:8px;height:8px;border-radius:50%;background-color:var(--secondary-color);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:.7}30%{transform:translateY(-10px);opacity:1}}.chat-input-form{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border);background:var(--surface)}.chat-input{flex:1;padding:.75rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:1rem;font-family:inherit;resize:none;max-height:120px;transition:border-color .2s}.chat-input:focus{outline:none;border-color:var(--primary-color)}.chat-input:disabled{background:var(--background);cursor:not-allowed}.send-button{padding:.75rem 1.5rem;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s}.send-button:hover:not(:disabled){background:var(--primary-hover)}.send-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.chat-window{height:calc(100vh - 180px);border-radius:12px}.chat-header{padding:.75rem 1rem}.messages-container{padding:1rem}.chat-input-form,.send-button{padding:.75rem 1rem}}body{font-family:Roobert}.app{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#a5c9ff,#fff59b)}.app-header{text-align:center;padding:2rem 1rem 1rem;color:#000}.app-header h1{font-size:2.5rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.1)}.subtitle{font-size:1rem;opacity:.9;font-weight:400}.error-banner{background-color:var(--error);color:#fff;padding:1rem;text-align:center;font-weight:500;box-shadow:var(--shadow)}.disclaimer-banner{background-color:#fff3cd;border-left:4px solid #ffc107;color:#856404;padding:.75rem 1.5rem;margin:0 auto;max-width:1000px;width:calc(100% - 2rem);margin-bottom:1rem;border-radius:4px;box-shadow:0 2px 4px #0000001a}.disclaimer-banner p{margin:0;font-size:.875rem;line-height:1.5}.disclaimer-banner strong{font-weight:600;margin-right:.5rem}.app-main{flex:1;display:flex;justify-content:center;padding:1rem;max-width:1200px;width:100%;margin:0 auto}.app-footer{text-align:center;padding:1rem;color:#fff;font-size:.875rem;opacity:.8}@media (max-width: 768px){.app-header h1{font-size:1.75rem}.app-main{padding:.5rem}.disclaimer-banner{width:calc(100% - 1rem);padding:.75rem 1rem;font-size:.8rem}}@font-face{font-family:Roobert;src:url(/assets/Roobert-Regular-BDhRy7nL.otf) format("opentype");font-weight:400;font-style:normal}@font-face{font-family:Roobert;src:url(/assets/Roobert-Bold-vh5iLPKX.otf) format("opentype");font-weight:700;font-style:normal}@font-face{font-family:Roobert;src:url(/assets/Roobert-RegularItalic-Dxc0Deqq.otf) format("opentype");font-weight:400;font-style:italic}@font-face{font-family:Roobert;src:url(/assets/Roobert-BoldItalic-BpMPG6X3.otf) format("opentype");font-weight:700;font-style:italic}:root{--primary-color: #2563eb;--primary-hover: #1d4ed8;--secondary-color: #64748b;--background: #f8fafc;--surface: #ffffff;--text-primary: #0f172a;--text-secondary: #475569;--border: #e2e8f0;--error: #dc2626;--success: #16a34a;--shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1)}*{margin:0;padding:0;box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background);color:var(--text-primary)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
