@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap");:root{--bg-dark:#08080c;--bg-card:rgba(18,18,24,0.75);--bg-card-border:rgba(255,255,255,0.08);--primary:#00ff66;--primary-hover:#00dd55;--primary-glow:rgba(0,255,102,0.15);--text-primary:#ffffff;--text-secondary:#a0a0b0;--text-muted:#62627a;--user-bubble-bg:#1f1f2e;--bot-bubble-bg:rgba(0,255,102,0.06);--bot-bubble-border:rgba(0,255,102,0.12);--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-display:"Outfit",sans-serif;--transition-smooth:all 0.3s cubic-bezier(0.4,0,0.2,1);--glass-blur:blur(16px)}*{box-sizing:border-box;margin:0;padding:0}body,html{overflow:hidden;height:100%}body{background-color:var(--bg-dark);color:var(--text-primary);font-family:var(--font-sans);height:100dvh;display:flex;flex-direction:column}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--primary)}.app-container{display:flex;flex-direction:column;height:100%;height:100dvh;width:100%;max-width:1200px;margin:0 auto;position:relative;overflow:hidden;background-color:var(--bg-dark)}.bg-glow-top{position:absolute;top:-10%;left:50%;transform:translateX(-50%);width:80%;height:40%;background:radial-gradient(circle,rgba(0,255,102,.08) 0,rgba(8,8,12,0) 70%);pointer-events:none;z-index:0}.app-header{justify-content:space-between;padding:1rem 1.25rem;background:var(--bg-card);backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--bg-card-border);z-index:10}.app-header,.brand{display:flex;align-items:center}.brand{gap:.75rem}.brand-logo{font-family:var(--font-display);font-weight:800;font-size:1.75rem;letter-spacing:-.05em;color:var(--text-primary);text-transform:uppercase}.brand-logo span{color:var(--primary)}.clear-session-btn{background:transparent;border:1px solid var(--bg-card-border);color:var(--text-secondary);padding:.4rem .8rem;border-radius:8px;font-size:.8rem;cursor:pointer;transition:var(--transition-smooth)}.clear-session-btn:hover{border-color:rgba(255,87,87,.4);color:#ff8888}.status-badge{display:flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.05);border:1px solid var(--bg-card-border);padding:.35rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500}.status-dot{width:8px;height:8px;background-color:var(--primary);border-radius:50%;box-shadow:0 0 8px var(--primary);animation:pulse-glow 2s infinite}.status-badge.escalated{border-color:rgba(255,152,0,.3);color:#ff9800;background:rgba(255,152,0,.05)}.status-badge.escalated .status-dot{background-color:#ff9800;box-shadow:0 0 8px #ff9800}.chat-main{overflow:hidden;position:relative;z-index:5}.chat-main,.chat-messages-container{flex:1;display:flex;flex-direction:column}.chat-messages-container{overflow-y:auto;padding:2rem;gap:1.5rem}.message-row{display:flex;width:100%}.message-row.user{justify-content:flex-end}.message-row.assistant{justify-content:flex-start}.bubble-avatar{width:32px;height:32px;border-radius:50%;overflow:hidden;margin-right:.5rem;margin-top:auto;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.03);flex-shrink:0}.bubble-avatar img{width:100%;height:100%;object-fit:contain;padding:4px;filter:invert(1);mix-blend-mode:screen}.message-bubble{max-width:75%;padding:1rem 1.25rem;border-radius:16px;font-size:.95rem;line-height:1.5;letter-spacing:-.01em;position:relative;animation:slide-up .3s cubic-bezier(.16,1,.3,1) both}.message-row.user .message-bubble{background-color:var(--user-bubble-bg);color:var(--text-primary);border-bottom-right-radius:4px;border:1px solid rgba(255,255,255,.05)}.message-row.assistant .message-bubble{background-color:var(--bot-bubble-bg);color:var(--text-primary);border-bottom-left-radius:4px;border:1px solid var(--bot-bubble-border)}.message-meta{font-size:.7rem;color:var(--text-muted);margin-top:.5rem;display:block;text-align:right}.message-row.assistant .message-meta{text-align:left}.suggestions-container{display:flex;gap:.5rem;padding:.5rem 2rem 1.25rem;overflow-x:auto;scrollbar-width:none;z-index:10}.suggestions-container::-webkit-scrollbar{display:none}.suggestion-chip{flex-shrink:0;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);padding:.5rem 1.1rem;border-radius:20px;color:var(--text-secondary);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;outline:none}.suggestion-chip:focus,.suggestion-chip:hover{background:rgba(0,255,102,.04);border-color:var(--primary);color:var(--text-primary);box-shadow:0 0 12px rgba(0,255,102,.15);transform:translateY(-1px);outline:none}.chat-input-bar{padding:1.5rem 2rem;background:rgba(8,8,12,.85);backdrop-filter:var(--glass-blur);border-top:1px solid var(--bg-card-border);gap:.75rem;z-index:10}.chat-input-bar,.input-wrapper{display:flex;align-items:center}.input-wrapper{flex:1;position:relative;background:rgba(255,255,255,.03);border:1px solid var(--bg-card-border);border-radius:14px;transition:var(--transition-smooth)}.input-wrapper:focus-within{border-color:var(--primary);box-shadow:0 0 12px var(--primary-glow);background:rgba(255,255,255,.05)}.chat-input{width:100%;background:transparent;border:none;outline:none;padding:1rem 1.25rem;color:var(--text-primary);font-size:.95rem;font-family:var(--font-sans)}.send-button{background:var(--primary);border:none;outline:none;width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#000000;cursor:pointer;transition:var(--transition-smooth);margin-right:.5rem}.send-button:hover{background:var(--primary-hover);transform:scale(1.03)}.send-button:disabled{background:var(--text-muted);cursor:not-allowed;transform:none}.typing-indicator{display:flex;gap:.35rem;align-items:center;padding:.25rem .5rem}.typing-dot{width:6px;height:6px;background-color:var(--text-muted);border-radius:50%;animation:typing-bounce 1.4s ease-in-out infinite both}.typing-dot:first-child{animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}@keyframes pulse-glow{0%{box-shadow:0 0 0 0 rgba(0,255,102,.7)}70%{box-shadow:0 0 0 10px rgba(0,255,102,0)}to{box-shadow:0 0 0 0 rgba(0,255,102,0)}}@keyframes typing-bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.message-bubble ol,.message-bubble ul{margin-left:1.25rem;margin-top:.5rem;margin-bottom:.5rem}.message-bubble li{margin-bottom:.25rem}.message-bubble strong{color:var(--primary);font-weight:600}.message-bubble p{margin-bottom:.5rem}.message-bubble p:last-child{margin-bottom:0}.escalation-alert{background:rgba(255,87,87,.1);border:1px solid rgba(255,87,87,.2);color:#ff8888;padding:.75rem 1rem;border-radius:12px;font-size:.85rem;margin-top:.5rem;display:flex;align-items:center;gap:.5rem}.escalation-alert-wrapper{padding:.5rem 2rem 0}@media (max-width:768px){.app-header{padding:1rem}.chat-messages-container{padding:1rem;gap:1rem}.message-bubble{max-width:88%}.chat-input-bar{padding:1rem}.escalation-alert-wrapper{padding:.5rem 1rem 0}}.light-theme{--bg-dark:#ffffff;--bg-card:#ffffff;--bg-card-border:#e2e8f0;--primary:#0A8A44;--primary-hover:#086b35;--primary-glow:rgba(10,138,68,0.08);--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--user-bubble-bg:#0A8A44;--bot-bubble-bg:#f1f5f9;--bot-bubble-border:transparent}.light-theme .app-header{border-bottom:1px solid rgba(255,255,255,.15);background:#0A8A44;box-shadow:0 2px 8px rgba(10,138,68,.15)}.light-theme .app-header h1{color:#ffffff}.light-theme .app-header .status-dot{background-color:#ffffff;box-shadow:0 0 8px #ffffff}.light-theme .app-header .status-badge{color:#ffffff;border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.12)}.light-theme .chat-input-bar{border-top:1px solid rgba(10,138,68,.15);background:#0A8A44;box-shadow:0 -2px 8px rgba(10,138,68,.1)}.light-theme .input-wrapper{background:#ffffff!important;border:1px solid #e2e8f0!important}.light-theme .input-wrapper:focus-within{border-color:#ffffff!important;box-shadow:0 0 0 3px rgba(255,255,255,.3)!important}.light-theme .chat-input{background:transparent!important;color:#0f172a!important;border:none!important}.light-theme .chat-input::placeholder{color:#94a3b8!important}.light-theme .chat-input:focus{border:none!important}.light-theme .chat-input:focus,.light-theme .send-button{background:transparent!important;box-shadow:none!important}.light-theme .send-button{color:#0A8A44!important}.light-theme .send-button:disabled{background:transparent!important;color:#cbd5e1!important;cursor:not-allowed}.light-theme .send-button:hover:not(:disabled){background:transparent!important;transform:scale(1.1)}.light-theme .suggestion-chip{background:#ffffff;border:1px solid #e2e8f0;color:#475569}.light-theme .suggestion-chip:hover{background:rgba(10,138,68,.05);border-color:#0A8A44;color:#0A8A44}.light-theme .message-row.user .message-bubble{color:#ffffff!important}.light-theme .message-row.assistant .message-bubble{color:#0f172a!important;border:none!important}.light-theme .bubble-avatar img{filter:none}.light-theme .clear-session-btn{border:1px solid rgba(255,255,255,.35);color:#ffffff;background:rgba(255,255,255,.1)}.light-theme .clear-session-btn:hover{background:#dc2626;border-color:#f87171;color:#ffffff}.light-theme .message-meta{color:#94a3b8}.light-theme .app-header .status-dot{background-color:#10b981}.light-theme .app-header h1{color:#0f172a}.light-theme .bg-glow-top{background:radial-gradient(circle,rgba(10,138,68,.04) 0,rgba(255,255,255,0) 70%)}.mobile-layout .app-header{padding-right:64px!important;padding-left:1rem!important}.light-theme .app-header .status-badge.escalated{color:#ffffff;border-color:rgba(255,255,255,.4);background:#f97316!important;box-shadow:0 0 10px rgba(249,115,22,.3)}.light-theme .app-header .status-badge.escalated .status-dot{background-color:#ffffff!important;box-shadow:0 0 8px #ffffff!important}