:root{--color-deep:#0c3b32;--color-deep-strong:#082a24;--color-deep-hover:#145445;--color-deep-ink:#f6f3ec;--color-lime:#c6f135;--color-teal:#1aa6a0;--color-teal-ink:#0d7470;--color-blue:#3c6fe0;--color-violet:#7b4dff;--color-magenta:#e23d8c;--color-offwhite:#f4f1ea;--color-light:#f3f6f4;--color-white:#ffffff;--color-ink:#14241c;--color-muted:#5c6b64;--color-line:#d9e0db;--color-dashboard:#121816;--color-dashboard-raised:#1b2320;--color-danger:#9f2d2d;--color-phone-bezel:#10231c;--color-phone-screen:#f7f4ee;--gradient-brand:linear-gradient(120deg,#c6f135,#1aa6a0 28%,#3c6fe0 55%,#7b4dff 78%,#e23d8c);--gradient-glow:radial-gradient(closest-side,rgb(198 241 53/28%),rgb(26 166 160/14%) 55%,transparent);--shadow-soft:0 12px 40px rgb(12 59 50/12%);--shadow-lift:0 22px 60px rgb(12 59 50/18%);--shadow-float:0 18px 50px rgb(4 20 16/35%);--radius-sm:8px;--radius-md:16px;--radius-lg:28px;--radius-phone:40px;--space-section:clamp(4.5rem,3rem + 6vw,7.5rem);--container:72rem;--header-height:4.5rem;--motion-fast:160ms;--motion-base:280ms;--motion-reveal:600ms;--motion-slow:1200ms;--ease-out:cubic-bezier(0.22,1,0.36,1);--ease-in-out:cubic-bezier(0.65,0,0.35,1);--ambient-far:70s;--ambient-mid:50s;--ambient-near:36s;--z-header:40;--z-overlay:50;--z-chat:60;--z-modal:70;--z-toast:80;--z-skip:90}@media (prefers-reduced-motion:reduce){:root{--motion-fast:0ms;--motion-base:0ms;--motion-reveal:0ms;--motion-slow:0ms}}.bot{--look-x:0;--look-y:0;--rv-dir:1;--ease-spring:cubic-bezier(0.34,1.56,0.64,1);display:block}[dir=rtl] .bot{--rv-dir:-1}.bot-svg{display:block;width:100%;height:100%;overflow:visible}.bot-edge{fill:none;stroke:rgb(70 86 112/.42);stroke-width:.8}.bot-rim{fill:none;stroke-width:1.5}.bot-gloss{fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round;opacity:.95}.bot-gloss-thin{stroke-width:1.5;opacity:.6}.bot-seam{stroke:#c3cbd8;stroke-width:1.1}.bot-seam,.bot-signal{fill:none;stroke-linecap:round}.bot-signal{stroke-width:2.4}.bot-chest{font:900 15px/1 var(--font-display),system-ui,sans-serif}.bot-contact{fill:#04070d;opacity:.32}.bot-ring{fill:none;stroke-width:1.4;opacity:0;transform-origin:60px 151px}.bot-jets{opacity:0;transform-origin:60px 149px}.bot-spark{transform-box:fill-box;transform-origin:center;opacity:0}.bot-sparks>:first-child .bot-spark{fill:#c6f135}.bot-sparks>:nth-child(2) .bot-spark{fill:#3ee0e8;animation-delay:.05s}.bot-sparks>:nth-child(3) .bot-spark{fill:#7b4dff;animation-delay:.1s}.bot-sparks>:nth-child(4) .bot-spark{fill:#e23d8c;animation-delay:.15s}.bot-eye-happy,.bot-eye-sad,.bot-eye-x,.bot-mouth-flat,.bot-mouth-frown,.bot-mouth-grin,.bot-mouth-o{opacity:0}.bot-eye>*,.bot-mouth>*{transition:opacity .18s ease}.bot:is([data-mood=happy],[data-mood=love],[data-mood=success],[data-mood=sad]) .bot-eye-open,.bot[data-mood=wink] .bot-eye-r .bot-eye-open{opacity:0}.bot:is([data-mood=happy],[data-mood=love]) .bot-eye-happy,.bot[data-mood=sad] .bot-eye-sad,.bot[data-mood=success] .bot-eye-x,.bot[data-mood=wink] .bot-eye-r .bot-eye-happy{opacity:1}.bot:not([data-mood=idle],[data-mood=love]) .bot-mouth-smile{opacity:0}.bot:is([data-mood=happy],[data-mood=wink],[data-mood=success],[data-mood=idea]) .bot-mouth-grin,.bot[data-mood=listen] .bot-mouth-o,.bot[data-mood=sad] .bot-mouth-frown,.bot[data-mood=think] .bot-mouth-flat{opacity:1}@keyframes bot-prop-in{0%{opacity:0;transform:translateY(5px) scale(.3) rotate(-20deg)}to{opacity:1;transform:none}}@keyframes bot-prop-float{0%,to{translate:0 0}50%{translate:0 -3px}}@keyframes bot-heart-rise{0%{opacity:0;transform:translateY(6px) scale(.3)}25%{opacity:1;transform:translateY(0) scale(1.1)}80%{opacity:1}to{opacity:0;transform:translateY(-14px) scale(.8)}}@keyframes bot-rays{0%,to{opacity:.35}50%{opacity:1}}.bot-prop{opacity:0;transform-box:fill-box;transform-origin:50% 100%;transition:opacity .2s ease}.bot-prop-text{font:800 17px/1 var(--font-display),system-ui,sans-serif}.bot[data-mood=idea] .bot-prop-bulb,.bot[data-mood=think] .bot-prop-q{opacity:1;animation:bot-prop-in .45s var(--ease-spring) both,bot-prop-float 1.8s ease-in-out .45s infinite}.bot[data-mood=idea] .bot-prop-rays{animation:bot-rays .9s ease-in-out infinite}.bot[data-mood=love] .bot-prop-heart{animation:bot-heart-rise 2s ease-out infinite}.bot[data-mood=love] .bot-prop-heart-2{animation-delay:.9s}@keyframes bot-bob{50%{transform:translateY(-4px)}}@keyframes bot-floor{50%{transform:scale(.86);opacity:.7}}@keyframes bot-sway{0%,to{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}@keyframes bot-antenna{0%,to{transform:rotate(5deg)}50%{transform:rotate(-5deg)}}@keyframes bot-arm-l{0%,to{transform:rotate(12deg)}50%{transform:rotate(18deg)}}@keyframes bot-arm-r{0%,to{transform:rotate(-12deg)}50%{transform:rotate(-18deg)}}@keyframes bot-pulse{50%{opacity:.45}}@keyframes bot-signal{0%,to{opacity:.15}40%,60%{opacity:1}}@keyframes bot-blink{0%,45%,49%,93%,97%,to{transform:scaleY(1)}47%,95%{transform:scaleY(.1)}}@keyframes bot-shine{0%,55%{transform:translateX(0)}to{transform:translateX(102px)}}@keyframes bot-flicker{0%,to{opacity:1}90%{opacity:.5}91%{opacity:1}93%{opacity:.7}94%{opacity:1}}@keyframes bot-think{0%,to{transform:translate(2.5px,-2.5px)}50%{transform:translate(-2.5px,-2.5px)}}@keyframes bot-hue{to{filter:hue-rotate(1turn)}}.bot-rig{transform-origin:60px 150px}.bot-spin{transform-origin:60px 98px}.bot-bob{animation:bot-bob 3.2s var(--ease-in-out) infinite}.bot-floor{transform-origin:60px 151px;animation:bot-floor 3.2s var(--ease-in-out) infinite}.bot-head{animation:bot-sway 6.4s var(--ease-in-out) infinite}.bot-head,.bot-look{transform-origin:60px 92px}.bot-look{transform:translateX(calc(var(--look-x) * 1.5px)) rotate(calc(var(--look-x) * 5deg));transition:transform .6s var(--ease-out)}.bot-antenna{transform-origin:60px 34px;animation:bot-antenna 3.2s var(--ease-in-out) -.5s infinite}.bot-arm-l{transform-origin:38px 104px;animation:bot-arm-l 3.2s var(--ease-in-out) infinite}.bot-arm-r{transform-origin:82px 104px;animation:bot-arm-r 3.2s var(--ease-in-out) infinite}.bot-gaze{transform:translate(calc(var(--look-x) * 3.5px),calc(var(--look-y) * 2.5px));transition:transform .4s var(--ease-out)}.bot-eye-l .bot-eye-open{transform-origin:45px 62px;animation:bot-blink 5.6s infinite}.bot-eye-r .bot-eye-open{transform-origin:75px 62px;animation:bot-blink 5.6s infinite}.bot-orb{animation:bot-pulse 1.8s ease-in-out infinite}.bot-band,.bot-ear-ring,.bot-sole{animation:bot-pulse 2.6s ease-in-out infinite}.bot-signal-1{animation:bot-signal 2.4s ease-in-out infinite}.bot-signal-2{animation:bot-signal 2.4s ease-in-out .35s infinite}.bot-shine{animation:bot-shine 6s var(--ease-in-out) 1.2s infinite}.bot-chest{animation:bot-flicker 5s steps(1) infinite}.bot:is([data-mood=think],[data-mood=listen]) :is(.bot-signal-1,.bot-signal-2){animation-duration:.9s}.bot:is([data-mood=think],[data-mood=listen],[data-mood=idea]) .bot-orb{animation-duration:.6s}.bot[data-mood=think] .bot-scan{animation:bot-think 2.4s var(--ease-in-out) infinite}@keyframes bot-confetti{0%,to{opacity:0;transform:scale(0) rotate(0deg)}30%{opacity:1;transform:scale(1) rotate(90deg)}60%{opacity:.7;transform:scale(.6) rotate(150deg)}75%{opacity:0}}.bot[data-mood=success] .bot-spark{animation:bot-confetti 1.6s ease-out infinite}.bot[data-mood=success] :is(.bot-ear-ring,.bot-chest){animation:bot-hue 2.4s linear infinite}.bot[data-mood=sad] .bot-look{transform:translateY(2px) rotate(calc(var(--rv-dir) * -6deg))}.bot[data-mood=sad] .bot-antenna{animation:none;transform:rotate(calc(var(--rv-dir) * -16deg));transition:transform .6s var(--ease-out)}.bot[data-mood=sad] :is(.bot-signal,.bot-ear-ring,.bot-sole,.bot-band){animation:none;opacity:.25}.bot[data-mood=sad] .bot-bob{animation-duration:4.8s}.bot[data-move=hidden] :is(.bot-rig,.bot-floor){opacity:0}@keyframes bot-enter-rig{0%{opacity:0;transform:translateY(-110px) scale(.92,1.08);animation-timing-function:cubic-bezier(.55,0,.85,.35)}10%{opacity:1}52%{transform:translateY(0) scale(1.16,.8);animation-timing-function:cubic-bezier(.25,.8,.35,1.3)}70%{transform:translateY(-9px) scale(.95,1.06);animation-timing-function:cubic-bezier(.5,0,.75,.5)}84%{transform:translateY(0) scale(1.05,.95)}to{opacity:1;transform:none}}@keyframes bot-enter-spin{0%{transform:rotate(calc(var(--rv-dir) * -540deg));animation-timing-function:cubic-bezier(.3,.45,.4,1)}50%,to{transform:rotate(0deg)}}@keyframes bot-enter-floor{0%{opacity:0;transform:scale(.3)}52%{opacity:1;transform:scale(1.22)}to{opacity:1;transform:none}}@keyframes bot-enter-jets{0%,18%,50%,to{opacity:0;transform:scaleY(.4)}30%,44%{opacity:1;transform:scaleY(1.2)}}@keyframes bot-enter-ring{0%,50%{opacity:0;transform:scale(.5)}54%{opacity:.9}to{opacity:0;transform:scale(2)}}@keyframes bot-enter-spark{0%,50%,92%,to{opacity:0;transform:scale(0) rotate(0deg)}64%{opacity:1;transform:scale(1) rotate(90deg)}78%{opacity:.7;transform:scale(.6) rotate(140deg)}}.bot[data-move=enter] .bot-rig{animation:bot-enter-rig 1.4s both}.bot[data-move=enter] .bot-spin{animation:bot-enter-spin 1.4s both}.bot[data-move=enter] .bot-floor{animation:bot-enter-floor 1.4s both}.bot[data-move=enter] .bot-jets{animation:bot-enter-jets 1.4s both}.bot[data-move=enter] .bot-ring{animation:bot-enter-ring 1.4s var(--ease-out) both}.bot[data-move=enter] .bot-spark{animation:bot-enter-spark 1.4s both}@keyframes bot-flip-rig{0%{transform:none;animation-timing-function:cubic-bezier(.3,0,.5,1)}16%{transform:translateY(2px) scale(1.12,.84);animation-timing-function:cubic-bezier(.15,.75,.35,1)}46%{transform:translateY(-52px) scale(.97,1.04);animation-timing-function:cubic-bezier(.55,0,.85,.4)}72%{transform:translateY(0) scale(1.14,.82);animation-timing-function:cubic-bezier(.25,.8,.35,1.25)}86%{transform:translateY(-4px) scale(.97,1.04);animation-timing-function:ease-in}to{transform:none}}@keyframes bot-flip-spin{0%,18%{transform:rotate(0deg);animation-timing-function:cubic-bezier(.4,0,.3,1)}70%,to{transform:rotate(calc(var(--rv-dir) * -1turn))}}@keyframes bot-flip-floor{0%,to{transform:none;opacity:1}16%{transform:scale(1.15);opacity:1}46%{transform:scale(.4);opacity:.3}72%{transform:scale(1.22);opacity:1}}@keyframes bot-flip-arm-l{0%,to{transform:rotate(12deg)}14%{transform:rotate(-8deg)}28%,58%{transform:rotate(160deg)}74%{transform:rotate(42deg)}88%{transform:rotate(6deg)}}@keyframes bot-flip-arm-r{0%,to{transform:rotate(-12deg)}14%{transform:rotate(8deg)}28%,58%{transform:rotate(-160deg)}74%{transform:rotate(-42deg)}88%{transform:rotate(-6deg)}}@keyframes bot-flip-jets{0%,15%,42%,to{opacity:0;transform:scaleY(.4)}20%,32%{opacity:1;transform:scaleY(1.2)}}@keyframes bot-flip-ring{0%,70%{opacity:0;transform:scale(.5)}74%{opacity:.9}to{opacity:0;transform:scale(2)}}@keyframes bot-flip-spark{0%,30%,76%,to{opacity:0;transform:scale(0) rotate(0deg)}46%{opacity:1;transform:scale(1) rotate(90deg)}62%{opacity:.75;transform:scale(.6) rotate(150deg)}}.bot[data-move=flip] .bot-rig{animation:bot-flip-rig 1.5s both}.bot[data-move=flip] .bot-spin{animation:bot-flip-spin 1.5s both}.bot[data-move=flip] .bot-floor{animation:bot-flip-floor 1.5s var(--ease-in-out) both}.bot[data-move=flip] .bot-arm-l{animation:bot-flip-arm-l 1.5s var(--ease-in-out) both}.bot[data-move=flip] .bot-arm-r{animation:bot-flip-arm-r 1.5s var(--ease-in-out) both}.bot[data-move=flip] .bot-jets{animation:bot-flip-jets 1.5s both}.bot[data-move=flip] .bot-ring{animation:bot-flip-ring 1.5s var(--ease-out) both}.bot[data-move=flip] .bot-spark{animation:bot-flip-spark 1.5s both}@keyframes bot-wave-l{0%,to{transform:rotate(12deg)}16%{transform:rotate(132deg)}28%{transform:rotate(110deg)}40%{transform:rotate(142deg)}52%{transform:rotate(110deg)}64%{transform:rotate(142deg)}78%{transform:rotate(125deg)}}@keyframes bot-wave-r{0%,to{transform:rotate(-12deg)}16%{transform:rotate(-132deg)}28%{transform:rotate(-110deg)}40%{transform:rotate(-142deg)}52%{transform:rotate(-110deg)}64%{transform:rotate(-142deg)}78%{transform:rotate(-125deg)}}@keyframes bot-wave-head{0%,to{transform:rotate(0deg)}18%,78%{transform:rotate(calc(var(--rv-dir) * 6deg))}}.bot[data-move=wave] .bot-head{animation:bot-wave-head 1.8s var(--ease-in-out) both}.bot[data-move=wave] .bot-arm-l{animation:bot-wave-l 1.8s var(--ease-in-out) both}[dir=rtl] .bot[data-move=wave] .bot-arm-l{animation:bot-arm-l 3.2s var(--ease-in-out) infinite}[dir=rtl] .bot[data-move=wave] .bot-arm-r{animation:bot-wave-r 1.8s var(--ease-in-out) both}@keyframes bot-hop{0%,to{transform:none}10%{transform:translateY(1px) scale(1.1,.88);animation-timing-function:cubic-bezier(.2,.7,.4,1)}27%{transform:translateY(-20px) scale(.95,1.06);animation-timing-function:cubic-bezier(.6,0,.8,.5)}42%{transform:translateY(0) scale(1.12,.86);animation-timing-function:cubic-bezier(.2,.7,.4,1)}57%{transform:translateY(-13px) scale(.97,1.04);animation-timing-function:cubic-bezier(.6,0,.8,.5)}71%{transform:translateY(0) scale(1.08,.9)}85%{transform:translateY(-2px) scale(.98,1.02)}}@keyframes bot-hop-floor{0%,42%,71%,to{transform:none;opacity:1}27%{transform:scale(.62);opacity:.55}57%{transform:scale(.74);opacity:.7}}@keyframes bot-hop-arm-l{0%,to{transform:rotate(12deg)}27%,57%{transform:rotate(75deg)}42%,71%{transform:rotate(24deg)}}@keyframes bot-hop-arm-r{0%,to{transform:rotate(-12deg)}27%,57%{transform:rotate(-75deg)}42%,71%{transform:rotate(-24deg)}}.bot[data-move=hop] .bot-rig{animation:bot-hop 1.2s both}.bot[data-move=hop] .bot-floor{animation:bot-hop-floor 1.2s var(--ease-in-out) both}.bot[data-move=hop] .bot-arm-l{animation:bot-hop-arm-l 1.2s var(--ease-in-out) both}.bot[data-move=hop] .bot-arm-r{animation:bot-hop-arm-r 1.2s var(--ease-in-out) both}@keyframes bot-look-head{0%,to{transform:none}18%,40%{transform:translateX(-2px) rotate(-5deg)}58%,80%{transform:translateX(2px) rotate(5deg)}}@keyframes bot-look-gaze{0%,to{transform:none}18%,40%{transform:translate(-5px,-1px)}58%,80%{transform:translate(5px,-1px)}}@keyframes bot-look-antenna{0%,to{transform:none}22%{transform:rotate(12deg)}44%{transform:rotate(-4deg)}62%{transform:rotate(-12deg)}84%{transform:rotate(4deg)}}.bot[data-move=look] .bot-head{animation:bot-look-head 2.4s var(--ease-in-out) both}.bot[data-move=look] .bot-scan{animation:bot-look-gaze 2.4s var(--ease-in-out) both}.bot[data-move=look] .bot-antenna{animation:bot-look-antenna 2.4s var(--ease-in-out) both}.bot[data-face=left]{--face:-1}.bot[data-face=right]{--face:1}.bot-leg-l{transform-origin:49px 130px}.bot-leg-r{transform-origin:71px 130px}.bot[data-face] .bot-gaze{transform:none}.bot[data-face] .bot-scan{transform:translateX(calc(var(--face) * 4px));transition:transform .3s var(--ease-out)}.bot:is([data-move=walk],[data-move=dash],[data-move=brake],[data-move=settle]) .bot-bob{animation:none}@keyframes bot-walk{0%,50%,to{transform:rotate(calc(var(--face) * 7deg)) translateY(0) scale(1.03,.97)}25%{transform:rotate(calc(var(--face) * 7deg + 3deg)) translateY(-3.5px) scale(.98,1.02)}75%{transform:rotate(calc(var(--face) * 7deg - 3deg)) translateY(-3.5px) scale(.98,1.02)}}@keyframes bot-step{0%,50%,to{transform:translateY(0) rotate(0deg)}22%{transform:translateY(-6px) rotate(calc(var(--face) * 10deg))}38%{transform:translateY(-2px) rotate(0deg)}}@keyframes bot-walk-arm-l{0%,50%,to{transform:rotate(16deg)}25%{transform:rotate(4deg)}75%{transform:rotate(30deg)}}@keyframes bot-walk-arm-r{0%,50%,to{transform:rotate(-16deg)}25%{transform:rotate(-30deg)}75%{transform:rotate(-4deg)}}@keyframes bot-walk-head{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(1.2px) rotate(calc(var(--face) * -2deg))}}.bot[data-move=walk] .bot-rig{animation:bot-walk .72s ease-in-out infinite}.bot[data-move=walk] .bot-leg-l{animation:bot-step .72s ease-in-out infinite}.bot[data-move=walk] .bot-leg-r{animation:bot-step .72s ease-in-out -.36s infinite}.bot[data-move=walk] .bot-arm-l{animation:bot-walk-arm-l .72s ease-in-out infinite}.bot[data-move=walk] .bot-arm-r{animation:bot-walk-arm-r .72s ease-in-out infinite}.bot[data-move=walk] .bot-head{animation:bot-walk-head .36s ease-in-out -.08s infinite}.bot[data-move=walk] .bot-antenna{animation:bot-antenna .72s ease-in-out -.2s infinite}.bot[data-move=walk] .bot-floor{animation:bot-floor .36s ease-in-out infinite}@keyframes bot-dash-in{0%{transform:translateY(0) rotate(0deg)}to{transform:translateY(-12px) rotate(calc(var(--face) * 14deg))}}@keyframes bot-dash{0%,to{transform:translateY(-12px) rotate(calc(var(--face) * 14deg))}50%{transform:translateY(-15px) rotate(calc(var(--face) * 15.5deg))}}@keyframes bot-dash-jets{0%,to{opacity:1;transform:scaleY(1.1)}50%{opacity:.75;transform:scaleY(1.45)}}@keyframes bot-trail{0%{opacity:0;transform:scaleX(.15)}35%{opacity:.95}to{opacity:0;transform:scaleX(1)}}@keyframes bot-tail{0%,to{opacity:.75;transform:scaleX(1) scaleY(1)}50%{opacity:.5;transform:scaleX(1.12) scaleY(.9)}}.bot-trails{opacity:0;transition:opacity .2s ease}.bot-trail{fill:none;stroke-width:2.4;stroke-linecap:round;transform-box:fill-box}.bot-trail:nth-of-type(2){stroke:#c6f135}.bot-trail:nth-of-type(3){stroke:#3ee0e8}.bot-trail:nth-of-type(4){stroke:#e23d8c}.bot-tail{transform-box:fill-box;opacity:.75}.bot-trails-l :is(.bot-trail,.bot-tail){transform-origin:right center}.bot-trails-r :is(.bot-trail,.bot-tail){transform-origin:left center}.bot[data-move=dash][data-face=left] .bot-trails-r,.bot[data-move=dash][data-face=right] .bot-trails-l{opacity:1}.bot[data-move=dash] .bot-rig{animation:bot-dash-in .22s var(--ease-out) both,bot-dash .5s ease-in-out .22s infinite}.bot[data-move=dash] .bot-head{animation:none;transform:rotate(calc(var(--face) * -5deg))}.bot[data-move=dash] .bot-antenna{animation:none;transform:rotate(calc(var(--face) * -20deg))}.bot[data-move=dash] .bot-arm-l{animation:none;transform:rotate(calc(12deg + var(--face) * 30deg))}.bot[data-move=dash] .bot-arm-r{animation:none;transform:rotate(calc(-12deg + var(--face) * 30deg))}.bot[data-move=dash] .bot-floor{animation:none;transform:scale(.55);opacity:.4}.bot[data-move=dash] .bot-jets{animation:bot-dash-jets .14s linear infinite}@keyframes bot-dash-ring{0%{opacity:.9;transform:scale(.5)}to{opacity:0;transform:scale(1.9)}}.bot[data-move=dash] .bot-ring{animation:bot-dash-ring .55s var(--ease-out) both}.bot[data-move=dash] .bot-trail{animation:bot-trail .42s linear infinite}.bot[data-move=dash] .bot-trail:nth-of-type(3){animation-delay:-.14s}.bot[data-move=dash] .bot-trail:nth-of-type(4){animation-delay:-.28s}.bot[data-move=dash] .bot-tail{animation:bot-tail .3s ease-in-out infinite}@keyframes bot-brake{0%{transform:translateY(-12px) rotate(calc(var(--face) * 14deg)) scale(1);animation-timing-function:cubic-bezier(.5,0,.8,.4)}55%{transform:translateY(0) rotate(calc(var(--face) * -6deg)) scale(1.1,.88);animation-timing-function:cubic-bezier(.2,.7,.4,1)}to{transform:translateY(0) rotate(0deg) scale(1)}}@keyframes bot-settle{0%{transform:rotate(calc(var(--face) * 7deg)) scale(1)}55%{transform:rotate(calc(var(--face) * -2.5deg)) scale(1.03,.97)}to{transform:rotate(0deg) scale(1)}}.bot[data-move=brake] .bot-rig{animation:bot-brake .4s both}.bot[data-move=settle] .bot-rig{animation:bot-settle .3s ease-out both}.chat-launcher-bot{position:absolute;inset:0;transform-origin:50% 85%;filter:drop-shadow(0 10px 14px rgb(4 20 16/.22));transition:opacity .35s ease,transform .6s cubic-bezier(.34,1.56,.64,1)}.chat-launcher-bot .bot{width:100%;height:100%}.chat-dock:not([data-open]) .chat-launcher:hover .chat-launcher-bot{transform:translateY(-3px)}.chat-launcher:focus-visible{outline:none}.chat-launcher:focus-visible .chat-launcher-bot{outline:2px solid var(--color-teal);outline-offset:4px;border-radius:22px}.chat-dock[data-open] .chat-launcher{pointer-events:none}.chat-dock[data-open] .chat-launcher-bot{opacity:0;transform:translateY(-30px) scale(.3);transition:opacity .25s ease .05s,transform .4s var(--ease-in-out)}.chat-dock[data-open] .bot *{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.bot,.bot *{animation:none!important;transition:none!important}.chat-launcher-bot{transition:none}.bot[data-mood=love] .bot-prop-heart{opacity:1}}