/* El Alien · widget de chat de Abrandados */
#abx-root{
  --abx-ink:#090C08;--abx-forest:#00241B;--abx-paper:#F1F1EF;--abx-green:#7EF861;--abx-green-d:#6BD253;--abx-cyan:#02BFCE;--abx-red:#C70507;
  --abx-bg:#F1F1EF;--abx-surface:#FFFFFF;--abx-text:#090C08;--abx-muted:#5B6059;--abx-line:#090C08;--abx-soft:#D9DBD4;
  --abx-user:#7EF861;--abx-on-user:#090C08;--abx-chip:#FFFFFF;--abx-chip-h:#E8FFE2;--abx-shadow:#090C08;--abx-link:#00241B;
  --abx-f:'Geist','Abx Geist','Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  position:fixed;z-index:2147483000;right:0;bottom:0;font:400 15px/1.5 var(--abx-f);color:var(--abx-text);
  -webkit-font-smoothing:antialiased;
}
@media (prefers-color-scheme:dark){
  html:not([data-theme="light"]) #abx-root{--abx-bg:#0B0F0A;--abx-surface:#141A13;--abx-text:#F1F1EF;--abx-muted:#A9ADA6;--abx-line:#3A4339;--abx-soft:#252C24;--abx-chip:#141A13;--abx-chip-h:#1C2A19;--abx-shadow:rgba(0,0,0,.7);--abx-link:#7EF861}
}
html[data-theme="dark"] #abx-root{--abx-bg:#0B0F0A;--abx-surface:#141A13;--abx-text:#F1F1EF;--abx-muted:#A9ADA6;--abx-line:#3A4339;--abx-soft:#252C24;--abx-chip:#141A13;--abx-chip-h:#1C2A19;--abx-shadow:rgba(0,0,0,.7);--abx-link:#7EF861}
/* Tema de la one page de Abrandados (body[data-mode]) */
body[data-mode="dark"] #abx-root{--abx-bg:#0B0F0A;--abx-surface:#141A13;--abx-text:#F1F1EF;--abx-muted:#A9ADA6;--abx-line:#3A4339;--abx-soft:#252C24;--abx-chip:#141A13;--abx-chip-h:#1C2A19;--abx-shadow:rgba(0,0,0,.7);--abx-link:#7EF861}
body[data-mode="light"] #abx-root{--abx-bg:#F1F1EF;--abx-surface:#FFFFFF;--abx-text:#090C08;--abx-muted:#5B6059;--abx-line:#090C08;--abx-soft:#D9DBD4;--abx-chip:#FFFFFF;--abx-chip-h:#E8FFE2;--abx-shadow:#090C08;--abx-link:#00241B}
#abx-root *,#abx-root *::before,#abx-root *::after{box-sizing:border-box}
/* Reset de baja especificidad: neutraliza estilos globales del sitio sin pisar los del widget */
:where(#abx-root) :where(div,p,ul,li,form,blockquote){margin:0;padding:0;position:static}
:where(#abx-root) img{max-width:none;height:auto;display:block}
#abx-root button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
#abx-root a{color:inherit}
#abx-root .abx-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
#abx-root svg.abx-defs{position:absolute;width:0;height:0}

/* ---------- Lanzador ---------- */
.abx-launch{position:fixed;right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));width:66px;height:66px;padding:0;border:0;background:none;display:grid;place-items:center;transition:transform .2s cubic-bezier(.2,.7,.2,1)}
.abx-launch .abx-blob{position:absolute;inset:0;border-radius:50% 46% 52% 48%/48% 52% 46% 50%;background:var(--abx-green);filter:drop-shadow(3px 3px 0 var(--abx-ink))}
.abx-launch .abx-blob::after{content:"";position:absolute;inset:-1px;border:2.4px solid var(--abx-ink);border-radius:inherit;filter:url(#abx-gp)}
.abx-launch img{position:relative;width:58px;height:58px;border-radius:50%;object-fit:cover;object-position:50% 30%;transform:translateY(-3px);animation:abx-peek 9s steps(1) 3s infinite}
.abx-launch .abx-dot{position:absolute;right:2px;top:3px;width:16px;height:16px;border-radius:50%;background:var(--abx-red);border:2px solid var(--abx-ink);transform:scale(0);transition:transform .24s steps(3)}
.abx-launch .abx-dot.on{transform:scale(1)}
.abx-launch:hover,.abx-launch:focus-visible{transform:translate(-2px,-2px) scale(1.05);outline:none}
.abx-launch:hover .abx-blob,.abx-launch:focus-visible .abx-blob{filter:drop-shadow(5px 5px 0 var(--abx-ink))}
.abx-launch:focus-visible .abx-blob::after{border-width:3.4px}
.abx-launch.is-open img{animation:none}
.abx-tip{position:fixed;right:calc(94px + env(safe-area-inset-right,0px));bottom:calc(34px + env(safe-area-inset-bottom,0px));isolation:isolate;padding:10px 14px;font:600 14px/1.2 var(--abx-f);color:var(--abx-text);white-space:nowrap;transform:rotate(-2deg) scale(.9);transform-origin:right center;opacity:0;pointer-events:none;transition:opacity .2s steps(2),transform .2s steps(2)}
.abx-tip::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--abx-surface);border:1.5px solid var(--abx-text);border-radius:13px 9px 14px 10px;filter:url(#abx-gp)}
.abx-tip::after{content:"";position:absolute;right:-6px;top:50%;width:11px;height:11px;z-index:-1;background:var(--abx-surface);border-right:1.5px solid var(--abx-text);border-top:1.5px solid var(--abx-text);transform:translateY(-50%) rotate(45deg)}
.abx-tip.on,.abx-launch:hover+.abx-tip{opacity:1;transform:rotate(-2deg) scale(1)}
#abx-root.is-menu .abx-tip{opacity:0!important}
@keyframes abx-peek{0%{transform:translateY(-3px)}93%{transform:translateY(-3px) rotate(-7deg)}95%{transform:translateY(-3px) rotate(6deg)}97%{transform:translateY(-3px)}}

/* ---------- Menú de dos opciones ---------- */
.abx-menu{position:fixed;right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(96px + env(safe-area-inset-bottom,0px));width:min(324px,calc(100vw - 32px));display:grid;gap:10px;transform-origin:bottom right}
.abx-menu[hidden]{display:none}
.abx-menu.anim{animation:abx-pop .22s steps(3)}
.abx-opt{position:relative;display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;text-align:left;text-decoration:none;background:var(--abx-surface);color:var(--abx-text);border:0;border-radius:14px 10px 15px 11px;box-shadow:3px 3px 0 var(--abx-shadow);transition:transform .15s,box-shadow .15s}
.abx-opt::before{content:"";position:absolute;inset:0;border:1.8px solid var(--abx-text);border-radius:inherit;filter:url(#abx-gp);pointer-events:none}
.abx-opt:hover,.abx-opt:focus-visible{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--abx-shadow);outline:none}
.abx-opt .abx-ic{flex:0 0 44px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;overflow:hidden;border:1.5px solid var(--abx-ink)}
.abx-opt .abx-ic img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;background:var(--abx-green)}
.abx-opt .abx-ic.wa{background:#25D366;color:#fff}
.abx-opt .abx-ic.wa svg{width:24px;height:24px}
.abx-opt b{display:block;font-weight:700;font-size:15.5px;line-height:1.25}
.abx-opt small{display:block;color:var(--abx-muted);font-size:13px;line-height:1.3;margin-top:2px}
@keyframes abx-pop{0%{opacity:0;transform:translateY(10px) scale(.94)}60%{opacity:1;transform:translateY(-2px) scale(1.01)}100%{transform:none}}

/* ---------- Panel ---------- */
.abx-panel{position:fixed;right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(96px + env(safe-area-inset-bottom,0px));width:min(392px,calc(100vw - 32px));height:min(640px,calc(100vh - 124px));height:min(640px,calc(100dvh - 124px));display:flex;flex-direction:column;background:var(--abx-bg);border:1.8px solid var(--abx-ink);border-radius:18px 14px 18px 16px;box-shadow:5px 5px 0 var(--abx-shadow);overflow:hidden;transform-origin:bottom right}
.abx-panel[hidden]{display:none}
.abx-panel.anim{animation:abx-pop .24s steps(3)}
.abx-head{position:relative;display:flex;align-items:center;gap:8px;padding:12px 8px 13px 12px;background:var(--abx-forest);color:var(--abx-paper)}
.abx-head::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:6px;background:var(--abx-green);clip-path:polygon(0 60%,6% 20%,13% 70%,21% 25%,29% 65%,38% 30%,47% 70%,55% 25%,63% 65%,72% 30%,80% 70%,88% 25%,95% 60%,100% 35%,100% 100%,0 100%);opacity:.9}
.abx-av{position:relative;flex:0 0 44px;width:44px;height:44px;border-radius:50%;background:var(--abx-green);border:1.8px solid var(--abx-paper);overflow:hidden}
.abx-av img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.abx-who{min-width:0;flex:1}
.abx-who b{display:block;font-size:16.5px;font-weight:700;letter-spacing:-.01em;line-height:1.2}
.abx-beta{display:inline-block;vertical-align:3px;margin-left:6px;padding:2px 6px 1px;font:700 9.5px/1.2 var(--abx-f);letter-spacing:.09em;text-transform:uppercase;color:var(--abx-green);border:1.3px dashed var(--abx-green);border-radius:6px 4px 7px 5px;transform:rotate(-4deg);white-space:nowrap}
.abx-opt .abx-beta{color:var(--abx-ink);background:var(--abx-green);border:1.3px solid var(--abx-ink);vertical-align:2px}
.abx-who small{display:flex;align-items:center;gap:6px;font-size:12px;color:#AFC4BA;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.abx-who small i{flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:var(--abx-green);box-shadow:0 0 0 3px rgba(126,248,97,.2)}
.abx-hb{flex:0 0 32px;width:32px;height:34px;display:grid;place-items:center;border:0;border-radius:10px;background:transparent;color:var(--abx-paper)}
.abx-hb:hover,.abx-hb:focus-visible{background:rgba(241,241,239,.12);outline:none}
.abx-hb:focus-visible{box-shadow:0 0 0 2px var(--abx-green)}
.abx-hb svg{width:20px;height:20px}

.abx-log{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:18px 14px 8px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}
.abx-log::-webkit-scrollbar{width:8px}.abx-log::-webkit-scrollbar-thumb{background:var(--abx-soft);border-radius:8px}
.abx-row{display:flex;gap:8px;align-items:flex-end;max-width:100%}
.abx-row.u{justify-content:flex-end}
.abx-row .abx-mini{flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:var(--abx-green);border:1.5px solid var(--abx-ink);overflow:hidden}
.abx-row .abx-mini img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.abx-row.cont .abx-mini{visibility:hidden}
.abx-b{max-width:84%;min-width:0;padding:10px 13px;border:1.5px solid var(--abx-line);border-radius:4px 16px 16px 16px;background:var(--abx-surface);color:var(--abx-text);overflow-wrap:anywhere;font-size:14.8px;line-height:1.5}
.abx-row.u .abx-b{background:var(--abx-user);color:var(--abx-on-user);border-color:var(--abx-ink);border-radius:16px 4px 16px 16px;box-shadow:2px 2px 0 var(--abx-ink)}
.abx-b strong{font-weight:700}
.abx-b p{margin:0}.abx-b p+p,.abx-b p+ul,.abx-b ul+p{margin-top:7px}
.abx-b ul{margin:6px 0 0;padding:0;list-style:none;display:grid;gap:5px}
.abx-b li{position:relative;padding-left:17px}
.abx-b li::before{content:"";position:absolute;left:2px;top:.62em;width:7px;height:7px;border-radius:50% 40% 55% 45%;background:var(--abx-green);border:1.3px solid var(--abx-ink)}
.abx-b a{color:var(--abx-link);font-weight:600;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:2px}
.abx-b blockquote{margin:8px 0 0;padding:8px 10px;border-left:3px solid var(--abx-green);background:var(--abx-bg);border-radius:0 8px 8px 0;font-size:14px}
.abx-b .abx-src{display:block;margin-top:6px;font-size:12px;color:var(--abx-muted)}
.abx-b.abx-new{animation:abx-in .22s steps(3)}
@keyframes abx-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.abx-fb{display:flex;align-items:center;gap:4px;margin:-3px 0 0 36px;font-size:12px;color:var(--abx-muted)}
.abx-fb button{border:0;background:none;padding:3px 6px;border-radius:8px;font-size:14px;line-height:1;opacity:.75}
.abx-fb button:hover,.abx-fb button:focus-visible{opacity:1;background:var(--abx-soft);outline:none}
.abx-fb.done button{display:none}
.abx-cta{display:inline-flex;align-items:center;gap:8px;margin-top:9px;padding:9px 14px;border:1.5px solid var(--abx-ink);border-radius:11px 8px 12px 9px;background:var(--abx-green);color:var(--abx-ink)!important;font-weight:700;text-decoration:none!important;box-shadow:2px 2px 0 var(--abx-ink);transition:transform .15s,box-shadow .15s}
.abx-cta:hover,.abx-cta:focus-visible{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--abx-ink);outline:none}
.abx-cta.alt{background:var(--abx-surface);color:var(--abx-text)!important}
.abx-cta svg{width:18px;height:18px}

.abx-chips{display:flex;flex-wrap:wrap;gap:7px;padding:2px 0 4px 36px}
.abx-chip{padding:7px 12px;border:1.5px solid var(--abx-text);border-radius:999px;background:var(--abx-chip);color:var(--abx-text);font-size:13.8px;font-weight:500;line-height:1.25;text-align:left;transition:background .12s,transform .12s,box-shadow .12s}
.abx-chip:hover,.abx-chip:focus-visible{background:var(--abx-chip-h);transform:translate(-1px,-1px);box-shadow:2px 2px 0 var(--abx-shadow);outline:none}
.abx-chip.act{background:var(--abx-green);color:var(--abx-ink);border-color:var(--abx-ink);font-weight:600}
.abx-chip.skip{border-style:dashed;color:var(--abx-muted)}
.abx-chips.used{display:none}

.abx-typing{display:inline-flex;gap:5px;padding:13px 14px}
.abx-typing i{width:8px;height:8px;border-radius:50% 45% 55% 50%;background:var(--abx-text);opacity:.25;animation:abx-dot .9s steps(3) infinite}
.abx-typing i:nth-child(2){animation-delay:.15s}.abx-typing i:nth-child(3){animation-delay:.3s}
@keyframes abx-dot{0%,100%{opacity:.25;transform:none}50%{opacity:1;transform:translateY(-3px)}}

.abx-foot{padding:8px 10px 10px;border-top:1.5px solid var(--abx-soft);background:var(--abx-bg)}
.abx-form{display:flex;gap:8px;align-items:flex-end}
.abx-in{flex:1;min-width:0;max-height:110px;min-height:44px;resize:none;padding:11px 12px;border:1.5px solid var(--abx-text);border-radius:12px 9px 13px 10px;background:var(--abx-surface);color:var(--abx-text);font:400 15px/1.4 var(--abx-f);outline:none;transition:box-shadow .15s}
.abx-in::placeholder{color:var(--abx-muted)}
.abx-in:focus{box-shadow:3px 3px 0 var(--abx-green)}
.abx-send{flex:0 0 44px;width:44px;height:44px;display:grid;place-items:center;border:1.5px solid var(--abx-ink);border-radius:12px 9px 13px 10px;background:var(--abx-green);color:var(--abx-ink);box-shadow:2px 2px 0 var(--abx-ink);transition:transform .12s,box-shadow .12s}
.abx-send:hover,.abx-send:focus-visible{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--abx-ink);outline:none}
.abx-send:disabled{opacity:.5;cursor:default;transform:none}
.abx-send svg{width:20px;height:20px}
.abx-legal{margin:7px 2px 0;font-size:11.5px;line-height:1.35;color:var(--abx-muted);text-align:center}
.abx-legal a{color:inherit}
.abx-err{color:#C70507;font-size:12.5px;margin:6px 2px 0}

/* ---------- Mobile: pantalla completa ---------- */
@media (max-width:560px){
  .abx-launch{width:60px;height:60px}.abx-launch img{width:52px;height:52px}
  .abx-tip{right:calc(86px + env(safe-area-inset-right,0px));bottom:calc(31px + env(safe-area-inset-bottom,0px))}
  .abx-panel{inset:0;width:100%;height:100%;border:0;border-radius:0;box-shadow:none;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
  .abx-menu{bottom:calc(88px + env(safe-area-inset-bottom,0px))}
  .abx-in{font-size:16px}
  #abx-root.is-chat .abx-launch,#abx-root.is-chat .abx-tip{display:none}
}
@media (prefers-reduced-motion:reduce){
  #abx-root *{animation:none!important;transition:none!important}
  .abx-log{scroll-behavior:auto}
}
