:root{--bg-color:#0a0e14;--surface-panel:#12171f;--orb-idle:#2e6ff2;--orb-listening:#39ff8a;--orb-error:#ff4d6a;--orb-thinking:#2e6ff2;--text-primary:#e8ecf3;--text-secondary:#6b7688;--border-color:#1e2530;--font-mono:"JetBrains Mono", "Space Mono", monospace;--font-sans:"Inter", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--focus-ring:0 0 0 2px #0a0e14, 0 0 0 4px #2e6ff2;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:9999px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{background-color:var(--bg-color);width:100%;height:100%;color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}.app-shell{background:radial-gradient(circle at 50% 30%, #2e6ff20a 0%, #0a0e1400 70%), var(--bg-color);flex-direction:column;width:100vw;max-width:100%;height:100dvh;display:flex;position:relative}.top-chrome{z-index:20;justify-content:space-between;align-items:center;display:flex;position:absolute;top:1.5rem;left:1.5rem;right:1.5rem}.brand-mark{font-family:var(--font-mono);letter-spacing:.15em;color:var(--text-secondary);text-transform:uppercase;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;display:flex}.brand-dot{background-color:var(--orb-idle);width:6px;height:6px;box-shadow:0 0 8px var(--orb-idle);border-radius:50%;transition:background-color .3s,box-shadow .3s}.brand-dot.state-listening{background-color:var(--orb-listening);box-shadow:0 0 10px var(--orb-listening)}.brand-dot.state-thinking{background-color:var(--orb-idle);box-shadow:0 0 10px var(--orb-idle);animation:1s infinite alternate pulse-glow}.brand-dot.state-error{background-color:var(--orb-error);box-shadow:0 0 10px var(--orb-error)}.chrome-actions{align-items:center;gap:.75rem;display:flex}.state-switcher{background-color:var(--surface-panel);border:1px solid var(--border-color);border-radius:var(--radius-full);gap:2px;padding:3px;display:flex}.state-btn{color:var(--text-secondary);font-family:var(--font-mono);border-radius:var(--radius-full);cursor:pointer;text-transform:uppercase;letter-spacing:.05em;background:0 0;border:none;padding:4px 10px;font-size:.7rem;font-weight:600;transition:all .2s}.state-btn:hover{color:var(--text-primary)}.state-btn.active{background-color:var(--border-color);color:var(--text-primary)}.state-btn.active.idle{color:#6495ed}.state-btn.active.listening{color:var(--orb-listening)}.state-btn.active.thinking{color:#50a0ff}.state-btn.active.error{color:var(--orb-error)}.state-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.icon-btn{background:var(--surface-panel);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.icon-btn:hover{color:var(--text-primary);border-color:var(--text-secondary)}.icon-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.stage-container{flex-direction:column;flex:1;justify-content:space-between;align-items:center;width:100%;max-width:800px;margin:0 auto;padding:5rem 1.5rem 1.5rem;display:flex;overflow:hidden}.orb-section{flex-direction:column;flex:1;justify-content:center;align-items:center;max-height:55vh;display:flex;position:relative}.orb-wrapper{justify-content:center;align-items:center;width:220px;height:220px;margin-bottom:1.5rem;display:flex;position:relative}.orb-mute-btn{background-color:var(--surface-panel);border:1px solid var(--border-color);width:34px;height:34px;color:var(--text-primary);cursor:pointer;z-index:15;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:0;right:0}.orb-mute-btn:hover{border-color:var(--text-secondary);background-color:#18202b}.orb-mute-btn.muted{color:var(--orb-error);background-color:#ff4d6a1a;border-color:#ff4d6a66}.orb-mute-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.voice-orb-btn{cursor:pointer;background:0 0;border:none;border-radius:50%;outline:none;justify-content:center;align-items:center;width:180px;height:180px;padding:0;transition:transform .2s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.voice-orb-btn:focus-visible{box-shadow:var(--focus-ring)}.orb-core{border-radius:50%;width:100%;height:100%;transition:background .5s,box-shadow .5s;position:relative}.orb-core.state-idle{background:radial-gradient(circle at 45% 45%,#fff 0%,#4d8bff 20%,#2e6ff2 50%,#2e6ff266 80%,#2e6ff200 100%);animation:4s ease-in-out infinite orb-breath-idle;box-shadow:0 0 45px #2e6ff259,inset 0 0 25px #ffffff4d}.orb-core.state-listening{background:radial-gradient(circle at 45% 45%,#fff 0%,#60ff9f 20%,#39ff8a 50%,#39ff8a66 80%,#39ff8a00 100%);animation:1.2s ease-in-out infinite orb-breath-listening;box-shadow:0 0 55px #39ff8a80,inset 0 0 30px #fff6}.sonar-ring{border:2px solid var(--orb-listening);pointer-events:none;opacity:0;border-radius:50%;position:absolute;inset:0}.voice-orb-btn.is-listening .sonar-ring{animation:1.2s cubic-bezier(.1,.8,.3,1) infinite sonar-ping}.orb-core.state-thinking{background:radial-gradient(circle at 45% 45%,#fff 0%,#6ea4ff 30%,#2e6ff2 65%,#2e6ff233 100%);animation:none;box-shadow:0 0 50px #2e6ff266}.thinking-rim{pointer-events:none;opacity:0;background:conic-gradient(#0000 0% 60%,#39ff8a 85%,#2e6ff2 100%);border-radius:50%;transition:opacity .3s;animation:2s linear infinite rim-spin;position:absolute;inset:-8px;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 3px),#fff calc(100% - 2px));mask:radial-gradient(farthest-side,#0000 calc(100% - 3px),#fff calc(100% - 2px))}.voice-orb-btn.is-thinking .thinking-rim{opacity:1}.orb-core.state-error{background:radial-gradient(circle at 45% 45%,#fff 0%,#ff758c 20%,#ff4d6a 50%,#ff4d6a66 80%,#ff4d6a00 100%);animation:2.5s ease-in-out infinite orb-breath-error;box-shadow:0 0 50px #ff4d6a66,inset 0 0 25px #ffffff4d}.orb-status-container{flex-direction:column;align-items:center;gap:.5rem;display:flex}.orb-status-text{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;display:flex}.orb-status-text.idle{color:var(--text-secondary)}.orb-status-text.listening{color:var(--orb-listening)}.orb-status-text.thinking{color:#50a0ff}.orb-status-text.error{color:var(--orb-error)}.unsupported-notice{font-family:var(--font-mono);color:var(--orb-error);border-radius:var(--radius-sm);text-align:center;background:#ff4d6a14;border:1px solid #ff4d6a40;align-items:center;gap:.4rem;margin-top:.2rem;padding:.3rem .75rem;font-size:.73rem;display:flex}.mic-control-btn{background:var(--surface-panel);border:1px solid var(--border-color);color:var(--text-primary);border-radius:var(--radius-full);font-family:var(--font-mono);cursor:pointer;align-items:center;gap:.5rem;padding:.4rem 1rem;font-size:.75rem;font-weight:500;transition:all .2s;display:flex}.mic-control-btn:hover:not(.disabled){border-color:var(--text-secondary);background-color:#18202b}.mic-control-btn.active{border-color:var(--orb-listening);color:var(--orb-listening);background-color:#39ff8a14}.mic-control-btn.disabled{opacity:.4;cursor:not-allowed}.mic-control-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.transcript-section{flex-direction:column;flex:1;justify-content:flex-end;width:100%;min-height:140px;max-height:260px;margin-top:1rem;display:flex;position:relative}.transcript-console{font-family:var(--font-mono);scroll-behavior:smooth;flex-direction:column;gap:.6rem;padding-right:.5rem;font-size:.88rem;line-height:1.5;display:flex;overflow-y:auto}.transcript-console::-webkit-scrollbar{width:4px}.transcript-console::-webkit-scrollbar-track{background:0 0}.transcript-console::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.transcript-wrapper{flex-direction:column;display:flex}.transcript-line{text-align:left;align-items:flex-start;gap:.6rem;animation:.3s forwards line-fade-in;display:flex;left:0}.line-prefix{color:var(--text-secondary);-webkit-user-select:none;user-select:none;flex-shrink:0;font-size:.8rem;font-weight:600}.line-time{color:#434d5d;margin-right:.25rem;font-size:.75rem}.line-content{word-break:break-word;flex:1}.transcript-line.role-user .line-content{color:var(--text-primary);font-weight:500}.transcript-line.role-user .line-prefix{color:var(--orb-idle)}.transcript-line.role-system .line-content,.transcript-line.role-system .line-prefix{color:var(--text-secondary)}.transcript-line.role-error .line-content,.transcript-line.role-error .line-prefix{color:var(--orb-error)}.transcript-line.is-interim .line-content{color:#8c98aa;font-style:italic}.transcript-line.is-interim .line-prefix{color:var(--orb-listening);animation:.8s infinite alternate pulse-glow}.interim-text{opacity:.9}.action-card{background-color:var(--surface-panel);border:1px solid var(--border-color);border-left:3px solid var(--orb-idle);border-radius:var(--radius-sm);font-family:var(--font-mono);margin-top:.4rem;margin-left:2.2rem;padding:.6rem .85rem;font-size:.78rem;animation:.25s forwards line-fade-in;box-shadow:0 4px 12px #00000040}.action-card-header{border-bottom:1px dashed var(--border-color);justify-content:space-between;align-items:center;margin-bottom:.4rem;padding-bottom:.35rem;display:flex}.action-title-group{align-items:center;gap:.5rem;display:flex}.action-icon{color:var(--orb-idle)}.action-badge{letter-spacing:.08em;color:var(--orb-idle);text-transform:uppercase;background-color:#2e6ff21f;border-radius:3px;padding:1px 6px;font-size:.65rem;font-weight:700}.action-tool-name{color:var(--text-primary);font-weight:600}.action-stub-status{color:var(--text-secondary);font-size:.7rem;font-style:italic}.action-params-grid{flex-direction:column;gap:.25rem;display:flex}.action-param-row{align-items:baseline;gap:.6rem;display:flex}.param-label{color:var(--text-secondary);min-width:80px;font-size:.73rem}.param-value{color:var(--text-primary);word-break:break-all;font-weight:500}.word-span{opacity:0;animation:.2s forwards word-appear;display:inline-block}.input-console-wrapper{z-index:10;width:100%;max-width:800px;margin:0 auto;padding:0 1.5rem 2rem}.terminal-input-form{background-color:var(--surface-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);align-items:center;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s;display:flex;position:relative}.terminal-input-form:focus-within{border-color:var(--orb-idle);box-shadow:0 0 0 1px var(--orb-idle), 0 4px 20px #0006}.prompt-prefix{font-family:var(--font-mono);color:var(--orb-idle);-webkit-user-select:none;user-select:none;align-items:center;margin-right:.75rem;font-size:1rem;font-weight:700;display:flex}.terminal-input{color:var(--text-primary);font-family:var(--font-mono);background:0 0;border:none;outline:none;flex:1;width:100%;font-size:.92rem;line-height:1.4}.terminal-input::placeholder{color:var(--text-secondary);opacity:.7}.send-btn{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;margin-left:.5rem;padding:4px;transition:color .2s,background-color .2s;display:flex}.send-btn:hover:not(:disabled){color:var(--text-primary);background-color:var(--border-color)}.send-btn:disabled{opacity:.3;cursor:not-allowed}.send-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.console-footer-hint{font-family:var(--font-mono);color:var(--text-secondary);justify-content:space-between;align-items:center;margin-top:.5rem;padding:0 .25rem;font-size:.7rem;display:flex}.key-badge{background-color:var(--surface-panel);border:1px solid var(--border-color);color:var(--text-primary);border-radius:3px;padding:1px 5px}@keyframes orb-breath-idle{0%{transform:scale(.96);box-shadow:0 0 35px #2e6ff24d,inset 0 0 20px #ffffff40}50%{transform:scale(1.04);box-shadow:0 0 60px #2e6ff280,inset 0 0 30px #ffffff59}to{transform:scale(.96);box-shadow:0 0 35px #2e6ff24d,inset 0 0 20px #ffffff40}}@keyframes orb-breath-listening{0%{transform:scale(.95);box-shadow:0 0 40px #39ff8a66}50%{transform:scale(1.05);box-shadow:0 0 75px #39ff8ab3}to{transform:scale(.95);box-shadow:0 0 40px #39ff8a66}}@keyframes orb-breath-error{0%{transform:scale(.97);box-shadow:0 0 35px #ff4d6a4d}50%{transform:scale(1.03);box-shadow:0 0 60px #ff4d6a99}to{transform:scale(.97);box-shadow:0 0 35px #ff4d6a4d}}@keyframes sonar-ping{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}@keyframes rim-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse-glow{0%{opacity:.4}to{opacity:1}}@keyframes line-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes word-appear{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.orb-core.state-idle,.orb-core.state-listening,.orb-core.state-error{animation:none!important;transform:scale(1)!important}.sonar-ring{animation:none!important;display:none!important}.thinking-rim{border:2px solid var(--orb-idle);animation:none!important}.word-span{opacity:1!important;animation:none!important}.transcript-line{animation:none!important}}@media (height<=700px){.stage-container{padding-top:3.5rem}.orb-wrapper{width:170px;height:170px;margin-bottom:.75rem}.voice-orb-btn{width:140px;height:140px}.transcript-section{min-height:100px;max-height:180px}}
