.flow a{color:var(--color-wine)}@media (hover:hover){.flow a:hover{color:var(--color-teal)}.sage-btn:hover{background:var(--color-sage-hover)}}.flow :focus-visible{outline:3px solid var(--color-teal);outline-offset:2px}@keyframes surf-in{0%{transform:translate(-580px)}to{transform:none}}@keyframes bob{0%{transform:translateY(0)rotate(-3deg)}to{transform:translateY(-8px)rotate(3deg)}}@keyframes hide-at-end{0%,99.9%{opacity:1}to{opacity:0}}@keyframes ride-out{0%{transform:none}to{transform:translate(640px)}}@keyframes board-show{0%,99.9%{opacity:0}to{opacity:1}}@keyframes kai-jump{0%{opacity:0;transform:translateY(-84px)scale(.82)}1%{opacity:1;transform:translateY(-84px)scale(.82)}40%{transform:translateY(-190px)scale(1)}82%{transform:translateY(0)scale(1.05,.93)}to{opacity:1;transform:none}}@keyframes shadow-in{0%{opacity:0;transform:scaleX(.3)}to{opacity:1;transform:none}}@keyframes kai-wave{0%{transform:rotate(-14deg)}to{transform:rotate(10deg)}}@keyframes kai-type{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.surf-in{animation:1.6s cubic-bezier(.2,.7,.3,1) both surf-in}.ride-out{animation:.6s cubic-bezier(.5,0,.8,.4) 1.75s both ride-out}.rider{transform-origin:50% 100%;animation:bob .4s ease-in-out infinite alternate, hide-at-end calc(1.7s + var(--hand,0s)) linear both}.board-show{animation:board-show calc(1.7s + var(--hand,0s)) linear both}.kai-jump{transform-origin:50% 100%;animation:kai-jump .9s cubic-bezier(.3, .6, .4, 1) calc(1.7s + var(--hand,0s)) both}.kai-shadow{animation:shadow-in .4s ease-out calc(2.3s + var(--hand,0s)) both}.kai-arm{transform-origin:6.1% 78.7%;animation:kai-wave .42s ease-in-out calc(2.5s + var(--hand,0s)) infinite alternate both}.kai-l1{animation:kai-type .35s ease-out calc(2.6s + var(--hand,0s)) both}.kai-l2{animation:kai-type .35s ease-out calc(3s + var(--hand,0s)) both}@keyframes surf-in-desk{0%{transform:translateX(calc(-1 * ((50.1vw + 170px) / var(--s) + 200px)))}to{transform:none}}@keyframes ride-out-desk{0%{transform:none}to{transform:translateX(calc((50vw - 160px) / var(--s) + 380px))}}@media (min-width:1024px){.surf-in{animation-name:surf-in-desk}.ride-out{animation-name:ride-out-desk;animation-delay:1.6s}.hello-box{--hand:-.1s;--s:1.2;width:calc(260px * var(--s));height:calc(407px * var(--s));margin-top:calc(190px * var(--s))}@supports (scale:tan(atan2(1px, 1px))){.hello-box{--s:min(1.5, tan(atan2(100dvh - 48px, 597px)))}}.hello-box>*{transform-origin:0 0;width:260px;scale:var(--s)}}@media (prefers-reduced-motion:reduce){.surf-in{display:none}.kai-jump,.kai-shadow,.kai-arm,.kai-l1,.kai-l2{animation:none}}@keyframes kai-move{0%{transform:translateY(210px)scale(1.55)}to{transform:none}}@keyframes card-up{0%{transform:translateY(105%)}to{transform:none}}@keyframes field-shake{0%,to{transform:none}20%{transform:translate(-8px)}40%{transform:translate(7px)}60%{transform:translate(-5px)}80%{transform:translate(3px)}}@keyframes kai-tilt{0%,to{transform:rotate(-3deg)}50%{transform:rotate(2deg)}}.kai-move{transform-origin:50% 0;animation:.8s cubic-bezier(.3,.9,.3,1) both kai-move}.card-up{animation:.7s cubic-bezier(.2,.9,.3,1) .35s both card-up}.field-shake{animation:.45s ease-in-out .3s both field-shake}.kai-tilt{transform-origin:50% 90%;animation:2.4s ease-in-out infinite kai-tilt}.code-input{letter-spacing:.18em}.code-input::placeholder{color:var(--color-placeholder-code);letter-spacing:.18em}.code-input:focus{outline:3px solid var(--color-teal);outline-offset:2px}@media (max-width:359px){.code-input,.code-input::placeholder{letter-spacing:.1em}}@keyframes card-up-desk{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}@media (min-width:1024px){.card-up{animation-name:card-up-desk}}@media (prefers-reduced-motion:reduce){.kai-move,.card-up,.field-shake,.kai-tilt{animation:none}}@keyframes sheet-drop{0%,24.1%{transform:translateY(-100%)}86.2%{transform:translateY(0)}93.1%{transform:translateY(-16px)}to{transform:translateY(0)}}@keyframes ok-fade{0%,13.8%{opacity:0;transform:translateY(8px)}24.1%,to{opacity:1;transform:none}}@keyframes kai-swing{0%,to{transform:rotate(4deg)}50%{transform:rotate(-4deg)}}@keyframes pop-in{0%{opacity:0;transform:scale(0)}57%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes cross-fade{0%{opacity:0}to{opacity:1}}.sheet-drop{animation:1.4s cubic-bezier(.55,0,.3,1) both sheet-drop}.ok-fade{animation:1.4s ease-out both ok-fade}.kai-swing{transform-origin:50% 15px;animation:.9s ease-in-out infinite kai-swing}.pop-in{animation:.34s ease-out 1.4s both pop-in}@media (prefers-reduced-motion:reduce){.sheet-drop{animation:.2s ease-out both cross-fade!important}.ok-fade,.kai-swing,.pop-in{animation:none}}@keyframes msg-in{0%{opacity:0;transform:translateY(10px)scale(.97)}to{opacity:1;transform:none}}@keyframes dot{0%,60%,to{opacity:.45;transform:translateY(0)}30%{opacity:1;transform:translateY(-5px)}}.msg-in{animation:.28s ease-out both msg-in}.dot{background:var(--color-teal);border-radius:50%;width:8px;height:8px;animation:1.1s ease-in-out infinite dot;display:inline-block}.dot2{animation-delay:.15s}.dot3{animation-delay:.3s}.wallpaper{opacity:.28;background-image:url(/kai/wallpaper.png);background-size:180px 180px}@media (hover:hover){.chip:hover{background:var(--color-wine);color:var(--color-sand)}}.composer-input{border:1.5px solid var(--color-composer-line)}.composer-input::placeholder{color:var(--color-placeholder)}.composer-input:focus,.composer-input:focus-visible{outline:3px solid var(--color-teal);outline-offset:2px}.thread::-webkit-scrollbar{width:0}.progress-fill{transition:width .4s}@media (prefers-reduced-motion:reduce){.msg-in,.dot{animation:none}}@keyframes done-jump{0%{opacity:1;transform:none}15%{transform:scale(1.05,.93)}50%{transform:translateY(-110px)}85%{transform:scale(1.05,.94)}99.9%{opacity:1;transform:none}to{opacity:0;transform:none}}@keyframes kiss-show{0%,99.9%{opacity:0}to{opacity:1}}@keyframes shadow-jump{0%,15%,85%,to{opacity:1;transform:none}50%{opacity:.45;transform:scaleX(.55)}}@keyframes kiss-heart{0%{opacity:0;transform:translate(0)scale(.4)}10%{opacity:1;transform:translate(-6px,-14px)scale(1)}50%{opacity:0;transform:translate(-46px,-130px)scale(1.35)rotate(-14deg)}to{opacity:0;transform:translate(-46px,-130px)}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.done-jump{transform-origin:50% 100%;animation:1s cubic-bezier(.3,.6,.4,1) .2s both done-jump}.kai-kiss{animation:1.2s linear both kiss-show}.done-shadow{animation:1s cubic-bezier(.3,.6,.4,1) .2s both shadow-jump}.kiss-heart{opacity:0;animation:3s ease-out 1.5s infinite kiss-heart}.kiss-heart-2{animation-delay:1.85s}.rise{animation:.6s ease-out 1.2s both rise}@media (prefers-reduced-motion:reduce){.done-jump{display:none}.kai-kiss,.done-shadow,.rise{animation:none}.kiss-heart{display:none}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}.sheet{background:var(--color-sand);width:100%;max-width:100%;max-height:80dvh;color:var(--color-wine);border:0;border-radius:24px 24px 0 0;margin:0;padding:0;inset:auto 0 0}.sheet[open]{flex-direction:column;animation:.35s cubic-bezier(.2,.9,.3,1) both sheet-up;display:flex}@media (min-width:1024px){.sheet{border-radius:24px;max-width:640px;height:fit-content;margin:auto;inset:0}}@media (prefers-reduced-motion:reduce){.sheet[open]{animation:.2s ease-out both cross-fade}}@keyframes kai-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.kai-float{animation:3.2s ease-in-out infinite kai-float}@media (min-width:1024px){.wallpaper{background-size:200px 200px}}@media (prefers-reduced-motion:reduce){.kai-float{animation:none}}
