@keyframes tp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes tp-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes tp-blink{0%,to{opacity:1}50%{opacity:0}}@keyframes tp-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes tp-fill{0%{width:0}}@keyframes tp-slidein{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes tp-ring{0%{stroke-dasharray:0 238}}@keyframes tp-draw{0%{stroke-dashoffset:200px}to{stroke-dashoffset:0}}@keyframes tp-count{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes tp-bar-grow{0%{height:0}}@keyframes tp-gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes tp-typing{0%{width:0}to{width:100%}}@keyframes tp-cursor{0%,to{border-color:currentColor}50%{border-color:#0000}}@keyframes tp-fadein{0%{opacity:0}to{opacity:1}}@keyframes tp-stripe-move{0%{background-position:0 0}to{background-position:32px 0}}@keyframes tp-indeterminate{0%{width:35%;left:-35%}50%{width:35%;left:100%}50.01%{width:35%;left:-35%}to{width:35%;left:100%}}@keyframes tp-shimmer-slide{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes tp-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes tp-tooltip-in{0%{opacity:0;transform:translateY(4px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tp-msg-appear{0%{opacity:0;transform:translateY(10px)scale(.94)}40%{opacity:1;transform:translateY(-2px)scale(1.01)}70%{transform:translateY(1px)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tp-msg-send{0%{opacity:0;transform:translateY(24px)scale(.85)rotate(-2deg)}25%{opacity:1;transform:translateY(-6px)scale(1.06)rotate(.5deg)}50%{transform:translateY(2px)scale(.97)rotate(-.2deg)}75%{transform:translateY(-1px)scale(1.01)rotate(0)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}@keyframes tp-msg-glow{0%{box-shadow:0 0 0 0 var(--glow-color,#0000)}30%{box-shadow:0 0 16px 4px var(--glow-color,#0000002e)}to{box-shadow:0 0 0 0 var(--glow-color,#0000)}}@keyframes tp-send-fly{0%{transform:scale(1)rotate(0)}20%{transform:scale(.75)rotate(-20deg)}50%{transform:scale(1.2)rotate(8deg)translateY(-4px)}75%{transform:scale(.95)rotate(-2deg)translateY(1px)}to{transform:scale(1)rotate(0)translateY(0)}}@keyframes tp-msg-ai-in{0%{opacity:0;transform:translate(-14px)translateY(6px)scale(.92)}40%{opacity:1;transform:translate(3px)translateY(-1px)scale(1.02)}70%{transform:translate(-1px)translateY(0)scale(.99)}to{opacity:1;transform:translate(0)translateY(0)scale(1)}}@keyframes tp-msg-me-in{0%{opacity:0;transform:translate(14px)translateY(6px)scale(.92)}40%{opacity:1;transform:translate(-3px)translateY(-1px)scale(1.02)}70%{transform:translate(1px)translateY(0)scale(.99)}to{opacity:1;transform:translate(0)translateY(0)scale(1)}}@keyframes tp-typing-enter{0%{opacity:0;transform:translateY(8px)scale(.85)}50%{opacity:1;transform:translateY(-2px)scale(1.03)}to{transform:translateY(0)scale(1)}}@keyframes tp-input-glow{0%,to{box-shadow:0 0 0 0 var(--glow-color,#0000)}50%{box-shadow:0 0 8px 2px var(--glow-color,#00000014)}}@keyframes tp-check-pop{0%{opacity:0;transform:scale(0)rotate(-45deg)}60%{opacity:1;transform:scale(1.3)rotate(5deg)}to{transform:scale(1)rotate(0)}}@keyframes tp-underline-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes tp-badge-pop{0%{opacity:0;transform:scale(.5)}60%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes tp-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes tp-typing-dot{0%,to{opacity:.3;transform:translateY(0)scale(1)}15%{opacity:1;transform:translateY(-6px)scale(1.25)}30%{opacity:.7;transform:translateY(1px)scale(.9)}45%{opacity:.85;transform:translateY(-2px)scale(1.08)}60%{opacity:.5;transform:translateY(0)scale(.98)}}@keyframes tp-typing-exit{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(4px)scale(.9)}}@keyframes tp-d-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes tp-d-breathe{0%,to{opacity:1}50%{opacity:.88}}@keyframes tp-d-glow-pulse{0%,to{box-shadow:var(--d-glow-base)}50%{box-shadow:var(--d-glow-peak)}}@keyframes tp-d-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes tp-d-tilt{0%,to{transform:rotate(0)}25%{transform:rotate(.5deg)}75%{transform:rotate(-.5deg)}}@keyframes tp-d-border-dance{0%{border-color:var(--d-bc1)}33%{border-color:var(--d-bc2)}66%{border-color:var(--d-bc3)}to{border-color:var(--d-bc1)}}@keyframes tp-d-morph{0%,to{border-radius:var(--d-morph-a)}33%{border-radius:var(--d-morph-b)}66%{border-radius:var(--d-morph-c)}}@keyframes tp-d-drift{0%,to{transform:translate(0)}50%{transform:translateX(var(--d-drift-x,3px))}}@keyframes tp-d-pulse-scale{0%,to{transform:scale(1)}50%{transform:scale(var(--d-pulse-s,1.02))}}@keyframes tp-d-shadow-shift{0%,to{box-shadow:var(--d-shad-a)}50%{box-shadow:var(--d-shad-b)}}@keyframes tp-d-micro-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.005)}}@keyframes tp-d-slidein-left{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes tp-d-slidein-bottom{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes tp-d-bouncein{0%{opacity:0;transform:scale(.9)}60%{opacity:1;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes tp-d-fadein-slow{0%{opacity:0}to{opacity:1}}
