- Python FastAPI backend (chatbot-api/) with Claude Sonnet 4.6, prompt injection protection, rate limiting (30 msg/session), off-topic filtering, Redis session storage - Rocket.Chat integration for live monitoring and human takeover - Lead capture via n8n webhook - React chat widget: floating bubble, auto-greeting after 30s, glassmorphism chat window, mobile responsive, lazy loaded, Mixpanel analytics - Nginx proxy /api/chat → chatbot-api:8000 - Docker: chatbot-api + Redis services added to docker-compose Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
33 lines
723 B
CSS
33 lines
723 B
CSS
.scroll-to-top {
|
|
position: fixed;
|
|
bottom: calc(2rem + 64px);
|
|
right: 2rem;
|
|
z-index: 999;
|
|
width: 48px;
|
|
height: 48px;
|
|
border-radius: 50%;
|
|
background: var(--orange-100);
|
|
border: none;
|
|
color: #fff;
|
|
cursor: pointer;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
box-shadow: 0 4px 20px rgba(255, 91, 4, 0.4);
|
|
transition: background 0.3s ease;
|
|
}
|
|
|
|
.scroll-to-top:hover {
|
|
background: var(--yellow-100);
|
|
color: var(--dark-grey-100);
|
|
}
|
|
|
|
.scroll-to-top svg {
|
|
width: 22px;
|
|
height: 22px;
|
|
fill: none;
|
|
stroke: currentColor;
|
|
stroke-width: 2.5;
|
|
stroke-linecap: round;
|
|
stroke-linejoin: round;
|
|
}
|