/* Hagda · Chat IA. Todo bajo .hc-root y con resets: los estilos de botón del tema (Flatsome: uppercase, min-width) se cuelan si no. */
.hc-root{--hc-color:#0f0f0f;--hc-bg:#fff;--hc-gris:#f2f2f2;--hc-borde:#e2e2e2;--hc-texto:#191919;position:fixed;right:20px;bottom:20px;z-index:99990;font-family:inherit;font-size:15px;line-height:1.45;color:var(--hc-texto)}
.hc-root *{box-sizing:border-box}
.hc-root button{text-transform:none;letter-spacing:normal;min-width:0;min-height:0;margin:0;box-shadow:none;font:inherit;line-height:1;cursor:pointer}
.hc-burbuja{width:58px;height:58px;border-radius:50%;border:0;padding:0;background:var(--hc-color);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(0,0,0,.25)!important;transition:transform .15s}
.hc-burbuja:hover{transform:scale(1.06)}
.hc-abierto .hc-burbuja{display:none}
.hc-panel{display:none;position:absolute;right:0;bottom:0;width:380px;height:min(620px,calc(100vh - 40px));background:var(--hc-bg);border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.25);overflow:hidden;flex-direction:column}
.hc-abierto .hc-panel{display:flex}
.hc-cab{display:flex;align-items:center;gap:6px;padding:14px 12px 14px 16px;background:var(--hc-color);color:#fff}
.hc-cab div{flex:1;display:flex;flex-direction:column;min-width:0}
.hc-cab strong{font-size:16px}
.hc-cab small{opacity:.8;font-size:12px}
.hc-cab button{background:transparent;border:0;color:#fff;font-size:22px;width:34px;height:34px;border-radius:8px;padding:0}
.hc-cab button:hover{background:rgba(255,255,255,.15)}
.hc-msgs{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;background:#fafafa;overscroll-behavior:contain}
.hc-msg{max-width:88%;padding:10px 12px;border-radius:14px;word-wrap:break-word;overflow-wrap:anywhere}
.hc-bot{align-self:flex-start;background:var(--hc-bg);border:1px solid var(--hc-borde);border-bottom-left-radius:4px}
.hc-user{align-self:flex-end;background:var(--hc-color);color:#fff;border-bottom-right-radius:4px;white-space:pre-wrap}
.hc-msg p{margin:0 0 7px}
.hc-msg p:last-child{margin-bottom:0}
.hc-msg ul{margin:4px 0 4px 18px;padding:0}
.hc-msg a{color:inherit;text-decoration:underline;font-weight:600}
.hc-msg img{display:block;width:100%;max-width:200px;border-radius:10px;margin:6px 0 4px}
.hc-msg img.hc-adj{max-width:140px}
.hc-card{display:flex;gap:10px;align-items:center;margin:6px 0;padding:6px;border:1px solid var(--hc-borde);border-radius:10px;background:#fff}
.hc-msg .hc-card img{width:64px;height:96px;max-width:none;object-fit:cover;margin:0;border-radius:6px;flex:none}
.hc-card div{font-size:13.5px;line-height:1.4}
.hc-tabla{overflow-x:auto;margin:4px 0}
.hc-tabla table{border-collapse:collapse;font-size:12.5px;margin:0;width:auto}
.hc-tabla th,.hc-tabla td{border:1px solid var(--hc-borde);padding:4px 6px;text-align:center;white-space:nowrap}
.hc-tabla th{background:var(--hc-gris)}
.hc-escribiendo{display:flex;gap:4px;padding:14px}
.hc-escribiendo span{width:7px;height:7px;border-radius:50%;background:#999;animation:hc-pulso 1s infinite}
.hc-escribiendo span:nth-child(2){animation-delay:.15s}
.hc-escribiendo span:nth-child(3){animation-delay:.3s}
@keyframes hc-pulso{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
.hc-sug{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px;background:#fafafa}
.hc-sug:not(:empty){padding-bottom:10px}
.hc-sug button{background:var(--hc-bg);border:1px solid var(--hc-color);color:var(--hc-color);border-radius:999px;padding:7px 12px;font-size:13px}
.hc-sug button:hover{background:var(--hc-color);color:#fff}
.hc-prev{position:relative;padding:8px 14px 0;background:var(--hc-bg)}
.hc-prev img{width:56px;height:56px;object-fit:cover;border-radius:8px;display:block}
.hc-prev button{position:absolute;left:62px;top:4px;width:22px;height:22px;border-radius:50%;border:0;background:#333;color:#fff;font-size:14px;padding:0}
.hc-form{display:flex;align-items:flex-end;gap:6px;padding:10px;border-top:1px solid var(--hc-borde);background:var(--hc-bg)}
.hc-form textarea{flex:1;resize:none;border:1px solid var(--hc-borde);border-radius:12px;padding:9px 12px;font:inherit;font-size:16px;line-height:1.35;max-height:120px;min-height:40px;height:40px;margin:0;box-shadow:none;background:#fff;color:var(--hc-texto)}
.hc-form textarea:focus{outline:none;border-color:var(--hc-color)}
.hc-foto{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;color:#666;cursor:pointer;margin:0;flex:none}
.hc-foto:hover{background:var(--hc-gris)}
.hc-enviar{width:40px;height:40px;border-radius:10px;border:0;background:var(--hc-color);color:#fff;display:flex;align-items:center;justify-content:center;padding:0;flex:none}
.hc-enviar:disabled{opacity:.4;cursor:default}
@media (max-width:520px){
  .hc-root{right:14px;bottom:14px}
  .hc-abierto{right:0;bottom:0;left:0;top:0}
  .hc-abierto .hc-panel{position:fixed;inset:0;width:100%;height:100%;border-radius:0}
}
