.orb-root{width:var(--s);height:var(--s);cursor:pointer;background:0 0;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.orb-float{justify-content:center;align-items:center;animation:4s ease-in-out infinite orb-float;display:flex;position:absolute;inset:0}.orb-glow{pointer-events:none;background:radial-gradient(closest-side,#00735940,#00735900 70%);border-radius:50%;width:190%;height:190%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.orb-ring{pointer-events:none;border:1px solid #ffffff2e;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.orb-r2{border-color:#ffffff21}.orb-r3{border-color:#ffffff1a}.orb-think{filter:blur(2.5px);opacity:0;width:118%;height:118%;transition:opacity .3s ease-out, transform .4s var(--ease-soft-curve);pointer-events:none;background:conic-gradient(#03ff94 0%,#59d4d1 22%,#fff 42%,#59d4d1 58%,#007359 78%,#03ff94 100%);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.9);-webkit-mask:radial-gradient(#0000 58%,#000 63% 68%,#0000 71%);mask:radial-gradient(#0000 58%,#000 63% 68%,#0000 71%)}.orb-ball{background:#06251f;border-radius:50%;width:100%;height:100%;transition:box-shadow .4s ease-out;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #fff6,0 0 44px #03ff9433}.orb-ball:after{content:"";pointer-events:none;background:radial-gradient(circle at 38% 30%,#ffffff29 0,#fff0 42%),radial-gradient(circle,#000d0a00 45%,#000d0a80 86%,#000d0ac7 100%);border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 -14px 32px #000d0a80}.orb-lq{mix-blend-mode:screen;will-change:transform;border-radius:50%;position:absolute}.orb-lq1{filter:blur(10px);background:radial-gradient(closest-side,#03ff94d9,#03ff9400 70%);animation:13s linear infinite orb-lq-a;inset:-30%}.orb-lq2{filter:blur(12px);background:radial-gradient(closest-side,#59d4d199,#59d4d100 66%);animation:17s linear infinite orb-lq-b;inset:-26%}.orb-lq3{filter:blur(14px);background:radial-gradient(closest-side,#007359f2,#00735900 70%);animation:11s linear infinite orb-lq-c;inset:-34%}.orb-lq4{mix-blend-mode:multiply;filter:blur(10px);background:radial-gradient(closest-side,#0b211c,#0b211c00 64%);animation:19s ease-in-out infinite orb-lq-d;inset:-14%}.orb-spin{border-radius:50%;position:absolute;inset:0}.orb-spec{filter:blur(5px);background:radial-gradient(closest-side,#ffffffd9,#fff0 72%);border-radius:50%;width:34%;height:26%;position:absolute;top:8%;left:14%;transform:rotate(-30deg)}.orb-emblem{pointer-events:none;filter:drop-shadow(0 2px 12px #00000040);width:40%;height:40%;position:absolute;top:50%;left:50%;overflow:visible;transform:translate(-50%,-50%)}.orb-eyes{transform-box:fill-box;transform-origin:50%;animation:5s ease-in-out infinite orb-blink}.orb-happyEyes,.orb-oopsEyes{opacity:0;transition:opacity .15s ease-out}.orb-morph{opacity:0;pointer-events:none;background:conic-gradient(from 45deg,#03ff94,#59d4d1,#007359,#03ff94);width:46%;height:46%;margin:-23% 0 0 -23%;position:absolute;top:50%;left:50%}.orb-root[data-intro=on] .orb-morph{animation:1.1s cubic-bezier(.4,0,.2,1) both orb-morph}.orb-root[data-intro=on] .orb-ball{animation:.6s cubic-bezier(.3,1.2,.4,1) .8s both orb-ball-in}.orb-root[data-intro=on] .orb-ring,.orb-root[data-intro=on] .orb-glow{animation:.5s ease-out .85s both orb-ring-in}.orb-root[data-intro=on] .orb-r2{animation-delay:.93s}.orb-root[data-intro=on] .orb-r3{animation-delay:1.01s}.orb-root[data-intro=on] .orb-emblem{animation:.5s cubic-bezier(.3,1.3,.4,1) 1s both orb-emb-in}.orb-root[data-intro=on] .orb-eyes{animation:1.6s ease-out both orb-eyes-open}.orb-root[data-state=thinking] .orb-think{opacity:1;animation:2s linear infinite orb-spin,1.6s ease-in-out infinite orb-wobble;transform:translate(-50%,-50%)scale(1)}.orb-root[data-state=thinking] .orb-lq1{animation-duration:4.3s}.orb-root[data-state=thinking] .orb-lq2{animation-duration:5.6s}.orb-root[data-state=thinking] .orb-lq3{animation-duration:3.6s}.orb-root[data-state=thinking] .orb-lq4{animation-duration:6.3s}.orb-root[data-state=thinking] .orb-ring{animation:1.8s ease-out infinite orb-pulse}.orb-root[data-state=thinking] .orb-r2{animation-delay:.2s}.orb-root[data-state=thinking] .orb-r3{animation-delay:.4s}.orb-root[data-state=happy] .orb-ball{box-shadow:inset 0 0 0 1px #fff9,0 0 90px #03ff948c}.orb-root[data-state=happy] .orb-emblem{animation:.7s cubic-bezier(.3,1.5,.4,1) both orb-ok}.orb-root[data-state=happy] .orb-eyes{opacity:0;animation:none}.orb-root[data-state=happy] .orb-happyEyes{opacity:1}.orb-root[data-state=oops] .orb-ball{animation:.5s cubic-bezier(.36,.07,.19,.97) both orb-bad;box-shadow:inset 0 0 0 1.5px #ff8a8abf,0 0 44px #ff7a7a4d}.orb-root[data-state=oops][data-oops-eyes=on] .orb-eyes{opacity:0;animation:none}.orb-root[data-state=oops][data-oops-eyes=on] .orb-oopsEyes{opacity:1}@media (prefers-reduced-motion:reduce){.orb-root *,.orb-root :after{transition:none!important;animation:none!important}.orb-morph{display:none}.orb-root .orb-ball,.orb-root .orb-ring,.orb-root .orb-glow,.orb-root .orb-emblem{opacity:1!important}.orb-root .orb-emblem{transform:translate(-50%,-50%)!important}}@keyframes orb-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes orb-lq-a{0%{transform:translate(-14%,10%)scale(1)}33%{transform:translate(12%,-8%)scale(1.18)}66%{transform:translate(6%,16%)scale(.92)}to{transform:translate(-14%,10%)scale(1)}}@keyframes orb-lq-b{0%{transform:translate(16%,-12%)scale(1.1)}40%{transform:translate(-10%,8%)scale(.9)}70%{transform:translate(-4%,-14%)scale(1.2)}to{transform:translate(16%,-12%)scale(1.1)}}@keyframes orb-lq-c{0%{transform:translateY(18%)scale(1.05)}50%{transform:translate(-16%,-6%)scale(1.25)}to{transform:translateY(18%)scale(1.05)}}@keyframes orb-lq-d{0%{transform:translate(-20%,34%)scale(1)}50%{transform:translate(18%,28%)scale(1.2)}to{transform:translate(-20%,34%)scale(1)}}@keyframes orb-spin{to{rotate:360deg}}@keyframes orb-wobble{0%,to{border-radius:50%}25%{border-radius:46% 54% 52% 48%/54% 46% 50% 50%}50%{border-radius:53% 47% 46% 54%/47% 53% 54% 46%}75%{border-radius:48% 52% 54% 46%/52% 48% 46% 54%}}@keyframes orb-pulse{0%,70%,to{opacity:1;transform:translate(-50%,-50%)scale(1)}35%{opacity:.45;transform:translate(-50%,-50%)scale(1.07)}}@keyframes orb-blink{0%,20%,24%,65%,69%,to{transform:scaleY(1)}22%,67%{transform:scaleY(.08)}}@keyframes orb-morph{0%{opacity:0;clip-path:polygon(50% 0,100% 0,100% 50%,100% 100%,50% 100%,0 100%,0 50%,0 0);border-radius:28%;transform:scale(.4)rotate(0)}12%{opacity:1;clip-path:polygon(50% 0,100% 0,100% 50%,100% 100%,50% 100%,0 100%,0 50%,0 0);border-radius:28%;transform:scale(.72)rotate(10deg)}32%{clip-path:polygon(50% 0,100% 0,100% 50%,100% 100%,50% 100%,0 100%,0 50%,0 0);border-radius:60% 40%/40% 60%;transform:scale(.8)rotate(60deg)}50%{clip-path:polygon(50% 0,90% 10%,100% 50%,90% 90%,50% 100%,10% 90%,0 50%,10% 10%);border-radius:50%;transform:scale(.86)rotate(110deg)}72%{opacity:1;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);border-radius:0;transform:scale(1.05)rotate(180deg)}82%{opacity:1;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);border-radius:0;transform:scale(1)rotate(180deg)}to{opacity:0;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);border-radius:0;transform:scale(1.9)rotate(180deg)}}@keyframes orb-ball-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes orb-ring-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.6)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes orb-emb-in{0%{opacity:0;transform:translate(-50%,calc(10px - 50%))scale(.9)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes orb-eyes-open{0%,78%{transform:scaleY(.08)}84%{transform:scaleY(1)}89%{transform:scaleY(.1)}95%,to{transform:scaleY(1)}}@keyframes orb-ok{0%{transform:translate(-50%,-50%)scale(1)}60%{transform:translate(-50%,-50%)scale(1.14)}to{transform:translate(-50%,-50%)scale(1.08)}}@keyframes orb-bad{20%{transform:translate(-7px)}40%{transform:translate(7px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}to{transform:translate(0)}}
