:root{
  --cog-pet:#0E3B36; --cog-nar:#E8622A; --cog-menta:#7FD1BE;
  --cog-crema:#F2F5F1; --cog-borde:#DCE3DD; --cog-ink:#0B1D1A; --cog-soft:#4A5F5A;
}
#cogase-burbuja{
  position:fixed;right:18px;bottom:18px;z-index:99998;
  display:flex;align-items:center;gap:.5rem;
  background:var(--cog-pet);color:#fff;border:none;cursor:pointer;
  font-family:inherit;font-size:.9rem;font-weight:600;
  padding:.75rem 1.15rem;border-radius:30px;
  box-shadow:0 10px 26px -10px rgba(11,29,26,.5);
  transition:transform .18s,filter .18s;
}
#cogase-burbuja:hover{transform:translateY(-2px);filter:brightness(1.12)}
#cogase-burbuja .pt{width:9px;height:9px;border-radius:50%;background:var(--cog-nar);flex:none}
#cogase-burbuja[hidden]{display:none}

#cogase-panel{
  position:fixed;right:18px;bottom:18px;z-index:99999;
  width:min(380px,calc(100vw - 36px));height:min(560px,calc(100vh - 36px));
  background:var(--cog-crema);border:1px solid var(--cog-borde);border-radius:14px;
  display:flex;flex-direction:column;overflow:hidden;
  box-shadow:0 24px 60px -20px rgba(11,29,26,.45);
  font-family:inherit;color:var(--cog-ink);
}
#cogase-panel[hidden]{display:none}
.cogase-head{background:var(--cog-pet);color:#fff;padding:.9rem 1rem;display:flex;align-items:flex-start;gap:.7rem}
.cogase-head .txt{flex:1}
.cogase-head .t{font-weight:600;font-size:.98rem;line-height:1.2}
.cogase-head .s{font-size:.76rem;color:var(--cog-menta);margin-top:.15rem;line-height:1.35}
.cogase-head button{background:none;border:none;color:#fff;font-size:1.35rem;line-height:1;cursor:pointer;opacity:.75;padding:0 .2rem}
.cogase-head button:hover{opacity:1}

.cogase-msgs{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.65rem}
.cogase-m{max-width:88%;padding:.6rem .8rem;border-radius:12px;font-size:.88rem;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}
.cogase-m.bot{background:#fff;border:1px solid var(--cog-borde);align-self:flex-start;border-bottom-left-radius:4px}
.cogase-m.bot strong{font-weight:600;color:var(--cog-pet)}
.cogase-m.bot em{font-style:italic}
.cogase-m.bot code{font-family:ui-monospace,monospace;font-size:.85em;background:var(--cog-crema);padding:.1em .3em;border-radius:4px}
.cogase-m.bot ul{margin:.4rem 0;padding-left:1.05rem;white-space:normal}
.cogase-m.bot li{margin-bottom:.18rem}
.cogase-m.yo{background:var(--cog-pet);color:#EAF2EF;align-self:flex-end;border-bottom-right-radius:4px}
.cogase-esc{align-self:flex-start;display:flex;gap:4px;padding:.7rem .85rem;background:#fff;border:1px solid var(--cog-borde);border-radius:12px;border-bottom-left-radius:4px}
.cogase-esc i{width:6px;height:6px;background:var(--cog-soft);border-radius:50%;animation:cogase-p 1.3s infinite}
.cogase-esc i:nth-child(2){animation-delay:.18s}
.cogase-esc i:nth-child(3){animation-delay:.36s}
@keyframes cogase-p{0%,60%,100%{opacity:.25}30%{opacity:1}}

.cogase-pie{border-top:1px solid var(--cog-borde);background:#fff;padding:.7rem}
.cogase-fila{display:flex;gap:.5rem;align-items:flex-end}
.cogase-fila textarea{
  flex:1;resize:none;border:1px solid var(--cog-borde);border-radius:9px;
  padding:.55rem .7rem;font-family:inherit;font-size:.88rem;line-height:1.4;
  max-height:110px;color:var(--cog-ink);background:var(--cog-crema);
}
.cogase-fila textarea:focus{outline:2px solid var(--cog-nar);outline-offset:1px;background:#fff}
.cogase-fila button{
  background:var(--cog-nar);color:#fff;border:none;border-radius:9px;
  padding:.6rem .9rem;font-family:inherit;font-weight:600;font-size:.85rem;cursor:pointer;flex:none;
}
.cogase-fila button:disabled{opacity:.45;cursor:not-allowed}
.cogase-cta{
  display:block;width:100%;margin-top:.55rem;background:transparent;
  border:1px dashed var(--cog-nar);color:var(--cog-nar);
  border-radius:9px;padding:.5rem;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;
}
.cogase-cta:hover{background:#FDECE4}
.cogase-cta[hidden]{display:none}
.cogase-form{position:absolute;inset:0;background:var(--cog-crema);display:flex;flex-direction:column;z-index:5}
.cogase-form[hidden]{display:none}
.cogase-form .fh{background:var(--cog-pet);color:#fff;padding:.85rem 1rem;font-weight:600;font-size:.95rem;display:flex;justify-content:space-between;align-items:center}
.cogase-form .fh .x{background:none;border:none;color:#fff;font-size:1.35rem;line-height:1;cursor:pointer;opacity:.75}
.cogase-form .fh .x:hover{opacity:1}
.cogase-form .fb{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.6rem}
.cogase-form label{display:flex;flex-direction:column;gap:.22rem;font-size:.76rem;color:var(--cog-soft);font-weight:500}
.cogase-form input,.cogase-form textarea{
  border:1px solid var(--cog-borde);border-radius:8px;padding:.5rem .6rem;
  font-family:inherit;font-size:.88rem;color:var(--cog-ink);background:#fff;width:100%;resize:vertical;
}
.cogase-form input:focus,.cogase-form textarea:focus{outline:2px solid var(--cog-nar);outline-offset:1px}
.cogase-form .dos{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.cogase-form .fnota{font-size:.72rem;color:var(--cog-soft)}
.cogase-form .enviar{background:var(--cog-nar);color:#fff;border:none;border-style:solid;margin-top:.2rem;padding:.65rem}
.cogase-form .enviar:hover{background:#CF5322}
.cogase-form .enviar:disabled{opacity:.5;cursor:not-allowed}
.cogase-form .fmsg{font-size:.8rem;color:var(--cog-soft);text-align:center;min-height:1.2em}
.cogase-form .fmsg.err{color:#B03A4A}
.cogase-contacto{display:flex;justify-content:center;align-items:center;gap:.45rem;flex-wrap:wrap;margin-top:.6rem;font-size:.76rem}
.cogase-contacto a{color:var(--cog-soft);text-decoration:none;border-bottom:1px solid transparent}
.cogase-contacto a:hover{color:var(--cog-nar);border-bottom-color:var(--cog-nar)}
.cogase-contacto .sep{color:var(--cog-borde)}
.cogase-nota{font-size:.68rem;color:var(--cog-soft);text-align:center;margin-top:.5rem;line-height:1.35}
@media(prefers-reduced-motion:reduce){.cogase-esc i{animation:none;opacity:.6}#cogase-burbuja{transition:none}}
