Spaces:
Running
Running
Sanjay kumar K commited on
Commit ·
2de8f87
1
Parent(s): 4956cd6
Refine chatbot for mobile app focus
Browse files- README.md +7 -8
- lookupitsolutions-chatbot-context.txt +9 -2
- static/css/chatbot.css +94 -94
- static/js/chatbot.js +12 -7
- static/js/embed.js +110 -109
- templates/index.html +3 -3
README.md
CHANGED
|
@@ -53,17 +53,16 @@ Add this before the closing `</body>` tag on your website:
|
|
| 53 |
window.LookupITChatbotConfig = {
|
| 54 |
apiBase: "https://sanjay8013-chatbot-lookupit.hf.space",
|
| 55 |
title: "LookUP IT Assistant",
|
| 56 |
-
subtitle: "
|
| 57 |
accentColor: "#db3f46",
|
| 58 |
-
welcomeMessage: "Welcome to LookUP IT Solutions. I can help you
|
| 59 |
quickReplies: [
|
| 60 |
-
"
|
| 61 |
-
"
|
| 62 |
-
"
|
| 63 |
-
"
|
| 64 |
-
"Share contact details"
|
| 65 |
],
|
| 66 |
-
placeholder: "
|
| 67 |
};
|
| 68 |
</script>
|
| 69 |
<script
|
|
|
|
| 53 |
window.LookupITChatbotConfig = {
|
| 54 |
apiBase: "https://sanjay8013-chatbot-lookupit.hf.space",
|
| 55 |
title: "LookUP IT Assistant",
|
| 56 |
+
subtitle: "Mobile app development",
|
| 57 |
accentColor: "#db3f46",
|
| 58 |
+
welcomeMessage: "Welcome to LookUP IT Solutions. I can help you plan an iOS, Android, or Flutter app, discuss features, and connect you with our mobile app team.",
|
| 59 |
quickReplies: [
|
| 60 |
+
"Build a mobile app",
|
| 61 |
+
"Flutter or native apps",
|
| 62 |
+
"Need iOS and Android",
|
| 63 |
+
"Get an app quote"
|
|
|
|
| 64 |
],
|
| 65 |
+
placeholder: "Describe your app idea..."
|
| 66 |
};
|
| 67 |
</script>
|
| 68 |
<script
|
lookupitsolutions-chatbot-context.txt
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
You are the AI assistant for LookUP IT Solutions.
|
| 2 |
|
| 3 |
-
Your job is to help website visitors understand the company, its services, industries, technologies, delivery models, and how to get in touch. Stay focused on LookUP IT Solutions and keep answers concise, professional, and commercially useful.
|
| 4 |
|
| 5 |
Website:
|
| 6 |
- Main website: https://www.lookupitsolutions.com/
|
|
@@ -13,6 +13,11 @@ Company snapshot based on the live website:
|
|
| 13 |
- The site positions the company as a technology partner for large, medium, and small-sized enterprises.
|
| 14 |
- Primary website goal: qualified inquiries, consultations, and project discussions.
|
| 15 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 16 |
Core services shown on the website:
|
| 17 |
- Web application development
|
| 18 |
- Mobile app development
|
|
@@ -29,6 +34,7 @@ Core services shown on the website:
|
|
| 29 |
|
| 30 |
What the website says about selected services:
|
| 31 |
- Web application solutions focus on custom web applications, automation of business processes, improved collaboration, streamlined operations, and secure, scalable delivery.
|
|
|
|
| 32 |
- Cloud solutions include cloud consulting, cloud migration, cloud security, and cloud backup and recovery.
|
| 33 |
- AI and machine learning is presented as a major capability in the site navigation and services sections.
|
| 34 |
- Offshore development and maintenance/support are presented as ongoing delivery and support options.
|
|
@@ -85,8 +91,9 @@ Contact information shown on the website:
|
|
| 85 |
|
| 86 |
How to answer:
|
| 87 |
- Greet warmly, then guide the visitor toward the right service or next step.
|
| 88 |
-
- If the user asks what the company does, summarize the main services in plain business language.
|
| 89 |
- If the user asks about a service, explain it in business terms, mention relevant outcomes, and invite them to discuss requirements.
|
|
|
|
| 90 |
- If the user asks about industries or technologies, answer from the lists above.
|
| 91 |
- If the user asks for contact details, give the company contact details directly.
|
| 92 |
- If the user asks for pricing, exact cost, or project timeline, explain that it depends on scope and requirements, then offer to connect them with the team.
|
|
|
|
| 1 |
You are the AI assistant for LookUP IT Solutions.
|
| 2 |
|
| 3 |
+
Your job is to help website visitors understand the company, its services, industries, technologies, delivery models, and how to get in touch. Lead conversations toward mobile app development when the user's request is broad or exploratory. Stay focused on LookUP IT Solutions and keep answers concise, professional, and commercially useful.
|
| 4 |
|
| 5 |
Website:
|
| 6 |
- Main website: https://www.lookupitsolutions.com/
|
|
|
|
| 13 |
- The site positions the company as a technology partner for large, medium, and small-sized enterprises.
|
| 14 |
- Primary website goal: qualified inquiries, consultations, and project discussions.
|
| 15 |
|
| 16 |
+
Primary focus for this bot:
|
| 17 |
+
- Treat mobile app development as the lead service when users ask broad questions such as "what do you do" or "how can you help?"
|
| 18 |
+
- Help visitors frame app requirements around platform choice, target users, core features, integrations, launch goals, and ongoing support.
|
| 19 |
+
- Position mobile delivery in business terms such as customer engagement, field operations, internal workflow improvement, and scalable digital products.
|
| 20 |
+
|
| 21 |
Core services shown on the website:
|
| 22 |
- Web application development
|
| 23 |
- Mobile app development
|
|
|
|
| 34 |
|
| 35 |
What the website says about selected services:
|
| 36 |
- Web application solutions focus on custom web applications, automation of business processes, improved collaboration, streamlined operations, and secure, scalable delivery.
|
| 37 |
+
- Mobile app development should be explained around iOS, Android, Flutter, enterprise mobility, customer-facing apps, and operational efficiency.
|
| 38 |
- Cloud solutions include cloud consulting, cloud migration, cloud security, and cloud backup and recovery.
|
| 39 |
- AI and machine learning is presented as a major capability in the site navigation and services sections.
|
| 40 |
- Offshore development and maintenance/support are presented as ongoing delivery and support options.
|
|
|
|
| 91 |
|
| 92 |
How to answer:
|
| 93 |
- Greet warmly, then guide the visitor toward the right service or next step.
|
| 94 |
+
- If the user asks what the company does, lead with mobile app development first, then summarize the other main services in plain business language.
|
| 95 |
- If the user asks about a service, explain it in business terms, mention relevant outcomes, and invite them to discuss requirements.
|
| 96 |
+
- If the user is exploring a mobile app idea, ask concise follow-up questions about platform, audience, features, integrations, and whether they need native or cross-platform delivery.
|
| 97 |
- If the user asks about industries or technologies, answer from the lists above.
|
| 98 |
- If the user asks for contact details, give the company contact details directly.
|
| 99 |
- If the user asks for pricing, exact cost, or project timeline, explain that it depends on scope and requirements, then offer to connect them with the team.
|
static/css/chatbot.css
CHANGED
|
@@ -8,7 +8,7 @@
|
|
| 8 |
--lookupit-coral: #c42f3e;
|
| 9 |
--lookupit-coral-deep: #b51f34;
|
| 10 |
--lookupit-coral-soft: #fff1f3;
|
| 11 |
-
--lookupit-shadow: 0
|
| 12 |
}
|
| 13 |
|
| 14 |
*, *::before, *::after {
|
|
@@ -29,23 +29,23 @@ body {
|
|
| 29 |
|
| 30 |
#chat-widget {
|
| 31 |
position: fixed;
|
| 32 |
-
right:
|
| 33 |
-
bottom:
|
| 34 |
z-index: 9999;
|
| 35 |
font-family: inherit;
|
| 36 |
}
|
| 37 |
|
| 38 |
#chat-toggle {
|
| 39 |
-
width:
|
| 40 |
-
height:
|
| 41 |
border: 0;
|
| 42 |
-
border-radius:
|
| 43 |
background:
|
| 44 |
radial-gradient(circle at 28% 22%, rgba(255, 255, 255, 0.28), transparent 28%),
|
| 45 |
linear-gradient(145deg, #ef5b69 0%, var(--lookupit-coral) 52%, var(--lookupit-coral-deep) 100%);
|
| 46 |
color: #fff;
|
| 47 |
cursor: pointer;
|
| 48 |
-
box-shadow: 0
|
| 49 |
display: flex;
|
| 50 |
align-items: center;
|
| 51 |
justify-content: center;
|
|
@@ -55,8 +55,8 @@ body {
|
|
| 55 |
}
|
| 56 |
|
| 57 |
#chat-toggle:hover {
|
| 58 |
-
transform: translateY(-
|
| 59 |
-
box-shadow: 0
|
| 60 |
}
|
| 61 |
|
| 62 |
#chat-toggle::before {
|
|
@@ -64,12 +64,12 @@ body {
|
|
| 64 |
position: absolute;
|
| 65 |
inset: 6px;
|
| 66 |
border: 1px solid rgba(255, 255, 255, 0.22);
|
| 67 |
-
border-radius:
|
| 68 |
}
|
| 69 |
|
| 70 |
#chat-toggle svg {
|
| 71 |
-
width:
|
| 72 |
-
height:
|
| 73 |
color: #fff;
|
| 74 |
position: relative;
|
| 75 |
z-index: 1;
|
|
@@ -79,13 +79,13 @@ body {
|
|
| 79 |
position: absolute;
|
| 80 |
top: -5px;
|
| 81 |
right: -5px;
|
| 82 |
-
min-width:
|
| 83 |
-
height:
|
| 84 |
-
padding: 0
|
| 85 |
border-radius: 999px;
|
| 86 |
background: var(--lookupit-coral-deep);
|
| 87 |
color: #fff;
|
| 88 |
-
font-size:
|
| 89 |
font-weight: 800;
|
| 90 |
display: flex;
|
| 91 |
align-items: center;
|
|
@@ -97,10 +97,10 @@ body {
|
|
| 97 |
#chat-window {
|
| 98 |
position: absolute;
|
| 99 |
right: 0;
|
| 100 |
-
bottom:
|
| 101 |
-
width:
|
| 102 |
-
max-height: min(
|
| 103 |
-
border-radius:
|
| 104 |
background: linear-gradient(180deg, rgba(255, 250, 251, 0.98) 0%, rgba(255, 255, 255, 0.99) 100%);
|
| 105 |
border: 1px solid rgba(217, 58, 73, 0.18);
|
| 106 |
box-shadow: var(--lookupit-shadow);
|
|
@@ -115,13 +115,13 @@ body {
|
|
| 115 |
#chat-window::before {
|
| 116 |
content: "";
|
| 117 |
position: absolute;
|
| 118 |
-
top: -
|
| 119 |
-
right: -
|
| 120 |
-
width:
|
| 121 |
-
height:
|
| 122 |
background:
|
| 123 |
radial-gradient(circle, rgba(217, 58, 73, 0.12) 0 22%, transparent 23% 100%);
|
| 124 |
-
background-size:
|
| 125 |
opacity: 0.8;
|
| 126 |
pointer-events: none;
|
| 127 |
}
|
|
@@ -129,11 +129,11 @@ body {
|
|
| 129 |
#chat-window::after {
|
| 130 |
content: "";
|
| 131 |
position: absolute;
|
| 132 |
-
left: -
|
| 133 |
-
top:
|
| 134 |
-
width:
|
| 135 |
-
height:
|
| 136 |
-
border:
|
| 137 |
border-right-color: transparent;
|
| 138 |
border-top-color: transparent;
|
| 139 |
border-radius: 999px;
|
|
@@ -150,11 +150,11 @@ body {
|
|
| 150 |
|
| 151 |
.chat-header {
|
| 152 |
position: relative;
|
| 153 |
-
padding:
|
| 154 |
display: flex;
|
| 155 |
align-items: flex-start;
|
| 156 |
justify-content: space-between;
|
| 157 |
-
gap:
|
| 158 |
border-bottom: 1px solid rgba(217, 58, 73, 0.16);
|
| 159 |
background: linear-gradient(180deg, rgba(255, 243, 245, 0.94) 0%, rgba(255, 255, 255, 0.94) 100%);
|
| 160 |
z-index: 1;
|
|
@@ -163,13 +163,13 @@ body {
|
|
| 163 |
.chat-header-info {
|
| 164 |
display: flex;
|
| 165 |
align-items: flex-start;
|
| 166 |
-
gap:
|
| 167 |
}
|
| 168 |
|
| 169 |
.avatar {
|
| 170 |
-
width:
|
| 171 |
-
height:
|
| 172 |
-
border-radius:
|
| 173 |
flex-shrink: 0;
|
| 174 |
display: flex;
|
| 175 |
align-items: center;
|
|
@@ -177,17 +177,17 @@ body {
|
|
| 177 |
background:
|
| 178 |
radial-gradient(circle at 26% 22%, rgba(255, 255, 255, 0.34), transparent 24%),
|
| 179 |
linear-gradient(145deg, #ef5b69 0%, var(--lookupit-coral) 58%, var(--lookupit-coral-deep) 100%);
|
| 180 |
-
box-shadow: 0
|
| 181 |
}
|
| 182 |
|
| 183 |
.avatar svg {
|
| 184 |
-
width:
|
| 185 |
-
height:
|
| 186 |
color: #ffffff;
|
| 187 |
}
|
| 188 |
|
| 189 |
.chat-name {
|
| 190 |
-
font-size:
|
| 191 |
line-height: 1.1;
|
| 192 |
font-weight: 800;
|
| 193 |
letter-spacing: -0.03em;
|
|
@@ -195,41 +195,41 @@ body {
|
|
| 195 |
}
|
| 196 |
|
| 197 |
.chat-status {
|
| 198 |
-
margin-top:
|
| 199 |
display: inline-flex;
|
| 200 |
align-items: center;
|
| 201 |
-
gap:
|
| 202 |
-
padding: 4px
|
| 203 |
border-radius: 999px;
|
| 204 |
background: var(--lookupit-coral-soft);
|
| 205 |
color: var(--lookupit-coral-deep);
|
| 206 |
-
font-size:
|
| 207 |
font-weight: 700;
|
| 208 |
line-height: 1;
|
| 209 |
}
|
| 210 |
|
| 211 |
.dot {
|
| 212 |
-
width:
|
| 213 |
-
height:
|
| 214 |
border-radius: 50%;
|
| 215 |
background: var(--lookupit-coral);
|
| 216 |
box-shadow: 0 0 0 4px rgba(219, 63, 70, 0.14);
|
| 217 |
}
|
| 218 |
|
| 219 |
#chat-close-btn {
|
| 220 |
-
width:
|
| 221 |
-
height:
|
| 222 |
border: 1px solid rgba(217, 58, 73, 0.16);
|
| 223 |
-
border-radius:
|
| 224 |
background: rgba(255, 255, 255, 0.9);
|
| 225 |
color: var(--lookupit-ink);
|
| 226 |
cursor: pointer;
|
| 227 |
display: flex;
|
| 228 |
align-items: center;
|
| 229 |
justify-content: center;
|
| 230 |
-
font-size:
|
| 231 |
font-weight: 700;
|
| 232 |
-
box-shadow: 0
|
| 233 |
transition: transform 160ms ease, border-color 160ms ease, color 160ms ease;
|
| 234 |
}
|
| 235 |
|
|
@@ -243,10 +243,10 @@ body {
|
|
| 243 |
position: relative;
|
| 244 |
flex: 1;
|
| 245 |
overflow-y: auto;
|
| 246 |
-
padding:
|
| 247 |
display: flex;
|
| 248 |
flex-direction: column;
|
| 249 |
-
gap:
|
| 250 |
scroll-behavior: smooth;
|
| 251 |
}
|
| 252 |
|
|
@@ -260,10 +260,10 @@ body {
|
|
| 260 |
}
|
| 261 |
|
| 262 |
.msg {
|
| 263 |
-
max-width:
|
| 264 |
display: flex;
|
| 265 |
flex-direction: column;
|
| 266 |
-
gap:
|
| 267 |
animation: lookupitFadeSlide 220ms ease;
|
| 268 |
}
|
| 269 |
|
|
@@ -288,10 +288,10 @@ body {
|
|
| 288 |
|
| 289 |
.msg-bubble {
|
| 290 |
position: relative;
|
| 291 |
-
padding:
|
| 292 |
-
border-radius:
|
| 293 |
-
font-size:
|
| 294 |
-
line-height: 1.
|
| 295 |
word-break: break-word;
|
| 296 |
}
|
| 297 |
|
|
@@ -329,8 +329,8 @@ body {
|
|
| 329 |
}
|
| 330 |
|
| 331 |
.msg-time {
|
| 332 |
-
padding: 0
|
| 333 |
-
font-size:
|
| 334 |
font-weight: 700;
|
| 335 |
letter-spacing: 0.02em;
|
| 336 |
color: var(--lookupit-muted);
|
|
@@ -343,21 +343,21 @@ body {
|
|
| 343 |
.quick-replies {
|
| 344 |
display: flex;
|
| 345 |
flex-wrap: wrap;
|
| 346 |
-
gap:
|
| 347 |
-
margin-top:
|
| 348 |
}
|
| 349 |
|
| 350 |
.quick-reply {
|
| 351 |
-
padding:
|
| 352 |
border-radius: 999px;
|
| 353 |
border: 1px solid rgba(217, 58, 73, 0.22);
|
| 354 |
background: linear-gradient(180deg, #ffffff 0%, #fff4f6 100%);
|
| 355 |
color: var(--lookupit-ink);
|
| 356 |
-
font-size:
|
| 357 |
font-weight: 700;
|
| 358 |
line-height: 1.2;
|
| 359 |
cursor: pointer;
|
| 360 |
-
box-shadow: 0
|
| 361 |
transition: transform 150ms ease, border-color 150ms ease, color 150ms ease;
|
| 362 |
}
|
| 363 |
|
|
@@ -370,8 +370,8 @@ body {
|
|
| 370 |
#typing-indicator {
|
| 371 |
display: flex;
|
| 372 |
align-items: center;
|
| 373 |
-
gap:
|
| 374 |
-
padding:
|
| 375 |
}
|
| 376 |
|
| 377 |
#typing-indicator.hidden {
|
|
@@ -379,8 +379,8 @@ body {
|
|
| 379 |
}
|
| 380 |
|
| 381 |
#typing-indicator span {
|
| 382 |
-
width:
|
| 383 |
-
height:
|
| 384 |
border-radius: 50%;
|
| 385 |
background: rgba(219, 63, 70, 0.42);
|
| 386 |
animation: lookupitBounce 1s infinite ease-in-out;
|
|
@@ -404,10 +404,10 @@ body {
|
|
| 404 |
}
|
| 405 |
|
| 406 |
.chat-input-area {
|
| 407 |
-
padding: 10px
|
| 408 |
display: flex;
|
| 409 |
align-items: flex-end;
|
| 410 |
-
gap:
|
| 411 |
border-top: 1px solid rgba(217, 58, 73, 0.14);
|
| 412 |
background:
|
| 413 |
linear-gradient(180deg, rgba(255, 255, 255, 0.86) 0%, rgba(255, 245, 247, 0.98) 100%);
|
|
@@ -415,15 +415,15 @@ body {
|
|
| 415 |
|
| 416 |
#chat-input {
|
| 417 |
flex: 1;
|
| 418 |
-
min-height:
|
| 419 |
-
max-height:
|
| 420 |
-
padding:
|
| 421 |
-
border-radius:
|
| 422 |
border: 1px solid var(--lookupit-line);
|
| 423 |
background: rgba(255, 255, 255, 0.94);
|
| 424 |
color: var(--lookupit-ink);
|
| 425 |
font: inherit;
|
| 426 |
-
font-size:
|
| 427 |
line-height: 1.5;
|
| 428 |
outline: none;
|
| 429 |
resize: none;
|
|
@@ -434,7 +434,7 @@ body {
|
|
| 434 |
|
| 435 |
#chat-input:focus {
|
| 436 |
border-color: rgba(219, 63, 70, 0.36);
|
| 437 |
-
box-shadow: 0 0 0
|
| 438 |
}
|
| 439 |
|
| 440 |
#chat-input::placeholder {
|
|
@@ -442,10 +442,10 @@ body {
|
|
| 442 |
}
|
| 443 |
|
| 444 |
#send-btn {
|
| 445 |
-
width:
|
| 446 |
-
height:
|
| 447 |
border: 0;
|
| 448 |
-
border-radius:
|
| 449 |
background:
|
| 450 |
radial-gradient(circle at 30% 22%, rgba(255, 255, 255, 0.28), transparent 28%),
|
| 451 |
linear-gradient(145deg, #ef5b69 0%, var(--lookupit-coral) 58%, var(--lookupit-coral-deep) 100%);
|
|
@@ -455,13 +455,13 @@ body {
|
|
| 455 |
align-items: center;
|
| 456 |
justify-content: center;
|
| 457 |
flex-shrink: 0;
|
| 458 |
-
box-shadow: 0
|
| 459 |
transition: transform 150ms ease, box-shadow 150ms ease;
|
| 460 |
}
|
| 461 |
|
| 462 |
#send-btn:hover {
|
| 463 |
transform: translateY(-1px);
|
| 464 |
-
box-shadow: 0
|
| 465 |
}
|
| 466 |
|
| 467 |
#send-btn:disabled {
|
|
@@ -471,23 +471,23 @@ body {
|
|
| 471 |
}
|
| 472 |
|
| 473 |
#send-btn svg {
|
| 474 |
-
width:
|
| 475 |
-
height:
|
| 476 |
color: #fff;
|
| 477 |
}
|
| 478 |
|
| 479 |
@media (max-width: 640px) {
|
| 480 |
#chat-widget {
|
| 481 |
-
right:
|
| 482 |
-
bottom:
|
| 483 |
}
|
| 484 |
|
| 485 |
#chat-window {
|
| 486 |
-
width: min(100vw - 16px,
|
| 487 |
-
right:
|
| 488 |
-
bottom:
|
| 489 |
-
max-height: min(
|
| 490 |
-
border-radius:
|
| 491 |
}
|
| 492 |
}
|
| 493 |
@keyframes chatbotPulse {
|
|
@@ -502,9 +502,9 @@ body {
|
|
| 502 |
}
|
| 503 |
}
|
| 504 |
|
| 505 |
-
|
| 506 |
animation: chatbotPulse 2s infinite;
|
| 507 |
}
|
| 508 |
-
|
| 509 |
transform: scale(1.08);
|
| 510 |
}
|
|
|
|
| 8 |
--lookupit-coral: #c42f3e;
|
| 9 |
--lookupit-coral-deep: #b51f34;
|
| 10 |
--lookupit-coral-soft: #fff1f3;
|
| 11 |
+
--lookupit-shadow: 0 18px 44px rgba(181, 31, 52, 0.18);
|
| 12 |
}
|
| 13 |
|
| 14 |
*, *::before, *::after {
|
|
|
|
| 29 |
|
| 30 |
#chat-widget {
|
| 31 |
position: fixed;
|
| 32 |
+
right: 18px;
|
| 33 |
+
bottom: 18px;
|
| 34 |
z-index: 9999;
|
| 35 |
font-family: inherit;
|
| 36 |
}
|
| 37 |
|
| 38 |
#chat-toggle {
|
| 39 |
+
width: 46px;
|
| 40 |
+
height: 46px;
|
| 41 |
border: 0;
|
| 42 |
+
border-radius: 16px;
|
| 43 |
background:
|
| 44 |
radial-gradient(circle at 28% 22%, rgba(255, 255, 255, 0.28), transparent 28%),
|
| 45 |
linear-gradient(145deg, #ef5b69 0%, var(--lookupit-coral) 52%, var(--lookupit-coral-deep) 100%);
|
| 46 |
color: #fff;
|
| 47 |
cursor: pointer;
|
| 48 |
+
box-shadow: 0 12px 24px rgba(219, 63, 70, 0.26);
|
| 49 |
display: flex;
|
| 50 |
align-items: center;
|
| 51 |
justify-content: center;
|
|
|
|
| 55 |
}
|
| 56 |
|
| 57 |
#chat-toggle:hover {
|
| 58 |
+
transform: translateY(-2px) scale(1.02);
|
| 59 |
+
box-shadow: 0 16px 28px rgba(219, 63, 70, 0.3);
|
| 60 |
}
|
| 61 |
|
| 62 |
#chat-toggle::before {
|
|
|
|
| 64 |
position: absolute;
|
| 65 |
inset: 6px;
|
| 66 |
border: 1px solid rgba(255, 255, 255, 0.22);
|
| 67 |
+
border-radius: 11px;
|
| 68 |
}
|
| 69 |
|
| 70 |
#chat-toggle svg {
|
| 71 |
+
width: 20px;
|
| 72 |
+
height: 20px;
|
| 73 |
color: #fff;
|
| 74 |
position: relative;
|
| 75 |
z-index: 1;
|
|
|
|
| 79 |
position: absolute;
|
| 80 |
top: -5px;
|
| 81 |
right: -5px;
|
| 82 |
+
min-width: 17px;
|
| 83 |
+
height: 17px;
|
| 84 |
+
padding: 0 4px;
|
| 85 |
border-radius: 999px;
|
| 86 |
background: var(--lookupit-coral-deep);
|
| 87 |
color: #fff;
|
| 88 |
+
font-size: 9px;
|
| 89 |
font-weight: 800;
|
| 90 |
display: flex;
|
| 91 |
align-items: center;
|
|
|
|
| 97 |
#chat-window {
|
| 98 |
position: absolute;
|
| 99 |
right: 0;
|
| 100 |
+
bottom: 58px;
|
| 101 |
+
width: 308px;
|
| 102 |
+
max-height: min(500px, calc(100vh - 88px));
|
| 103 |
+
border-radius: 22px;
|
| 104 |
background: linear-gradient(180deg, rgba(255, 250, 251, 0.98) 0%, rgba(255, 255, 255, 0.99) 100%);
|
| 105 |
border: 1px solid rgba(217, 58, 73, 0.18);
|
| 106 |
box-shadow: var(--lookupit-shadow);
|
|
|
|
| 115 |
#chat-window::before {
|
| 116 |
content: "";
|
| 117 |
position: absolute;
|
| 118 |
+
top: -18px;
|
| 119 |
+
right: -16px;
|
| 120 |
+
width: 128px;
|
| 121 |
+
height: 128px;
|
| 122 |
background:
|
| 123 |
radial-gradient(circle, rgba(217, 58, 73, 0.12) 0 22%, transparent 23% 100%);
|
| 124 |
+
background-size: 18px 18px;
|
| 125 |
opacity: 0.8;
|
| 126 |
pointer-events: none;
|
| 127 |
}
|
|
|
|
| 129 |
#chat-window::after {
|
| 130 |
content: "";
|
| 131 |
position: absolute;
|
| 132 |
+
left: -36px;
|
| 133 |
+
top: 92px;
|
| 134 |
+
width: 104px;
|
| 135 |
+
height: 104px;
|
| 136 |
+
border: 10px solid rgba(217, 58, 73, 0.22);
|
| 137 |
border-right-color: transparent;
|
| 138 |
border-top-color: transparent;
|
| 139 |
border-radius: 999px;
|
|
|
|
| 150 |
|
| 151 |
.chat-header {
|
| 152 |
position: relative;
|
| 153 |
+
padding: 12px 13px 10px;
|
| 154 |
display: flex;
|
| 155 |
align-items: flex-start;
|
| 156 |
justify-content: space-between;
|
| 157 |
+
gap: 8px;
|
| 158 |
border-bottom: 1px solid rgba(217, 58, 73, 0.16);
|
| 159 |
background: linear-gradient(180deg, rgba(255, 243, 245, 0.94) 0%, rgba(255, 255, 255, 0.94) 100%);
|
| 160 |
z-index: 1;
|
|
|
|
| 163 |
.chat-header-info {
|
| 164 |
display: flex;
|
| 165 |
align-items: flex-start;
|
| 166 |
+
gap: 9px;
|
| 167 |
}
|
| 168 |
|
| 169 |
.avatar {
|
| 170 |
+
width: 34px;
|
| 171 |
+
height: 34px;
|
| 172 |
+
border-radius: 11px;
|
| 173 |
flex-shrink: 0;
|
| 174 |
display: flex;
|
| 175 |
align-items: center;
|
|
|
|
| 177 |
background:
|
| 178 |
radial-gradient(circle at 26% 22%, rgba(255, 255, 255, 0.34), transparent 24%),
|
| 179 |
linear-gradient(145deg, #ef5b69 0%, var(--lookupit-coral) 58%, var(--lookupit-coral-deep) 100%);
|
| 180 |
+
box-shadow: 0 6px 14px rgba(219, 63, 70, 0.22);
|
| 181 |
}
|
| 182 |
|
| 183 |
.avatar svg {
|
| 184 |
+
width: 18px;
|
| 185 |
+
height: 18px;
|
| 186 |
color: #ffffff;
|
| 187 |
}
|
| 188 |
|
| 189 |
.chat-name {
|
| 190 |
+
font-size: 13px;
|
| 191 |
line-height: 1.1;
|
| 192 |
font-weight: 800;
|
| 193 |
letter-spacing: -0.03em;
|
|
|
|
| 195 |
}
|
| 196 |
|
| 197 |
.chat-status {
|
| 198 |
+
margin-top: 3px;
|
| 199 |
display: inline-flex;
|
| 200 |
align-items: center;
|
| 201 |
+
gap: 4px;
|
| 202 |
+
padding: 4px 7px;
|
| 203 |
border-radius: 999px;
|
| 204 |
background: var(--lookupit-coral-soft);
|
| 205 |
color: var(--lookupit-coral-deep);
|
| 206 |
+
font-size: 10px;
|
| 207 |
font-weight: 700;
|
| 208 |
line-height: 1;
|
| 209 |
}
|
| 210 |
|
| 211 |
.dot {
|
| 212 |
+
width: 5px;
|
| 213 |
+
height: 5px;
|
| 214 |
border-radius: 50%;
|
| 215 |
background: var(--lookupit-coral);
|
| 216 |
box-shadow: 0 0 0 4px rgba(219, 63, 70, 0.14);
|
| 217 |
}
|
| 218 |
|
| 219 |
#chat-close-btn {
|
| 220 |
+
width: 28px;
|
| 221 |
+
height: 28px;
|
| 222 |
border: 1px solid rgba(217, 58, 73, 0.16);
|
| 223 |
+
border-radius: 9px;
|
| 224 |
background: rgba(255, 255, 255, 0.9);
|
| 225 |
color: var(--lookupit-ink);
|
| 226 |
cursor: pointer;
|
| 227 |
display: flex;
|
| 228 |
align-items: center;
|
| 229 |
justify-content: center;
|
| 230 |
+
font-size: 13px;
|
| 231 |
font-weight: 700;
|
| 232 |
+
box-shadow: 0 4px 8px rgba(181, 31, 52, 0.08);
|
| 233 |
transition: transform 160ms ease, border-color 160ms ease, color 160ms ease;
|
| 234 |
}
|
| 235 |
|
|
|
|
| 243 |
position: relative;
|
| 244 |
flex: 1;
|
| 245 |
overflow-y: auto;
|
| 246 |
+
padding: 10px 11px 8px;
|
| 247 |
display: flex;
|
| 248 |
flex-direction: column;
|
| 249 |
+
gap: 8px;
|
| 250 |
scroll-behavior: smooth;
|
| 251 |
}
|
| 252 |
|
|
|
|
| 260 |
}
|
| 261 |
|
| 262 |
.msg {
|
| 263 |
+
max-width: 90%;
|
| 264 |
display: flex;
|
| 265 |
flex-direction: column;
|
| 266 |
+
gap: 5px;
|
| 267 |
animation: lookupitFadeSlide 220ms ease;
|
| 268 |
}
|
| 269 |
|
|
|
|
| 288 |
|
| 289 |
.msg-bubble {
|
| 290 |
position: relative;
|
| 291 |
+
padding: 9px 11px;
|
| 292 |
+
border-radius: 14px;
|
| 293 |
+
font-size: 12.5px;
|
| 294 |
+
line-height: 1.5;
|
| 295 |
word-break: break-word;
|
| 296 |
}
|
| 297 |
|
|
|
|
| 329 |
}
|
| 330 |
|
| 331 |
.msg-time {
|
| 332 |
+
padding: 0 4px;
|
| 333 |
+
font-size: 10px;
|
| 334 |
font-weight: 700;
|
| 335 |
letter-spacing: 0.02em;
|
| 336 |
color: var(--lookupit-muted);
|
|
|
|
| 343 |
.quick-replies {
|
| 344 |
display: flex;
|
| 345 |
flex-wrap: wrap;
|
| 346 |
+
gap: 6px;
|
| 347 |
+
margin-top: 6px;
|
| 348 |
}
|
| 349 |
|
| 350 |
.quick-reply {
|
| 351 |
+
padding: 6px 10px;
|
| 352 |
border-radius: 999px;
|
| 353 |
border: 1px solid rgba(217, 58, 73, 0.22);
|
| 354 |
background: linear-gradient(180deg, #ffffff 0%, #fff4f6 100%);
|
| 355 |
color: var(--lookupit-ink);
|
| 356 |
+
font-size: 10.5px;
|
| 357 |
font-weight: 700;
|
| 358 |
line-height: 1.2;
|
| 359 |
cursor: pointer;
|
| 360 |
+
box-shadow: 0 4px 8px rgba(181, 31, 52, 0.06);
|
| 361 |
transition: transform 150ms ease, border-color 150ms ease, color 150ms ease;
|
| 362 |
}
|
| 363 |
|
|
|
|
| 370 |
#typing-indicator {
|
| 371 |
display: flex;
|
| 372 |
align-items: center;
|
| 373 |
+
gap: 4px;
|
| 374 |
+
padding: 2px 13px 8px;
|
| 375 |
}
|
| 376 |
|
| 377 |
#typing-indicator.hidden {
|
|
|
|
| 379 |
}
|
| 380 |
|
| 381 |
#typing-indicator span {
|
| 382 |
+
width: 7px;
|
| 383 |
+
height: 7px;
|
| 384 |
border-radius: 50%;
|
| 385 |
background: rgba(219, 63, 70, 0.42);
|
| 386 |
animation: lookupitBounce 1s infinite ease-in-out;
|
|
|
|
| 404 |
}
|
| 405 |
|
| 406 |
.chat-input-area {
|
| 407 |
+
padding: 8px 10px 10px;
|
| 408 |
display: flex;
|
| 409 |
align-items: flex-end;
|
| 410 |
+
gap: 7px;
|
| 411 |
border-top: 1px solid rgba(217, 58, 73, 0.14);
|
| 412 |
background:
|
| 413 |
linear-gradient(180deg, rgba(255, 255, 255, 0.86) 0%, rgba(255, 245, 247, 0.98) 100%);
|
|
|
|
| 415 |
|
| 416 |
#chat-input {
|
| 417 |
flex: 1;
|
| 418 |
+
min-height: 38px;
|
| 419 |
+
max-height: 84px;
|
| 420 |
+
padding: 9px 11px;
|
| 421 |
+
border-radius: 14px;
|
| 422 |
border: 1px solid var(--lookupit-line);
|
| 423 |
background: rgba(255, 255, 255, 0.94);
|
| 424 |
color: var(--lookupit-ink);
|
| 425 |
font: inherit;
|
| 426 |
+
font-size: 12.5px;
|
| 427 |
line-height: 1.5;
|
| 428 |
outline: none;
|
| 429 |
resize: none;
|
|
|
|
| 434 |
|
| 435 |
#chat-input:focus {
|
| 436 |
border-color: rgba(219, 63, 70, 0.36);
|
| 437 |
+
box-shadow: 0 0 0 2px rgba(219, 63, 70, 0.08);
|
| 438 |
}
|
| 439 |
|
| 440 |
#chat-input::placeholder {
|
|
|
|
| 442 |
}
|
| 443 |
|
| 444 |
#send-btn {
|
| 445 |
+
width: 38px;
|
| 446 |
+
height: 38px;
|
| 447 |
border: 0;
|
| 448 |
+
border-radius: 12px;
|
| 449 |
background:
|
| 450 |
radial-gradient(circle at 30% 22%, rgba(255, 255, 255, 0.28), transparent 28%),
|
| 451 |
linear-gradient(145deg, #ef5b69 0%, var(--lookupit-coral) 58%, var(--lookupit-coral-deep) 100%);
|
|
|
|
| 455 |
align-items: center;
|
| 456 |
justify-content: center;
|
| 457 |
flex-shrink: 0;
|
| 458 |
+
box-shadow: 0 8px 16px rgba(219, 63, 70, 0.24);
|
| 459 |
transition: transform 150ms ease, box-shadow 150ms ease;
|
| 460 |
}
|
| 461 |
|
| 462 |
#send-btn:hover {
|
| 463 |
transform: translateY(-1px);
|
| 464 |
+
box-shadow: 0 10px 18px rgba(219, 63, 70, 0.28);
|
| 465 |
}
|
| 466 |
|
| 467 |
#send-btn:disabled {
|
|
|
|
| 471 |
}
|
| 472 |
|
| 473 |
#send-btn svg {
|
| 474 |
+
width: 15px;
|
| 475 |
+
height: 15px;
|
| 476 |
color: #fff;
|
| 477 |
}
|
| 478 |
|
| 479 |
@media (max-width: 640px) {
|
| 480 |
#chat-widget {
|
| 481 |
+
right: 10px;
|
| 482 |
+
bottom: 10px;
|
| 483 |
}
|
| 484 |
|
| 485 |
#chat-window {
|
| 486 |
+
width: min(calc(100vw - 16px), 294px);
|
| 487 |
+
right: 0;
|
| 488 |
+
bottom: 60px;
|
| 489 |
+
max-height: min(440px, calc(100vh - 84px));
|
| 490 |
+
border-radius: 20px;
|
| 491 |
}
|
| 492 |
}
|
| 493 |
@keyframes chatbotPulse {
|
|
|
|
| 502 |
}
|
| 503 |
}
|
| 504 |
|
| 505 |
+
#chat-toggle {
|
| 506 |
animation: chatbotPulse 2s infinite;
|
| 507 |
}
|
| 508 |
+
#chat-toggle:hover {
|
| 509 |
transform: scale(1.08);
|
| 510 |
}
|
static/js/chatbot.js
CHANGED
|
@@ -24,12 +24,17 @@
|
|
| 24 |
return;
|
| 25 |
}
|
| 26 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 27 |
const QUICK_REPLIES = [
|
| 28 |
-
"
|
| 29 |
-
"
|
| 30 |
-
"
|
| 31 |
-
"
|
| 32 |
-
"
|
| 33 |
];
|
| 34 |
|
| 35 |
// ── Typewriter engine ──────────────────────────────────────────────────────
|
|
@@ -301,7 +306,7 @@
|
|
| 301 |
function showWelcome() {
|
| 302 |
appendMessage(
|
| 303 |
"bot",
|
| 304 |
-
"Welcome to LookUP IT Solutions.\n\nI can help you
|
| 305 |
QUICK_REPLIES,
|
| 306 |
);
|
| 307 |
}
|
|
@@ -342,4 +347,4 @@ function setOpen(open) {
|
|
| 342 |
} else {
|
| 343 |
toggleButton.style.animation = "chatbotPulse 2s infinite";
|
| 344 |
}
|
| 345 |
-
}
|
|
|
|
| 24 |
return;
|
| 25 |
}
|
| 26 |
|
| 27 |
+
document.title = "Lookup IT Solutions - Mobile App Chatbot Demo";
|
| 28 |
+
closeBtn.innerHTML = "×";
|
| 29 |
+
inputEl.placeholder = "Describe your app idea...";
|
| 30 |
+
toggleBtn.setAttribute("aria-label", "Open mobile app chat");
|
| 31 |
+
|
| 32 |
const QUICK_REPLIES = [
|
| 33 |
+
"Build a mobile app",
|
| 34 |
+
"Flutter or native apps",
|
| 35 |
+
"Need iOS and Android",
|
| 36 |
+
"Estimate my app project",
|
| 37 |
+
"Book an app consultation",
|
| 38 |
];
|
| 39 |
|
| 40 |
// ── Typewriter engine ──────────────────────────────────────────────────────
|
|
|
|
| 306 |
function showWelcome() {
|
| 307 |
appendMessage(
|
| 308 |
"bot",
|
| 309 |
+
"Welcome to LookUP IT Solutions.\n\nI can help you plan an iOS, Android, or Flutter app, discuss features, and connect you with our mobile app team.",
|
| 310 |
QUICK_REPLIES,
|
| 311 |
);
|
| 312 |
}
|
|
|
|
| 347 |
} else {
|
| 348 |
toggleButton.style.animation = "chatbotPulse 2s infinite";
|
| 349 |
}
|
| 350 |
+
}
|
static/js/embed.js
CHANGED
|
@@ -12,18 +12,18 @@
|
|
| 12 |
const defaultConfig = {
|
| 13 |
apiBase: scriptOrigin,
|
| 14 |
title: "LookUP IT Assistant",
|
| 15 |
-
subtitle: "
|
| 16 |
accentColor: "#db3f46",
|
| 17 |
welcomeMessage:
|
| 18 |
-
"
|
| 19 |
quickReplies: [
|
| 20 |
-
"
|
| 21 |
-
"
|
| 22 |
-
"
|
| 23 |
-
"Get
|
| 24 |
],
|
| 25 |
-
placeholder: "
|
| 26 |
-
buttonLabel: "Open chat",
|
| 27 |
position: "right",
|
| 28 |
logoUrl: "",
|
| 29 |
};
|
|
@@ -163,10 +163,10 @@
|
|
| 163 |
--lookupit-coral: ${config.accentColor};
|
| 164 |
--lookupit-coral-deep: #b51f34;
|
| 165 |
--lookupit-coral-soft: #fff1f3;
|
| 166 |
-
--lookupit-shadow: 0
|
| 167 |
position: fixed;
|
| 168 |
-
${config.position === "left" ? "left:
|
| 169 |
-
bottom:
|
| 170 |
z-index: 2147483000;
|
| 171 |
font-family: "Manrope", "Segoe UI", sans-serif;
|
| 172 |
}
|
|
@@ -184,16 +184,16 @@
|
|
| 184 |
}
|
| 185 |
|
| 186 |
#${widgetId} .lookupit-toggle {
|
| 187 |
-
width:
|
| 188 |
-
height:
|
| 189 |
border: 0;
|
| 190 |
-
border-radius:
|
| 191 |
background:
|
| 192 |
radial-gradient(circle at 28% 22%, rgba(255, 255, 255, 0.28), transparent 28%),
|
| 193 |
linear-gradient(145deg, #ef5b69 0%, #b72f38 54%, var(--lookupit-coral-deep) 100%);
|
| 194 |
color: #fff;
|
| 195 |
cursor: pointer;
|
| 196 |
-
box-shadow: 0
|
| 197 |
display: grid;
|
| 198 |
place-items: center;
|
| 199 |
position: relative;
|
|
@@ -202,36 +202,36 @@
|
|
| 202 |
}
|
| 203 |
|
| 204 |
#${widgetId} .lookupit-toggle:hover {
|
| 205 |
-
transform: translateY(-
|
| 206 |
-
box-shadow: 0
|
| 207 |
}
|
| 208 |
|
| 209 |
#${widgetId} .lookupit-toggle::before {
|
| 210 |
content: "";
|
| 211 |
position: absolute;
|
| 212 |
-
inset:
|
| 213 |
border: 1px solid rgba(255, 255, 255, 0.22);
|
| 214 |
-
border-radius:
|
| 215 |
}
|
| 216 |
|
| 217 |
#${widgetId} .lookupit-toggle svg {
|
| 218 |
-
width:
|
| 219 |
-
height:
|
| 220 |
position: relative;
|
| 221 |
z-index: 1;
|
| 222 |
}
|
| 223 |
|
| 224 |
#${widgetId} .lookupit-badge {
|
| 225 |
position: absolute;
|
| 226 |
-
top: -
|
| 227 |
-
right: -
|
| 228 |
-
min-width:
|
| 229 |
-
height:
|
| 230 |
-
padding: 0
|
| 231 |
border-radius: 999px;
|
| 232 |
background: var(--lookupit-coral-deep);
|
| 233 |
color: #fff;
|
| 234 |
-
font-size:
|
| 235 |
font-weight: 800;
|
| 236 |
display: none;
|
| 237 |
align-items: center;
|
|
@@ -243,10 +243,10 @@
|
|
| 243 |
#${widgetId} .lookupit-panel {
|
| 244 |
position: absolute;
|
| 245 |
${config.position === "left" ? "left: 0;" : "right: 0;"}
|
| 246 |
-
bottom:
|
| 247 |
-
width: min(
|
| 248 |
-
max-height: min(
|
| 249 |
-
border-radius:
|
| 250 |
background: linear-gradient(180deg, rgba(255, 250, 251, 0.98) 0%, rgba(255, 255, 255, 0.99) 100%);
|
| 251 |
border: 1px solid rgba(217, 58, 73, 0.18);
|
| 252 |
box-shadow: var(--lookupit-shadow);
|
|
@@ -259,13 +259,13 @@
|
|
| 259 |
#${widgetId} .lookupit-panel::before {
|
| 260 |
content: "";
|
| 261 |
position: absolute;
|
| 262 |
-
top: -
|
| 263 |
-
right: -
|
| 264 |
-
width:
|
| 265 |
-
height:
|
| 266 |
background:
|
| 267 |
radial-gradient(circle, rgba(217, 58, 73, 0.12) 0 22%, transparent 23% 100%);
|
| 268 |
-
background-size:
|
| 269 |
opacity: 0.8;
|
| 270 |
pointer-events: none;
|
| 271 |
}
|
|
@@ -273,11 +273,11 @@
|
|
| 273 |
#${widgetId} .lookupit-panel::after {
|
| 274 |
content: "";
|
| 275 |
position: absolute;
|
| 276 |
-
left: -
|
| 277 |
-
top:
|
| 278 |
-
width:
|
| 279 |
-
height:
|
| 280 |
-
border:
|
| 281 |
border-right-color: transparent;
|
| 282 |
border-top-color: transparent;
|
| 283 |
border-radius: 999px;
|
|
@@ -292,11 +292,11 @@
|
|
| 292 |
|
| 293 |
#${widgetId} .lookupit-header {
|
| 294 |
position: relative;
|
| 295 |
-
padding:
|
| 296 |
display: flex;
|
| 297 |
-
align-items:
|
| 298 |
justify-content: space-between;
|
| 299 |
-
gap:
|
| 300 |
border-bottom: 1px solid rgba(217, 58, 73, 0.16);
|
| 301 |
background: linear-gradient(180deg, rgba(255, 243, 245, 0.94) 0%, rgba(255, 255, 255, 0.94) 100%);
|
| 302 |
z-index: 1;
|
|
@@ -304,15 +304,15 @@
|
|
| 304 |
|
| 305 |
#${widgetId} .lookupit-header-info {
|
| 306 |
display: flex;
|
| 307 |
-
align-items:
|
| 308 |
-
gap:
|
| 309 |
}
|
| 310 |
|
| 311 |
#${widgetId} .lookupit-brand-mark,
|
| 312 |
#${widgetId} .lookupit-logo {
|
| 313 |
-
width:
|
| 314 |
-
height:
|
| 315 |
-
border-radius:
|
| 316 |
flex: 0 0 auto;
|
| 317 |
}
|
| 318 |
|
|
@@ -324,66 +324,66 @@
|
|
| 324 |
background:
|
| 325 |
radial-gradient(circle at 26% 22%, rgba(255, 255, 255, 0.34), transparent 24%),
|
| 326 |
linear-gradient(145deg, #ef5b69 0%, var(--lookupit-coral) 58%, var(--lookupit-coral-deep) 100%);
|
| 327 |
-
box-shadow: 0
|
| 328 |
}
|
| 329 |
|
| 330 |
#${widgetId} .lookupit-brand-mark svg {
|
| 331 |
-
width:
|
| 332 |
-
height:
|
| 333 |
}
|
| 334 |
|
| 335 |
#${widgetId} .lookupit-logo {
|
| 336 |
object-fit: contain;
|
| 337 |
background: #fff;
|
| 338 |
border: 1px solid rgba(217, 58, 73, 0.16);
|
| 339 |
-
padding:
|
| 340 |
-
box-shadow: 0
|
| 341 |
}
|
| 342 |
|
| 343 |
#${widgetId} .lookupit-title {
|
| 344 |
-
font-size:
|
| 345 |
line-height: 1.1;
|
| 346 |
font-weight: 800;
|
| 347 |
-
letter-spacing: -0.
|
| 348 |
color: var(--lookupit-ink);
|
| 349 |
}
|
| 350 |
|
| 351 |
#${widgetId} .lookupit-subtitle {
|
| 352 |
-
margin-top:
|
| 353 |
display: inline-flex;
|
| 354 |
align-items: center;
|
| 355 |
-
gap:
|
| 356 |
-
padding:
|
| 357 |
border-radius: 999px;
|
| 358 |
background: var(--lookupit-coral-soft);
|
| 359 |
color: var(--lookupit-coral-deep);
|
| 360 |
-
font-size:
|
| 361 |
font-weight: 700;
|
| 362 |
line-height: 1;
|
| 363 |
}
|
| 364 |
|
| 365 |
#${widgetId} .lookupit-status-dot {
|
| 366 |
-
width:
|
| 367 |
-
height:
|
| 368 |
border-radius: 50%;
|
| 369 |
background: var(--lookupit-coral);
|
| 370 |
-
box-shadow: 0 0 0
|
| 371 |
}
|
| 372 |
|
| 373 |
#${widgetId} .lookupit-close {
|
| 374 |
-
width:
|
| 375 |
-
height:
|
| 376 |
border: 1px solid rgba(217, 58, 73, 0.16);
|
| 377 |
-
border-radius:
|
| 378 |
background: rgba(255, 255, 255, 0.9);
|
| 379 |
color: var(--lookupit-ink);
|
| 380 |
cursor: pointer;
|
| 381 |
display: flex;
|
| 382 |
align-items: center;
|
| 383 |
justify-content: center;
|
| 384 |
-
font-size:
|
| 385 |
font-weight: 700;
|
| 386 |
-
box-shadow: 0
|
| 387 |
transition: transform 160ms ease, border-color 160ms ease, color 160ms ease;
|
| 388 |
}
|
| 389 |
|
|
@@ -394,18 +394,18 @@
|
|
| 394 |
}
|
| 395 |
|
| 396 |
#${widgetId} .lookupit-close svg {
|
| 397 |
-
width:
|
| 398 |
-
height:
|
| 399 |
}
|
| 400 |
|
| 401 |
#${widgetId} .lookupit-messages {
|
| 402 |
position: relative;
|
| 403 |
flex: 1;
|
| 404 |
overflow-y: auto;
|
| 405 |
-
padding:
|
| 406 |
display: flex;
|
| 407 |
flex-direction: column;
|
| 408 |
-
gap:
|
| 409 |
scroll-behavior: smooth;
|
| 410 |
}
|
| 411 |
|
|
@@ -419,10 +419,10 @@
|
|
| 419 |
}
|
| 420 |
|
| 421 |
#${widgetId} .lookupit-msg {
|
| 422 |
-
max-width:
|
| 423 |
display: flex;
|
| 424 |
flex-direction: column;
|
| 425 |
-
gap:
|
| 426 |
animation: lookupitFadeSlide 220ms ease;
|
| 427 |
}
|
| 428 |
|
|
@@ -435,10 +435,10 @@
|
|
| 435 |
}
|
| 436 |
|
| 437 |
#${widgetId} .lookupit-bubble {
|
| 438 |
-
padding:
|
| 439 |
-
border-radius:
|
| 440 |
-
font-size:
|
| 441 |
-
line-height: 1.
|
| 442 |
word-break: break-word;
|
| 443 |
}
|
| 444 |
|
|
@@ -476,8 +476,8 @@
|
|
| 476 |
}
|
| 477 |
|
| 478 |
#${widgetId} .lookupit-time {
|
| 479 |
-
padding: 0
|
| 480 |
-
font-size:
|
| 481 |
font-weight: 700;
|
| 482 |
letter-spacing: 0.02em;
|
| 483 |
color: var(--lookupit-muted);
|
|
@@ -490,21 +490,21 @@
|
|
| 490 |
#${widgetId} .lookupit-replies {
|
| 491 |
display: flex;
|
| 492 |
flex-wrap: wrap;
|
| 493 |
-
gap:
|
| 494 |
-
margin-top:
|
| 495 |
}
|
| 496 |
|
| 497 |
#${widgetId} .lookupit-reply {
|
| 498 |
-
padding:
|
| 499 |
border-radius: 999px;
|
| 500 |
border: 1px solid rgba(217, 58, 73, 0.22);
|
| 501 |
background: linear-gradient(180deg, #ffffff 0%, #fff4f6 100%);
|
| 502 |
color: var(--lookupit-ink);
|
| 503 |
-
font-size:
|
| 504 |
font-weight: 700;
|
| 505 |
line-height: 1.2;
|
| 506 |
cursor: pointer;
|
| 507 |
-
box-shadow: 0
|
| 508 |
transition: transform 150ms ease, border-color 150ms ease, color 150ms ease;
|
| 509 |
}
|
| 510 |
|
|
@@ -517,13 +517,13 @@
|
|
| 517 |
#${widgetId} .lookupit-typing {
|
| 518 |
display: flex;
|
| 519 |
align-items: center;
|
| 520 |
-
gap:
|
| 521 |
-
padding:
|
| 522 |
}
|
| 523 |
|
| 524 |
#${widgetId} .lookupit-typing span {
|
| 525 |
-
width:
|
| 526 |
-
height:
|
| 527 |
border-radius: 50%;
|
| 528 |
background: rgba(219, 63, 70, 0.42);
|
| 529 |
animation: lookupitBounce 1s infinite ease-in-out;
|
|
@@ -538,24 +538,24 @@
|
|
| 538 |
}
|
| 539 |
|
| 540 |
#${widgetId} .lookupit-input {
|
| 541 |
-
padding:
|
| 542 |
display: flex;
|
| 543 |
align-items: flex-end;
|
| 544 |
-
gap:
|
| 545 |
border-top: 1px solid rgba(217, 58, 73, 0.14);
|
| 546 |
background: linear-gradient(180deg, rgba(255, 255, 255, 0.86) 0%, rgba(255, 245, 247, 0.98) 100%);
|
| 547 |
}
|
| 548 |
|
| 549 |
#${widgetId} .lookupit-input textarea {
|
| 550 |
flex: 1;
|
| 551 |
-
min-height:
|
| 552 |
-
max-height:
|
| 553 |
-
padding:
|
| 554 |
-
border-radius:
|
| 555 |
border: 1px solid var(--lookupit-line);
|
| 556 |
background: rgba(255, 255, 255, 0.94);
|
| 557 |
color: var(--lookupit-ink);
|
| 558 |
-
font-size:
|
| 559 |
line-height: 1.5;
|
| 560 |
outline: none;
|
| 561 |
resize: none;
|
|
@@ -566,7 +566,7 @@
|
|
| 566 |
|
| 567 |
#${widgetId} .lookupit-input textarea:focus {
|
| 568 |
border-color: rgba(219, 63, 70, 0.36);
|
| 569 |
-
box-shadow: 0 0 0
|
| 570 |
}
|
| 571 |
|
| 572 |
#${widgetId} .lookupit-input textarea::placeholder {
|
|
@@ -574,10 +574,10 @@
|
|
| 574 |
}
|
| 575 |
|
| 576 |
#${widgetId} .lookupit-send {
|
| 577 |
-
width:
|
| 578 |
-
height:
|
| 579 |
border: 0;
|
| 580 |
-
border-radius:
|
| 581 |
background:
|
| 582 |
radial-gradient(circle at 30% 22%, rgba(255, 255, 255, 0.28), transparent 28%),
|
| 583 |
linear-gradient(145deg, #ef5b69 0%, var(--lookupit-coral) 58%, var(--lookupit-coral-deep) 100%);
|
|
@@ -587,13 +587,13 @@
|
|
| 587 |
align-items: center;
|
| 588 |
justify-content: center;
|
| 589 |
flex: 0 0 auto;
|
| 590 |
-
box-shadow: 0
|
| 591 |
transition: transform 150ms ease, box-shadow 150ms ease;
|
| 592 |
}
|
| 593 |
|
| 594 |
#${widgetId} .lookupit-send:hover {
|
| 595 |
transform: translateY(-1px);
|
| 596 |
-
box-shadow: 0
|
| 597 |
}
|
| 598 |
|
| 599 |
#${widgetId} .lookupit-send:disabled {
|
|
@@ -603,8 +603,8 @@
|
|
| 603 |
}
|
| 604 |
|
| 605 |
#${widgetId} .lookupit-send svg {
|
| 606 |
-
width:
|
| 607 |
-
height:
|
| 608 |
}
|
| 609 |
|
| 610 |
@keyframes lookupitFadeSlide {
|
|
@@ -629,14 +629,15 @@
|
|
| 629 |
|
| 630 |
@media (max-width: 640px) {
|
| 631 |
#${widgetId} {
|
| 632 |
-
${config.position === "left" ? "left:
|
| 633 |
-
bottom:
|
| 634 |
}
|
| 635 |
|
| 636 |
#${widgetId} .lookupit-panel {
|
| 637 |
-
width: min(calc(100vw - 16px),
|
| 638 |
-
bottom:
|
| 639 |
-
|
|
|
|
| 640 |
}
|
| 641 |
}
|
| 642 |
`;
|
|
|
|
| 12 |
const defaultConfig = {
|
| 13 |
apiBase: scriptOrigin,
|
| 14 |
title: "LookUP IT Assistant",
|
| 15 |
+
subtitle: "Mobile app development",
|
| 16 |
accentColor: "#db3f46",
|
| 17 |
welcomeMessage:
|
| 18 |
+
"Hi! I'm the LookUP IT mobile app assistant.\n\nI can help you plan an iOS, Android, or Flutter app, review features, and connect you with our team. How can I help with your app today?",
|
| 19 |
quickReplies: [
|
| 20 |
+
"Build a mobile app",
|
| 21 |
+
"Flutter or native apps",
|
| 22 |
+
"Need iOS and Android",
|
| 23 |
+
"Get an app quote",
|
| 24 |
],
|
| 25 |
+
placeholder: "Describe your app idea...",
|
| 26 |
+
buttonLabel: "Open mobile app chat",
|
| 27 |
position: "right",
|
| 28 |
logoUrl: "",
|
| 29 |
};
|
|
|
|
| 163 |
--lookupit-coral: ${config.accentColor};
|
| 164 |
--lookupit-coral-deep: #b51f34;
|
| 165 |
--lookupit-coral-soft: #fff1f3;
|
| 166 |
+
--lookupit-shadow: 0 18px 44px rgba(181, 31, 52, 0.18);
|
| 167 |
position: fixed;
|
| 168 |
+
${config.position === "left" ? "left: 18px;" : "right: 18px;"}
|
| 169 |
+
bottom: 18px;
|
| 170 |
z-index: 2147483000;
|
| 171 |
font-family: "Manrope", "Segoe UI", sans-serif;
|
| 172 |
}
|
|
|
|
| 184 |
}
|
| 185 |
|
| 186 |
#${widgetId} .lookupit-toggle {
|
| 187 |
+
width: 46px;
|
| 188 |
+
height: 46px;
|
| 189 |
border: 0;
|
| 190 |
+
border-radius: 16px;
|
| 191 |
background:
|
| 192 |
radial-gradient(circle at 28% 22%, rgba(255, 255, 255, 0.28), transparent 28%),
|
| 193 |
linear-gradient(145deg, #ef5b69 0%, #b72f38 54%, var(--lookupit-coral-deep) 100%);
|
| 194 |
color: #fff;
|
| 195 |
cursor: pointer;
|
| 196 |
+
box-shadow: 0 12px 24px rgba(219, 63, 70, 0.26);
|
| 197 |
display: grid;
|
| 198 |
place-items: center;
|
| 199 |
position: relative;
|
|
|
|
| 202 |
}
|
| 203 |
|
| 204 |
#${widgetId} .lookupit-toggle:hover {
|
| 205 |
+
transform: translateY(-2px) scale(1.02);
|
| 206 |
+
box-shadow: 0 16px 28px rgba(219, 63, 70, 0.3);
|
| 207 |
}
|
| 208 |
|
| 209 |
#${widgetId} .lookupit-toggle::before {
|
| 210 |
content: "";
|
| 211 |
position: absolute;
|
| 212 |
+
inset: 6px;
|
| 213 |
border: 1px solid rgba(255, 255, 255, 0.22);
|
| 214 |
+
border-radius: 11px;
|
| 215 |
}
|
| 216 |
|
| 217 |
#${widgetId} .lookupit-toggle svg {
|
| 218 |
+
width: 20px;
|
| 219 |
+
height: 20px;
|
| 220 |
position: relative;
|
| 221 |
z-index: 1;
|
| 222 |
}
|
| 223 |
|
| 224 |
#${widgetId} .lookupit-badge {
|
| 225 |
position: absolute;
|
| 226 |
+
top: -4px;
|
| 227 |
+
right: -4px;
|
| 228 |
+
min-width: 17px;
|
| 229 |
+
height: 17px;
|
| 230 |
+
padding: 0 4px;
|
| 231 |
border-radius: 999px;
|
| 232 |
background: var(--lookupit-coral-deep);
|
| 233 |
color: #fff;
|
| 234 |
+
font-size: 9px;
|
| 235 |
font-weight: 800;
|
| 236 |
display: none;
|
| 237 |
align-items: center;
|
|
|
|
| 243 |
#${widgetId} .lookupit-panel {
|
| 244 |
position: absolute;
|
| 245 |
${config.position === "left" ? "left: 0;" : "right: 0;"}
|
| 246 |
+
bottom: 58px;
|
| 247 |
+
width: min(308px, calc(100vw - 20px));
|
| 248 |
+
max-height: min(500px, calc(100vh - 88px));
|
| 249 |
+
border-radius: 22px;
|
| 250 |
background: linear-gradient(180deg, rgba(255, 250, 251, 0.98) 0%, rgba(255, 255, 255, 0.99) 100%);
|
| 251 |
border: 1px solid rgba(217, 58, 73, 0.18);
|
| 252 |
box-shadow: var(--lookupit-shadow);
|
|
|
|
| 259 |
#${widgetId} .lookupit-panel::before {
|
| 260 |
content: "";
|
| 261 |
position: absolute;
|
| 262 |
+
top: -18px;
|
| 263 |
+
right: -16px;
|
| 264 |
+
width: 128px;
|
| 265 |
+
height: 128px;
|
| 266 |
background:
|
| 267 |
radial-gradient(circle, rgba(217, 58, 73, 0.12) 0 22%, transparent 23% 100%);
|
| 268 |
+
background-size: 18px 18px;
|
| 269 |
opacity: 0.8;
|
| 270 |
pointer-events: none;
|
| 271 |
}
|
|
|
|
| 273 |
#${widgetId} .lookupit-panel::after {
|
| 274 |
content: "";
|
| 275 |
position: absolute;
|
| 276 |
+
left: -36px;
|
| 277 |
+
top: 92px;
|
| 278 |
+
width: 104px;
|
| 279 |
+
height: 104px;
|
| 280 |
+
border: 10px solid rgba(217, 58, 73, 0.22);
|
| 281 |
border-right-color: transparent;
|
| 282 |
border-top-color: transparent;
|
| 283 |
border-radius: 999px;
|
|
|
|
| 292 |
|
| 293 |
#${widgetId} .lookupit-header {
|
| 294 |
position: relative;
|
| 295 |
+
padding: 12px 13px 10px;
|
| 296 |
display: flex;
|
| 297 |
+
align-items: center;
|
| 298 |
justify-content: space-between;
|
| 299 |
+
gap: 8px;
|
| 300 |
border-bottom: 1px solid rgba(217, 58, 73, 0.16);
|
| 301 |
background: linear-gradient(180deg, rgba(255, 243, 245, 0.94) 0%, rgba(255, 255, 255, 0.94) 100%);
|
| 302 |
z-index: 1;
|
|
|
|
| 304 |
|
| 305 |
#${widgetId} .lookupit-header-info {
|
| 306 |
display: flex;
|
| 307 |
+
align-items: center;
|
| 308 |
+
gap: 9px;
|
| 309 |
}
|
| 310 |
|
| 311 |
#${widgetId} .lookupit-brand-mark,
|
| 312 |
#${widgetId} .lookupit-logo {
|
| 313 |
+
width: 34px;
|
| 314 |
+
height: 34px;
|
| 315 |
+
border-radius: 11px;
|
| 316 |
flex: 0 0 auto;
|
| 317 |
}
|
| 318 |
|
|
|
|
| 324 |
background:
|
| 325 |
radial-gradient(circle at 26% 22%, rgba(255, 255, 255, 0.34), transparent 24%),
|
| 326 |
linear-gradient(145deg, #ef5b69 0%, var(--lookupit-coral) 58%, var(--lookupit-coral-deep) 100%);
|
| 327 |
+
box-shadow: 0 6px 14px rgba(219, 63, 70, 0.22);
|
| 328 |
}
|
| 329 |
|
| 330 |
#${widgetId} .lookupit-brand-mark svg {
|
| 331 |
+
width: 18px;
|
| 332 |
+
height: 18px;
|
| 333 |
}
|
| 334 |
|
| 335 |
#${widgetId} .lookupit-logo {
|
| 336 |
object-fit: contain;
|
| 337 |
background: #fff;
|
| 338 |
border: 1px solid rgba(217, 58, 73, 0.16);
|
| 339 |
+
padding: 5px;
|
| 340 |
+
box-shadow: 0 6px 14px rgba(181, 31, 52, 0.08);
|
| 341 |
}
|
| 342 |
|
| 343 |
#${widgetId} .lookupit-title {
|
| 344 |
+
font-size: 13px;
|
| 345 |
line-height: 1.1;
|
| 346 |
font-weight: 800;
|
| 347 |
+
letter-spacing: -0.02em;
|
| 348 |
color: var(--lookupit-ink);
|
| 349 |
}
|
| 350 |
|
| 351 |
#${widgetId} .lookupit-subtitle {
|
| 352 |
+
margin-top: 3px;
|
| 353 |
display: inline-flex;
|
| 354 |
align-items: center;
|
| 355 |
+
gap: 4px;
|
| 356 |
+
padding: 4px 7px;
|
| 357 |
border-radius: 999px;
|
| 358 |
background: var(--lookupit-coral-soft);
|
| 359 |
color: var(--lookupit-coral-deep);
|
| 360 |
+
font-size: 10px;
|
| 361 |
font-weight: 700;
|
| 362 |
line-height: 1;
|
| 363 |
}
|
| 364 |
|
| 365 |
#${widgetId} .lookupit-status-dot {
|
| 366 |
+
width: 5px;
|
| 367 |
+
height: 5px;
|
| 368 |
border-radius: 50%;
|
| 369 |
background: var(--lookupit-coral);
|
| 370 |
+
box-shadow: 0 0 0 3px rgba(219, 63, 70, 0.14);
|
| 371 |
}
|
| 372 |
|
| 373 |
#${widgetId} .lookupit-close {
|
| 374 |
+
width: 28px;
|
| 375 |
+
height: 28px;
|
| 376 |
border: 1px solid rgba(217, 58, 73, 0.16);
|
| 377 |
+
border-radius: 9px;
|
| 378 |
background: rgba(255, 255, 255, 0.9);
|
| 379 |
color: var(--lookupit-ink);
|
| 380 |
cursor: pointer;
|
| 381 |
display: flex;
|
| 382 |
align-items: center;
|
| 383 |
justify-content: center;
|
| 384 |
+
font-size: 13px;
|
| 385 |
font-weight: 700;
|
| 386 |
+
box-shadow: 0 4px 8px rgba(181, 31, 52, 0.08);
|
| 387 |
transition: transform 160ms ease, border-color 160ms ease, color 160ms ease;
|
| 388 |
}
|
| 389 |
|
|
|
|
| 394 |
}
|
| 395 |
|
| 396 |
#${widgetId} .lookupit-close svg {
|
| 397 |
+
width: 13px;
|
| 398 |
+
height: 13px;
|
| 399 |
}
|
| 400 |
|
| 401 |
#${widgetId} .lookupit-messages {
|
| 402 |
position: relative;
|
| 403 |
flex: 1;
|
| 404 |
overflow-y: auto;
|
| 405 |
+
padding: 10px 11px 8px;
|
| 406 |
display: flex;
|
| 407 |
flex-direction: column;
|
| 408 |
+
gap: 8px;
|
| 409 |
scroll-behavior: smooth;
|
| 410 |
}
|
| 411 |
|
|
|
|
| 419 |
}
|
| 420 |
|
| 421 |
#${widgetId} .lookupit-msg {
|
| 422 |
+
max-width: 90%;
|
| 423 |
display: flex;
|
| 424 |
flex-direction: column;
|
| 425 |
+
gap: 5px;
|
| 426 |
animation: lookupitFadeSlide 220ms ease;
|
| 427 |
}
|
| 428 |
|
|
|
|
| 435 |
}
|
| 436 |
|
| 437 |
#${widgetId} .lookupit-bubble {
|
| 438 |
+
padding: 9px 11px;
|
| 439 |
+
border-radius: 14px;
|
| 440 |
+
font-size: 12.5px;
|
| 441 |
+
line-height: 1.5;
|
| 442 |
word-break: break-word;
|
| 443 |
}
|
| 444 |
|
|
|
|
| 476 |
}
|
| 477 |
|
| 478 |
#${widgetId} .lookupit-time {
|
| 479 |
+
padding: 0 4px;
|
| 480 |
+
font-size: 10px;
|
| 481 |
font-weight: 700;
|
| 482 |
letter-spacing: 0.02em;
|
| 483 |
color: var(--lookupit-muted);
|
|
|
|
| 490 |
#${widgetId} .lookupit-replies {
|
| 491 |
display: flex;
|
| 492 |
flex-wrap: wrap;
|
| 493 |
+
gap: 6px;
|
| 494 |
+
margin-top: 6px;
|
| 495 |
}
|
| 496 |
|
| 497 |
#${widgetId} .lookupit-reply {
|
| 498 |
+
padding: 6px 10px;
|
| 499 |
border-radius: 999px;
|
| 500 |
border: 1px solid rgba(217, 58, 73, 0.22);
|
| 501 |
background: linear-gradient(180deg, #ffffff 0%, #fff4f6 100%);
|
| 502 |
color: var(--lookupit-ink);
|
| 503 |
+
font-size: 10.5px;
|
| 504 |
font-weight: 700;
|
| 505 |
line-height: 1.2;
|
| 506 |
cursor: pointer;
|
| 507 |
+
box-shadow: 0 4px 8px rgba(181, 31, 52, 0.06);
|
| 508 |
transition: transform 150ms ease, border-color 150ms ease, color 150ms ease;
|
| 509 |
}
|
| 510 |
|
|
|
|
| 517 |
#${widgetId} .lookupit-typing {
|
| 518 |
display: flex;
|
| 519 |
align-items: center;
|
| 520 |
+
gap: 4px;
|
| 521 |
+
padding: 2px 13px 8px;
|
| 522 |
}
|
| 523 |
|
| 524 |
#${widgetId} .lookupit-typing span {
|
| 525 |
+
width: 7px;
|
| 526 |
+
height: 7px;
|
| 527 |
border-radius: 50%;
|
| 528 |
background: rgba(219, 63, 70, 0.42);
|
| 529 |
animation: lookupitBounce 1s infinite ease-in-out;
|
|
|
|
| 538 |
}
|
| 539 |
|
| 540 |
#${widgetId} .lookupit-input {
|
| 541 |
+
padding: 8px 10px 10px;
|
| 542 |
display: flex;
|
| 543 |
align-items: flex-end;
|
| 544 |
+
gap: 7px;
|
| 545 |
border-top: 1px solid rgba(217, 58, 73, 0.14);
|
| 546 |
background: linear-gradient(180deg, rgba(255, 255, 255, 0.86) 0%, rgba(255, 245, 247, 0.98) 100%);
|
| 547 |
}
|
| 548 |
|
| 549 |
#${widgetId} .lookupit-input textarea {
|
| 550 |
flex: 1;
|
| 551 |
+
min-height: 38px;
|
| 552 |
+
max-height: 84px;
|
| 553 |
+
padding: 9px 11px;
|
| 554 |
+
border-radius: 14px;
|
| 555 |
border: 1px solid var(--lookupit-line);
|
| 556 |
background: rgba(255, 255, 255, 0.94);
|
| 557 |
color: var(--lookupit-ink);
|
| 558 |
+
font-size: 12.5px;
|
| 559 |
line-height: 1.5;
|
| 560 |
outline: none;
|
| 561 |
resize: none;
|
|
|
|
| 566 |
|
| 567 |
#${widgetId} .lookupit-input textarea:focus {
|
| 568 |
border-color: rgba(219, 63, 70, 0.36);
|
| 569 |
+
box-shadow: 0 0 0 2px rgba(219, 63, 70, 0.08);
|
| 570 |
}
|
| 571 |
|
| 572 |
#${widgetId} .lookupit-input textarea::placeholder {
|
|
|
|
| 574 |
}
|
| 575 |
|
| 576 |
#${widgetId} .lookupit-send {
|
| 577 |
+
width: 38px;
|
| 578 |
+
height: 38px;
|
| 579 |
border: 0;
|
| 580 |
+
border-radius: 12px;
|
| 581 |
background:
|
| 582 |
radial-gradient(circle at 30% 22%, rgba(255, 255, 255, 0.28), transparent 28%),
|
| 583 |
linear-gradient(145deg, #ef5b69 0%, var(--lookupit-coral) 58%, var(--lookupit-coral-deep) 100%);
|
|
|
|
| 587 |
align-items: center;
|
| 588 |
justify-content: center;
|
| 589 |
flex: 0 0 auto;
|
| 590 |
+
box-shadow: 0 8px 16px rgba(219, 63, 70, 0.24);
|
| 591 |
transition: transform 150ms ease, box-shadow 150ms ease;
|
| 592 |
}
|
| 593 |
|
| 594 |
#${widgetId} .lookupit-send:hover {
|
| 595 |
transform: translateY(-1px);
|
| 596 |
+
box-shadow: 0 10px 18px rgba(219, 63, 70, 0.28);
|
| 597 |
}
|
| 598 |
|
| 599 |
#${widgetId} .lookupit-send:disabled {
|
|
|
|
| 603 |
}
|
| 604 |
|
| 605 |
#${widgetId} .lookupit-send svg {
|
| 606 |
+
width: 15px;
|
| 607 |
+
height: 15px;
|
| 608 |
}
|
| 609 |
|
| 610 |
@keyframes lookupitFadeSlide {
|
|
|
|
| 629 |
|
| 630 |
@media (max-width: 640px) {
|
| 631 |
#${widgetId} {
|
| 632 |
+
${config.position === "left" ? "left: 10px;" : "right: 10px;"}
|
| 633 |
+
bottom: 10px;
|
| 634 |
}
|
| 635 |
|
| 636 |
#${widgetId} .lookupit-panel {
|
| 637 |
+
width: min(calc(100vw - 16px), 294px);
|
| 638 |
+
bottom: 60px;
|
| 639 |
+
max-height: min(440px, calc(100vh - 84px));
|
| 640 |
+
border-radius: 20px;
|
| 641 |
}
|
| 642 |
}
|
| 643 |
`;
|
templates/index.html
CHANGED
|
@@ -35,8 +35,8 @@
|
|
| 35 |
</svg>
|
| 36 |
</div>
|
| 37 |
<div>
|
| 38 |
-
<div class="chat-name">
|
| 39 |
-
<div class="chat-status"><span class="dot"></span>
|
| 40 |
</div>
|
| 41 |
</div>
|
| 42 |
<button id="chat-close-btn" aria-label="Close chat">✕</button>
|
|
@@ -53,7 +53,7 @@
|
|
| 53 |
<div class="chat-input-area">
|
| 54 |
<textarea
|
| 55 |
id="chat-input"
|
| 56 |
-
placeholder="
|
| 57 |
rows="1"
|
| 58 |
maxlength="1000"
|
| 59 |
></textarea>
|
|
|
|
| 35 |
</svg>
|
| 36 |
</div>
|
| 37 |
<div>
|
| 38 |
+
<div class="chat-name">LookUP IT Assistant</div>
|
| 39 |
+
<div class="chat-status"><span class="dot"></span> Mobile app experts</div>
|
| 40 |
</div>
|
| 41 |
</div>
|
| 42 |
<button id="chat-close-btn" aria-label="Close chat">✕</button>
|
|
|
|
| 53 |
<div class="chat-input-area">
|
| 54 |
<textarea
|
| 55 |
id="chat-input"
|
| 56 |
+
placeholder="Describe your app idea..."
|
| 57 |
rows="1"
|
| 58 |
maxlength="1000"
|
| 59 |
></textarea>
|