/* Chat con agente (Sofia), 9 oct 2026; burbuja de invitación y botón más visible, 10 oct 2026. Ver public/js/chat-widget.js y CHAT-AGENTE.md. */
.lbchat-btn{position:fixed;right:16px;bottom:16px;z-index:99990;display:flex;align-items:center;gap:8px;padding:12px 18px;border:0;border-radius:28px;background:#557a00;color:#fff;font:600 15px/1.2 "Open Sans",Arial,sans-serif;box-shadow:0 4px 14px rgba(0,0,0,.25);cursor:pointer}
.lbchat-btn:hover{background:#46650a}
.lbchat-btn:focus-visible{outline:3px solid #1d5b8f;outline-offset:2px}
.lbchat-ico{width:22px;height:22px;flex:none;display:block}
.lbchat-hide{display:none}
.lbchat-panel{position:fixed;right:16px;bottom:16px;z-index:99991;width:380px;max-width:calc(100vw - 32px);height:560px;max-height:calc(100vh - 32px);display:none;flex-direction:column;background:#fff;border-radius:12px;box-shadow:0 8px 30px rgba(0,0,0,.3);font:14px/1.45 "Open Sans",Arial,sans-serif;color:#222;overflow:hidden}
.lbchat-panel.lbchat-on{display:flex}
.lbchat-head{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#1d5b8f;color:#fff}
.lbchat-title{font-weight:700;font-size:16px}
.lbchat-sub{font-size:12px;opacity:.9}
.lbchat-headt{flex:1;min-width:0}
.lbchat-x{background:none;border:0;color:#fff;font-size:26px;line-height:1;cursor:pointer;padding:0 4px}
.lbchat-msgs{flex:1;overflow-y:auto;padding:12px;background:#f4f6f8}
.lbchat-m{max-width:88%;margin:0 0 10px;padding:9px 12px;border-radius:12px;word-wrap:break-word;overflow-wrap:anywhere}
.lbchat-agente{background:#fff;border:1px solid #dde3e8;border-bottom-left-radius:4px}
.lbchat-yo{margin-left:auto;background:#1d5b8f;color:#fff;border-bottom-right-radius:4px}
.lbchat-agente a{color:#1d5b8f;text-decoration:underline}
.lbchat-typing{color:#777;font-style:italic}
.lbchat-form{display:flex;gap:8px;padding:10px;border-top:1px solid #e3e7ea;background:#fff;margin:0}
.lbchat-form textarea{flex:1;resize:none;border:1px solid #c9d1d8;border-radius:8px;padding:8px 10px;font:inherit;font-size:16px;max-height:120px;min-height:40px;box-sizing:border-box;margin:0;box-shadow:none;width:auto}
.lbchat-send{border:0;border-radius:8px;background:#557a00;color:#fff;font-weight:600;padding:0 14px;cursor:pointer}
.lbchat-send:disabled{opacity:.5;cursor:default}
.lbchat-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.lbchat-ts:empty{display:none}
.lbchat-ts{padding:0 10px}
.lbchat-priv{padding:4px 12px 8px;font-size:11px;color:#666;background:#fff}
.lbchat-priv a{color:#666}
.lbchat-av{flex:none;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#fff;color:#1d5b8f;font:700 16px/1 "Open Sans",Arial,sans-serif}
.lbchat-bur .lbchat-av{background:#1d5b8f;color:#fff;width:30px;height:30px;font-size:15px}
.lbchat-bur{position:fixed;right:16px;bottom:78px;z-index:99990;display:none;align-items:flex-start;max-width:300px;background:#fff;color:#222;border-radius:14px;box-shadow:0 6px 24px rgba(0,0,0,.22);border:1px solid #dde3e8;font:14px/1.4 "Open Sans",Arial,sans-serif}
.lbchat-bur.lbchat-on{display:flex;animation:lbchat-entra .35s ease-out}
.lbchat-bur:after{content:"";position:absolute;right:22px;bottom:-7px;width:12px;height:12px;background:#fff;border-right:1px solid #dde3e8;border-bottom:1px solid #dde3e8;transform:rotate(45deg)}
.lbchat-bur-t{display:flex;align-items:center;gap:10px;flex:1;min-width:0;background:none;border:0;padding:12px 4px 12px 12px;text-align:left;font:inherit;color:inherit;cursor:pointer}
.lbchat-bur-txt{display:block}
.lbchat-bur-x{flex:none;background:none;border:0;color:#777;font-size:20px;line-height:1;padding:8px 10px;cursor:pointer}
.lbchat-bur-x:hover,.lbchat-bur-t:hover .lbchat-bur-txt{color:#1d5b8f}
.lbchat-pulso{animation:lbchat-pulso 1.6s ease-out 2}
@keyframes lbchat-entra{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes lbchat-pulso{0%{box-shadow:0 0 0 0 rgba(85,122,0,.55),0 4px 14px rgba(0,0,0,.25)}100%{box-shadow:0 0 0 16px rgba(85,122,0,0),0 4px 14px rgba(0,0,0,.25)}}
@media (prefers-reduced-motion:reduce){.lbchat-bur.lbchat-on,.lbchat-pulso{animation:none}}
@media (max-width:600px){
  .lbchat-panel{right:0;bottom:0;width:100vw;max-width:100vw;height:100%;max-height:100%;border-radius:0}
  .lbchat-btn{right:12px;bottom:12px;padding:14px}
  .lbchat-bur{font-size:14px}
  .lbchat-btn-t{display:none}
  .lbchat-ico{width:28px;height:28px}
  #float-booking.lbchat-hueco{box-sizing:border-box;width:100%;padding-right:78px}
}
/* Checkout (29 oct 2026): línea «Ask Sofia» junto al resumen y al pago (landings/checkout.php); sin botón flotante: en el móvil y a 1280 px tapaba «Confirm payment» al bajar. */
.lbchat-linea{display:flex;align-items:center;gap:8px;width:100%;margin:10px 0 0;padding:6px 0;background:none;border:0;text-align:left;font:inherit;font-size:13px;line-height:1.4;color:#333;cursor:pointer}
.lbchat-linea[hidden]{display:none}
.lbchat-linea .lbchat-av{width:26px;height:26px;font-size:13px;background:#1d5b8f;color:#fff}
.lbchat-linea u{color:#557a00;font-weight:600;white-space:nowrap}
.lbchat-linea:hover u{color:#46650a}
.lbchat-linea:focus-visible{outline:3px solid #1d5b8f;outline-offset:2px}
.lbchat-btn.lbchat-ck{display:none!important}
@media (max-width:600px),(pointer:coarse){.lbchat-linea{min-height:44px;font-size:14px}}
