/* pg-asistente: demo viva de asistente (Clinica Nova) + asistente flotante de Waves. Tinta, blanco y cian; sin violeta. */
.as,.wa{--c:#A3EFF4;--c2:#22D3EE;--ink:#0A0B10;font-family:Manrope,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.as *,.wa *{box-sizing:border-box}
.as button,.wa button,.as input,.wa input{font:inherit;color:inherit}
.as button,.wa button{cursor:pointer;-webkit-tap-highlight-color:transparent}
.as :focus-visible,.wa :focus-visible{outline:2px solid var(--c);outline-offset:2px}
.sr-as{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* ---- motor de chat comun ---- */
.qz{display:flex;flex-direction:column;min-height:0;min-width:0}
.qz-log{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:auto;display:flex;flex-direction:column;gap:10px;padding:16px 16px 8px;scroll-behavior:smooth}
.qz-m{max-width:86%;padding:10px 14px;border-radius:16px;font:500 14.5px/1.45 Manrope,system-ui,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;animation:chIn .35s cubic-bezier(.2,.7,.2,1) both}
.qz-m.bot{align-self:flex-start;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-bottom-left-radius:5px;color:#fff}
.qz-m.me{align-self:flex-end;background:linear-gradient(135deg,#A3EFF4,#22D3EE);color:var(--ink);font-weight:600;border-bottom-right-radius:5px}
.qz-m.dots{display:flex;gap:5px;padding:14px 16px}
.qz-m.dots i{width:6px;height:6px;border-radius:50%;background:var(--c);opacity:.35;animation:chD 1s infinite ease-in-out}
.qz-m.dots i:nth-child(2){animation-delay:.15s}.qz-m.dots i:nth-child(3){animation-delay:.3s}
.qz-m .qz-go{display:inline-block;margin-top:8px;padding:7px 14px;border-radius:99px;background:var(--c);color:var(--ink);font-weight:700;font-size:13px;border:0}
@keyframes chIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes chD{0%,100%{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}
.qz-chips{display:flex;flex-wrap:wrap;gap:8px;padding:8px 16px 10px}
.qz-chips button{padding:8px 14px;border-radius:99px;background:rgba(163,239,244,.08);border:1px solid rgba(163,239,244,.35);color:var(--c);font:600 13px/1.2 Manrope,system-ui,sans-serif;transition:background .25s,transform .25s,border-color .25s;min-height:36px}
.qz-chips button:hover{background:rgba(163,239,244,.18);border-color:var(--c);transform:translateY(-1px)}
.qz-f{display:flex;gap:8px;padding:10px 12px 12px;border-top:1px solid rgba(255,255,255,.09)}
.qz-f input{flex:1;min-width:0;height:44px;padding:0 16px;border-radius:99px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#fff;font-size:16px}
.qz-f input::placeholder{color:rgba(255,255,255,.5)}
.qz-f input:focus{border-color:var(--c);outline:0;box-shadow:0 0 0 3px rgba(163,239,244,.18)}
.qz-f button{flex:none;width:44px;height:44px;border-radius:50%;border:0;background:var(--c);color:var(--ink);display:grid;place-items:center;transition:transform .25s,box-shadow .25s}
.qz-f button:hover{transform:scale(1.06);box-shadow:0 0 22px -4px var(--c2)}
.qz-f svg{width:18px;height:18px}
/* ---- demo Clinica Nova ---- */
.as{margin-top:clamp(36px,4.5vw,72px);padding:clamp(18px,3vw,40px);border-radius:26px;background:#0A0B10;color:#fff;box-shadow:0 40px 80px -50px rgba(10,11,16,.8);scroll-margin-top:90px;min-width:0}
.as-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 20px}
.as-h span{font:700 12px/1.3 Manrope,system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--c)}
.as-h b{font:600 clamp(18px,1.8vw,24px)/1.2 Manrope,system-ui,sans-serif;letter-spacing:-.02em}
.as-g{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(16px,2.4vw,28px);margin-top:clamp(18px,2.4vw,28px)}
@media(min-width:900px){.as-g{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:stretch}}
.as-h>div{display:grid;gap:6px}
.as-rp{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 16px;border-radius:99px;background:rgba(163,239,244,.08);border:1px solid rgba(163,239,244,.4);color:var(--c);font:700 13px/1 Manrope,system-ui,sans-serif;transition:background .25s,transform .25s}
.as-rp:hover{background:rgba(163,239,244,.18);transform:translateY(-1px)}
.as-rp svg{width:15px;height:15px}
.as-tabs{display:none}
.as-win{display:flex;flex-direction:column;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(163,239,244,.22);box-shadow:0 24px 50px -28px rgba(34,211,238,.4);height:min(560px,76vh);min-height:440px;min-width:0;overflow:hidden}
.as-win>.qz{flex:1}
.as-top{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.09);font:700 14px/1 Manrope,system-ui,sans-serif}
.as-top i{width:28px;height:28px;border-radius:50%;background:var(--c);color:var(--ink);display:grid;place-items:center;font-style:normal;font-size:13px}
.as-top small,.as-pt span{display:inline-flex;align-items:center;gap:6px;font:600 12px/1 Manrope,system-ui,sans-serif;color:rgba(255,255,255,.62)}
.as-top u,.as-pt u{width:7px;height:7px;border-radius:50%;background:#4ADE80;box-shadow:0 0 0 0 rgba(74,222,128,.6);animation:asLive 2s infinite}
@keyframes asLive{70%{box-shadow:0 0 0 7px rgba(74,222,128,0)}100%{box-shadow:0 0 0 0 rgba(74,222,128,0)}}
.as-top em{margin-left:auto;font:700 12px/1 Manrope,system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--c);border:1px solid rgba(163,239,244,.45);padding:5px 9px;border-radius:99px}
.qz-m.as-rich{background:none;border:0;padding:0;white-space:normal;max-width:94%}
.as-sb{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.as-sb button{display:grid;gap:2px;min-width:78px;padding:9px 14px;border-radius:12px;background:rgba(163,239,244,.1);border:1px solid rgba(163,239,244,.4);color:#fff;font:800 16px/1 Manrope,system-ui,sans-serif;text-align:left;transition:background .25s,transform .25s}
.as-sb small{font:600 12px/1 Manrope,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--c)}
.as-sb button:hover:not(:disabled){background:rgba(163,239,244,.22);transform:translateY(-1px)}
.as-sb button:disabled{opacity:.45;cursor:default}.as-sb button.on{opacity:1;background:var(--c);color:var(--ink)}.as-sb button.on small{color:var(--ink)}
.as-ca{display:flex;gap:14px;padding:14px;border-radius:16px;background:linear-gradient(160deg,rgba(163,239,244,.14),rgba(255,255,255,.04));border:1px solid rgba(163,239,244,.4);min-width:min(280px,100%)}
.as-cd{flex:none;width:64px;height:64px;border-radius:14px;background:var(--c);color:var(--ink);display:grid;place-content:center;text-align:center}
.as-cd small{font:800 12px/1 Manrope,system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase}.as-cd b{font:800 20px/1.1 Manrope,system-ui,sans-serif}
.as-ca h5{margin:0;font:800 15px/1.2 Manrope,system-ui,sans-serif}.as-ca p{margin:2px 0 8px;font:500 12.5px/1.3 Manrope,system-ui,sans-serif;color:rgba(255,255,255,.65)}
.as-ca ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.as-ca li{display:flex;gap:8px;align-items:flex-start;font:600 12.5px/1.35 Manrope,system-ui,sans-serif;animation:chIn .4s cubic-bezier(.2,.7,.2,1) both}
.as-ca li i{flex:none;width:16px;height:16px;margin-top:1px;border-radius:50%;background:var(--c2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230A0B10' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/11px no-repeat}
.as-go{margin-top:0!important}
.as-pn{position:relative;display:flex;flex-direction:column;gap:12px;min-width:0;height:min(560px,76vh);min-height:440px;overflow-y:auto;padding:16px;border-radius:18px;background:linear-gradient(180deg,#121722,#0C0F16);color:#fff;border:1px solid rgba(163,239,244,.22);box-shadow:0 24px 50px -28px rgba(34,211,238,.4)}
.as-pt{display:flex;align-items:center;gap:8px;font:700 13px/1 Manrope,system-ui,sans-serif}
.as-pt i{width:18px;height:18px;border-radius:50%;background:var(--c);box-shadow:inset -5px -5px 0 var(--c2)}
.as-pt span{margin-left:auto}
.as-st{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.as-st div{padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.as-st b{display:block;font:800 clamp(26px,3vw,34px)/1 Manrope,system-ui,sans-serif;letter-spacing:-.03em;color:var(--c);font-variant-numeric:tabular-nums}
.as-st small{display:block;margin-top:6px;font:500 12px/1.3 Manrope,system-ui,sans-serif;color:rgba(255,255,255,.6)}
.as-sl{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.as-sl li{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.06);font:500 13.5px/1.2 Manrope,system-ui,sans-serif;min-width:0;transition:background .4s,box-shadow .4s}
.as-sl time{font-weight:800;min-width:44px;font-variant-numeric:tabular-nums}
.as-sl .as-nm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.as-sl .as-tg{display:flex;gap:5px;flex:none;flex-wrap:wrap;justify-content:flex-end}
.as-sl .as-tg b{font:700 12px/1 Manrope,system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;padding:4px 7px;border-radius:99px;background:rgba(255,255,255,.12);color:rgba(255,255,255,.75);animation:chIn .4s both}
.as-sl li.free{background:transparent;border:1.5px dashed rgba(255,255,255,.2)}
.as-sl li.free .nm{color:rgba(255,255,255,.5)}
.as-sl li.as-hi{background:rgba(163,239,244,.1);border-color:var(--c);box-shadow:0 0 0 1px var(--c)}
.as-sl li.mine{background:rgba(34,211,238,.16);box-shadow:0 0 0 1.5px var(--c2)}
.as-sl li.mine .b1,.as-sl li.mine .b2{background:var(--c2);color:var(--ink)}
.as-sl li.new{animation:asNew 1s cubic-bezier(.2,.7,.2,1);background:linear-gradient(90deg,rgba(163,239,244,.5),rgba(34,211,238,.16) 60%)}
@keyframes asNew{0%{transform:translateX(26px) scale(.97);opacity:0;box-shadow:0 0 0 0 rgba(34,211,238,.9)}45%{opacity:1;transform:none;box-shadow:0 0 0 10px rgba(34,211,238,0),0 0 30px 2px rgba(34,211,238,.6)}100%{transform:none}}
.as-fi{display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(163,239,244,.3);animation:chIn .5s both}
.as-fi[hidden]{display:none}
.as-fi i{flex:none;width:38px;height:38px;border-radius:50%;background:var(--c);color:var(--ink);display:grid;place-items:center;font:800 13px/1 Manrope,system-ui,sans-serif;font-style:normal}
.as-fi b{display:block;font:700 13.5px/1.25 Manrope,system-ui,sans-serif}.as-fi span{display:block;margin-top:2px;font:500 12px/1.35 Manrope,system-ui,sans-serif;color:rgba(255,255,255,.62)}
.as-ts{position:absolute;left:12px;right:12px;top:12px;display:grid;gap:8px;pointer-events:none;z-index:2}
.as-ti{display:flex;gap:10px;align-items:center;padding:11px 14px;border-radius:16px;background:rgba(245,250,252,.96);color:var(--ink);box-shadow:0 18px 40px -12px rgba(0,0,0,.7);animation:asToast .55s cubic-bezier(.2,.8,.2,1) both;transition:opacity .45s,transform .45s}
.as-ti.out{opacity:0;transform:translateY(-14px)}
.as-ti i{flex:none;width:32px;height:32px;border-radius:10px;background:var(--ink);color:var(--c);display:grid;place-items:center}.as-ti svg{width:17px;height:17px}
.as-ti b{display:block;font:800 13px/1.25 Manrope,system-ui,sans-serif}.as-ti span{display:block;font:500 12px/1.3 Manrope,system-ui,sans-serif;color:#4b5963}
@keyframes asToast{from{opacity:0;transform:translateY(-24px) scale(.96)}to{opacity:1;transform:none}}
.as-ill{margin:clamp(14px,2vw,22px) 0 0;font:500 12.5px/1.4 Manrope,system-ui,sans-serif;color:rgba(255,255,255,.6)}
.as-ill em{font-style:normal;font-weight:700;color:var(--c);margin-right:6px}
@media(max-width:899px){
 .as-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:16px;padding:4px;border-radius:99px;background:rgba(255,255,255,.06)}
 .as-tabs button{position:relative;min-height:42px;border:0;border-radius:99px;background:none;color:rgba(255,255,255,.7);font:700 13px/1 Manrope,system-ui,sans-serif;transition:background .25s,color .25s}
 .as-tabs button[aria-selected=true]{background:var(--c);color:var(--ink)}
 .as-bd{position:absolute;top:8px;right:14px;width:9px;height:9px;border-radius:50%;background:#FB7185;box-shadow:0 0 0 3px #0A0B10;animation:asLive 1.6s infinite}
 .as-bd[hidden]{display:none}
 .as-g{margin-top:14px}
 .as-g[data-v=chat] .as-pn,.as-g[data-v=panel] .as-win{display:none}
 .as-win,.as-pn{height:min(560px,78vh);min-height:420px}
}
@media(min-width:900px){.qz-m .as-go{display:none}}
/* enlace desde la tarjeta 04 */
.wa-lnk{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:10px 16px;border-radius:99px;background:#0A0B10;color:#A3EFF4!important;font:700 13.5px/1 Manrope,system-ui,sans-serif;text-decoration:none;box-shadow:0 10px 24px -14px rgba(34,211,238,.9)}
.wa-lnk:hover{transform:translateY(-1px)}
/* ---- asistente flotante ---- */
.wa-fab{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:60;width:56px;height:56px;border-radius:50%;border:1px solid rgba(163,239,244,.55);background:radial-gradient(circle at 30% 25%,#161a24,#0A0B10);display:grid;place-items:center;box-shadow:0 14px 34px -10px rgba(0,0,0,.7),0 0 0 4px rgba(34,211,238,.08),0 0 26px -6px rgba(34,211,238,.55);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,opacity .4s,visibility .4s}
.wa-fab:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 18px 40px -10px rgba(0,0,0,.7),0 0 0 5px rgba(34,211,238,.14),0 0 34px -4px rgba(34,211,238,.75)}
.wa-fab img{width:28px;height:auto;display:block;filter:drop-shadow(0 0 6px rgba(163,239,244,.5))}
html.dn-gate .wa-fab,html.dn-gate .wa-pn,.wa-fab[hidden],.wa-pn[hidden]{display:none!important}
.wa-fab.on{opacity:0;visibility:hidden;pointer-events:none}
.wa-pn{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:61;width:min(392px,calc(100vw - 36px));height:min(580px,calc(100vh - 36px));height:min(580px,calc(100dvh - 36px));display:flex;flex-direction:column;color:#fff;border-radius:22px;background:linear-gradient(180deg,rgba(20,24,34,.9),rgba(10,11,16,.94));-webkit-backdrop-filter:blur(22px) saturate(1.3);backdrop-filter:blur(22px) saturate(1.3);border:1px solid rgba(163,239,244,.32);box-shadow:0 40px 90px -20px rgba(0,0,0,.85),0 0 0 1px rgba(255,255,255,.04) inset,0 0 60px -20px rgba(34,211,238,.45);overflow:hidden;transform-origin:100% 100%;animation:waOpen .45s cubic-bezier(.2,.7,.2,1) both}
@keyframes waOpen{from{opacity:0;transform:translateY(16px) scale(.94)}to{opacity:1;transform:none}}
.wa-hd{display:flex;align-items:center;gap:12px;padding:14px 14px 14px 16px;border-bottom:1px solid rgba(255,255,255,.09);background:linear-gradient(180deg,rgba(163,239,244,.07),transparent)}
.wa-hd img{width:26px;flex:none}
.wa-hd div{flex:1;min-width:0}
.wa-hd b{display:block;font:700 15px/1.2 Manrope,system-ui,sans-serif}
.wa-hd small{display:block;font:500 12px/1.3 Manrope,system-ui,sans-serif;color:rgba(255,255,255,.62)}
.wa-x{flex:none;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);display:grid;place-items:center;transition:background .25s}
.wa-x:hover{background:rgba(255,255,255,.14)}
.wa-x svg{width:16px;height:16px}
.wa-pn .qz{flex:1}
.wa-ft{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 16px 12px;font:500 12px/1.3 Manrope,system-ui,sans-serif;color:rgba(255,255,255,.55)}
.wa-ft button{flex:none;border:0;background:none;color:var(--c);font:700 12.5px/1 Manrope,system-ui,sans-serif;text-decoration:underline;text-underline-offset:3px;padding:8px 0;min-height:36px}
@media(max-width:700px){
 .wa-pn{inset:auto 0 0 0;width:100%;height:min(560px,82vh);height:min(560px,82dvh);border-radius:22px 22px 0 0;border-width:1px 0 0;transform-origin:50% 100%}
 .wa-f{padding-bottom:max(12px,env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){.wa-pn,.qz-m,.as-sl li.new,.as-ti,.as-ca li,.as-fi,.as-top u,.as-pt u,.as-bd,.as-sl .as-tg b{animation:none}.as-ti{transition:none}.qz-m.dots i{animation:none;opacity:.8}.qz-log{scroll-behavior:auto}}

.wa-fab.wa-oc{opacity:0;pointer-events:none;transform:scale(.8)}
@media(max-width:480px){.as-top small{display:none}}

@media(max-width:899px){.wa-fab.wa-od{opacity:0;pointer-events:none;transform:scale(.8)}}
@media(max-width:480px){.as-sl li.mine{flex-wrap:wrap;row-gap:6px}.as-sl li.mine .as-nm{flex:1 1 auto}.as-sl li.mine .as-tg{flex:1 1 100%;justify-content:flex-start}}
/* cabecera centrada: texto al centro y el botón de repetir debajo */
html body .as-h{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px}
html body .as-h>div{justify-items:center;text-align:center}
