/* tarifi.ge AI assistant widget (2026-11-05) — layout from myqira.ge's support chat, colours from home-v7. */
.tfa{--tfa-bg:#fff;--tfa-text:#0f172a;--tfa-line:#e8edf3;--tfa-soft:#f4f7fa;--tfa-muted:#64748b;--tfa-brand:#7c3aed;--tfa-brand-d:#6d28d9;--tfa-brand-l:#f5f3ff;--tfa-brand-b:#ddd6fe;color:var(--tfa-text);font-size:14px;font-family:'Mersad','Noto Sans Georgian',Inter,system-ui,sans-serif;line-height:1.45}
.tfa *{box-sizing:border-box}
.tfa-launch{position:fixed;right:22px;bottom:24px;z-index:2147482000;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:28px;padding:14px 20px;background:var(--tfa-brand);color:#fff;font:inherit;font-weight:700;cursor:pointer;box-shadow:0 10px 26px -8px rgba(76,29,149,.6);transition:background .15s,transform .1s}
.tfa-launch:hover{background:var(--tfa-brand-d)}
.tfa-launch:active{transform:scale(.97)}
.tfa-launch svg{flex:none;display:block}
.tfa-win{position:fixed;right:22px;bottom:90px;z-index:2147482001;width:min(380px,calc(100vw - 24px));height:min(720px,calc(100dvh - 115px));display:flex;flex-direction:column;background:var(--tfa-bg);color:var(--tfa-text);border:1px solid var(--tfa-line);border-radius:18px;box-shadow:0 16px 50px rgba(2,32,20,.28);overflow:hidden}
.tfa-win[hidden]{display:none}
.tfa-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--tfa-line);flex:none}
.tfa-brand{display:flex;align-items:center;gap:9px;min-width:0}
.tfa-brand img{width:30px;height:30px;object-fit:contain;flex:none}
.tfa-brand strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tfa-brand small{display:block;font-size:11px;color:var(--tfa-muted);margin-top:1px}
.tfa-acts{display:flex;align-items:center;gap:4px;flex:none}
.tfa-acts button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:8px;border:0;border-radius:9px;background:transparent;color:var(--tfa-text);cursor:pointer;line-height:1}
.tfa-acts button:hover,.tfa-acts button[aria-expanded=true]{background:var(--tfa-soft)}
.tfa-acts button[aria-pressed=true],.tfa-acts button[aria-expanded=true]{color:var(--tfa-brand)}
.tfa-acts svg{width:20px;height:20px;display:block}
.tfa-faq{padding:10px 12px;border-bottom:1px solid var(--tfa-line);background:var(--tfa-soft);display:grid;gap:4px;max-height:min(260px,45%);overflow-y:auto;overscroll-behavior:contain;flex:none}
.tfa-faq[hidden]{display:none}
.tfa-faq button{width:100%;padding:8px 11px;border:1px solid var(--tfa-brand-b);border-radius:9px;background:var(--tfa-brand-l);color:var(--tfa-brand-d);font:inherit;font-size:12.5px;font-weight:600;line-height:1.3;text-align:left;cursor:pointer;transition:background .15s,border-color .15s}
.tfa-faq button:hover{background:#ede9fe;border-color:var(--tfa-brand)}
.tfa-msgs{flex:1;min-height:0;padding:14px;overflow:auto;overscroll-behavior:contain}
.tfa-intro{margin:0 0 10px;padding:10px 12px;border-radius:12px;background:var(--tfa-brand-l);color:#4c1d95;font-size:13px;line-height:1.5}
.tfa-b{position:relative;margin:0 24px 10px 0;padding:11px 12px;border-radius:12px;background:var(--tfa-soft);overflow-wrap:anywhere;white-space:pre-wrap}
.tfa-b strong{display:flex;align-items:center;gap:7px;font-size:11px;margin-bottom:5px;color:var(--tfa-muted)}
.tfa-b strong img{width:18px;height:18px;object-fit:contain}
.tfa-mine{margin:0 0 10px 24px;background:#ede9fe}
.tfa-body a{color:var(--tfa-brand-d);text-decoration:underline;text-underline-offset:2px}
.tfa-err{background:#fef2f2;color:#991b1b}
.tfa-typing{display:inline-flex;gap:4px;padding:4px 0}
.tfa-typing i{width:7px;height:7px;border-radius:50%;background:var(--tfa-brand);animation:tfa-wait 1.2s infinite ease-in-out}
.tfa-typing i:nth-child(2){animation-delay:.15s}.tfa-typing i:nth-child(3){animation-delay:.3s}
@keyframes tfa-wait{0%,80%,100%{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
/* product card: photo on top, badge over the photo, title (2 lines), category, price row */
.tfa-card{display:flex;flex-direction:column;margin:8px 0;background:#fff;border:1px solid var(--tfa-line);border-radius:14px;overflow:hidden;white-space:normal;box-shadow:0 6px 16px -10px rgba(0,0,0,.25)}
.tfa-card-ph{position:relative;aspect-ratio:16/9;max-height:150px;background:#eef1f5;overflow:hidden}
.tfa-card-ph img{display:block;width:100%;height:100%;object-fit:contain;background:#fff}
.tfa-badge{position:absolute;top:8px;left:8px;padding:2px 8px;border-radius:999px;font-size:10.5px;font-weight:800;letter-spacing:.02em;line-height:1.5;background:#dc2626;color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.3);white-space:nowrap}
.tfa-badge.is-sale{background:#f59e0b;color:#1f1300}
.tfa-card-x{padding:10px 12px 0}
.tfa-card-t{font-weight:700;font-size:13.5px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tfa-card-m{margin-top:3px;font-size:11.5px;color:var(--tfa-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tfa-card-r{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px 10px}
.tfa-card-p{font-weight:800;font-size:14px;color:var(--tfa-brand-d);white-space:nowrap}
.tfa-card-p s{margin-left:6px;font-weight:600;font-size:11.5px;color:var(--tfa-muted)}
.tfa-card-a{display:inline-flex;padding:7px 12px;border-radius:9px;background:var(--tfa-brand);color:#fff!important;font-size:12px;font-weight:700;text-decoration:none!important;white-space:nowrap}
.tfa-card-a:hover{background:var(--tfa-brand-d)}
/* composer: one line, field + send */
.tfa-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid var(--tfa-line);flex:none}
.tfa-form label{flex:1 1 0;min-width:0;display:block;font-size:0;line-height:0}
.tfa-form textarea{width:100%;height:44px;min-height:44px;max-height:120px;padding:11px 13px;border:1px solid var(--tfa-line);border-radius:12px;background:var(--tfa-bg);color:var(--tfa-text);font:inherit;font-size:14px;line-height:1.4;resize:none;overflow-y:auto}
.tfa-form textarea:focus,.tfa-form textarea:focus-visible{outline:none!important;border-color:var(--tfa-brand);box-shadow:0 0 0 3px rgba(124,58,237,.14)}
.tfa-form button[type=submit]{flex:none;height:44px;margin:0;padding:0 16px;border:0;border-radius:12px;background:var(--tfa-brand);color:#fff;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.tfa-form button[type=submit]:hover{background:var(--tfa-brand-d)}
.tfa-form button[type=submit]:disabled{opacity:.6;cursor:default}
.tfa-honey{display:none!important}
/* name / surname / phone, asked once before the first question */
.tfa-guest{flex:1 1 100%;order:-1;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:2px 0 4px}
.tfa-guest[hidden]{display:none}
.tfa-gl{display:grid;gap:4px;font-size:11.5px;font-weight:600;color:var(--tfa-muted);line-height:1.3}
.tfa-gl-tel{grid-column:1/-1}
.tfa-gl input{width:100%;height:40px;padding:0 12px;border:1px solid var(--tfa-line);border-radius:10px;background:var(--tfa-bg);color:var(--tfa-text);font:inherit;font-size:14px;font-weight:400}
.tfa-gl input:focus,.tfa-gl input:focus-visible{outline:none!important;border-color:var(--tfa-brand);box-shadow:0 0 0 3px rgba(124,58,237,.14)}
/* phone numbers in answers: tap-to-call chips */
.tfa-tel{display:inline-flex;align-items:center;gap:5px;margin:1px 0;padding:3px 10px 3px 8px;border-radius:999px;background:var(--tfa-brand-l);border:1px solid var(--tfa-brand-b);color:var(--tfa-brand-d)!important;font-weight:700;font-size:13px;text-decoration:none!important;white-space:nowrap;line-height:1.4}
.tfa-tel:hover{background:#ede9fe;border-color:var(--tfa-brand)}
.tfa-tel svg{flex:none}
.tfa-note{flex:1 1 100%;margin:0;font-size:11px;color:var(--tfa-muted)}
.tfa-note:empty{display:none}
/* dark theme of the site */
[data-theme=dark] .tfa{--tfa-bg:#0d1117;--tfa-text:#e2e8f0;--tfa-line:#1e293b;--tfa-soft:#161b22;--tfa-muted:#94a3b8;--tfa-brand-l:#2a1f45;--tfa-brand-b:#4c1d95}
[data-theme=dark] .tfa-mine{background:#2a1f45}
[data-theme=dark] .tfa-intro{color:#ddd6fe}
[data-theme=dark] .tfa-card{background:#161b22;border-color:#1e293b}
[data-theme=dark] .tfa-card-p{color:#c4b5fd}
[data-theme=dark] .tfa-faq button:hover{background:#3b2a5e}
/* phone: full screen, launcher hidden, page scroll locked */
@media(max-width:600px){
.tfa-launch{right:12px;bottom:16px;bottom:max(16px,env(safe-area-inset-bottom))}
.tfa-win{position:fixed;inset:0;width:100vw;height:100dvh;border-radius:0;border:0;z-index:2147482002}
.tfa-head{padding-top:max(12px,env(safe-area-inset-top))}
.tfa-form{padding-bottom:max(10px,env(safe-area-inset-bottom))}
body.tfa-open{overflow:hidden}
body.tfa-open .tfa-launch{display:none}
}
@media(prefers-reduced-motion:reduce){.tfa-typing i{animation:none;opacity:.7}}

/* v2 (2026-11-05): suggestion chips, thumbs up/down, operator button */
.tfa-chips{display:flex;flex-wrap:wrap;gap:6px;padding:6px 12px 2px;flex:none}
.tfa-chips[hidden]{display:none}
.tfa-chips button{padding:6px 11px;border:1px solid var(--tfa-brand-b);border-radius:999px;background:#fff;color:var(--tfa-brand-d);font:inherit;font-size:12px;font-weight:600;line-height:1.3;cursor:pointer;transition:background .15s,border-color .15s}
.tfa-chips button:hover{background:var(--tfa-brand-l);border-color:var(--tfa-brand)}
.tfa-rate{display:flex;gap:2px;margin-top:6px}
.tfa-rate button{width:26px;height:24px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--tfa-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.tfa-rate button svg{width:15px;height:15px}
.tfa-rate button:hover{background:var(--tfa-brand-l);color:var(--tfa-brand-d)}
.tfa-rate button.is-on{background:var(--tfa-brand-l);color:var(--tfa-brand)}
[data-theme=dark] .tfa-chips button{background:#1e1b2e}

/* 2026-11-06: header did not fit (the title ran under the FAQ icon). Wider window, slimmer buttons, title clipped inside its own box. */
.tfa-win{width:min(400px,calc(100vw - 24px))}
.tfa-head{padding:10px 10px 10px 14px;gap:6px}
.tfa-brand{flex:1 1 auto;overflow:hidden}
.tfa-brand>div,.tfa-brand>span{min-width:0;overflow:hidden}
.tfa-brand strong{font-size:13.5px;padding-right:2px}
.tfa-acts{gap:2px}
.tfa-acts button{width:32px;height:32px;padding:6px;border-radius:8px}
.tfa-acts svg{width:19px;height:19px}
@media(max-width:600px){.tfa-win{width:100vw}}
@media(max-width:400px){.tfa-acts button{width:30px;height:30px;padding:5px}.tfa-acts svg{width:18px;height:18px}.tfa-brand img{width:26px;height:26px}.tfa-brand{gap:7px}}
