.app{display:flex;flex-direction:column;height:100vh;max-width:900px;margin:0 auto;background:var(--bg-panel);box-shadow:0 0 0 1px var(--border-subtle)}.chat-header{display:flex;align-items:center;gap:14px;padding:12px 16px;background:var(--bg-bubble-agent);border-bottom:1px solid var(--border-subtle);flex-shrink:0}.chat-header-avatar{width:44px;height:44px;border-radius:50%;background:var(--accent);color:#fff;font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center}.chat-header-info{flex:1;min-width:0}.chat-header-title{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary)}.chat-header-subtitle{margin:2px 0 0;font-size:.8rem;color:var(--text-secondary)}.chat-panel{flex:1;display:flex;flex-direction:column;min-height:0;background:var(--bg-app);background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23202c33' fill-opacity='0.4'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.messages-wrap{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:6px}.welcome{margin:auto 0;text-align:center;color:var(--text-secondary);font-size:.95rem;line-height:1.5;padding:24px}.welcome p{margin:0 0 8px}.bubble-wrap{display:flex;width:100%}.bubble-wrap-user{justify-content:flex-end}.bubble-wrap-agent{justify-content:flex-start}.bubble{max-width:75%;padding:8px 12px;border-radius:var(--radius);box-shadow:var(--shadow);word-wrap:break-word}.bubble-user{background:var(--bg-bubble-user);color:#fff;border-top-right-radius:2px}.bubble-agent{background:var(--bg-bubble-agent);color:var(--text-primary);border-top-left-radius:2px}.bubble-text{white-space:pre-wrap;line-height:1.4;font-size:.95rem}.bubble-time{display:block;font-size:.7rem;color:var(--text-secondary);margin-top:4px;text-align:right}.bubble-user .bubble-time{color:#ffffffbf}.bubble-typing{display:flex;align-items:center;gap:4px;padding:12px 16px}.typing-dot{width:6px;height:6px;border-radius:50%;background:var(--text-secondary);animation:typing 1.2s ease-in-out infinite}.typing-dot:nth-child(2){animation-delay:.15s}.typing-dot:nth-child(3){animation-delay:.3s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.6}30%{transform:translateY(-4px);opacity:1}}.error-bar{flex-shrink:0;padding:6px 16px;background:#dc354526;color:#f87171;font-size:.85rem}.input-wrap{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--bg-bubble-agent);border-top:1px solid var(--border-subtle);flex-shrink:0}.input-field{flex:1;padding:12px 16px;border:none;border-radius:24px;background:var(--bg-panel);color:var(--text-primary);font-size:.95rem;outline:none}.input-field::placeholder{color:var(--text-secondary)}.input-field:focus{box-shadow:0 0 0 1px var(--accent)}.send-btn{width:48px;height:48px;border:none;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;transition:opacity .15s,transform .1s}.send-btn:hover:not(:disabled){opacity:.95;transform:scale(1.02)}.send-btn:disabled{opacity:.5;cursor:not-allowed}.send-btn:after{content:"";width:0;height:0;border:8px solid transparent;border-left-color:currentColor;border-right:0;margin-left:4px}@media (max-width: 600px){.app{max-width:100%}.bubble{max-width:88%}}*,*:before,*:after{box-sizing:border-box}:root{--bg-app: #0b141a;--bg-panel: #111b21;--bg-bubble-user: #005c4b;--bg-bubble-agent: #202c33;--text-primary: #e9edef;--text-secondary: #8696a0;--border-subtle: #2a3942;--accent: #00a884;--radius: 8px;--shadow: 0 1px 2px rgba(0, 0, 0, .2)}html{font-size:16px;-webkit-font-smoothing:antialiased}body{margin:0;font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-app);color:var(--text-primary);min-height:100vh;overflow:hidden}#root{min-height:100vh;display:flex;flex-direction:column}button{font-family:inherit;cursor:pointer}input,textarea{font-family:inherit}
