.avatar-orb{--orb-accent:#a6533d;isolation:isolate;aspect-ratio:1;flex-shrink:0;display:block;position:relative}.avatar-orb__float{animation:4.8s ease-in-out infinite orb-float;position:absolute;inset:5%}.avatar-orb__body{background:#f1eae0;border:1px solid #e1d2c3;border-radius:50%;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 0 0 3px #faf8f4,0 5px 14px -7px #72533d38}.avatar-orb__portrait{mix-blend-mode:multiply;width:140%;max-width:none;height:auto;position:absolute;top:-2%;left:-20%}.avatar-orb__halo{opacity:.06;background:#a6533d;border-radius:50%;animation:4.8s ease-in-out infinite orb-halo;position:absolute;inset:-5%}.avatar-orb__ring{border:1px solid var(--orb-accent);opacity:0;border-radius:50%;position:absolute;inset:-3%}.avatar-orb__shadow{opacity:.1;background:#72533d;border-radius:50%;width:56%;height:7%;animation:4.8s ease-in-out infinite orb-shadow;position:absolute;bottom:-2%;left:22%}.avatar-orb[data-state=listening] .avatar-orb__ring--outer{animation:3.2s ease-in-out infinite orb-listening}.avatar-orb[data-state=thinking] .avatar-orb__ring--outer{border-color:#0000;border-top-color:var(--orb-accent);opacity:.55;border-right-color:#a6533d30;animation:2.8s linear infinite orb-thinking}.avatar-orb[data-state=speaking] .avatar-orb__ring{animation:1.6s ease-out infinite orb-speaking}.avatar-orb[data-state=speaking] .avatar-orb__ring--inner{animation-delay:-.8s}.avatar-orb[data-motion=paused] *,.avatar-orb[data-motion=paused] :before,.avatar-orb[data-motion=paused] :after{animation-play-state:paused}.avatar-orb[data-animated=false] *{animation:none!important}@keyframes orb-float{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-2.5%)scale(1.015)}}@keyframes orb-halo{0%,to{opacity:.06;transform:scale(1)}50%{opacity:.1;transform:scale(1.035)}}@keyframes orb-shadow{0%,to{opacity:.1;transform:scaleX(1)}50%{opacity:.065;transform:scaleX(.86)}}@keyframes orb-listening{0%,to{opacity:.16;transform:scale(1)}50%{opacity:.3;transform:scale(1.1)}}@keyframes orb-thinking{to{transform:rotate(360deg)}}@keyframes orb-speaking{0%{opacity:.24;transform:scale(1)}to{opacity:0;transform:scale(1.1)}}@media (prefers-reduced-motion:reduce){.avatar-orb *,.avatar-orb :before,.avatar-orb :after{animation:none!important}.avatar-orb:not([data-state=idle]) .avatar-orb__ring--outer{opacity:.3}}
