.tmg-v2-root{--tmg-accent:#0b63ce;position:fixed;right:22px;bottom:22px;z-index:999999;font-family:Arial,Helvetica,sans-serif}
.tmg-v2-launcher{width:60px;height:60px;border:0;border-radius:50%;background:var(--tmg-accent);color:#fff;cursor:pointer;box-shadow:0 8px 28px rgba(0,0,0,.24);display:grid;place-items:center;transition:transform .18s ease,box-shadow .18s ease}.tmg-v2-launcher:hover{transform:translateY(-2px);box-shadow:0 10px 32px rgba(0,0,0,.28)}.tmg-v2-launcher svg{width:29px;height:29px;fill:currentColor;display:block}
.tmg-v2-panel{display:none;position:absolute;right:0;bottom:74px;width:min(390px,calc(100vw - 28px));height:min(640px,calc(100vh - 110px));background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 16px 50px rgba(0,0,0,.27);border:1px solid rgba(0,0,0,.08)}
.tmg-v2-panel.is-open{display:flex;flex-direction:column}
.tmg-v2-header{display:flex;justify-content:space-between;align-items:center;background:var(--tmg-accent);color:#fff;padding:14px 16px}
.tmg-v2-header strong,.tmg-v2-header small{display:block}.tmg-v2-header small{opacity:.85;margin-top:2px}
.tmg-v2-close{background:transparent;border:0;color:#fff;font-size:28px;cursor:pointer}
.tmg-v2-tabs{display:flex;border-bottom:1px solid #e7eaee;background:#fff}
.tmg-v2-tabs button{flex:1;border:0;background:#fff;padding:11px;cursor:pointer;font-weight:700;color:#666}
.tmg-v2-tabs button.is-active{color:var(--tmg-accent);border-bottom:2px solid var(--tmg-accent)}
.tmg-v2-chatview,.tmg-v2-quoteview{display:none;flex:1;min-height:0}.tmg-v2-chatview.is-active,.tmg-v2-quoteview.is-active{display:flex;flex-direction:column}
.tmg-v2-messages{flex:1;overflow:auto;background:#f5f6f8;padding:15px}
.tmg-v2-msg{max-width:84%;padding:10px 12px;margin:0 0 10px;border-radius:14px;line-height:1.4;font-size:14px;white-space:pre-wrap}
.tmg-v2-assistant{background:#fff;border:1px solid #e2e5e8;color:#222;border-bottom-left-radius:5px}
.tmg-v2-user{background:var(--tmg-accent);color:#fff;margin-left:auto;border-bottom-right-radius:5px}
.tmg-v2-typing{opacity:.65;font-style:italic}
.tmg-v2-form{display:flex;align-items:flex-end;gap:8px;padding:10px;background:#fff;border-top:1px solid #e8ebef}
.tmg-v2-form textarea{flex:1;resize:none;border:1px solid #ccd2d8;border-radius:12px;padding:10px;font:inherit;min-height:42px;max-height:110px}
.tmg-v2-form>button{width:42px;height:42px;border:0;border-radius:12px;background:var(--tmg-accent);color:#fff;cursor:pointer;font-size:18px}
.tmg-v2-upload{width:40px;height:40px;border-radius:10px;border:1px solid #d6dae0;display:grid;place-items:center;cursor:pointer;background:#fff}
.tmg-v2-upload-preview{background:#fff;padding:0 10px;font-size:12px}
.tmg-v2-thumb{display:flex;align-items:center;gap:7px;padding:6px 0}.tmg-v2-thumb img{width:48px;height:48px;object-fit:cover;border-radius:8px;border:1px solid #ddd}.tmg-v2-thumb button{border:0;background:#eee;border-radius:50%;width:24px;height:24px;cursor:pointer}
.tmg-v2-error{color:#b00020}
.tmg-v2-quoteview{background:#f5f6f8;padding:14px;overflow:auto}
.tmg-v2-quote-card{background:#fff;border:1px solid #e2e5e9;border-radius:14px;padding:14px}
.tmg-v2-quote-card h3{margin:0 0 12px;font-size:17px}
.tmg-v2-quote-fields div{padding:8px 0;border-bottom:1px solid #eef0f2}.tmg-v2-quote-fields strong,.tmg-v2-quote-fields span{display:block}.tmg-v2-quote-fields strong{font-size:12px;color:#666;margin-bottom:2px}.tmg-v2-quote-fields span{font-size:14px;color:#222}
.tmg-v2-wa{display:block;margin-top:14px;text-align:center;background:#25D366;color:#fff!important;text-decoration:none;padding:11px 12px;border-radius:10px;font-weight:700}.tmg-v2-wa.is-disabled{opacity:.45;pointer-events:none}
@media(max-width:480px){.tmg-v2-root{right:14px;bottom:14px}.tmg-v2-panel{position:fixed;left:9px;right:9px;bottom:82px;width:auto;height:72vh}}
/* V2.28 - interfaz solo Chat */
.tmg-v2-tabs,.tmg-v2-quoteview{display:none!important}
.tmg-v2-chatview{display:flex!important;flex-direction:column;flex:1;min-height:0}
.tmg-v2-direct-wa{background:#fff;padding:8px 10px 0}
.tmg-v2-wa-direct{display:block;text-align:center;background:#25D366;color:#fff!important;text-decoration:none;padding:11px 12px;border-radius:10px;font-weight:700;font-size:14px}

/* V2.30: WhatsApp siempre visible arriba */
.tmg-v2-direct-wa-top{display:block!important;background:#fff;padding:9px 12px;border-bottom:1px solid #e8ebef}
.tmg-v2-direct-wa-top .tmg-v2-wa-direct{display:block;margin:0;text-align:center;background:#25D366;color:#fff!important;text-decoration:none;padding:9px 12px;border-radius:10px;font-weight:700;font-size:14px}

.tmg-v2-wa-label{font-size:13px;color:#555;margin:0 0 6px 2px;font-weight:600}

/* V2.32: texto fijo sobre WhatsApp */
.tmg-v2-direct-wa-wrap{background:#fff;padding:9px 12px;border-bottom:1px solid #e8ebef}
.tmg-v2-direct-wa-wrap .tmg-v2-wa-label{display:block!important;font-size:13px;line-height:1.35;color:#444;margin:0 0 7px 1px;font-weight:600}
.tmg-v2-direct-wa-wrap .tmg-v2-direct-wa-top{padding:0;border:0}

/* V2.33: WhatsApp baja al pie cuando ya hay nombre + celular */
.tmg-v2-direct-wa-wrap.tmg-v2-wa-bottom{
  border-top:1px solid #e8ebef;
  border-bottom:0;
  margin-top:6px;
  flex:0 0 auto;
}
.tmg-v2-direct-wa-wrap.tmg-v2-wa-bottom .tmg-v2-wa-label{
  margin-bottom:7px;
}
.tmg-v2-direct-wa-wrap.tmg-v2-wa-bottom .tmg-v2-wa-direct{
  font-size:13px;
}

/* V2.35: al llegar a la confirmación de WhatsApp, el bloque baja al pie */
.tmg-v2-direct-wa-wrap.tmg-v2-wa-bottom{
  position:relative;
  z-index:2;
  margin:8px 10px 6px;
  padding:8px 0 0;
  background:#fff;
  border-top:1px solid #e8ebef;
  border-bottom:0;
}
.tmg-v2-direct-wa-wrap.tmg-v2-wa-bottom .tmg-v2-wa-label{
  padding:0 2px;
}
.tmg-v2-direct-wa-wrap.tmg-v2-wa-bottom .tmg-v2-wa-direct{
  margin-top:6px;
}
