|
197 | 197 | .carousel .slide .hd { display: block; color: var(--accent); font-weight: 600; margin-top: 12px; } |
198 | 198 | .carousel .slide .bul { display: block; padding-left: 14px; text-indent: -14px; } |
199 | 199 |
|
| 200 | + /* ── Telegram chat mockup (slide 7) ── */ |
| 201 | + .tg-wrap { display: flex; justify-content: center; padding: 10px 0 4px; } |
| 202 | + .tg-phone { |
| 203 | + width: 320px; background: #0e1621; border-radius: 14px; |
| 204 | + border: 1px solid #1e3448; overflow: hidden; |
| 205 | + font-family: var(--font-sans); font-size: 0.8rem; |
| 206 | + display: flex; flex-direction: column; max-height: 400px; |
| 207 | + } |
| 208 | + .tg-hdr { |
| 209 | + background: #17212b; padding: 9px 14px; display: flex; align-items: center; |
| 210 | + gap: 10px; border-bottom: 1px solid #0a1929; flex-shrink: 0; |
| 211 | + } |
| 212 | + .tg-av { |
| 213 | + width: 34px; height: 34px; border-radius: 50%; background: #2b5f7e; |
| 214 | + display: flex; align-items: center; justify-content: center; |
| 215 | + font-weight: 700; color: #fff; font-size: 0.875rem; flex-shrink: 0; |
| 216 | + } |
| 217 | + .tg-hdr-info .tg-bot-name { color: #fff; font-weight: 600; font-size: 0.85rem; } |
| 218 | + .tg-hdr-info .tg-bot-sub { color: #8ba9c1; font-size: 0.7rem; } |
| 219 | + .tg-msgs { |
| 220 | + flex: 1; overflow-y: auto; padding: 10px 10px 6px; |
| 221 | + display: flex; flex-direction: column; gap: 5px; |
| 222 | + } |
| 223 | + .tg-msg { display: flex; flex-direction: column; max-width: 84%; } |
| 224 | + .tg-msg.tg-out { align-self: flex-end; align-items: flex-end; } |
| 225 | + .tg-msg.tg-in { align-self: flex-start; } |
| 226 | + .tg-sender { color: #71bafa; font-size: 0.7rem; font-weight: 600; margin-bottom: 2px; padding-left: 2px; } |
| 227 | + .tg-bbl { |
| 228 | + padding: 7px 10px; border-radius: 12px; line-height: 1.45; color: #d8e1ea; |
| 229 | + } |
| 230 | + .tg-out .tg-bbl { background: #2b5278; border-radius: 12px 12px 4px 12px; } |
| 231 | + .tg-in .tg-bbl { background: #182533; border-radius: 12px 12px 12px 4px; } |
| 232 | + .tg-reply { |
| 233 | + background: rgba(255,255,255,.06); border-left: 3px solid #71bafa; |
| 234 | + border-radius: 4px; padding: 3px 7px; margin-bottom: 5px; |
| 235 | + font-size: 0.68rem; color: #8ba9c1; |
| 236 | + } |
| 237 | + .tg-time { font-size: 0.62rem; color: #526a7d; margin-top: 2px; padding: 0 2px; } |
| 238 | + .tg-code { |
| 239 | + background: rgba(0,0,0,.35); border-radius: 6px; padding: 5px 8px; |
| 240 | + font-family: var(--font-mono); font-size: 0.67rem; color: #a8c7fa; |
| 241 | + margin-top: 4px; white-space: pre-wrap; word-break: break-all; line-height: 1.5; |
| 242 | + } |
| 243 | + |
200 | 244 | /* ── Install steps ── */ |
201 | 245 | .steps { list-style: none; } |
202 | 246 | .steps li { |
|
326 | 370 | "softwareVersion": "1.2.0", |
327 | 371 | "license": "https://github.com/BackendStack21/odek/blob/main/LICENSE", |
328 | 372 | "image": "https://odek.21no.de/og-image.png", |
329 | | - "screenshot": "https://odek.21no.de/telegram-demo.png", |
| 373 | + "screenshot": "https://odek.21no.de/og-image.png", |
330 | 374 | "sameAs": ["https://github.com/BackendStack21/odek"], |
331 | 375 | "offers": { |
332 | 376 | "@type": "Offer", |
@@ -559,7 +603,52 @@ <h1>odek</h1> |
559 | 603 | <!-- Slide 7 — the result --> |
560 | 604 | <div class="slide slide-img"> |
561 | 605 | <span class="info"># 7 · Chat with it →</span><br> |
562 | | - <img src="telegram-demo.png" alt="Chatting with the odek Telegram bot — it replies in English and Spanish, with token stats per turn" width="1220" height="1214" loading="lazy"> |
| 606 | + <div class="tg-wrap" aria-label="Chatting with the odek Telegram bot — it replies in English and Spanish, with token stats per turn"> |
| 607 | + <div class="tg-phone"> |
| 608 | + <div class="tg-hdr"> |
| 609 | + <div class="tg-av">k</div> |
| 610 | + <div class="tg-hdr-info"> |
| 611 | + <div class="tg-bot-name">k3s</div> |
| 612 | + <div class="tg-bot-sub">bot</div> |
| 613 | + </div> |
| 614 | + </div> |
| 615 | + <div class="tg-msgs"> |
| 616 | + <div class="tg-msg tg-out"> |
| 617 | + <div class="tg-bbl">Hi</div> |
| 618 | + <span class="tg-time">13:10 ✓✓</span> |
| 619 | + </div> |
| 620 | + <div class="tg-msg tg-in"> |
| 621 | + <span class="tg-sender">k3s</span> |
| 622 | + <div class="tg-bbl"><div class="tg-reply">Hi</div>🤔 Looking into that…</div> |
| 623 | + <span class="tg-time">13:10</span> |
| 624 | + </div> |
| 625 | + <div class="tg-msg tg-in"> |
| 626 | + <span class="tg-sender">k3s</span> |
| 627 | + <div class="tg-bbl"><div class="tg-reply">Hi</div>🌐 Buenas! Me saludaron en inglés pero puedo responder en inglés o español.</div> |
| 628 | + <span class="tg-time">13:10</span> |
| 629 | + </div> |
| 630 | + <div class="tg-msg tg-in"> |
| 631 | + <span class="tg-sender">k3s</span> |
| 632 | + <div class="tg-bbl"> |
| 633 | + <div class="tg-reply">Hi</div> |
| 634 | + ¡Hola! 👋<br><br> |
| 635 | + Kyberneees — you caught me in a good mood. What's on your mind?<br><br> |
| 636 | + Got a problem to crack, a PR to review, a deploy to babysit, or just testing if I'm alive? I'm here to compress hours into minutes.<br><br> |
| 637 | + <em>(Also: I speak Spanish just as well, so tira con confianza.)</em> |
| 638 | + </div> |
| 639 | + <span class="tg-time">13:10</span> |
| 640 | + </div> |
| 641 | + <div class="tg-msg tg-in"> |
| 642 | + <span class="tg-sender">k3s</span> |
| 643 | + <div class="tg-bbl"> |
| 644 | + <div class="tg-reply">Hi</div> |
| 645 | + <div class="tg-code">✅ Done · 1 turn · 10095 in / 155 out · cache: 0cr+0rd+0ct · 2s — tools: none</div> |
| 646 | + </div> |
| 647 | + <span class="tg-time">13:10</span> |
| 648 | + </div> |
| 649 | + </div> |
| 650 | + </div> |
| 651 | + </div> |
563 | 652 | <span class="cap">Same agent, now in your pocket. Risky commands prompt for <strong>Approve / Deny / Trust</strong> right in the chat.</span> |
564 | 653 | </div> |
565 | 654 |
|
|
0 commit comments