/* =====================================================================
   UKABI · Página TPV Cloud (diseño claro 2026)
   Complementa ukabi-light.css. Clases de los elementos de Avada: ukl-*;
   piezas que inserta ukabi-light-tpv.js: ukt-*.
   ===================================================================== */

/* ---------- Logo de TPV Cloud (SVG animado: letras que suben y barra coral que cae) ---------- */
.ukabi-light-page .ukl-tpv-logo{ flex:0 0 100% !important; text-align:center; margin-bottom:4px !important; }
.ukabi-light-page .ukl-tpv-logo img,
.ukabi-light-page .ukl-tpv-logo .ukt-logo-svg{ width:clamp(220px,26vw,360px); height:auto; display:inline-block; overflow:visible; }
.ukabi-light-page .ukl-tpv-logo .fusion-imageframe{ overflow:visible; }

/* ---------- Distintivos del hero ---------- */
.ukabi-light-page .ukl-badges{ display:flex !important; flex-wrap:wrap; justify-content:center; gap:8px; margin:0 !important; padding:0 !important; }
.ukabi-light-page .ukl-badges .fusion-li-item{ margin:0 !important; padding:8px 11px !important; background:#fff; border:1px solid var(--ukl-line); border-radius:999px; }
.ukabi-light-page .ukl-badges .icon-wrapper{ display:none !important; }
.ukabi-light-page .ukl-badges .fusion-li-item-content{ margin:0 !important; font:700 11px/1 var(--ukl-mono); color:var(--ukl-ink); }
.ukabi-light-page .ukl-tpv-hero .ukl-mock--tpvhero{ margin-top:56px !important; }

/* ---------- Tablet ---------- */
.ukt-device{ position:relative; width:100%; max-width:980px; margin-inline:auto; aspect-ratio:16/10.4; border-radius:34px; background:#11173a; padding:14px;
  box-shadow:0 60px 120px -40px rgba(15,32,108,.55),inset 0 0 0 1px rgba(255,255,255,.08); text-align:left; }
.ukt-device::before{ content:""; position:absolute; top:50%; left:6px; width:5px; height:40px; border-radius:3px; background:#2a3163; translate:0 -50%; }
.ukt-screen{ position:relative; height:100%; border-radius:22px; overflow:hidden; background:#fff; }
.ukt-scr{ position:absolute; inset:0; display:grid; opacity:0; transform:scale(1.02); transition:opacity .6s ease,transform .6s ease; }
.ukt-scr.is-on{ opacity:1; transform:none; }
.ukt-top{ display:flex; align-items:center; gap:10px; padding:10px 14px; border-bottom:1px solid #EEF0F8; font:700 11px/1 var(--ukl-mono); color:var(--ukl-ink); letter-spacing:.04em; }
.ukt-top em{ margin-left:auto; font-style:normal; font-weight:400; color:var(--ukl-muted); }
.ukt-sync{ width:8px; height:8px; border-radius:50%; background:var(--ukl-green); box-shadow:0 0 0 3px var(--ukl-green-soft); flex:none; }
.ukt-pos{ grid-template-rows:auto 1fr; }
.ukt-pos-body{ display:grid; grid-template-columns:1.55fr 1fr; min-height:0; }
.ukt-cats{ display:flex; gap:6px; padding:10px 14px 0; }
.ukt-cats span{ font:600 10.5px/1 var(--ukl-display); padding:7px 10px; border-radius:999px; background:var(--ukl-bg-2); color:var(--ukl-muted); }
.ukt-cats span.on{ background:var(--ukl-ink); color:#fff; }
.ukt-tiles{ display:grid; grid-template-columns:repeat(4,1fr); gap:8px; padding:10px 14px 14px; align-content:start; }
.ukt-tile{ border-radius:12px; padding:10px; min-height:62px; display:flex; flex-direction:column; justify-content:space-between; font-size:11px; font-weight:600; color:var(--ukl-ink); background:#F4F5FB; border:1px solid #EEF0F8; }
.ukt-tile b{ font:700 11px/1 var(--ukl-mono); }
.ukt-c0{ background:#FFF1F3; } .ukt-c1{ background:#F4F5FB; } .ukt-c2{ background:#EEF0FB; } .ukt-c3{ background:#E9F7F0; } .ukt-c4{ background:#FFF7E6; }
.ukt-tap{ animation:ukt-tap 3.2s ease-in-out infinite; }
@keyframes ukt-tap{ 0%,70%,100%{ transform:none; } 78%{ transform:scale(.94); } 86%{ transform:none; } }
.ukt-ticket{ border-left:1px solid #EEF0F8; display:grid; grid-template-rows:auto 1fr auto; min-height:0; }
.ukt-ticket h6{ margin:0 !important; padding:12px 14px 8px; font:700 11px/1 var(--ukl-mono) !important; color:var(--ukl-ink) !important; letter-spacing:.06em !important; text-transform:uppercase; }
.ukt-lines{ padding:0 14px; display:grid; gap:6px; align-content:start; font-size:11.5px; }
.ukt-ln{ display:flex; justify-content:space-between; gap:8px; color:var(--ukl-text); }
.ukt-ln b{ font:700 11px/1.4 var(--ukl-mono); color:var(--ukl-ink); }
.ukt-new{ animation:ukt-ln 3.2s ease-in-out infinite; }
@keyframes ukt-ln{ 0%,76%{ opacity:0; transform:translateX(-6px); } 86%,100%{ opacity:1; transform:none; } }
.ukt-pay{ padding:12px 14px; border-top:1px solid #EEF0F8; display:grid; gap:8px; }
.ukt-tot{ display:flex; justify-content:space-between; font-weight:700; color:var(--ukl-ink); font-size:13px; }
.ukt-tot b{ font:800 18px/1 var(--ukl-display); }
.ukt-cobrar{ background:var(--ukl-coral); color:#fff; border-radius:10px; text-align:center; font:700 12px/1 var(--ukl-display); padding:11px; }
.ukt-methods{ display:flex; gap:6px; }
.ukt-methods span{ flex:1; text-align:center; font:700 10px/1 var(--ukl-mono); padding:7px 0; border-radius:8px; border:1px solid var(--ukl-line); color:var(--ukl-ink); }
.ukt-pad{ padding:0 14px 14px; display:grid; gap:10px; align-content:start; }
.ukt-pad > .ukt-top{ margin:0 -14px; }
.ukt-rows{ display:grid; gap:6px; }
.ukt-r{ display:grid; grid-template-columns:1fr auto auto; gap:10px; align-items:center; padding:9px 11px; border-radius:9px; background:#F8F9FD; border:1px solid #EEF0F8; font-size:12px; }
.ukt-r b{ color:var(--ukl-ink); font-weight:600; }
.ukt-r em{ font:400 11px/1 var(--ukl-mono); font-style:normal; color:var(--ukl-muted); white-space:nowrap; }
.ukt-tag{ font:700 10px/1 var(--ukl-mono); padding:5px 7px; border-radius:6px; background:var(--ukl-green-soft); color:var(--ukl-green); white-space:nowrap; }
.ukt-tag.w{ background:var(--ukl-coral-soft); color:var(--ukl-coral-d); } .ukt-tag.b{ background:#E4E7FA; color:var(--ukl-ink); }
.ukt-kpis{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.ukt-kpis div{ border:1px solid #EEF0F8; border-radius:11px; padding:10px; }
.ukt-kpis small{ display:block; font:400 9.5px/1.2 var(--ukl-mono); color:var(--ukl-muted); text-transform:uppercase; }
.ukt-kpis b{ font:800 19px/1.3 var(--ukl-display); color:var(--ukl-ink); font-variant-numeric:tabular-nums; }
.ukt-bars{ display:flex; align-items:flex-end; gap:7px; height:120px; padding:6px 2px 0; border-bottom:1px solid var(--ukl-line); }
.ukt-bars i{ flex:1; border-radius:6px 6px 2px 2px; background:linear-gradient(180deg,#5163C9,var(--ukl-ink)); }
.ukt-bars i.pk{ background:linear-gradient(180deg,#FF8A96,var(--ukl-coral)); }
.ukt-hours{ display:flex; justify-content:space-between; font:400 9.5px/1 var(--ukl-mono); color:var(--ukl-muted); }
.ukt-cust{ display:grid; grid-template-columns:auto 1fr; gap:12px; align-items:center; padding:12px; border-radius:12px; background:linear-gradient(135deg,#EEF0FB,#FFF1F3); }
.ukt-cust > span{ width:44px; height:44px; border-radius:50%; background:var(--ukl-ink); color:#fff; display:grid; place-items:center; font:700 14px/1 var(--ukl-mono); }
.ukt-cust b{ display:block; color:var(--ukl-ink); }
.ukt-cust small{ color:var(--ukl-muted); font-size:11.5px; }
@media (max-width:700px){ .ukt-device{ border-radius:22px; padding:8px; } .ukt-screen{ border-radius:14px; } .ukt-tiles{ grid-template-columns:repeat(3,1fr); } .ukt-tile{ min-height:46px; font-size:9.5px; padding:6px; } .ukt-ticket h6,.ukt-top{ font-size:9px !important; } .ukt-top em{ display:none; } }

/* ---------- De un vistazo ---------- */
.ukabi-light-page .ukl-glance-sec .ukl-mock--tpvzoom{ margin-top:48px !important; }
.ukt-glance{ position:relative; max-width:980px; margin-inline:auto; }
.ukt-pin{ position:absolute; z-index:3; width:30px; height:30px; margin:-15px 0 0 -15px; border-radius:50%; background:var(--ukl-coral); color:#fff; font:700 12px/30px var(--ukl-mono); text-align:center;
  box-shadow:0 0 0 6px rgba(253,73,92,.22),0 8px 18px -6px rgba(253,73,92,.8); }
/* Leyenda (móvil) = las mismas cajas que en escritorio son los textos del zoom */
.ukabi-light-page .ukl-zoom-caps{ grid-template-columns:1fr 1fr; counter-reset:ukt; margin-top:30px !important; }
.ukabi-light-page .ukl-zoom-caps .content-box-column{ background:#fff; border:1px solid var(--ukl-line); border-radius:16px; padding:18px 18px 18px 60px !important; position:relative; }
.ukabi-light-page .ukl-zoom-caps .content-box-column::before{ counter-increment:ukt; content:counter(ukt); position:absolute; left:18px; top:18px; width:28px; height:28px; border-radius:50%; display:grid; place-items:center; font:700 12px/1 var(--ukl-mono); background:var(--ukl-coral-soft); color:var(--ukl-coral-d); }
.ukabi-light-page .ukl-zoom-caps .content-box-heading{ font:700 11px/1.2 var(--ukl-mono) !important; letter-spacing:.12em !important; text-transform:uppercase; color:var(--ukl-coral-d) !important; }
.ukabi-light-page .ukl-zoom-caps .content-container h4,
.ukt-cap h4{ margin:4px 0 8px !important; font:800 18px/1.2 var(--ukl-display) !important; letter-spacing:-.02em !important; color:var(--ukl-ink) !important; }
.ukabi-light-page .ukl-zoom-caps .content-container ul{ margin:0; padding:0; list-style:none; display:grid; gap:4px; font-size:14px; color:var(--ukl-muted); }
@media (max-width:600px){ .ukabi-light-page .ukl-zoom-caps{ grid-template-columns:1fr; } }
/* Con el zoom activo (escritorio) se ocultan la cabecera original y la leyenda */
.ukabi-light-page .ukl-glance-sec.ukl-zoom-on{ padding-top:0 !important; }
.ukabi-light-page .ukl-zoom-on .ukl-zoom-head,
.ukabi-light-page .ukl-zoom-on .ukl-zoom-caps,
.ukabi-light-page .ukl-zoom-on .ukt-pin{ display:none !important; }
.ukabi-light-page .ukl-zoom-on .ukl-mock--tpvzoom{ margin-top:0 !important; }
/* A todo el ancho de la ventana (sin la barra de scroll). flex-basis explícito: la regla general
   de las columnas (flex:0 0 100%) lo limitaría al ancho del contenido. */
.ukabi-light-page .ukl-mock--tpvzoom .ukt-zoom{ flex:0 0 auto !important; max-width:none !important;
  width:calc(100vw - var(--awb-scrollbar-width, 0px)) !important; margin-left:calc(50% - (100vw - var(--awb-scrollbar-width, 0px)) / 2) !important; }
.ukt-zoom{ position:relative; height:100vh; overflow:hidden; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:44px; padding:130px 0 40px; }
.ukt-zoom-bg{ position:absolute; inset:0; opacity:0; background:radial-gradient(120% 90% at 50% 40%,#1b2a72 0%,#0a1336 55%,#05091f 100%); }
.ukt-zoom-head{ position:relative; z-index:3; display:grid; gap:14px; justify-items:center; text-align:center; padding-inline:24px; }
.ukt-zoom-head .fusion-title-heading{ text-align:center !important; }
.ukt-zoom-cam{ position:relative; z-index:2; flex:none; width:min(980px,70vw,calc((100vh - 400px) * 1.54)); transform-origin:0 0; will-change:transform; }
.ukt-zoom-cam .ukt-device{ box-shadow:0 60px 140px -40px rgba(5,9,31,.7); }
.ukt-cap{ position:absolute; z-index:4; top:55%; width:min(430px,32vw); opacity:0; translate:0 -50%; pointer-events:none; padding:28px 30px; border-radius:22px;
  background:rgba(10,19,54,.9); -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,.14); box-shadow:0 30px 70px -24px rgba(5,9,31,.75); }
.ukt-cap--l{ left:5vw; }
.ukt-cap--r{ right:5vw; text-align:right; }
.ukt-cap-k{ display:block; font:700 11.5px/1 var(--ukl-mono); letter-spacing:.14em; text-transform:uppercase; color:var(--ukl-coral); }
.ukt-cap h4{ color:#fff !important; font-size:clamp(26px,2.8vw,40px) !important; line-height:1.08 !important; letter-spacing:-.035em !important; margin:14px 0 0 !important; }
.ukt-cap ul{ margin:0; padding:0; list-style:none; display:grid; gap:6px; color:rgba(255,255,255,.82); font-size:16px; order:3; }
.ukt-cap .content-container{ display:flex; flex-direction:column; }
.ukt-cap-ln{ display:block; height:2px; margin:20px 0 16px; background:linear-gradient(90deg,var(--ukl-coral),rgba(253,73,92,.15)); width:100%; transform-origin:0 50%; border-radius:2px; }
.ukt-cap--r .ukt-cap-ln{ background:linear-gradient(270deg,var(--ukl-coral),rgba(253,73,92,.15)); transform-origin:100% 50%; }
.ukt-cap .content-container ul{ margin-top:0; }
.ukt-zoom-prog{ position:absolute; z-index:4; bottom:5vh; left:50%; translate:-50% 0; display:flex; gap:8px; opacity:0; }
.ukt-zoom-prog i{ width:8px; height:8px; border-radius:50%; background:rgba(255,255,255,.3); transition:all .3s; }
.ukt-zoom-prog i.on{ width:26px; border-radius:9px; background:var(--ukl-coral); }
/* Datos clave */
.ukabi-light-page .ukl-facts{ grid-template-columns:repeat(6,1fr); gap:10px !important; margin-top:40px !important; }
.ukabi-light-page .ukl-facts .content-box-column{ background:#fff; border:1px solid var(--ukl-line); border-radius:16px; padding:16px 14px !important; text-align:center; }
.ukabi-light-page .ukl-sec .ukl-facts .content-box-heading{ font-size:14.5px !important; text-align:center !important; margin:0 0 4px !important; }
.ukabi-light-page .ukl-sec .ukl-facts .content-container{ font-size:12px !important; text-align:center !important; }
@media (max-width:980px){ .ukabi-light-page .ukl-facts{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:520px){ .ukabi-light-page .ukl-facts{ grid-template-columns:repeat(2,1fr); } }

/* ---------- Rejilla de funciones (bento) ---------- */
.ukabi-light-page .ukl-bento-sec .ukl-head + .fusion-layout-column{ margin-top:50px !important; }
.ukabi-light-page .ukl-bento{ grid-template-columns:repeat(6,1fr); grid-auto-rows:minmax(210px,auto); gap:16px !important; }
.ukabi-light-page .ukl-bento .content-box-column{ grid-column:span 2; border-radius:24px; background:#fff; border:1px solid var(--ukl-line); padding:26px !important; box-shadow:var(--ukl-shadow); overflow:hidden; }
.ukabi-light-page .ukl-bento .content-box-column:nth-child(1){ grid-column:span 4; grid-row:span 2; background:linear-gradient(160deg,#fff 30%,#F1F0FC); }
.ukabi-light-page .ukl-bento .content-box-column:nth-child(6){ background:linear-gradient(150deg,var(--ukl-ink),#26379E); border-color:var(--ukl-ink); }
.ukabi-light-page .ukl-sec .ukl-bento .content-box-column:nth-child(6) .content-box-heading{ color:#fff !important; }
.ukabi-light-page .ukl-sec .ukl-bento .content-box-column:nth-child(6) .content-container{ color:rgba(255,255,255,.72) !important; }
.ukabi-light-page .ukl-sec .ukl-bento .content-box-heading{ font-size:20px !important; letter-spacing:-.02em !important; }
.ukabi-light-page .ukl-bento .content-box-wrapper{ display:flex !important; flex-direction:column; height:100%; }
.ukt-bvis{ margin-top:auto; padding-top:16px; }
.ukt-minipos{ display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
.ukt-minipos span{ height:62px; border-radius:12px; background:#F4F5FB; border:1px solid #EEF0F8; }
.ukt-minipos span:nth-child(3n){ background:#FFF1F3; } .ukt-minipos span:nth-child(4n){ background:#EEF0FB; }
.ukt-minicash{ display:flex; justify-content:space-between; align-items:center; margin-top:10px; padding:12px 14px; border-radius:12px; background:var(--ukl-ink); color:#fff; font-weight:700; font-size:14px; }
.ukt-minicash b{ font:800 22px/1 var(--ukl-display); }
.ukt-stock{ display:grid; gap:8px; }
.ukt-stock span{ height:10px; border-radius:6px; background:#EEF0F8; overflow:hidden; }
.ukt-stock i{ display:block; height:100%; border-radius:6px; background:linear-gradient(90deg,var(--ukl-ink),#5163C9); }
.ukt-stock i.w{ background:var(--ukl-coral); }
.ukt-spark{ height:70px; } .ukt-spark svg{ width:100%; height:100%; display:block; }
.ukt-paylogos{ display:flex; gap:8px; flex-wrap:wrap; }
.ukt-paylogos span{ font:700 11px/1 var(--ukl-mono); padding:9px 11px; border-radius:9px; border:1px solid var(--ukl-line); color:var(--ukl-ink); background:#F8F9FD; }
.ukt-cal{ display:grid; grid-template-columns:repeat(7,1fr); gap:5px; }
.ukt-cal i{ aspect-ratio:1; border-radius:6px; background:#F4F5FB; }
.ukt-cal i.on{ background:var(--ukl-coral-soft); box-shadow:inset 0 0 0 1px #FFC0C8; } .ukt-cal i.on2{ background:#E4E7FA; }
.ukt-stores{ display:flex; gap:10px; }
.ukt-stores span{ flex:1; border-radius:12px; padding:10px; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.18); font:700 10.5px/1.4 var(--ukl-mono); color:#fff; }
.ukt-stores b{ display:block; font:800 16px/1.2 var(--ukl-display); }
@media (max-width:980px){ .ukabi-light-page .ukl-bento{ grid-template-columns:1fr 1fr; } .ukabi-light-page .ukl-bento .content-box-column,.ukabi-light-page .ukl-bento .content-box-column:nth-child(1){ grid-column:span 1; grid-row:auto; } .ukabi-light-page .ukl-bento .content-box-column:nth-child(1){ grid-column:span 2; } }
@media (max-width:600px){ .ukabi-light-page .ukl-bento{ grid-template-columns:1fr; } .ukabi-light-page .ukl-bento .content-box-column:nth-child(1){ grid-column:span 1; } }

/* ---------- Capítulo ---------- */
.ukabi-light-page .ukl-chapter-sec{ padding-top:70px !important; padding-bottom:10px !important; }
.ukabi-light-page .ukl-chapter-sec .fusion-column-wrapper{ text-align:center; }
.ukabi-light-page .ukl-chapter .fusion-title-heading{ text-align:center !important; font-size:clamp(46px,8vw,120px) !important; letter-spacing:-.05em !important; line-height:.98 !important;
  background:linear-gradient(180deg,var(--ukl-ink) 40%,rgba(15,32,108,.3)); -webkit-background-clip:text; background-clip:text; color:transparent !important; padding-bottom:.06em; }

/* ---------- Recorrido (pantalla fija que cambia) ---------- */
.ukabi-light-page .ukl-story-sec{ padding-top:20px !important; }
.ukabi-light-page .ukl-story-sec .fusion-builder-row-inner{ align-items:stretch !important; }
.ukabi-light-page .ukl-story-steps{ display:block !important; }
.ukabi-light-page .ukl-story-steps .content-box-column{ min-height:78vh; display:flex !important; align-items:center; opacity:.28; transition:opacity .5s; }
.ukabi-light-page .ukl-story-steps .content-box-column.is-on{ opacity:1; }
.ukabi-light-page .ukl-sec .ukl-story-steps .content-box-heading{ font:700 12px/1 var(--ukl-mono) !important; letter-spacing:.14em !important; text-transform:uppercase; color:var(--ukl-coral-d) !important; margin-bottom:14px !important; }
.ukabi-light-page .ukl-story-steps .content-container h3{ margin:0 0 12px !important; font:800 clamp(28px,3.4vw,42px)/1.08 var(--ukl-display) !important; letter-spacing:-.035em !important; color:var(--ukl-ink) !important; }
.ukabi-light-page .ukl-story-steps .content-container p{ margin:0 0 14px; font-size:17px; color:var(--ukl-muted); }
.ukabi-light-page .ukl-story-steps .content-container ul{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:8px; }
.ukabi-light-page .ukl-story-steps .content-container li{ font:700 11px/1 var(--ukl-mono); color:var(--ukl-ink); background:#fff; border:1px solid var(--ukl-line); border-radius:999px; padding:8px 11px; }
.ukabi-light-page .ukl-mock--tpvstory > .fusion-column-wrapper{ display:block !important; height:100%; }
.ukt-story-dev{ position:sticky; top:150px; padding-bottom:40px; }
.ukt-story-dev .ukt-device{ max-width:640px; }
.ukt-dots{ display:flex; gap:8px; justify-content:center; margin-top:22px; }
.ukt-dots i{ width:8px; height:8px; border-radius:50%; background:var(--ukl-line); transition:all .35s; }
.ukt-dots i.on{ width:26px; border-radius:9px; background:var(--ukl-coral); }
@media (max-width:900px){
  .ukabi-light-page .ukl-story-sec .fusion-builder-row-inner{ flex-direction:column-reverse; }
  .ukabi-light-page .ukl-mock--tpvstory{ position:sticky; top:110px; z-index:3; }
  .ukt-story-dev{ position:static; padding-bottom:0; } .ukt-story-dev .ukt-device{ max-width:420px; }
  .ukabi-light-page .ukl-story-steps .content-box-column{ min-height:60vh; background:linear-gradient(180deg,transparent,var(--ukl-bg) 25%); } }

/* ---------- Sectores (Tabs con visual) ---------- */
.ukt-svis{ border-radius:20px; background:#F8F9FD; border:1px solid var(--ukl-line); padding:18px; }
.ukt-tables{ display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.ukt-tables span{ aspect-ratio:1; border-radius:14px; display:grid; place-items:center; font:700 12px/1 var(--ukl-mono); background:#fff; border:1px solid var(--ukl-line); color:var(--ukl-ink); }
.ukt-tables span.busy{ background:var(--ukl-coral-soft); border-color:#FFC0C8; color:var(--ukl-coral-d); }
.ukt-tables span.bill{ background:#E4E7FA; border-color:#C9CFF3; }
.ukt-label{ display:grid; grid-template-columns:1fr auto; gap:6px 14px; padding:16px; border-radius:14px; background:#fff; border:1px dashed var(--ukl-ink); font-size:13px; }
.ukt-label b{ color:var(--ukl-ink); font-size:16px; }
.ukt-label i{ grid-column:1/-1; height:44px; background:repeating-linear-gradient(90deg,var(--ukl-ink) 0 2px,transparent 2px 4px,var(--ukl-ink) 4px 5px,transparent 5px 8px); }
.ukt-scale{ display:grid; gap:10px; justify-items:center; padding:10px; }
.ukt-scale div{ font:700 34px/1 var(--ukl-mono); color:var(--ukl-ink); background:#E9F7F0; border-radius:12px; padding:14px 22px; }
.ukt-scale small{ color:var(--ukl-muted); font:400 11px/1.4 var(--ukl-mono); text-align:center; }
.ukt-agenda{ display:grid; gap:7px; }
.ukt-agenda div{ display:grid; grid-template-columns:52px 1fr; gap:10px; align-items:center; font-size:12.5px; }
.ukt-agenda em{ font:700 11px/1 var(--ukl-mono); font-style:normal; color:var(--ukl-muted); }
.ukt-agenda span{ padding:9px 11px; border-radius:9px; background:#fff; border:1px solid var(--ukl-line); color:var(--ukl-ink); font-weight:600; }
.ukt-agenda span.on{ background:var(--ukl-coral-soft); border-color:#FFC0C8; }

/* ---------- Vexia Chat (bloque destacado) ---------- */
.ukabi-light-page .ukl-vexiachat-sec{ padding-top:20px !important; }
.ukabi-light-page .ukl-vxchat > .fusion-column-wrapper{ position:relative; overflow:hidden; border-radius:32px; padding:60px !important; background:linear-gradient(135deg,#0F206C,#26379E 55%,#3B2F8F); }
.ukabi-light-page .ukl-vxchat > .fusion-column-wrapper::before{ content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(520px 300px at 100% 0%,rgba(253,73,92,.45),transparent 70%); }
.ukabi-light-page .ukl-vxchat .fusion-builder-row-inner{ position:relative; align-items:center; }
.ukabi-light-page .ukl-vxchat .ukl-pill p{ background:rgba(255,255,255,.1); color:#fff; border-color:rgba(255,255,255,.25); }
.ukabi-light-page .ukl-vxchat .ukl-title .fusion-title-heading{ color:#fff !important; font-size:clamp(30px,3.8vw,46px) !important; }
.ukabi-light-page .ukl-vxchat .ukl-lead p{ color:#C9CEF0 !important; font-size:17px !important; }
.ukabi-light-page .ukl-vx-cards{ grid-template-columns:1fr 1fr; gap:12px !important; }
.ukabi-light-page .ukl-vx-cards .content-box-column{ background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.18); border-radius:16px; padding:16px !important; }
.ukabi-light-page .ukl-sec .ukl-vx-cards .content-box-heading{ color:#fff !important; font-size:15px !important; }
.ukabi-light-page .ukl-sec .ukl-vx-cards .content-container{ color:#C9CEF0 !important; font-size:13px !important; }
.ukt-wa{ display:grid; justify-items:center; gap:14px; }
.ukt-phone{ width:300px; max-width:100%; border-radius:40px; background:#0b0f26; padding:12px; box-shadow:0 40px 80px -30px rgba(0,0,0,.6),inset 0 0 0 1px rgba(255,255,255,.1); }
.ukt-phone-in{ border-radius:30px; background:#ECE5DD; overflow:hidden; min-height:470px; display:flex; flex-direction:column; }
.ukt-wa-h{ background:#075E54; color:#fff; padding:14px 16px; display:flex; align-items:center; gap:10px; font-size:13px; }
.ukt-wa-h i{ width:30px; height:30px; border-radius:50%; background:linear-gradient(135deg,var(--ukl-coral),#B04BD8); display:grid; place-items:center; font:700 11px/1 var(--ukl-mono); font-style:normal; }
.ukt-wa-h b{ display:block; } .ukt-wa-h small{ display:block; opacity:.75; font-size:11px; }
.ukt-wa-body{ flex:1; padding:14px 12px; display:flex; flex-direction:column; gap:8px; }
.ukt-bub{ max-width:84%; padding:8px 11px; border-radius:12px; font-size:12.5px; line-height:1.45; color:#111; box-shadow:0 1px 1px rgba(0,0,0,.08); white-space:pre-line; transition:opacity .4s,transform .4s; }
.ukt-bub.in{ align-self:flex-start; background:#fff; border-top-left-radius:3px; }
.ukt-bub.out{ align-self:flex-end; background:#DCF8C6; border-top-right-radius:3px; }
.ukt-bub.pre{ opacity:0; transform:translateY(8px); }
.ukt-wa-tabs{ display:flex; gap:6px; }
.ukt-wa-tabs button{ font:600 12.5px/1 var(--ukl-display); color:#fff; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.25); border-radius:999px; padding:9px 13px; cursor:pointer; }
.ukt-wa-tabs button[aria-selected="true"]{ background:#fff; color:var(--ukl-ink); }
.ukt-wa-tabs button:focus-visible{ outline:3px solid var(--ukl-coral); outline-offset:3px; }
@media (max-width:900px){ .ukabi-light-page .ukl-vxchat > .fusion-column-wrapper{ padding:30px 22px !important; } .ukabi-light-page .ukl-vx-cards{ grid-template-columns:1fr; } }

/* ---------- Asesoría ---------- */
.ukabi-light-page .ukl-advisor-sec .ukl-mock--flow{ margin-top:50px !important; }
.ukt-flow{ display:grid; grid-template-columns:1fr auto 1fr auto 1fr; align-items:center; width:100%; }
.ukt-node{ background:#fff; border:1px solid var(--ukl-line); border-radius:20px; padding:22px; text-align:center; box-shadow:var(--ukl-shadow); }
.ukt-node span{ width:48px; height:48px; border-radius:14px; margin:0 auto 12px; display:grid; place-items:center; font:800 14px/1 var(--ukl-mono); background:var(--ukl-bg-2); color:var(--ukl-ink); }
.ukt-node.own span{ background:var(--ukl-coral-soft); color:var(--ukl-coral-d); }
.ukt-node b{ display:block; color:var(--ukl-ink); font-size:17px; }
.ukt-node small{ color:var(--ukl-muted); font-size:13px; }
.ukt-link{ position:relative; width:90px; height:2px; background:var(--ukl-line); }
.ukt-link i{ position:absolute; top:-3px; left:0; width:8px; height:8px; border-radius:50%; background:var(--ukl-coral); box-shadow:0 0 10px 2px rgba(253,73,92,.6); animation:ukt-travel 2.4s linear infinite; }
.ukt-link i:nth-child(2){ animation-delay:1.2s; }
@keyframes ukt-travel{ from{ left:0; opacity:0; } 15%{ opacity:1; } 85%{ opacity:1; } to{ left:calc(100% - 8px); opacity:0; } }
.ukabi-light-page .ukl-card{ margin-top:40px !important; }
.ukabi-light-page .ukl-card > .fusion-column-wrapper{ height:100%; align-content:flex-start; background:#fff !important; border:1px solid var(--ukl-line); border-radius:22px; padding:28px !important; row-gap:12px; }
.ukabi-light-page .ukl-card .ukl-title h3.fusion-title-heading{ font-size:20px !important; letter-spacing:-.02em !important; }
@media (max-width:900px){ .ukt-flow{ grid-template-columns:1fr; gap:10px; } .ukt-link{ width:2px; height:40px; justify-self:center; } .ukt-link i{ animation-name:ukt-travel-v; } }
@keyframes ukt-travel-v{ from{ top:0; left:-3px; opacity:0; } 15%{ opacity:1; } 85%{ opacity:1; } to{ top:calc(100% - 8px); left:-3px; opacity:0; } }

/* ---------- Cifras y normativa ---------- */
.ukabi-light-page .ukl-law2-sec{ padding-top:20px !important; }
.ukabi-light-page .ukl-law2-head{ margin-top:90px !important; }
.ukabi-light-page .ukl-lawbadges{ display:flex !important; flex-wrap:wrap; justify-content:center; gap:10px; margin:36px 0 0 !important; padding:0 !important; }
.ukabi-light-page .ukl-lawbadges .fusion-li-item{ margin:0 !important; display:inline-flex !important; align-items:center; gap:9px; padding:14px 18px !important; background:#fff; border:1px solid var(--ukl-line); border-radius:14px; box-shadow:var(--ukl-shadow); }
.ukabi-light-page .ukl-lawbadges .icon-wrapper{ display:none !important; }
.ukabi-light-page .ukl-lawbadges .fusion-li-item::before{ content:"✓"; display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:var(--ukl-green-soft); color:var(--ukl-green); font-size:13px; }
.ukabi-light-page .ukl-lawbadges .fusion-li-item-content{ margin:0 !important; font-weight:700; font-size:15px; color:var(--ukl-ink); }

/* ---------- Planes (reutiliza .ukl-vcard) ---------- */
.ukabi-light-page .ukl-plans-sec .ukl-plan{ margin-top:50px !important; }
.ukabi-light-page .ukl-plans-sec > .fusion-row{ max-width:960px; }
.ukabi-light-page .ukl-price p{ font:800 40px/1 var(--ukl-display); color:var(--ukl-ink); letter-spacing:-.04em; }
.ukabi-light-page .ukl-plan .ukl-vlist{ margin-bottom:6px !important; }

/* ---------- Recursos ---------- */
.ukabi-light-page .ukl-res-sec .ukl-head + .fusion-layout-column{ margin-top:44px !important; }
.ukabi-light-page .ukl-sec .ukl-res{ display:flex !important; gap:14px; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:12px !important; }
.ukabi-light-page .ukl-res .content-box-column{ flex:0 0 260px; scroll-snap-align:start; border-radius:20px; background:#fff; border:1px solid var(--ukl-line); overflow:hidden; padding:0 !important; }
.ukabi-light-page .ukl-res .content-box-column::before{ content:""; display:block; height:130px; background:linear-gradient(135deg,#EEF0FB,#FFF1F3) ; }
.ukabi-light-page .ukl-res .content-box-column::after{ content:""; position:absolute; left:50%; top:65px; width:46px; height:46px; border-radius:50%; translate:-50% -50%;
  background:var(--ukl-coral) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 6l10 6-10 6z' fill='%23fff'/%3E%3C/svg%3E") center/20px no-repeat; box-shadow:0 10px 24px -8px rgba(253,73,92,.7); }
.ukabi-light-page .ukl-res .content-box-column{ position:relative; }
.ukabi-light-page .ukl-res .content-box-wrapper{ padding:16px !important; }
.ukabi-light-page .ukl-sec .ukl-res .content-box-heading{ font-size:14.5px !important; line-height:1.4 !important; font-weight:600 !important; margin:0 !important; }

/* ---------- Cierre ---------- */
.ukabi-light-page .ukl-final .ukl-tel p{ margin-top:10px; font:700 13px/1 var(--ukl-mono); color:rgba(255,255,255,.7); text-align:center; }

@media (prefers-reduced-motion:reduce){ .ukt-tap,.ukt-new,.ukt-link i{ animation:none !important; } .ukt-scr{ transition:none; } .ukabi-light-page .ukl-story-steps .content-box-column{ opacity:1; } }

/* Pantalla real de TPV Cloud (cabecera y «De un vistazo»): el marco se adapta a la proporción de la captura */
.ukt-device--real{ aspect-ratio:auto; padding:12px; border-radius:28px; }
.ukt-device--real .ukt-screen{ height:auto; border-radius:16px; }
.ukt-real{ display:block; width:100%; height:auto; }
.ukt-zoom-cam:has(.ukt-device--real){ width:min(1080px,72vw,calc((100vh - 380px) * 2.05)); }
@media (max-width:700px){ .ukt-device--real{ padding:6px; border-radius:16px; } .ukt-device--real .ukt-screen{ border-radius:10px; } }
