:root{--bg:#121212;--bg-elevated:#1a1a1a;--surface:#1e1e1e;--surface-border:#2a2a2a;--accent:#39ff14;--accent-dim:#39ff1426;--accent-glow:#39ff1473;--user-bubble:#39ff14;--user-text:#0a0a0a;--text-primary:#e8e8e8;--text-secondary:#888;--text-muted:#555;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-pill:999px;--transition:.2s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}body{color:var(--text-primary);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.6;overflow:hidden}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--surface-border);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.app-shell{flex-direction:column;max-width:720px;height:100%;margin:0 auto;display:flex;position:relative}.app-header{z-index:100;-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--surface-border);background:#121212b3;justify-content:center;align-items:center;gap:10px;padding:18px 24px;display:flex;position:sticky;top:0}.app-header__title{letter-spacing:-.5px;background:linear-gradient(135deg, var(--accent), #a0ffb0);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.65rem;font-weight:800}.app-header__emoji{-webkit-text-fill-color:initial;font-size:1.5rem}.chat-area{scroll-behavior:smooth;flex-direction:column;flex:1;gap:20px;padding:24px 16px;display:flex;overflow-y:auto}.empty-state{text-align:center;opacity:.7;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.empty-state__icon{font-size:3.5rem;animation:2.5s ease-in-out infinite pulse-icon}.empty-state__text{color:var(--text-secondary);font-size:1.1rem;font-weight:500}.empty-state__hint{color:var(--text-muted);font-size:.85rem}@keyframes pulse-icon{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.bubble-wrapper{max-width:78%;animation:bubble-in .3s var(--transition) both;flex-direction:column;display:flex}.bubble-wrapper.user{align-self:flex-end;align-items:flex-end}.bubble-wrapper.assistant{align-self:flex-start;align-items:flex-start}.bubble-label{text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);margin-bottom:5px;font-size:.7rem;font-weight:600}.bubble{word-wrap:break-word;white-space:pre-wrap;padding:14px 18px;font-size:.935rem;line-height:1.6}.bubble.user{background:var(--user-bubble);color:var(--user-text);border-radius:var(--radius-lg) var(--radius-lg) 6px var(--radius-lg);font-weight:500}.bubble.assistant{background:var(--surface);color:var(--text-primary);border:1px solid var(--surface-border);border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) 6px}@keyframes bubble-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.typing-indicator{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) 6px;animation:bubble-in .3s var(--transition) both;align-self:flex-start;align-items:center;gap:5px;padding:14px 20px;display:flex}.typing-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite typing-bounce}.typing-dot:nth-child(2){animation-delay:.15s}.typing-dot:nth-child(3){animation-delay:.3s}@keyframes typing-bounce{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}.input-section{background:linear-gradient(to top, var(--bg) 70%, transparent);padding:12px 16px 20px}.suggestion-chips{flex-wrap:wrap;gap:8px;margin-bottom:12px;padding:0 4px;display:flex}.chip{color:var(--accent);border:1.5px solid var(--accent-dim);border-radius:var(--radius-pill);cursor:pointer;transition:all var(--transition);white-space:nowrap;background:0 0;padding:7px 16px;font-family:Inter,sans-serif;font-size:.8rem;font-weight:500}.chip:hover{background:var(--accent-dim);border-color:var(--accent);transform:translateY(-1px)}.chip:active{transform:translateY(0)scale(.97)}.input-bar{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius-pill);transition:border-color var(--transition);align-items:center;gap:10px;padding:6px 6px 6px 20px;display:flex}.input-bar:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.input-field{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;padding:10px 0;font-family:Inter,sans-serif;font-size:.94rem;line-height:1.5}.input-field::placeholder{color:var(--text-muted)}.send-btn{background:var(--accent);width:44px;height:44px;color:var(--user-text);cursor:pointer;transition:all var(--transition);box-shadow:0 0 14px var(--accent-glow), 0 0 30px #39ff1426;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.send-btn:hover:not(:disabled){box-shadow:0 0 20px var(--accent-glow), 0 0 50px #39ff1433;transform:scale(1.08)}.send-btn:active:not(:disabled){transform:scale(.95)}.send-btn:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.send-icon{width:20px;height:20px;fill:var(--user-text);margin-left:2px;transform:rotate(-45deg)}@media (width<=480px){.app-header__title{font-size:1.3rem}.bubble-wrapper{max-width:88%}.chat-area{gap:16px;padding:16px 10px}}
