.pea-live{justify-content:center;align-items:center;display:inline-flex}.pea-body{transition:transform .28s var(--ease-out);will-change:transform;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;overflow:hidden}.pea-gloss{pointer-events:none;background:radial-gradient(120% 85% at 50% -10%,#ffffff29 0%,#ffffff0d 38%,#0000 60%);border-radius:50%;position:absolute;inset:0}.pea-eyes-wrap{transition:transform .36s var(--ease-out);will-change:transform;justify-content:center;align-items:center;display:flex}.eye{transform-origin:50%;will-change:transform;border-radius:999px}.pea-halo{opacity:0;pointer-events:none;border:2px solid;border-radius:50%;position:absolute;inset:0;transform:scale(.92)}.state-idle .eye{animation:4.5s ease-in-out infinite pea-blink}.state-idle .eye-r{animation-delay:70ms}.state-idle .pea-eyes-wrap{animation:7s ease-in-out infinite pea-drift}@keyframes pea-blink{0%,92%,to{transform:scaleY(1)}94%,96%{transform:scaleY(.06)}}@keyframes pea-drift{0%{transform:translate(0)}18%{transform:translate(-3%,1%)}35%{transform:translate(2%,-2%)}55%{transform:translateY(1%)}72%{transform:translate(3%,-1%)}90%{transform:translate(-1%,2%)}to{transform:translate(0)}}.state-listening .eye{animation:1.6s ease-in-out infinite pea-listen-pulse}.state-listening .pea-eyes-wrap{animation:none}@keyframes pea-listen-pulse{0%,to{transform:scale(1.04,1.06)}50%{transform:scale(1.04,1.1)}}.state-listening .pea-halo{animation:1.8s cubic-bezier(.2,.7,.2,1) infinite pea-halo}.state-listening .halo-2{animation-delay:.6s}.state-listening .halo-3{animation-delay:1.2s}@keyframes pea-halo{0%{opacity:.55;border-width:2.5px;transform:scale(.94)}to{opacity:0;border-width:1px;transform:scale(1.45)}}.state-thinking .pea-eyes-wrap{animation:2.6s cubic-bezier(.5,0,.5,1) infinite pea-think}.state-thinking .pea-body{animation:2.6s cubic-bezier(.5,0,.5,1) infinite pea-think-lean}.state-thinking .eye{animation:4.5s ease-in-out infinite pea-blink}@keyframes pea-think{0%,to{transform:translate(-7%,4%)}50%{transform:translate(7%,4%)}}@keyframes pea-think-lean{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}.state-speaking .pea-body{animation:.42s ease-in-out infinite alternate pea-speak-bounce}.state-speaking .eye{animation:.42s ease-in-out infinite alternate pea-speak-eyes}@keyframes pea-speak-bounce{0%{transform:translateY(0)scale(1)}to{transform:translateY(-4px)scale(1.02,.97)}}@keyframes pea-speak-eyes{0%{transform:scaleY(1)}to{transform:scaleY(.92)}}@keyframes pea-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(1.4)}}.pea-status-dot{animation:1.2s ease-in-out infinite pea-dot}.pea-live.bare .halo{opacity:0;pointer-events:none;z-index:0;width:240px;height:150px;transition:opacity .6s var(--ease-out), background .7s var(--ease-out);filter:blur(2px);will-change:transform, opacity;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pea-live.bare.state-idle .halo-base{opacity:.55;background:radial-gradient(#7c5dff1a 0%,#0000 60%);animation:7s ease-in-out infinite idle-breathe}@keyframes idle-breathe{0%,to{opacity:.35;transform:translate(-50%,-50%)scale(1)}50%{opacity:.55;transform:translate(-50%,-50%)scale(1.04)}}.pea-live.bare.state-idle .eye{animation:4.5s ease-in-out infinite pea-blink}.pea-live.bare.state-idle .eye-r{animation-delay:70ms}.pea-live.bare.state-idle .pea-eyes-wrap{animation:8s ease-in-out infinite bare-drift}@keyframes bare-drift{0%,to{transform:translate(0)}25%{transform:translate(-2%,1%)}55%{transform:translate(2%,-1%)}80%{transform:translate(-1%,2%)}}.pea-live.bare.state-listening .halo-reactive{--audio:0;opacity:calc(.45 + var(--audio) * .4);transform:translate(-50%, -50%) scale(calc(1 + var(--audio) * .45));transition:transform 80ms ease-out, opacity 80ms ease-out, background .7s var(--ease-out);background:radial-gradient(#7c5dff5c 0%,#7c5dff1a 35%,#0000 65%)}.pea-live.bare.state-listening .halo-echo{opacity:.4;background:radial-gradient(#7c5dff38 0%,#0000 60%);animation:2.2s ease-out infinite listen-echo}@keyframes listen-echo{0%{opacity:.45;transform:translate(-50%,-50%)scale(.9)}to{opacity:0;transform:translate(-50%,-50%)scale(1.55)}}.pea-live.bare.state-listening .eye{transition:transform .32s var(--ease-out);animation:none;transform:scale(1.06)}.pea-live.bare.state-listening .pea-eyes-wrap{animation:none}.pea-live.bare.state-thinking .halo-reactive{opacity:.7;background:radial-gradient(circle at 72%,#f5a5247a 0%,#f5a5241a 30%,#0000 55%);animation:4.4s linear infinite think-orbit,3.2s ease-in-out infinite think-breathe}@keyframes think-orbit{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}@keyframes think-breathe{0%,to{opacity:.5}50%{opacity:.85}}.pea-live.bare.state-thinking .pea-eyes-wrap{animation:4.4s cubic-bezier(.4,0,.6,1) infinite bare-think-look}@keyframes bare-think-look{0%{transform:translate(0)}25%{transform:translate(-12%,-14%)}50%{transform:translateY(-18%)}75%{transform:translate(12%,-14%)}to{transform:translate(0)}}.pea-live.bare.state-speaking .halo-reactive{opacity:.75;background:radial-gradient(#2bb67366 0%,#2bb6731a 35%,#0000 65%);animation:.42s ease-in-out infinite alternate speak-pulse}.pea-live.bare.state-speaking .halo-echo{opacity:.5;background:radial-gradient(#2bb67340 0%,#0000 60%);animation:1.05s ease-out infinite speak-echo}@keyframes speak-pulse{0%{opacity:.55;transform:translate(-50%,-50%)scale(1)}to{opacity:.85;transform:translate(-50%,-50%)scale(1.18)}}@keyframes speak-echo{0%{opacity:.5;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(1.45)}}.pea-live.bare.state-speaking .pea-eyes-wrap{animation:.42s ease-in-out infinite alternate bare-speak-bounce}@keyframes bare-speak-bounce{0%{transform:translateY(0)}to{transform:translateY(-3px)}}.pea-live.bare.state-speaking .eye{animation:.42s ease-in-out infinite alternate bare-speak-eye}@keyframes bare-speak-eye{0%{transform:scaleY(1)}to{transform:scaleY(.88)}}.cursor-blink{vertical-align:-2px;background:currentColor;width:2px;height:.95em;margin-left:3px;animation:.7s step-end infinite cursor-blink;display:inline-block}@keyframes cursor-blink{0%,50%{opacity:1}51%,to{opacity:0}}.think-dots{align-items:center;gap:5px;display:inline-flex}.think-dots span{background:var(--c-warning);opacity:.4;border-radius:999px;width:4px;height:4px;animation:1.4s ease-in-out infinite think-dot}.think-dots span:nth-child(2){animation-delay:.18s}.think-dots span:nth-child(3){animation-delay:.36s}@keyframes think-dot{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}
