@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--bg-color:#0b0f19;--panel-bg:#111928a6;--border-color:#ffffff14;--border-glow:#6366f126;--primary:#6366f1;--primary-glow:#6366f159;--secondary:#ec4899;--secondary-glow:#ec489959;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--text-muted:#6b7280;--success:#10b981;--error:#ef4444;--warning:#f59e0b}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);background-image:radial-gradient(at 10% 20%,#6366f126 0,#0000 50%),radial-gradient(at 90% 80%,#ec48991a 0,#0000 50%);background-attachment:fixed;width:100vw;height:100vh;font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden}#root{justify-content:center;align-items:center;width:100vw;height:100vh;padding:1.5rem;display:flex}.app-container{background:var(--panel-bg);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:24px;flex-direction:column;width:100%;max-width:900px;height:85vh;max-height:800px;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 50px #0000004d}@media (width<=868px){.app-container{height:95vh;max-height:900px}}.main-chat{flex-direction:column;height:100%;display:flex;position:relative;overflow:hidden}.chat-header{border-bottom:1px solid var(--border-color);z-index:10;background:#0a0f1e66;justify-content:space-between;align-items:center;min-height:58px;padding:.75rem 1.5rem;display:flex}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#ffffff05}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff40}h1{background:linear-gradient(135deg, var(--text-primary) 30%, #a5b4fc 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.35rem;font-weight:700}h2{text-transform:uppercase;letter-spacing:.075em;color:var(--text-secondary);margin-bottom:1rem;font-size:.85rem;font-weight:600}.form-group{margin-bottom:1.25rem}.form-group label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.8rem;font-weight:500;display:block}.form-input,.form-textarea{border:1px solid var(--border-color);width:100%;color:var(--text-primary);background:#ffffff08;border-radius:12px;outline:none;padding:.75rem;font-family:inherit;font-size:.9rem;transition:all .2s}.form-input:focus,.form-textarea:focus{border-color:var(--primary);box-shadow:0 0 12px var(--border-glow);background:#ffffff0d}.form-textarea{resize:none;height:120px}.settings-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.settings-btn:hover{color:var(--text-primary);border-color:var(--border-color);background:#ffffff0d}.settings-drawer-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;animation:.2s ease-out fadeIn;position:fixed;inset:0}.settings-drawer{-webkit-backdrop-filter:blur(25px);border-left:1px solid var(--border-color);background:#0d1321f2;flex-direction:column;width:380px;animation:.3s cubic-bezier(.16,1,.3,1) slideInRight;display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-10px 0 30px #00000080}@media (width<=480px){.settings-drawer{width:100%}}.drawer-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.close-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;transition:color .2s}.close-btn:hover{color:var(--text-primary)}.drawer-content{flex:1;padding:1.5rem;overflow-y:auto}.drawer-divider{background:var(--border-color);border:0;height:1px;margin:1.5rem 0}.drawer-footer{border-top:1px solid var(--border-color);background:#0a0f1e66;padding:1.25rem 1.5rem}.pipeline-info{border:1px solid var(--border-color);background:#ffffff05;border-radius:12px;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.pipeline-item{flex-direction:column;gap:.25rem;display:flex}.pipeline-label{color:var(--text-muted);text-transform:uppercase;font-size:.7rem;font-weight:600}.pipeline-value{color:var(--text-primary);font-size:.85rem;font-weight:500}.pipeline-model{color:var(--text-secondary);margin-left:.25rem;font-size:.75rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.spin{animation:2s linear infinite spinner}@keyframes spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.chat-feed-container{flex-direction:column;flex:1;gap:1rem;padding:1.5rem;display:flex;overflow-y:auto}.message-bubble{border-radius:18px;max-width:75%;padding:1rem 1.25rem;font-size:.95rem;line-height:1.5;animation:.3s ease-out slideIn;position:relative}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-user{background:linear-gradient(135deg, var(--primary) 0%, #4f46e5 100%);color:#fff;border-bottom-right-radius:4px;align-self:flex-end;box-shadow:0 4px 15px #6366f126}.message-agent{border:1px solid var(--border-color);color:var(--text-primary);background:#ffffff0d;border-bottom-left-radius:4px;align-self:flex-start}.message-interim{color:var(--text-secondary);background:0 0;border:1px dashed #6366f166;align-self:flex-end;font-style:italic}.message-header{text-transform:uppercase;letter-spacing:.05em;opacity:.8;margin-bottom:.25rem;font-size:.75rem;font-weight:600}.message-user .message-header{color:#c7d2fe}.message-agent .message-header{color:var(--secondary)}.control-bar{border-top:1px solid var(--border-color);background:#0a0f1e66;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem;display:flex}.visualizer-container{border:1px solid var(--border-color);background:#ffffff08;border-radius:9999px;justify-content:center;align-items:center;gap:.5rem;padding:.35rem .75rem;display:flex}.status-indicator{border-radius:50%;width:8px;height:8px;display:inline-block;position:relative}.status-indicator.idle{background-color:var(--text-muted)}.status-indicator.connecting{background-color:var(--warning);box-shadow:0 0 8px var(--warning);border:2px dashed #fff6;border-radius:50%;animation:1s linear infinite spinner}.status-indicator.listening{background-color:var(--success);box-shadow:0 0 8px var(--success);animation:1.5s infinite pulse}.status-indicator.thinking{background-color:var(--warning);box-shadow:0 0 8px var(--warning);animation:1s infinite pulse}.status-indicator.speaking{background-color:var(--primary);box-shadow:0 0 8px var(--primary);animation:1.2s infinite pulse}@keyframes pulse{0%{opacity:.6;transform:scale(.9)}50%{opacity:1;transform:scale(1.2)}to{opacity:.6;transform:scale(.9)}}.status-text{text-transform:uppercase;color:var(--text-secondary);font-size:.75rem;font-weight:600}.call-wave-btn{cursor:pointer;color:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.call-wave-btn.idle{background:linear-gradient(135deg, var(--success) 0%, #059669 100%);box-shadow:0 4px 15px #10b98166}.call-wave-btn.active{background:linear-gradient(135deg, var(--error) 0%, #dc2626 100%);box-shadow:0 4px 15px #ef444466}.call-wave-btn:hover{transform:scale(1.08)}.call-wave-btn.active:after{content:"";border:1px solid var(--error);opacity:0;border-radius:50%;animation:2s ease-out infinite ripple;position:absolute;inset:-5px}@keyframes ripple{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.4)}}.mic-btn{border:1px solid var(--border-color);width:44px;height:44px;color:var(--text-primary);cursor:pointer;background:#ffffff0d;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.mic-btn:hover{background:#ffffff1a}.mic-btn.muted{color:var(--error);background:#ef44441a;border-color:#ef444433}.connection-status-dot{border-radius:50%;width:8px;height:8px;transition:all .3s}.connection-status-dot.connected{background-color:var(--success);box-shadow:0 0 8px var(--success)}.connection-status-dot.connecting{background-color:var(--warning);box-shadow:0 0 8px var(--warning);animation:1s infinite pulse}.connection-status-dot.disconnected{background-color:var(--error);box-shadow:0 0 8px var(--error)}.status-indicator-mini{border-radius:50%;width:6px;height:6px;display:inline-block}.status-indicator-mini.connecting-spin{background-color:var(--warning);box-shadow:0 0 6px var(--warning);border:1px dashed #fff6;animation:1s linear infinite spinner}.status-indicator-mini.success-dot{background-color:var(--success);box-shadow:0 0 6px var(--success)}.status-indicator-mini.error-dot{background-color:var(--error);box-shadow:0 0 6px var(--error)}.chat-input-form{border-top:1px solid var(--border-color);z-index:5;background:#0a0f1e33;align-items:center;gap:.75rem;padding:.75rem 1.5rem;display:flex}.chat-input{border:1px solid var(--border-color);color:var(--text-primary);background:#ffffff08;border-radius:12px;outline:none;flex:1;padding:.75rem 1rem;font-family:inherit;font-size:.95rem;transition:all .2s}.chat-input:focus{border-color:var(--primary);box-shadow:0 0 12px var(--border-glow);background:#ffffff0d}.chat-input:disabled{opacity:.4;cursor:not-allowed;background:#0000001a}.chat-send-btn{background:linear-gradient(135deg, var(--primary) 0%, #4f46e5 100%);color:#fff;cursor:pointer;border:none;border-radius:12px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s}.chat-send-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #6366f159}.chat-send-btn:disabled{color:var(--text-muted);cursor:not-allowed;border:1px solid var(--border-color);background:#ffffff0d}
