@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";.app-container[data-v-2a29670d]{min-height:100vh;width:100%;background:var(--bg-primary);position:relative}.app-layout[data-v-2a29670d]{display:flex;min-height:100vh;width:100%}.sidebar[data-v-2a29670d]{width:260px;background:var(--bg-secondary);border-right:1px solid var(--border-primary);display:flex;flex-direction:column;max-height:100vh;overflow-y:auto;position:relative;z-index:0}.sidebar-header[data-v-2a29670d]{padding:1.5rem 1rem;border-bottom:1px solid var(--border-primary);display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:.75rem;background:var(--bg-tertiary)}.header-buttons[data-v-2a29670d]{display:flex;align-items:center;gap:.5rem}.sidebar-header h2[data-v-2a29670d]{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0;display:flex;align-items:center;justify-content:center}.brand-link[data-v-2a29670d]{color:inherit;text-decoration:none}.brand-link[data-v-2a29670d]:hover{text-decoration:underline}.new-chat-btn[data-v-2a29670d]{padding:0 .8rem;background:var(--accent-gradient);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s;height:32px;display:inline-flex;align-items:center}.new-chat-btn[data-v-2a29670d]:hover{transform:scale(1.05);box-shadow:0 2px 8px #8b5cf64d}.theme-toggle-small[data-v-2a29670d]{width:32px;height:32px;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;transition:all .2s ease;color:var(--text-primary)}.theme-toggle-small[data-v-2a29670d]:hover{background:var(--accent-primary);color:#fff;transform:scale(1.05);box-shadow:0 2px 8px #8b5cf64d}.theme-toggle-small .theme-icon[data-v-2a29670d]{filter:drop-shadow(0 1px 2px var(--shadow));transition:all .2s ease}.theme-toggle-small:hover .theme-icon[data-v-2a29670d]{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));transform:rotate(15deg)}.prompt-btn[data-v-2a29670d]{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-primary);border-radius:6px;text-decoration:none;color:var(--text-primary);background:var(--bg-primary);transition:all .2s ease}.prompt-btn[data-v-2a29670d]:hover{background:var(--accent-primary);color:#fff;transform:scale(1.05);box-shadow:0 2px 8px #8b5cf64d}.chat-list[data-v-2a29670d]{flex:1;overflow-y:auto;padding:.5rem}.chat-item[data-v-2a29670d]{display:flex;align-items:center;padding:.8rem;margin-bottom:.25rem;border-radius:8px;transition:all .2s;border:1px solid transparent;position:relative}.chat-item[data-v-2a29670d]:hover{background:var(--bg-tertiary);border-color:var(--border-primary)}.chat-item:hover .delete-chat-btn[data-v-2a29670d]{opacity:1}.chat-item.active[data-v-2a29670d]{background:var(--accent-gradient);color:#fff}.chat-item.active .chat-date[data-v-2a29670d]{color:#fffc}.chat-content[data-v-2a29670d]{flex:1;cursor:pointer;min-width:0}.delete-chat-btn[data-v-2a29670d]{opacity:0;background:transparent;border:none;color:var(--text-tertiary);font-size:1.2rem;width:24px;height:24px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;margin-left:.5rem}.delete-chat-btn[data-v-2a29670d]:hover{background:#ef44441a;color:#ef4444;transform:scale(1.1)}.chat-item.active .delete-chat-btn[data-v-2a29670d]{color:#ffffffb3}.chat-item.active .delete-chat-btn[data-v-2a29670d]:hover{background:#ef444433;color:#fca5a5}.chat-title[data-v-2a29670d]{font-size:.9rem;font-weight:500;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-date[data-v-2a29670d]{font-size:.75rem;color:var(--text-tertiary)}.empty-sidebar[data-v-2a29670d]{padding:2rem 1rem;text-align:center;color:var(--text-secondary)}.empty-sidebar p[data-v-2a29670d]{margin-bottom:1rem}.sidebar-footer[data-v-2a29670d]{padding:1rem;border-top:1px solid var(--border-primary);margin-top:auto}.clear-all-btn[data-v-2a29670d]{width:100%;padding:.75rem 1rem;background:transparent;color:var(--text-tertiary);border:1px solid var(--border-primary);border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.clear-all-btn[data-v-2a29670d]:hover{background:var(--bg-primary);color:#ef4444;border-color:#ef4444;transform:translateY(-1px);box-shadow:0 2px 8px #ef444433}.clear-all-btn[data-v-2a29670d]:active{transform:translateY(0)}.main-content[data-v-2a29670d]{flex:1;display:flex;justify-content:center;align-items:flex-start;padding:0!important;background:var(--bg-primary);position:relative;z-index:1;min-width:0;min-height:0;height:100vh;overflow-y:auto}.main-content[data-v-2a29670d]>*{width:100%;max-width:none;height:100%;background:transparent;border-radius:0;box-shadow:none;border:none;overflow:visible}.main-content.scrollable[data-v-2a29670d]{overflow-y:auto;height:100vh}.main-content.scrollable[data-v-2a29670d]>*{height:auto}@media (max-width: 768px){.sidebar[data-v-2a29670d]{display:none}.main-content[data-v-2a29670d]{padding:0}.main-content[data-v-2a29670d]>*{max-width:100%;height:100vh;border-radius:0}}.chat-view[data-v-4ce82f14]{display:flex;flex-direction:column;height:100%;max-width:100%;margin:0 auto;min-height:0}.chat-header[data-v-4ce82f14]{padding:1rem 1.5rem;border-bottom:1px solid var(--border-primary);background:var(--bg-tertiary);display:flex;justify-content:space-between;align-items:center}.chat-header h3[data-v-4ce82f14]{margin:0;color:var(--text-primary);font-size:1.1rem;font-weight:600}.chat-actions[data-v-4ce82f14]{display:flex;gap:.5rem;align-items:center}.model-select[data-v-4ce82f14]{padding:.35rem .6rem;border:1px solid var(--border-primary);border-radius:6px;background:var(--bg-primary);color:var(--text-primary)}.sr-only[data-v-4ce82f14]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.action-btn[data-v-4ce82f14]{padding:.4rem .8rem;background:transparent;color:var(--text-secondary);border:1px solid var(--border-primary);border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s}.action-btn[data-v-4ce82f14]:hover{background:var(--bg-primary);color:var(--text-primary);border-color:var(--accent-primary)}.messages-container[data-v-4ce82f14]{flex:1;overflow-y:auto;padding:1.25rem 1rem 6rem 0;background:var(--bg-primary);width:100%;box-sizing:border-box;scroll-behavior:smooth;min-height:0}.chat-inner[data-v-4ce82f14]{width:900px;max-width:100%;flex:1;height:auto;min-height:0;display:flex;flex-direction:column;margin:0 auto}.messages-container.dragging[data-v-4ce82f14]{outline:2px dashed var(--accent-primary);outline-offset:-6px;background:#8b5cf60d;position:relative}.messages-container.dragging[data-v-4ce82f14]:after{content:"📁 Drop images here to attach them";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--bg-secondary);padding:2rem;border-radius:12px;border:2px dashed var(--accent-primary);color:var(--accent-primary);font-weight:600;pointer-events:none;z-index:10}.welcome-message[data-v-4ce82f14]{text-align:center;padding:6rem 2rem;color:var(--text-secondary)}.welcome-message h2[data-v-4ce82f14]{color:var(--text-primary);margin-bottom:.5rem;font-size:1.5rem}.welcome-message p[data-v-4ce82f14]{font-size:1rem;margin:0}.message[data-v-4ce82f14]{margin-bottom:2.5rem;display:flex}.message.user-message[data-v-4ce82f14]{justify-content:flex-end}.message.bot-message[data-v-4ce82f14]{justify-content:flex-start}.message-content[data-v-4ce82f14]{max-width:80%}.user-content[data-v-4ce82f14]{background:var(--accent-gradient);color:#fff;padding:.8rem 1.2rem;border-radius:16px 16px 4px;box-shadow:0 2px 8px #8b5cf626}.bot-content[data-v-4ce82f14]{background:var(--bg-secondary);color:var(--text-primary);padding:.8rem 1.2rem;border-radius:16px 16px 16px 4px;border:1px solid var(--border-primary)}.message-images[data-v-4ce82f14]{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.6rem}.message-image[data-v-4ce82f14]{max-width:200px;max-height:200px;border-radius:10px;cursor:pointer;transition:transform .2s}.message-image[data-v-4ce82f14]:hover{transform:scale(1.05)}.image-container[data-v-4ce82f14]{position:relative;display:inline-block}.image-loading[data-v-4ce82f14]{position:relative;width:200px;height:200px;border-radius:10px;overflow:hidden}.image-placeholder[data-v-4ce82f14]{width:100%;height:100%;background:linear-gradient(-45deg,var(--bg-tertiary),var(--bg-secondary),var(--bg-tertiary),var(--bg-secondary));background-size:400% 400%;animation:shimmer-4ce82f14 2s ease-in-out infinite}.image-loading-spinner[data-v-4ce82f14]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:24px;animation:pulse 2s ease-in-out infinite}.image-loading-spinner[data-v-4ce82f14]:before{content:"🎨";display:block}@keyframes shimmer-4ce82f14{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.bw-loading[data-v-4ce82f14]{filter:grayscale(100%) blur(1px);transition:filter .5s ease}.message-image[data-v-4ce82f14]{transition:filter .5s ease}.message-text[data-v-4ce82f14]{line-height:1.6;word-break:break-word}.streaming-text[data-v-4ce82f14]{position:relative;animation:fadeIn-4ce82f14 .3s ease-in}.cursor[data-v-4ce82f14]{animation:blink-4ce82f14 .8s infinite;color:var(--accent-primary);font-weight:700;margin-left:2px;font-size:1.1em}@keyframes blink-4ce82f14{0%,45%{opacity:1}46%,to{opacity:.2}}@keyframes fadeIn-4ce82f14{0%{opacity:0}to{opacity:1}}.loading-indicator[data-v-4ce82f14]{display:flex;align-items:center;padding:1rem;gap:.5rem;background:#8b5cf60d;border-radius:.5rem;margin:.5rem 0}.loading-indicator[data-v-4ce82f14]:before{content:"Thinking...";color:#8b5cf6;font-size:.95rem;font-weight:500;margin-right:.5rem}.spinner[data-v-4ce82f14]{width:24px;height:24px;border:3px solid rgba(139,92,246,.2);border-top-color:#8b5cf6;border-radius:50%;animation:spin-4ce82f14 .6s linear infinite}@keyframes spin-4ce82f14{to{transform:rotate(360deg)}}.message-images .image-container[data-v-4ce82f14]:not(:last-child){margin-right:.6rem}.image-modal[data-v-4ce82f14]{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;cursor:pointer}.modal-image[data-v-4ce82f14]{max-width:90%;max-height:90%;border-radius:8px}.input-area[data-v-4ce82f14]{padding:.75rem 1rem;background:var(--bg-secondary);border-top:1px solid var(--border-primary);transition:all .2s ease;position:sticky;bottom:0;z-index:10}.input-row[data-v-4ce82f14]{display:grid;grid-template-columns:1fr;gap:.75rem;align-items:center}.input-area.dragging[data-v-4ce82f14]{background:#8b5cf61a;border-top-color:var(--accent-primary);border-radius:8px 8px 0 0}.input-area.dragging[data-v-4ce82f14]:after{content:"📎 Drop images here to attach them";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--accent-primary);color:#fff;padding:.5rem 1rem;border-radius:8px;font-size:.9rem;font-weight:500;pointer-events:none;z-index:10;box-shadow:0 2px 8px #8b5cf64d}.pending-attachments[data-v-4ce82f14]{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem}.attachment[data-v-4ce82f14]{position:relative;width:56px;height:56px;border:1px solid var(--border-primary);border-radius:8px;overflow:hidden;background:var(--bg-primary)}.attachment-thumb[data-v-4ce82f14]{width:100%;height:100%;object-fit:cover}.remove-attachment[data-v-4ce82f14]{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;border:none;cursor:pointer;background:#0009;color:#fff;line-height:18px;padding:0}.message-input[data-v-4ce82f14]{flex:1;padding:.9rem 1rem;border:1px solid var(--border-primary);background:var(--bg-primary);color:var(--text-primary);border-radius:12px;resize:none;font-family:inherit;font-size:1rem;line-height:1.5;min-height:46px;max-height:140px;transition:border-color .2s,background-color .2s}.message-input[data-v-4ce82f14]:focus{outline:none;border-color:var(--accent-primary)}.input-container[data-v-4ce82f14]{display:flex;gap:.75rem;align-items:center}.input-with-upload[data-v-4ce82f14]{display:flex;align-items:flex-end;gap:.5rem;flex:1}.file-input[data-v-4ce82f14]{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.upload-btn[data-v-4ce82f14]{background:transparent;border:1px solid var(--border-primary);color:var(--text-secondary);padding:.75rem;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:1rem;display:flex;align-items:center;justify-content:center;min-width:44px;height:44px}.upload-btn[data-v-4ce82f14]:hover:not(:disabled){background:var(--bg-primary);border-color:var(--accent-primary);color:var(--accent-primary)}.upload-btn[data-v-4ce82f14]:disabled{opacity:.5;cursor:not-allowed}.send-btn[data-v-4ce82f14]{padding:.75rem 1.5rem;background:var(--accent-gradient);color:#fff;border:none;border-radius:10px;cursor:pointer;font-weight:600;transition:all .2s;box-shadow:0 2px 8px #8b5cf64d}.send-btn[data-v-4ce82f14]:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #8b5cf666}.send-btn[data-v-4ce82f14]:disabled{background:linear-gradient(135deg,#e5e7eb,#d1d5db);color:#6b7280;cursor:not-allowed;box-shadow:none;opacity:1;border:1px solid #e5e7eb}@media (max-width: 768px){.message-content[data-v-4ce82f14]{max-width:85%}.chat-inner[data-v-4ce82f14]{width:100%;max-width:100%;margin-left:0;margin-right:0}}:root{--bg-primary: #ffffff;--bg-secondary: #f3f4f6;--bg-tertiary: #e5e7eb;--text-primary: #111827;--text-secondary: #4b5563;--text-tertiary: #6b7280;--border-primary: #d1d5db;--border-secondary: #e5e7eb;--shadow: rgba(0, 0, 0, .1);--shadow-dark: rgba(0, 0, 0, .15);--accent-primary: #7c3aed;--accent-secondary: #3b82f6;--accent-gradient: linear-gradient(135deg, #7c3aed 0%, #3b82f6 100%)}[data-theme=dark]{--bg-primary: #000000;--bg-secondary: #0a0a0a;--bg-tertiary: #1a1a1a;--text-primary: #e5e7eb;--text-secondary: #9ca3af;--text-tertiary: #6b7280;--border-primary: #2a2a2a;--border-secondary: #1a1a1a;--shadow: rgba(0, 0, 0, .5);--shadow-dark: rgba(0, 0, 0, .7)}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;transition:background-color .3s ease,color .3s ease}#app{height:100vh;overflow:hidden;display:flex;justify-content:center;align-items:center;background:var(--bg-primary)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.btn{display:inline-block;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;text-align:center;font-family:inherit}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--shadow-dark)}.btn:active{transform:translateY(0)}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 2px 8px #8b5cf64d}.btn-primary:hover{background:linear-gradient(135deg,#6d28d9,#2563eb);box-shadow:0 4px 16px #7c3aed66}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-primary)}.btn-secondary:hover{background:var(--border-primary);border-color:var(--border-secondary)}.btn-danger{background:#ef4444;color:#fff;box-shadow:0 2px 8px #ef44444d}.btn-danger:hover{background:#dc2626;box-shadow:0 4px 16px #ef444466}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading{animation:pulse 1.5s infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease-out}.card{background:var(--bg-secondary);border-radius:12px;box-shadow:0 4px 6px var(--shadow);padding:1.5rem;margin-bottom:1rem;border:1px solid var(--border-primary)}.form-input{width:100%;padding:.75rem;border:2px solid var(--border-primary);border-radius:8px;font-size:1rem;transition:border-color .2s ease;background:var(--bg-secondary);color:var(--text-primary);font-family:inherit}.form-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf61a}.slide-up{transform:translateY(20px);opacity:0;animation:slideUp .3s ease-out forwards}@keyframes slideUp{to{transform:translateY(0);opacity:1}}.btn:focus,.form-input:focus,textarea:focus{outline:2px solid var(--accent-primary);outline-offset:2px}@media (max-width: 768px){.theme-toggle{width:40px;height:40px;font-size:1.2rem}}
