@keyframes bounce-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes ping-delayed{0%{transform:scale(1);opacity:.4}70%{transform:scale(1.8);opacity:.15}to{transform:scale(2.2);opacity:0}}@keyframes pulse-glow{0%,to{box-shadow:0 0 0 0 rgba(59,130,246,.6)}50%{box-shadow:0 0 0 15px rgba(59,130,246,0)}}@keyframes enhanced-ping{0%{transform:scale(1);opacity:.3}75%{transform:scale(1.6);opacity:.1}to{transform:scale(2);opacity:0}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.animate-bounce-subtle{animation:bounce-subtle 2s ease-in-out infinite}.animation-delay-1000{animation-delay:1.5s}.animate-ping-slow{animation:enhanced-ping 3s cubic-bezier(.4,0,.6,1) infinite}.animate-ping-delayed{animation:ping-delayed 4s cubic-bezier(.4,0,.6,1) infinite}.animate-enhanced-ping{animation:enhanced-ping 2.5s cubic-bezier(.4,0,.6,1) infinite}.animate-pulse-glow{animation:pulse-glow 3s ease-in-out infinite}.animate-shimmer{animation:shimmer 2s ease-in-out infinite}.chat-window-enter{animation:slideInFromBottomRight .5s cubic-bezier(.16,1,.3,1) forwards}.chat-window-exit{animation:slideOutToBottomRight .3s cubic-bezier(.4,0,1,1) forwards}@keyframes slideInFromBottomRight{0%{opacity:0;transform:translateY(100%) translateX(20%) scale(.8)}to{opacity:1;transform:translateY(0) translateX(0) scale(1)}}@keyframes slideOutToBottomRight{0%{opacity:1;transform:translateY(0) translateX(0) scale(1)}to{opacity:0;transform:translateY(100%) translateX(20%) scale(.8)}}.button-ripple{position:relative;overflow:hidden}.clickable,[role=button],button{cursor:pointer!important}.clickable:disabled,[role=button]:disabled,button:disabled{cursor:not-allowed!important}.button-ripple:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.3);transform:translate(-50%,-50%);transition:width .6s,height .6s}.button-ripple:active:before{width:300px;height:300px}.bubble-tail{animation:bubbleTailPop .3s ease-out .2s both}@keyframes bubbleTailPop{0%{transform:rotate(45deg) scale(0)}to{transform:rotate(45deg) scale(1)}}@keyframes slideInFromBottomLeft{0%{opacity:0;transform:translateY(15px) translateX(10px) scale(.95)}to{opacity:1;transform:translateY(0) translateX(0) scale(1)}}.slide-in-from-bottom-left{animation:slideInFromBottomLeft .4s cubic-bezier(.16,1,.3,1) forwards}.gradient-shift{background-size:200% 200%;animation:gradientShift 3s ease infinite}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.float-sparkle{animation:floatSparkle 2s ease-in-out infinite}@keyframes floatSparkle{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-2px) rotate(5deg)}75%{transform:translateY(2px) rotate(-5deg)}}.markdown-content{line-height:1.6;color:#374151;word-wrap:break-word;overflow-wrap:break-word}.markdown-content ul{margin:.5rem 0;padding-left:0}.markdown-content li{position:relative;padding-left:1.5rem;margin-bottom:.25rem;list-style:none}.markdown-content li:before{content:"•";color:#3b82f6;font-weight:700;position:absolute;left:.25rem;top:0}.markdown-content li button{display:inline;line-height:inherit;font-size:inherit}.markdown-content li button:hover{background-color:#eff6ff;border-radius:.375rem;transform:translateY(-1px);box-shadow:0 4px 12px rgba(59,130,246,.15)}.markdown-content p{margin:.75rem 0}.markdown-content p:first-child{margin-top:0}.markdown-content p:last-child{margin-bottom:0}.markdown-content button{transition:all .2s cubic-bezier(.4,0,.2,1);text-decoration:none;display:inline;line-height:inherit}.markdown-content button:hover{color:#2563eb!important;text-decoration:none;background-color:#eff6ff;transform:translateY(-1px);box-shadow:0 2px 8px rgba(37,99,235,.15)}.markdown-content button:active{transform:translateY(0);box-shadow:0 1px 4px rgba(37,99,235,.2)}.markdown-content button:focus{outline:2px solid #3b82f6;outline-offset:2px}.markdown-content li{transition:all .15s ease-in-out}.markdown-content li:hover{transform:translateX(2px)}.markdown-content a{text-decoration:none;color:inherit}.markdown-content.user-message,.markdown-content.user-message *{color:white!important}.markdown-content.user-message strong{color:white!important;font-weight:600}.markdown-content.user-message p{color:white!important}.markdown-content pre{border:1px solid #e5e7eb;border-radius:.375rem;padding:.75rem;overflow-x:auto;white-space:pre-wrap;word-wrap:break-word;line-height:1.4;max-width:100%}.markdown-content code,.markdown-content pre{background-color:#f3f4f6;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem}.markdown-content code{border:1px solid #e5e7eb;border-radius:.25rem;padding:.125rem .25rem;word-break:break-all;overflow-wrap:break-word}.technical-details{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;margin-top:.5rem;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;max-width:100%;overflow-x:auto}.technical-details strong{color:#374151;font-weight:600}.error-message-content{white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;max-width:100%}.error-message-content .long-url{word-break:break-all;overflow-wrap:break-word}.error-message-content .json-content{background-color:#f8f9fa;border-left:3px solid #6b7280;padding-left:.75rem;margin:.5rem 0;font-family:monospace;font-size:.8em;white-space:pre-wrap;word-wrap:break-word}.message-count-indicator{background:linear-gradient(135deg,#ef4444,#dc2626)}.context-menu{user-select:none;box-shadow:0 10px 25px rgba(0,0,0,.15);backdrop-filter:blur(10px)}.context-menu-item{transition:all .15s ease-in-out}.context-menu-item:hover{background-color:#f3f4f6;transform:translateX(2px)}.context-menu-item:active{background-color:#e5e7eb;transform:translateX(0)}.markdown-content button[title*=right-click]{position:relative}.markdown-content button[title*=right-click]:hover:after{position:absolute;bottom:-25px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.8);color:white;padding:4px 8px;border-radius:4px;font-size:11px;white-space:nowrap;z-index:1000;pointer-events:none;opacity:0;animation:fadeInTooltip .3s ease-in-out 1s forwards}@keyframes fadeInTooltip{0%{opacity:0;transform:translateX(-50%) translateY(5px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.markdown-content button{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.markdown-content button:disabled{pointer-events:none;opacity:.7}.markdown-content button.loading{cursor:wait!important}.markdown-content button.loading:hover{background-color:#f3f4f6!important;transform:none!important}@keyframes spin-loading{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-spinner{animation:spin-loading 1s linear infinite}@keyframes pulse-notification{0%,to{transform:scale(1);box-shadow:0 2px 8px rgba(239,68,68,.4)}50%{transform:scale(1.1);box-shadow:0 4px 12px rgba(239,68,68,.6)}}.capi-avatar-container{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.capi-avatar-image{width:2.5rem;height:2.5rem;object-fit:cover;object-position:top;transform:scale(1.5);margin-top:-2px;filter:brightness(1.05) contrast(1.1)}.capi-avatar-container:before{content:"";position:absolute;inset:-1px;border-radius:inherit;background:linear-gradient(45deg,rgba(59,130,246,.3),rgba(147,197,253,.3));z-index:-1}.capi-avatar-interactive:hover .capi-avatar-image{transform:scale(1.6);transition:transform .2s ease-in-out}.capi-avatar-loading{animation:pulse 2s infinite}.capability-tag{transition:all .2s ease-in-out}.capability-tag:hover{transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.1)}@keyframes status-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.status-indicator{animation:status-pulse 2s infinite}@keyframes gradient-text{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.gradient-text{background:linear-gradient(-45deg,#3b82f6,#8b5cf6,#06b6d4,#10b981);background-size:400% 400%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-text 3s ease infinite}.interactive-button{position:relative;overflow:hidden}.interactive-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.interactive-button:hover:before{left:100%}.capi-video-container{position:relative;border-radius:50%;overflow:hidden;background:linear-gradient(45deg,#3b82f6,#8b5cf6);padding:2px}.capi-video-container img,.capi-video-container video{width:100%;height:100%;object-fit:cover;border-radius:50%}.category-card{transition:all .3s cubic-bezier(.4,0,.2,1)}.category-card:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 10px 25px rgba(0,0,0,.15)}.page-transition-enter{animation:slideInFromRight .3s ease-out}.page-transition-exit{animation:slideOutToLeft .3s ease-out}@keyframes slideOutToLeft{0%{transform:translateX(0);opacity:1}to{transform:translateX(-100%);opacity:0}}@media (max-width:640px){.welcome-bubble{max-width:calc(100vw - 2rem);right:.75rem}.welcome-bubble-content{font-size:.75rem;line-height:1.2}}@media (max-width:480px){.welcome-bubble{max-width:calc(100vw - 1rem);right:.5rem}}.hidden-chat-button{animation:slideInFromRight .3s ease-out}@keyframes slideInFromRight{0%{transform:translateX(100%) translateY(-50%);opacity:0}to{transform:translateX(0) translateY(-50%);opacity:1}}.hidden-button-pulse{animation:hiddenButtonPulse 2s infinite}@keyframes hiddenButtonPulse{0%,to{box-shadow:0 0 0 0 rgba(59,130,246,.4)}50%{box-shadow:0 0 0 4px rgba(59,130,246,.1)}}.hide-button-appear{animation:hideButtonAppear .2s ease-out}@keyframes hideButtonAppear{0%{transform:scale(0) rotate(180deg);opacity:0}to{transform:scale(1) rotate(0deg);opacity:1}}.dropdown-menu-enter{animation:dropdownSlideIn .2s ease-out}@keyframes dropdownSlideIn{0%{transform:translateX(10px) scale(.95);opacity:0}to{transform:translateX(0) scale(1);opacity:1}}.tooltip-dropdown-enter{animation:tooltipDropdownSlideIn .2s ease-out}@keyframes tooltipDropdownSlideIn{0%{transform:translateY(-10px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.vertical-icon-bar{animation:verticalIconBarSlideDown .3s ease-out}@keyframes verticalIconBarSlideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.icon-button-hover{transition:all .2s cubic-bezier(.4,0,.2,1)}.icon-button-hover:hover{transform:scale(1.1);box-shadow:0 4px 12px rgba(59,130,246,.15)}.tooltip-arrow{transition:opacity .2s ease-in-out}.individual-tooltip{transform:translateY(-50%) translateX(-2px);transition:all .2s ease-in-out}.individual-tooltip:before{content:"";position:absolute;left:100%;top:50%;transform:translateY(-50%);width:0;height:0;border:4px solid transparent;border-left-color:#374151}.chat-button-hide{animation:chatButtonHide .3s ease-in-out forwards}@keyframes chatButtonHide{0%{transform:scale(1);opacity:1}50%{transform:scale(.8) rotate(90deg);opacity:.5}to{transform:scale(0);opacity:0}}.chat-button-show{animation:chatButtonShow .3s ease-in-out forwards}@keyframes chatButtonShow{0%{transform:scale(0);opacity:0}50%{transform:scale(.8) rotate(-90deg);opacity:.5}to{transform:scale(1);opacity:1}}.hidden-button-hover{transition:all .3s cubic-bezier(.4,0,.2,1)}.hidden-button-hover:hover{transform:translateX(-2px) scale(1.05);box-shadow:-4px 0 20px rgba(59,130,246,.3)}.tooltip-enhanced{position:relative}.tooltip-enhanced:after{content:attr(data-tooltip);position:absolute;right:calc(100% + 8px);top:50%;transform:translateY(-50%);background:rgba(0,0,0,.8);color:white;padding:4px 8px;border-radius:4px;font-size:12px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:1000}.tooltip-enhanced:hover:after{opacity:1}.markdown-content .clickable-post-link{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;margin:2px 0;background:linear-gradient(135deg,rgba(59,130,246,.05),rgba(59,130,246,.1));border:1px solid rgba(59,130,246,.2);border-radius:8px;color:#2563eb;text-decoration:none;font-weight:500;transition:all .2s ease;cursor:pointer;position:relative;overflow:hidden}.markdown-content .clickable-post-link:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .5s ease}.markdown-content .clickable-post-link:hover:before{left:100%}.markdown-content .clickable-post-link:hover{background:linear-gradient(135deg,rgba(59,130,246,.1),rgba(59,130,246,.15));border-color:rgba(59,130,246,.4);color:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 12px rgba(59,130,246,.2)}.markdown-content .clickable-post-link:active{transform:translateY(0);box-shadow:0 2px 6px rgba(59,130,246,.2)}.markdown-content .clickable-post-link .link-icon{transition:transform .2s ease}.markdown-content .clickable-post-link:hover .link-icon{transform:scale(1.1) rotate(5deg)}.markdown-content ul li{position:relative;padding-left:0;margin-bottom:8px}.markdown-content ul li:before{display:none}.markdown-content li:has(.clickable-post-link):hover{transform:translateX(4px);transition:transform .2s ease}@keyframes minimizeChat{0%{transform:scale(1)}to{transform:scale(.85)}}@keyframes maximizeChat{0%{transform:scale(.85)}to{transform:scale(1)}}.chat-minimize{animation:minimizeChat .3s ease-out forwards}.chat-maximize{animation:maximizeChat .3s ease-out forwards}.chat-minimized{transform-origin:bottom right}.chat-minimized .chat-header{padding:.5rem}.chat-minimized .chat-avatar{width:2rem;height:2rem}.chat-minimized .chat-message{padding:.5rem;font-size:.875rem}.chat-minimized .chat-input{padding:.25rem .5rem;font-size:.75rem}@media (max-width:767px){.chat-minimized{margin:0;border-radius:.75rem .75rem 0 0}.chat-minimized .chat-header{padding:.375rem}.chat-minimized .chat-message{padding:.375rem;font-size:.8125rem}.mobile-chat-fullscreen,.mobile-chat-minimize{transform:translateY(0);transition:all .3s ease-out}}