/* TradeQuote live chat widget — themable via custom props. */
#tq-chat-root { --tqc-accent:#D9A441; --tqc-dark:#0E2438; --tqc-radius:16px; font-family:inherit; }
.tqc-bubble {
  position:fixed; right:20px; bottom:20px; z-index:9990;
  width:58px; height:58px; border-radius:50%; border:0; cursor:pointer;
  background:var(--tqc-accent); color:var(--tqc-dark);
  box-shadow:0 10px 30px rgba(10,27,42,.35);
  display:flex; align-items:center; justify-content:center;
  transition:transform .18s ease, box-shadow .18s ease;
}
.tqc-bubble:hover { transform:translateY(-3px); }
.tqc-bubble svg { width:26px; height:26px; }
.tqc-bubble__dot {
  position:absolute; top:4px; right:4px; width:13px; height:13px; border-radius:50%;
  border:2px solid #fff; background:#9aa6b2;
}
.tqc-bubble__dot.is-online { background:#2FA96C; }

.tqc-panel {
  position:fixed; right:20px; bottom:92px; z-index:9991;
  width:min(360px, calc(100vw - 32px));
  background:#fff; border-radius:var(--tqc-radius);
  box-shadow:0 24px 60px rgba(10,27,42,.35);
  overflow:hidden; display:none; flex-direction:column;
  max-height:min(560px, calc(100dvh - 120px));
}
.tqc-panel.open { display:flex; }
.tqc-head {
  background:var(--tqc-dark); color:#F7F1E4; padding:14px 18px;
  display:flex; align-items:center; gap:10px;
}
.tqc-head__status { font-size:.78rem; opacity:.8; display:block; }
.tqc-head strong { font-size:1rem; }
.tqc-close { margin-left:auto; background:none; border:0; color:#F7F1E4; font-size:1.3rem; cursor:pointer; line-height:1; }
.tqc-wa { padding:10px 14px; background:#fff; border-bottom:1px solid #eee; }
.tqc-wa__btn {
  display:flex; align-items:center; justify-content:center; gap:8px;
  background:#25D366; color:#073B1D !important; text-decoration:none;
  font-weight:600; font-size:.9rem; padding:9px 14px; border-radius:9px;
  transition:filter .15s ease;
}
.tqc-wa__btn:hover { filter:brightness(1.05); }
.tqc-body { padding:16px; overflow-y:auto; flex:1; background:#FAF6EE; }
.tqc-msg { max-width:82%; margin-bottom:10px; padding:9px 13px; border-radius:12px; font-size:.92rem; line-height:1.45; white-space:pre-wrap; word-wrap:break-word; }
.tqc-msg--in  { background:#fff; border:1px solid #E3D8BE; border-bottom-left-radius:4px; }
.tqc-msg--out { background:var(--tqc-dark); color:#F7F1E4; margin-left:auto; border-bottom-right-radius:4px; }
.tqc-msg__who { display:block; font-size:.7rem; opacity:.6; margin-bottom:2px; }
.tqc-form { padding:12px; background:#fff; border-top:1px solid #eee; display:grid; gap:8px; }
.tqc-form input, .tqc-form textarea {
  width:100%; padding:10px 12px; border:1.5px solid #E3D8BE; border-radius:9px; font:inherit; font-size:.92rem;
}
.tqc-form input:focus, .tqc-form textarea:focus { outline:none; border-color:var(--tqc-accent); }
.tqc-form textarea { resize:none; min-height:44px; max-height:110px; }
.tqc-send {
  background:var(--tqc-accent); color:var(--tqc-dark); font-weight:600; font-size:.95rem;
  border:0; border-radius:9px; padding:11px 16px; cursor:pointer;
}
.tqc-send:hover { filter:brightness(1.06); }
.tqc-note { font-size:.8rem; color:#5D6B7A; margin:0; }
.tqc-ok { background:#E8F4EC; color:#1F5E3B; border-radius:9px; padding:10px 14px; font-size:.9rem; }
.tqc-row { display:flex; gap:8px; }
.tqc-row textarea { flex:1; }
@media (max-width:480px) {
  .tqc-panel { right:16px; }
  .tqc-bubble { right:16px; bottom:16px; }
}
