#tp-launcher{position:fixed;bottom:28px;right:28px;width:62px;height:62px;border-radius:50%;background:linear-gradient(145deg,#21B0F3 0%,#1B4A80 100%);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:99999;outline:none;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;animation:tpPulse 3s ease-in-out infinite;overflow:hidden}
#tp-launcher:hover{transform:scale(1.12);box-shadow:0 8px 32px rgba(33,176,243,.7)}
@keyframes tpPulse{0%,100%{box-shadow:0 4px 20px rgba(33,176,243,.5),0 0 0 0 rgba(33,176,243,.3)}50%{box-shadow:0 4px 20px rgba(33,176,243,.7),0 0 0 12px rgba(33,176,243,0)}}
#tp-launcher .tp-icon-robot{display:flex;align-items:center;justify-content:center;transition:opacity .2s}
#tp-launcher .tp-icon-close{display:none;align-items:center;justify-content:center}
#tp-launcher.tp-open .tp-icon-robot{display:none}
#tp-launcher.tp-open .tp-icon-close{display:flex}
#tp-badge{position:absolute;top:-3px;right:-3px;width:19px;height:19px;background:#ff4757;border-radius:50%;border:2px solid #0a1629;font-size:10px;font-weight:700;color:#fff;display:flex;align-items:center;justify-content:center;font-family:Helvetica,Arial,sans-serif;animation:tpBadge .5s 1.2s cubic-bezier(.34,1.56,.64,1) both}
@keyframes tpBadge{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}
#tp-window{position:fixed;bottom:102px;right:28px;width:380px;height:520px;background:linear-gradient(160deg,rgba(8,18,38,.99) 0%,rgba(15,38,72,.99) 100%);border:1px solid rgba(33,176,243,.22);border-radius:18px;box-shadow:0 24px 64px rgba(0,0,0,.7),0 0 0 1px rgba(33,176,243,.07),inset 0 1px 0 rgba(255,255,255,.05);display:flex;flex-direction:column;z-index:99998;opacity:0;pointer-events:none;transform:translateY(16px) scale(.96);transition:opacity .35s ease,transform .35s cubic-bezier(.34,1.56,.64,1);overflow:hidden;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif}
#tp-window.tp-open{opacity:1;pointer-events:all;transform:translateY(0) scale(1)}
.tp-header{padding:14px 16px 12px;background:linear-gradient(135deg,rgba(27,74,128,.9),rgba(33,176,243,.1));border-bottom:1px solid rgba(33,176,243,.15);display:flex;align-items:center;gap:10px;flex-shrink:0;position:relative}
.tp-header::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#21B0F3 50%,transparent)}
.tp-av{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#21B0F3,#1B4A80);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px rgba(33,176,243,.4);flex-shrink:0;position:relative}
.tp-av::after{content:'';position:absolute;bottom:1px;right:1px;width:9px;height:9px;background:#2ecc71;border-radius:50%;border:2px solid #08122a}
.tp-hinfo{flex:1;min-width:0}
.tp-hname{font-family:'Bebas Neue',sans-serif;font-size:16px;letter-spacing:1.5px;color:#fff;line-height:1}
.tp-hsub{font-size:11px;color:#21B0F3;margin-top:3px;display:flex;align-items:center;gap:5px}
.tp-dot{width:6px;height:6px;background:#2ecc71;border-radius:50%;animation:tpBlink 2s infinite;flex-shrink:0}
@keyframes tpBlink{0%,100%{opacity:1}50%{opacity:.25}}
.tp-hbtn{width:28px;height:28px;border-radius:7px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);cursor:pointer;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.5);transition:background .2s,color .2s,border-color .2s;margin-left:3px;flex-shrink:0}
.tp-hbtn:hover{background:rgba(33,176,243,.3)!important;color:#21B0F3!important;border-color:rgba(33,176,243,.6)!important}
.tp-hbtn svg{display:block;stroke:#fff;fill:none!important;transition:stroke .2s}
.tp-hbtn:hover svg{stroke:#21B0F3!important}
.tp-msgs{flex:1;overflow-y:auto;padding:14px 12px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}
.tp-msgs::-webkit-scrollbar{width:3px}
.tp-msgs::-webkit-scrollbar-thumb{background:rgba(33,176,243,.25);border-radius:3px}
.tp-msg{display:flex;gap:7px;animation:tpIn .35s cubic-bezier(.34,1.56,.64,1) both}
@keyframes tpIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.tp-msg.tp-user{flex-direction:row-reverse}
.tp-mav{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#21B0F3,#1B4A80);display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:700;color:#fff;flex-shrink:0;align-self:flex-end;font-family:'Bebas Neue',sans-serif;letter-spacing:.5px}
.tp-bbl{max-width:80%;padding:10px 13px;border-radius:15px;font-size:13px;line-height:1.55;color:rgba(255,255,255,.92)}
.tp-msg.tp-bot .tp-bbl{background:linear-gradient(135deg,rgba(27,74,128,.6),rgba(16,44,88,.72));border:1px solid rgba(33,176,243,.18);border-bottom-left-radius:4px}
.tp-msg.tp-user .tp-bbl{background:linear-gradient(135deg,#21B0F3,#1a8ccc);color:#fff;border-bottom-right-radius:4px;box-shadow:0 3px 14px rgba(33,176,243,.28)}
.tp-bbl a{color:#21B0F3;text-decoration:none;font-weight:600;border-bottom:1px solid rgba(33,176,243,.3);transition:border-color .2s}
.tp-bbl a:hover{border-color:#21B0F3}
.tp-msg.tp-user .tp-bbl a{color:#fff;border-color:rgba(255,255,255,.35)}
.tp-hl{color:#21B0F3;font-weight:600}
.tp-time{font-size:10px;color:rgba(255,255,255,.28);margin-top:3px;padding:0 3px}
.tp-msg.tp-bot .tp-time{text-align:left}
.tp-msg.tp-user .tp-time{text-align:right}
.tp-qrs{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px;animation:tpIn .35s .08s cubic-bezier(.34,1.56,.64,1) both}
.tp-qr{display:inline-flex!important;align-items:center!important;gap:5px!important;background:#0d2244!important;border:1px solid #21B0F3!important;color:#21B0F3!important;padding:6px 13px!important;border-radius:20px!important;font-size:12px!important;font-weight:500!important;cursor:pointer!important;transition:background .2s,color .2s,transform .18s,box-shadow .2s!important;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif!important;white-space:nowrap!important;line-height:1.4!important;text-decoration:none!important;outline:none!important;box-shadow:none!important;-webkit-appearance:none!important;appearance:none!important}
.tp-qr:hover{background:#21B0F3!important;color:#fff!important;transform:translateY(-1px)!important;box-shadow:0 4px 14px rgba(33,176,243,.35)!important}
.tp-qr:disabled{opacity:.35!important;cursor:default!important;transform:none!important;box-shadow:none!important}
.tp-cards{display:flex;flex-direction:column;gap:6px;margin-top:7px}
.tp-card{background:rgba(33,176,243,.06);border:1px solid rgba(33,176,243,.16);border-radius:10px;padding:9px 11px}
.tp-ctitle{font-family:'Bebas Neue',sans-serif;font-size:12px;letter-spacing:1px;color:#21B0F3;margin-bottom:3px}
.tp-cdesc{font-size:12px;color:rgba(255,255,255,.68);line-height:1.5}
.tp-price{display:inline-block;background:rgba(33,176,243,.1);border:1px solid rgba(33,176,243,.28);color:#21B0F3;font-size:11px;font-weight:700;padding:2px 8px;border-radius:20px;margin-top:5px}
.tp-ptotal{font-family:'Bebas Neue',sans-serif;font-size:14px;color:#2efd8a;letter-spacing:1px;margin-top:5px;padding:4px 9px;background:rgba(46,253,138,.06);border:1px solid rgba(46,253,138,.16);border-radius:6px;display:inline-block}
.tp-sbadge{font-size:11px;background:rgba(33,176,243,.08);border:1px solid rgba(33,176,243,.2);color:rgba(255,255,255,.72);padding:2px 7px;border-radius:20px}
.tp-slist{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}
.tp-divider{height:1px;background:linear-gradient(90deg,transparent,rgba(33,176,243,.18),transparent);margin:6px 0}
.tp-contact-card{background:linear-gradient(135deg,rgba(27,74,128,.45),rgba(33,176,243,.07));border:1px solid rgba(33,176,243,.22);border-radius:11px;padding:10px 12px;margin-top:7px}
.tp-crow{display:flex;align-items:center;gap:9px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.05)}
.tp-crow:last-child{border-bottom:none;padding-bottom:0}
.tp-crow:first-child{padding-top:0}
.tp-cicon{width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.tp-cicon.wa{background:rgba(37,211,102,.12)}
.tp-cicon.em{background:rgba(33,176,243,.12)}
.tp-cicon.wb{background:rgba(27,74,128,.4)}
.tp-clink{font-size:13px;font-weight:600;text-decoration:none;transition:color .2s}
.tp-clink.wa{color:#25d366}
.tp-clink.wa:hover{color:#1db954}
.tp-clink.bl{color:#21B0F3}
.tp-clink.bl:hover{color:#fff}
.tp-clabel{font-size:10px;color:rgba(255,255,255,.32);margin-bottom:1px}
.tp-typing{display:flex;gap:7px;align-items:flex-end;animation:tpIn .3s both}
.tp-typing-bbl{background:linear-gradient(135deg,rgba(27,74,128,.6),rgba(16,44,88,.72));border:1px solid rgba(33,176,243,.18);border-radius:15px;border-bottom-left-radius:4px;padding:11px 14px;display:flex;gap:5px;align-items:center}
.tp-td{width:6px;height:6px;border-radius:50%;background:#21B0F3;animation:tpDot 1.2s infinite}
.tp-td:nth-child(2){animation-delay:.2s}
.tp-td:nth-child(3){animation-delay:.4s}
@keyframes tpDot{0%,80%,100%{transform:scale(.65);opacity:.4}40%{transform:scale(1.1);opacity:1}}
.tp-input-area{padding:10px 12px 12px;background:rgba(6,14,30,.85);border-top:1px solid rgba(33,176,243,.12);flex-shrink:0}
.tp-input-row{display:flex;gap:7px;align-items:flex-end;background:rgba(27,74,128,.25);border:1px solid rgba(33,176,243,.18);border-radius:22px;padding:7px 7px 7px 14px;transition:border-color .2s,box-shadow .2s}
.tp-input-row:focus-within{border-color:rgba(33,176,243,.48);box-shadow:0 0 0 3px rgba(33,176,243,.09)}
#tp-input{flex:1;background:transparent;border:none;outline:none;color:#fff;font-size:13px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;resize:none;max-height:72px;line-height:1.5;padding:2px 0}
#tp-input::placeholder{color:rgba(255,255,255,.26)}
.tp-send{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#21B0F3,#1a8ccc);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 3px 10px rgba(33,176,243,.32);transition:transform .2s,box-shadow .2s}
.tp-send:hover{transform:scale(1.1);box-shadow:0 5px 16px rgba(33,176,243,.5)}
.tp-send:active{transform:scale(.93)}
.tp-hint{font-size:10px;color:rgba(255,255,255,.2);text-align:center;margin-top:6px;letter-spacing:.3px}
.tp-brand{font-family:'Bebas Neue',sans-serif;font-size:9px;letter-spacing:2.5px;color:rgba(33,176,243,.28);text-align:center;margin-top:1px}
@media(max-width:480px){#tp-window{width:calc(100vw - 16px);right:8px;bottom:84px;height:75vh}#tp-launcher{right:16px;bottom:16px}}