/* PROPIA · piezas comunes (barra del vendedor, WhatsApp flotante, barra del teléfono, formulario y vista previa) */
:root{--twa-fondo:#05080c;--twa-panel:#0b131d;--twa-borde:rgba(76,201,255,.18);--twa-borde2:rgba(76,201,255,.4);--twa-ce:#4cc9ff;--twa-ce3:#9be3ff;--twa-texto:#eaf6ff;--twa-suave:#8fa6b8;--twa-verde:#25d366;--twa-verde-tx:#04230f;--twa-vend:0px}
.twa-con-vend{--twa-vend:36px}
.twa-ico-wa{width:20px;height:20px;fill:currentColor;flex:none}
.twa-btn-wa{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:0 24px;border:0;border-radius:999px;background:var(--twa-verde);color:var(--twa-verde-tx);font:700 15px Manrope,system-ui,sans-serif;text-decoration:none;cursor:pointer;box-shadow:0 10px 28px -10px rgba(37,211,102,.7);transition:transform .2s,box-shadow .2s,background .2s;white-space:nowrap}
.twa-btn-wa:hover{transform:translateY(-2px);background:#2ee472;box-shadow:0 14px 34px -10px rgba(37,211,102,.8)}
.twa-btn-wa[disabled]{opacity:.6;cursor:wait;transform:none}
.twa-btn-sec{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 22px;border-radius:999px;border:1px solid var(--twa-borde2);background:rgba(76,201,255,.07);color:var(--twa-ce3);font:700 15px Manrope,system-ui,sans-serif;text-decoration:none;cursor:pointer;white-space:nowrap}

/* Barra «Te atiende» */
.twa-vend{height:36px;background:linear-gradient(90deg,rgba(37,211,102,.16),rgba(76,201,255,.12));border-bottom:1px solid var(--twa-borde);font:600 13.5px Manrope,system-ui,sans-serif;color:var(--twa-texto)}
.twa-vend-in{height:100%;max-width:1228px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:center;gap:16px;white-space:nowrap;overflow:hidden}
.twa-vend-in>span{overflow:hidden;text-overflow:ellipsis}
.twa-vend b{color:#fff}
.twa-vend a{display:inline-flex;align-items:center;gap:6px;color:#5ee69a;font-weight:700;text-decoration:none}
.twa-vend a .twa-ico-wa{width:16px;height:16px}
.twa-vend a:hover{text-decoration:underline}

/* WhatsApp flotante (PC y tablet) */
.twa-flot{position:fixed;right:22px;bottom:22px;z-index:60;width:72px;height:72px;display:block;background:none;border-radius:0;box-shadow:none;transition:transform .2s;-webkit-tap-highlight-color:transparent}
.twa-flot picture,.twa-flot img{display:block;width:100%;height:100%}
.twa-flot img{filter:drop-shadow(0 10px 14px rgba(0,0,0,.35));object-fit:contain}
.twa-flot:hover{transform:scale(1.08)}
.twa-flot:focus-visible{outline:3px solid var(--twa-ce3);outline-offset:4px;border-radius:50%}

/* Barra fija del teléfono */
.twa-barra{display:none}
@media (max-width:640px){
  .twa-flot{width:62px;height:62px;right:16px;bottom:calc(78px + env(safe-area-inset-bottom,0px))}
  .twa-barra{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:1.15fr 1fr;gap:10px;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(8,14,21,.96);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--twa-borde2)}
  .twa-barra a{min-height:48px;padding:0 12px;font-size:15px}
  .twa-con-barra body{padding-bottom:calc(70px + env(safe-area-inset-bottom,0px))}
  .twa-vend{font-size:12.5px}.twa-vend-in{padding:0 16px;gap:10px;justify-content:space-between}
  .twa-vend a span,.twa-vend .twa-largo{display:none}
}

/* Diálogos */
.twa-dlg,.twa-vista{padding:0;border:0;color:var(--twa-texto);font:400 15.5px/1.55 Manrope,system-ui,sans-serif}
.twa-dlg::backdrop,.twa-vista::backdrop{background:rgba(2,5,9,.78);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.twa-dlg{width:min(460px,calc(100% - 32px));max-height:calc(100% - 32px);border-radius:24px;background:linear-gradient(160deg,#0f1d2b,#070d14);border:1px solid var(--twa-borde2);box-shadow:0 40px 90px rgba(0,0,0,.6)}
.twa-dlg-in{position:relative;padding:30px 28px 26px}
.twa-x{position:absolute;right:12px;top:12px;width:44px;height:44px;border-radius:12px;border:1px solid var(--twa-borde);background:rgba(255,255,255,.03);color:var(--twa-texto);font-size:26px;line-height:1;cursor:pointer}
.twa-x:hover{border-color:var(--twa-borde2)}
.twa-dlg h2{font:700 24px/1.2 Sora,system-ui,sans-serif;letter-spacing:-.02em;margin:0 50px 6px 0}
.twa-sub{color:var(--twa-suave);margin:0 0 16px}
.twa-mod{margin:-6px 0 14px;padding:9px 13px;border-radius:12px;background:rgba(76,201,255,.08);border:1px solid var(--twa-borde);color:var(--twa-ce3);font-size:14px}
.twa-mod b{color:#fff}
.twa-form{display:grid;gap:13px;margin:0}
.twa-form label,.form label{display:grid;gap:6px;font:700 13px Manrope,system-ui,sans-serif;letter-spacing:.03em;color:var(--twa-ce3)}
.twa-form input{width:100%;padding:13px 15px;border-radius:13px;border:1px solid var(--twa-borde);background:rgba(5,8,12,.75);color:var(--twa-texto);font:500 15.5px Manrope,system-ui,sans-serif}
.twa-form input:focus{outline:0;border-color:var(--twa-ce);box-shadow:0 0 0 3px rgba(76,201,255,.2)}
.twa-form .twa-btn-wa{width:100%;margin-top:4px}
.twa-trampa{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.twa-aviso{min-height:22px;margin:0;font-size:14px;color:var(--twa-ce3)}
.twa-aviso.mal{color:#ffb4a8}
.twa-aviso a{color:#5ee69a;font-weight:700}
.twa-dlg [hidden],.twa-vista [hidden],.twa-barra [hidden]{display:none!important}
.twa-ok{display:grid;gap:14px;text-align:center;padding-top:6px}
.twa-ok h2{margin:0}
.twa-ok p{color:var(--twa-suave);margin:0}

/* Vista previa de modelos */
.twa-vista{width:100%;height:100%;max-width:none;max-height:none;margin:0;background:rgba(4,7,11,.97);display:none;flex-direction:column}
.twa-vista[open]{display:flex}
.tv-cab{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--twa-borde);flex:none}
.tv-tit{flex:1;min-width:0;display:flex;flex-direction:column}
.tv-tit b{font:700 16px/1.25 Sora,system-ui,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tv-tit small{color:var(--twa-suave);font-size:13px}
.tv-disp{display:flex;padding:3px;border-radius:999px;border:1px solid var(--twa-borde);flex:none}
.tv-disp button{min-height:38px;padding:0 14px;border:0;border-radius:999px;background:none;color:var(--twa-suave);font:700 13px Manrope,system-ui,sans-serif;cursor:pointer}
.tv-disp button[aria-pressed=true]{background:rgba(76,201,255,.16);color:var(--twa-texto)}
.tv-abrir{color:var(--twa-ce3);font-weight:700;font-size:14px;text-decoration:none;white-space:nowrap;padding:8px 4px}
.tv-abrir:hover{text-decoration:underline}
.tv-x{width:44px;height:44px;flex:none;border-radius:12px;border:1px solid var(--twa-borde);background:none;color:var(--twa-texto);font-size:26px;line-height:1;cursor:pointer}
.tv-esc{flex:1;min-height:0;display:grid;place-items:center;padding:12px;overflow:hidden}
.tv-marco{background:#0d1824;border:1px solid var(--twa-borde2);box-shadow:0 30px 80px rgba(0,0,0,.6);overflow:hidden}
.tv-marco.pc{border-radius:14px}
.tv-marco.tel{border-radius:34px;padding:10px;background:#0a1018;border:2px solid #24384c}
.tv-marco.tel .tv-barra{display:none}
.tv-marco.tel .tv-pant{border-radius:25px}
.tv-barra{height:34px;display:flex;align-items:center;gap:7px;padding:0 14px;border-bottom:1px solid var(--twa-borde)}
.tv-barra i{width:10px;height:10px;border-radius:50%;background:#1d3345}
.tv-barra i:first-child{background:var(--twa-ce)}
.tv-barra span{margin-left:10px;flex:1;max-width:280px;height:20px;border-radius:99px;background:rgba(76,201,255,.07);border:1px solid var(--twa-borde);font:600 11px/18px Manrope,system-ui,sans-serif;color:var(--twa-suave);text-align:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:0 10px}
.tv-pant{position:relative;overflow:hidden;background:#fff}
.tv-pant iframe{position:absolute;left:0;top:0;border:0;transform-origin:0 0;background:#fff}
.tv-pie{flex:none;display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--twa-borde)}
.tv-nav{display:inline-flex;align-items:center;gap:6px;min-height:48px;padding:0 16px;border-radius:999px;border:1px solid var(--twa-borde2);background:rgba(76,201,255,.06);color:var(--twa-ce3);font:700 14px Manrope,system-ui,sans-serif;cursor:pointer}
.tv-nav svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.tv-nav[hidden]{display:none}
@media (max-width:640px){
  .tv-cab{flex-wrap:wrap;gap:8px 10px;padding:10px 12px}
  .tv-tit{flex-basis:calc(100% - 56px)}
  .tv-disp{order:3}.tv-abrir{order:4;margin-left:auto}.tv-x{order:2}
  .tv-esc{padding:8px}
  .tv-pie{gap:8px;padding-inline:12px}
  .tv-nav{padding:0 13px}.tv-nav span{display:none}
  .tv-quiero{flex:1}
}
@media (prefers-reduced-motion:reduce){.twa-btn-wa,.twa-flot{transition:none}}

/* ---- Planes que muestra el link de un vendedor (html[data-planes]) ----
   so-i: solo si se muestra el Inmediato · so-p: solo si se muestra el Personalizado · so-2: solo cuando se muestran los dos
   so-1: solo cuando se muestra uno · so-1i / so-1p: solo cuando se muestra únicamente el Inmediato / el Personalizado */
.so-1,.so-1i,.so-1p{display:none!important}
html[data-planes=personalizado] .so-i,html[data-planes=personalizado] .so-2,html[data-planes=inmediato] .so-p,html[data-planes=inmediato] .so-2,
html[data-planes] a[href*="#comparar"],html[data-planes=personalizado] a[href*="plan-inmediato"],html[data-planes=personalizado] a[href*="modelos-inmediato"],html[data-planes=personalizado] a[href^="/web/empezar"],html[data-planes=personalizado] a[data-plan="Inmediato"],
html[data-planes=inmediato] a[href*="plan-personalizado"],html[data-planes=inmediato] a[href^="/web/pagar?p=personalizado"],html[data-planes=inmediato] a[data-plan="Personalizado"]{display:none!important}
html[data-planes] .so-1,html[data-planes=personalizado] .so-1p,html[data-planes=inmediato] .so-1i{display:revert!important}
html[data-planes] .plans.dos{grid-template-columns:minmax(0,520px);justify-content:center}
html[data-planes] .plans.dos .plan{transform:none}
