/* Lía, la asistente de STRUCTIA — burbuja y panel de chat. Sin cookies ni almacenamiento. */
.lia-btn{position:fixed;right:18px;bottom:18px;z-index:45;display:flex;align-items:center;gap:10px;padding:8px 16px 8px 8px;border-radius:999px;border:1px solid rgba(124,179,255,.35);background:linear-gradient(180deg,#3b82f6,#1a56db);color:#fff;font:600 .92rem/1 var(--f,Inter,system-ui,sans-serif);cursor:pointer;box-shadow:0 18px 40px -14px rgba(59,130,246,.85);transition:transform .5s var(--suave,ease),box-shadow .5s var(--suave,ease),opacity .4s}
.lia-btn:hover{transform:translateY(-2px);box-shadow:0 22px 44px -14px rgba(59,130,246,.95)}
.lia-btn .lia-av{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;position:relative;flex:none;box-shadow:0 0 0 2px rgba(255,255,255,.35)}
.lia-btn.lia-oculto{opacity:0;pointer-events:none;transform:translateY(12px)}
/* La burbuja de WhatsApp: mismo diseño y colores que la de Lía, colocada justo encima */
.lia-con .wa-burbuja{bottom:84px;width:auto;height:auto;border-radius:999px;display:flex;align-items:center;gap:10px;padding:8px 16px 8px 8px;border:1px solid rgba(124,179,255,.35);background:linear-gradient(180deg,#3b82f6,#1a56db);color:#fff;font:600 .92rem/1 var(--f,Inter,system-ui,sans-serif);text-decoration:none;box-shadow:0 18px 40px -14px rgba(59,130,246,.85);transition:transform .5s var(--suave,ease),box-shadow .5s var(--suave,ease)}
.lia-con .wa-burbuja:hover{transform:translateY(-2px);box-shadow:0 22px 44px -14px rgba(59,130,246,.95)}
.lia-con .wa-burbuja svg{width:38px;height:38px;padding:8px;box-sizing:border-box;border-radius:50%;background:#0d1a36;color:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.35);flex:none}
.lia-con .wa-burbuja::after{content:"WhatsApp"}
.lia-panel{padding:0;margin:0;box-sizing:border-box;position:fixed;right:18px;bottom:18px;z-index:46;width:min(380px,calc(100vw - 24px));height:min(640px,calc(100vh - 104px));height:min(640px,calc(100dvh - 104px));display:flex;flex-direction:column;border-radius:22px;overflow:hidden;background:rgba(10,18,38,.92);-webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%);border:1px solid rgba(124,179,255,.22);box-shadow:0 40px 90px -30px rgba(0,0,0,.85),0 0 0 1px rgba(255,255,255,.03) inset;color:var(--tinta,#eef2fb);font-family:var(--f,Inter,system-ui,sans-serif);transform-origin:bottom right;animation:lia-abrir .45s var(--suave,ease)}
.lia-panel[hidden]{display:none}
@keyframes lia-abrir{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}
.lia-cab{display:flex;align-items:center;gap:12px;padding:14px 14px 12px 16px;border-bottom:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(59,130,246,.22),transparent)}
.lia-cab .lia-av{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;position:relative;flex:none;box-shadow:0 0 0 3px rgba(59,130,246,.25)}
.lia-robot{width:100%;height:100%;display:block;border-radius:50%}
/* Parpadeo suave de los ojos; se detiene si el visitante prefiere menos movimiento */
.lia-ojos{transform-origin:50px 59px;animation:lia-parpadeo 4.6s infinite}
@keyframes lia-parpadeo{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.08)}}
.lia-cab b{display:block;font-size:1rem;line-height:1.2}
.lia-cab small{display:block;color:var(--tinta-2,#a7b3cc);font-size:.76rem;margin-top:2px}
.lia-cab .lia-x{margin-left:auto;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:var(--tinta,#eef2fb);font-size:1.1rem;cursor:pointer;display:grid;place-items:center}
.lia-cab .lia-x:hover{background:rgba(255,255,255,.1)}
.lia-msgs{min-height:0;flex:1;overflow-y:auto;padding:16px 14px 8px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth;overscroll-behavior:contain}
.lia-m{max-width:88%;padding:10px 13px;border-radius:16px;font-size:.92rem;line-height:1.5;white-space:pre-wrap;word-wrap:break-word;animation:lia-msg .35s var(--suave,ease)}
@keyframes lia-msg{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.lia-m.lia-ella{align-self:flex-start;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);border-bottom-left-radius:6px}
.lia-m.lia-yo{align-self:flex-end;background:linear-gradient(180deg,#3b82f6,#1a56db);color:#fff;border-bottom-right-radius:6px}
.lia-m.lia-aviso{align-self:center;background:transparent;color:var(--tinta-3,#6f7d9c);font-size:.78rem;text-align:center;padding:4px 10px}
.lia-escribe{align-self:flex-start;display:flex;gap:4px;padding:12px 14px;background:rgba(255,255,255,.07);border-radius:16px;border-bottom-left-radius:6px}
.lia-escribe i{width:6px;height:6px;border-radius:50%;background:var(--tinta-2,#a7b3cc);animation:lia-puntos 1s infinite ease-in-out}
.lia-escribe i:nth-child(2){animation-delay:.15s}.lia-escribe i:nth-child(3){animation-delay:.3s}
@keyframes lia-puntos{0%,80%,100%{transform:translateY(0);opacity:.5}40%{transform:translateY(-4px);opacity:1}}
.lia-botones{display:flex;flex-wrap:wrap;gap:6px;align-self:flex-start;max-width:92%}
.lia-botones a,.lia-botones button{display:inline-flex;align-items:center;gap:6px;padding:8px 13px;border-radius:999px;border:1px solid rgba(124,179,255,.4);background:rgba(59,130,246,.12);color:#cfe1ff;font:600 .82rem/1 inherit;font-family:inherit;cursor:pointer;text-decoration:none;transition:background .25s,transform .4s var(--suave,ease)}
.lia-botones a:hover,.lia-botones button:hover{background:rgba(59,130,246,.24);transform:translateY(-1px)}
.lia-botones .lia-wa{border-color:rgba(37,211,102,.45);background:rgba(37,211,102,.1);color:#9df0bb}
.lia-chips{display:flex;flex-wrap:wrap;gap:6px;padding:4px 14px 10px}
.lia-chips button{padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);color:var(--tinta-2,#a7b3cc);font:500 .8rem/1 inherit;font-family:inherit;cursor:pointer;transition:background .25s,color .25s}
.lia-chips button:hover{background:rgba(255,255,255,.09);color:var(--tinta,#eef2fb)}
.lia-form{display:flex;gap:8px;padding:10px 12px 8px;border-top:1px solid rgba(255,255,255,.08)}
.lia-form input{flex:1;min-width:0;padding:12px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:var(--tinta,#eef2fb);font:inherit;font-size:.94rem;outline:none}
.lia-form input:focus{border-color:rgba(124,179,255,.6);box-shadow:0 0 0 3px rgba(59,130,246,.2)}
.lia-form button{width:44px;height:44px;border-radius:50%;border:none;background:linear-gradient(180deg,#3b82f6,#1a56db);color:#fff;cursor:pointer;display:grid;place-items:center;flex:none;transition:transform .4s var(--suave,ease)}
.lia-form button:hover{transform:scale(1.05)}
.lia-form button svg{width:18px;height:18px}
.lia-pie{padding:0 14px 10px;font-size:.68rem;color:var(--tinta-3,#6f7d9c);text-align:center;line-height:1.4}
/* El formulario de «que me llaméis», dentro del chat */
.lia-contacto{align-self:stretch;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:12px;display:grid;gap:8px}
.lia-contacto input{padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:var(--tinta,#eef2fb);font:inherit;font-size:.9rem;outline:none;width:100%;box-sizing:border-box}
.lia-contacto input:focus{border-color:rgba(124,179,255,.6)}
.lia-contacto label{display:flex;gap:8px;align-items:flex-start;font-size:.74rem;color:var(--tinta-2,#a7b3cc);line-height:1.4}
.lia-contacto label input{width:20px;height:20px;margin-top:0;flex:none;accent-color:#3b82f6}
.lia-contacto label a{color:#9ec5ff}
.lia-contacto .lia-enviar{padding:11px;border-radius:999px;border:none;background:linear-gradient(180deg,#3b82f6,#1a56db);color:#fff;font:600 .9rem/1 inherit;font-family:inherit;cursor:pointer}
.lia-contacto .lia-error{color:#fca5a5;font-size:.76rem}
@media (max-width:640px){
  /* En el móvil el panel nace justo debajo del menú fijo (8 px + 52 px) y llega hasta abajo: nunca lo tapa */
  .lia-panel{right:0;left:0;top:72px;bottom:0;width:100vw;height:auto;border-radius:22px 22px 0 0}
  .lia-btn span.lia-txt{display:none}
  .lia-btn{padding:8px}
  .lia-con .wa-burbuja::after{display:none}
  .lia-con .wa-burbuja{padding:8px}
}
@media (prefers-reduced-motion:reduce){.lia-panel,.lia-m,.lia-escribe i,.lia-ojos{animation:none}}

/* Teléfonos muy estrechos (320-340 px): la barra de arriba y la calculadora caben sin cortarse */
@media (max-width:340px){
  .nav-in{gap:4px}
  .nav-in .logo{font-size:.86rem;letter-spacing:.02em;gap:6px}
  .nav-in .logo span{display:none}
  .nav-in .nav-cta{padding:7px 10px;font-size:.74rem}
  .bloques,.bloques>*{min-width:0;max-width:100%}
}
