/* ASISTENTE DE PEDIDOS: la ventanita de chat de abajo a la derecha (public/front/chat.js) */
#da-chat{position:fixed;right:20px;bottom:20px;z-index:90;font-family:'Outfit',system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.45;color:var(--ink,#1c1f2a)}
#da-chat *{box-sizing:border-box}
#da-chat button{font:inherit;cursor:pointer}

/* el botón redondo */
.dac-boton{position:relative;display:grid;place-items:center;width:60px;height:60px;border:0;border-radius:50%;background:var(--pink,#C84078);color:#fff;box-shadow:0 16px 36px -14px rgba(200,64,120,.7);transition:transform .25s,background .2s}
.dac-boton:hover{background:var(--pink-600,#a93263);transform:scale(1.06)}
.dac-globo{position:absolute;right:72px;top:50%;transform:translate(8px,-50%);white-space:nowrap;background:#fff;color:var(--ink,#1c1f2a);font-size:14px;font-weight:500;padding:9px 14px;border-radius:14px 14px 4px 14px;box-shadow:0 10px 30px -12px rgba(20,24,40,.35);opacity:0;pointer-events:none;transition:opacity .3s,transform .3s}
#da-chat.invita:not(.abierto) .dac-globo{opacity:1;transform:translate(0,-50%)}
.dac-punto{position:absolute;top:2px;right:2px;width:14px;height:14px;border-radius:50%;background:#16a34a;border:2px solid #fff}
#da-chat.abierto .dac-boton{transform:scale(.9)}

/* la ventana */
.dac-panel{position:absolute;right:0;bottom:74px;width:380px;max-width:calc(100vw - 24px);height:min(600px,calc(100vh - 120px));height:min(600px,calc(100dvh - 120px));display:flex;flex-direction:column;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 24px 70px -20px rgba(20,24,40,.45),0 0 0 1px rgba(20,24,40,.06);opacity:0;visibility:hidden;transform:translateY(14px) scale(.98);transform-origin:bottom right;transition:opacity .22s,transform .22s,visibility .22s}
#da-chat.abierto .dac-panel{opacity:1;visibility:visible;transform:none}
.dac-cab{display:flex;align-items:center;gap:11px;padding:13px 14px;background:var(--pink,#C84078);color:#fff}
.dac-cab img{width:40px;height:40px;border-radius:50%;object-fit:contain;padding:4px;background:#fff;flex:none}
.dac-cab div{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}
.dac-cab strong{font-family:'Alice',Georgia,serif;font-weight:400;font-size:18px}
.dac-cab span{font-size:12.5px;opacity:.92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dac-cab span i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#7ee2a0;margin-right:3px}
.dac-cerrar{width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.18);color:#fff;font-size:22px !important;line-height:1;flex:none}
.dac-cerrar:hover{background:rgba(255,255,255,.3)}

/* los mensajes */
.dac-msgs{flex:1;overflow-y:auto;padding:16px 12px;background:var(--bg,#f7f7f9);display:flex;flex-direction:column;gap:8px;overscroll-behavior:contain}
.dac-m{display:flex;max-width:100%;animation:dacEntra .25s ease-out}
@keyframes dacEntra{from{opacity:0;transform:translateY(6px)}}
.dac-b{max-width:84%;padding:9px 13px;border-radius:16px;overflow-wrap:anywhere}
.dac-el .dac-b{background:#fff;border:1px solid var(--line,#ebedf1);border-bottom-left-radius:5px}
.dac-yo{justify-content:flex-end}
.dac-yo .dac-b{background:var(--pink,#C84078);color:#fff;border-bottom-right-radius:5px}
.dac-b a{color:var(--pink-600,#a93263);text-decoration:underline}
.dac-suelto{display:block}
.dac-escribiendo .dac-b{display:flex;gap:4px;padding:13px 14px}
.dac-escribiendo i{width:7px;height:7px;border-radius:50%;background:var(--muted,#8a90a0);animation:dacPunto 1s infinite}
.dac-escribiendo i:nth-child(2){animation-delay:.15s}
.dac-escribiendo i:nth-child(3){animation-delay:.3s}
@keyframes dacPunto{0%,60%,100%{opacity:.3;transform:none}30%{opacity:1;transform:translateY(-3px)}}

/* respuestas rápidas */
.dac-rapidas{display:flex;flex-wrap:wrap;gap:6px}
.dac-rapidas button{border:1px solid var(--pink-200,#f1bdd4);background:#fff;color:var(--pink-700,#8d2852);font-size:13.5px;padding:6px 12px;border-radius:999px;transition:background .15s}
.dac-rapidas button:hover{background:var(--pink-50,#fdf2f7)}

/* los productos */
.dac-prods{display:flex;flex-direction:column;gap:7px}
.dac-p{display:flex;gap:10px;background:#fff;border:1px solid var(--line,#ebedf1);border-radius:14px;padding:8px}
.dac-pf{flex:none;width:72px;height:72px;border-radius:10px;background:var(--bg-2,#f1f2f5);overflow:hidden;display:block}
.dac-pf img{width:100%;height:100%;object-fit:contain;display:block}
.dac-pi{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.dac-pn{font-size:13.5px;font-weight:500;line-height:1.25;color:inherit;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dac-pn:hover{color:var(--pink,#C84078)}
.dac-pp{font-size:14px}
.dac-pp b{color:var(--pink-600,#a93263)}
.dac-pp s{color:var(--muted,#8a90a0);font-size:12.5px}
.dac-pa{display:flex;align-items:center;gap:7px;margin-top:auto}
.dac-cant{display:flex;align-items:center;border:1px solid var(--line,#ebedf1);border-radius:999px;overflow:hidden}
.dac-cant button{width:28px;height:30px;border:0;background:#fff;color:var(--ink,#1c1f2a);font-size:16px !important;line-height:1}
.dac-cant button:hover{background:var(--bg-2,#f1f2f5)}
.dac-cant input{width:28px;height:30px;border:0;padding:0;text-align:center;font:inherit;font-size:14px;background:transparent;color:inherit;outline:0}
.dac-anadir{flex:1;height:32px;border:0;border-radius:999px;background:var(--pink,#C84078);color:#fff;font-size:13.5px !important;font-weight:500;white-space:nowrap;padding:0 10px}
.dac-anadir:hover{background:var(--pink-600,#a93263)}
.dac-anadir.hecho{background:var(--ok,#16a34a)}
.dac-anadir:disabled{opacity:.85;cursor:default}
.dac-agotado{opacity:.6}
.dac-no{font-size:13px;color:var(--muted,#8a90a0)}

/* el resumen del pedido */
.dac-resumen{background:#fff;border:1px solid var(--line,#ebedf1);border-radius:14px;padding:12px 13px}
.dac-resumen>b{font-family:'Alice',Georgia,serif;font-weight:400;font-size:17px}
.dac-resumen ul{list-style:none;margin:8px 0;padding:0;display:flex;flex-direction:column;gap:5px;font-size:13.5px}
.dac-resumen li{display:flex;justify-content:space-between;gap:10px}
.dac-resumen li em{font-style:normal;white-space:nowrap;color:var(--ink-2,#4a5061)}
.dac-total{display:flex;justify-content:space-between;border-top:1px solid var(--line,#ebedf1);padding-top:8px;font-size:15px}
.dac-gratis,.dac-falta{font-size:13px;margin-top:5px}
.dac-gratis{color:var(--ok,#16a34a)}
.dac-falta{color:var(--ink-2,#4a5061)}
.dac-fin{display:block;margin-top:10px;padding:11px;border-radius:999px;background:var(--pink,#C84078);color:#fff !important;text-align:center;font-weight:500;text-decoration:none !important}
.dac-fin:hover{background:var(--pink-600,#a93263)}
.dac-ver{display:block;margin-top:7px;text-align:center;font-size:13px;color:var(--ink-2,#4a5061) !important}

/* donde se escribe */
.dac-escribir{display:flex;gap:8px;padding:10px;border-top:1px solid var(--line,#ebedf1);background:#fff}
.dac-escribir input{flex:1;min-width:0;height:42px;border:1px solid var(--line,#ebedf1);border-radius:999px;padding:0 16px;font:inherit;font-size:16px;background:var(--bg,#f7f7f9);color:inherit;outline:0}
.dac-escribir input:focus{border-color:var(--pink,#C84078);background:#fff}
.dac-escribir button{flex:none;width:42px;height:42px;border:0;border-radius:50%;background:var(--pink,#C84078);color:#fff;display:grid;place-items:center}
.dac-escribir button:hover{background:var(--pink-600,#a93263)}

/* en la ficha de producto el móvil lleva abajo la barra de comprar */
@media (max-width:900px){body:has(.sticky-buy) #da-chat:not(.abierto){bottom:88px}}

/* móvil: a pantalla completa */
@media (max-width:560px){
  #da-chat{right:14px;bottom:14px}
  .dac-boton{width:54px;height:54px}
  #da-chat.abierto{inset:0;z-index:170}
  #da-chat.abierto .dac-boton{display:none}
  .dac-panel{position:fixed;inset:0;width:100%;max-width:none;height:100%;border-radius:0}
}
@media print{#da-chat{display:none !important}}
@media (prefers-reduced-motion:reduce){.dac-m,.dac-escribiendo i{animation:none}.dac-panel,.dac-boton,.dac-globo{transition:none}}

/* nombre y email al empezar */
.dac-quien{display:flex;flex-direction:column;gap:7px;background:#fff;border:1px solid var(--pink-200,#f1bdd4);border-radius:14px;padding:12px 13px}
.dac-quien>b{font-size:15px}
.dac-quien>small{font-size:12.5px;color:var(--muted,#8a90a0);margin-top:-4px}
.dac-quien input[type=text],.dac-quien input[type=email]{height:40px;border:1px solid var(--line,#ebedf1);border-radius:10px;padding:0 12px;font:inherit;font-size:16px;background:var(--bg,#f7f7f9);color:inherit;outline:0}
.dac-quien input:focus{border-color:var(--pink,#C84078);background:#fff}
.dac-quien label{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--ink-2,#4a5061)}
.dac-quien label input{accent-color:var(--pink,#C84078);width:16px;height:16px;margin:0}
.dac-quien div{display:flex;gap:8px;margin-top:2px}
.dac-quien button{height:36px;border-radius:999px;font-size:14px !important;padding:0 18px}
.dac-quien button[type=submit]{flex:1;border:0;background:var(--pink,#C84078);color:#fff;font-weight:500}
.dac-quien button[type=submit]:disabled{opacity:.6}
.dac-quien button[data-luego]{border:1px solid var(--line,#ebedf1);background:#fff;color:var(--ink-2,#4a5061)}
.dac-quien em{font-style:normal;font-size:12.5px;color:var(--err,#dc2626)}
.dac-quien em:empty{display:none}
