/* ═══════════════════════════════════════════════════════════════════════
   Plataforma para empresas de stands × iaBusiness · presentación multipágina
   Sistema común: tokens, cabecera, componentes y utilidades.
   Lo específico de cada página va en pag/<pagina>.css (ver GUIA.md).
   ═══════════════════════════════════════════════════════════════════════ */
:root{
  /* fondo: noche teal profunda */
  --bg:#0B1218; --bg-2:#111C24; --bg-3:#060B0F; --panel:#15232D; --panel-2:#1B2D39;
  --line:rgba(162,141,248,.10); --line-2:rgba(162,141,248,.20);
  --glass:rgba(255,255,255,.04); --glass-2:rgba(255,255,255,.075);
  --ink:#F5F3F1; --ink-2:#C3CDD4; --ink-3:#8A99A5;
  /* color de marca del cliente (marca.json → aplicar_marca.py; los nombres --tea* se heredan de la versión anterior) */
  --tea:#7C5CFF; --tea-2:#967BFF; --tea-3:#BFADFF; --tea-d:#3B11F0;
  /* acentos vivos (con moderación) */
  --cor:#22D3EE; --cor-2:#7CE9F8;   /* coral: energía, «antes», producción */
  --amb:#B6F23A;                     /* ámbar: IA, dirección */
  --ok:#3FD99A; --bad:#FF5C6C;
  /* grupos de módulos */
  --g-vender:var(--tea-2); --g-producir:var(--cor); --g-dirigir:var(--amb);
  /* secciones claras */
  --light:#F2F1F5; --l-ink:#1D2A33; --l-ink2:#495A67; --l-ink3:#7C8B97; --l-line:#DAE2E8;
  /* degradados */
  --gr-tea:linear-gradient(100deg,#7C5CFF 0%,#BFADFF 100%);
  --gr-cor:linear-gradient(100deg,#22D3EE 0%,#B6F23A 100%);
  --gr-mix:linear-gradient(100deg,#967BFF 0%,#BFADFF 45%,#B6F23A 100%);
  /* tipografía */
  --display:'Mulish','Lato',system-ui,sans-serif;
  --sans:'Lato',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,Menlo,Consolas,monospace;
  --ease:cubic-bezier(.2,.8,.2,1);
  --cab-h:64px;
  /* pantallas de la plataforma (marco de app, claras) */
  --a-ink:#131C24; --a-ink2:#4C5C69; --a-ink3:#8C99A4; --a-line:#E3E9ED; --a-side:#F2F1F5; --a-bg:#FAFBFC;
  --a-tea:#532FF2; --a-cor:#0F94AC; --a-amb:#588E0D; --a-ok:#16A06A; --a-bad:#D63B4D;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;color-scheme:dark}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
a{color:inherit}
img,svg,video,canvas{display:block;max-width:100%}
button{font:inherit;color:inherit}
p{margin:0 0 1em}
h1,h2,h3,h4,h5,h6{margin:0;font-weight:700;text-wrap:balance}
ul,ol{margin:0;padding:0}
::selection{background:var(--tea-2);color:#0A0F14}
:focus-visible{outline:2px solid var(--tea-3);outline-offset:3px;border-radius:8px}
.wrap{max-width:1240px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}
.wrap.estrecho{max-width:980px}
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.salto{position:fixed;left:16px;top:-60px;z-index:300;background:var(--tea-2);color:#0A0F14;padding:10px 16px;border-radius:10px;font-weight:700;text-decoration:none;transition:top .2s}
.salto:focus{top:12px}
.ic{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
section[id]{scroll-margin-top:calc(var(--cab-h) + 8px)}

/* ── tipografía ─────────────────────────────────────────────────────── */
.gt{background:var(--gr-tea);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.gc{background:var(--gr-cor);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.gm{background:var(--gr-mix);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.h1{font-family:var(--display);font-weight:800;font-size:clamp(38px,5vw,74px);line-height:1.02;letter-spacing:-.025em}
.h2{font-family:var(--display);font-weight:800;font-size:clamp(32px,4.4vw,62px);line-height:1.05;letter-spacing:-.022em}
.h3{font-family:var(--display);font-weight:600;font-size:clamp(21px,2vw,27px);line-height:1.15;letter-spacing:-.02em}
.lead{font-size:clamp(17px,1.45vw,20px);line-height:1.55;color:var(--ink-2);max-width:56ch}
.lead b,.lead strong{color:var(--ink);font-weight:600}
.ey{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);margin:0 0 18px}
.ey i{width:8px;height:8px;border-radius:50%;background:var(--c,var(--tea-2));box-shadow:0 0 12px var(--c,var(--tea-2))}
.ey b{color:var(--c,var(--tea-2));font-weight:600}
.mono{font-family:var(--mono)}
/* cabecera de sección */
.st{max-width:900px;margin:0 0 clamp(36px,5vw,60px)}
.st.centro{text-align:center;margin-left:auto;margin-right:auto}
.st .lead{margin-top:18px}
.st.centro .lead{margin-left:auto;margin-right:auto}

/* ── botones ────────────────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 22px;border-radius:12px;font-weight:600;font-size:15.5px;line-height:1.2;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .25s var(--ease),box-shadow .25s,background-color .25s,border-color .25s,color .25s;white-space:nowrap}
.btn .ic{width:18px;height:18px}
.btn-tea{background:var(--tea-2);color:#0B1115;box-shadow:0 10px 30px -12px rgba(150,123,255,.7)}
.btn-tea:hover{transform:translateY(-2px);background:#7B5EF4;box-shadow:0 16px 40px -14px rgba(150,123,255,.9)}
.btn-cor{background:var(--cor);color:#fff;box-shadow:0 10px 30px -12px rgba(34,211,238,.7)}
.btn-cor:hover{transform:translateY(-2px);background:#FF7D60}
.btn-borde{background:var(--glass);border-color:var(--line-2);color:var(--ink)}
.btn-borde:hover{border-color:var(--tea-2);transform:translateY(-2px)}
.btn-sm{padding:9px 14px;font-size:14px;border-radius:10px}
.btns{display:flex;flex-wrap:wrap;gap:12px}
@media (max-width:560px){.btns .btn{flex:1 1 100%}}

/* ═══════════════ CABECERA FIJA + ÍNDICE ═══════════════════════════════ */
.cab{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--cab-h);background:rgba(11,18,24,.72);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);border-bottom:1px solid var(--line);transition:background-color .3s}
.cab.bajado{background:rgba(9,13,17,.9)}
.cab-in{height:100%;display:flex;align-items:center;gap:14px;max-width:1680px;margin:0 auto;padding:0 clamp(14px,2.4vw,34px)}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none;white-space:nowrap}
.marca .ia{font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:-.03em}
.marca .ia em{font-style:normal;color:var(--tea-2)}
.marca .x{color:var(--ink-3);font-size:13px}
.marca .dx{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.24em;color:var(--tea-2);overflow:hidden;text-overflow:ellipsis;max-width:min(30vw,340px)}
.cab-ind{display:flex;align-items:center;gap:10px;min-width:0;padding:7px 12px 7px 8px;border-radius:10px;border:1px solid var(--line);background:var(--glass);cursor:pointer;transition:border-color .2s,background-color .2s}
.cab-ind:hover,.cab-ind[aria-expanded="true"]{border-color:var(--line-2);background:var(--glass-2)}
.cab-ind .n{font-family:var(--mono);font-size:12px;font-weight:600;color:#0B1115;background:var(--c,var(--tea-2));border-radius:6px;padding:3px 6px;line-height:1}
.cab-ind .t{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cab-ind .n i{font-style:normal;opacity:.55;margin-left:1px}
.cab-ind .ic{width:16px;height:16px;color:var(--ink-3);transition:transform .3s}
.cab-ind[aria-expanded="true"] .ic{transform:rotate(180deg)}
.serie{display:flex;align-items:center;gap:4px;margin-left:auto}
.serie a{position:relative;display:block;width:18px;height:22px;text-decoration:none}
.serie a::before{content:"";position:absolute;left:0;right:0;top:9px;height:4px;border-radius:4px;background:rgba(255,255,255,.14);transition:background-color .2s,height .2s,top .2s}
.serie a:hover::before{background:rgba(255,255,255,.35)}
.serie a.visto::before{background:color-mix(in srgb,var(--c) 45%,transparent)}
.serie a.aqui{width:30px}
.serie a.aqui::before{background:var(--c);height:6px;top:8px;box-shadow:0 0 10px var(--c)}
.serie a span{position:absolute;top:30px;left:50%;transform:translate(-50%,-4px);background:#17222B;border:1px solid var(--line-2);color:var(--ink);font-size:12.5px;font-weight:500;white-space:nowrap;padding:5px 9px;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s}
.serie a:hover span,.serie a:focus-visible span{opacity:1;transform:translate(-50%,0)}
.cab-der{display:flex;align-items:center;gap:8px;flex:none}
.cab-flecha{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1px solid var(--line);color:var(--ink-2);text-decoration:none;transition:border-color .2s,color .2s}
.cab-flecha:hover{border-color:var(--tea-2);color:var(--ink)}
.cab-flecha .ic{width:17px;height:17px}
.cab-flecha.off{opacity:.3;pointer-events:none}
.cab-prog{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none}
.cab-prog i{display:block;height:100%;transform-origin:left;transform:scaleX(var(--sp,0));background:linear-gradient(90deg,var(--tea),var(--tea-3),var(--amb))}
/* desplegables por sección (sustituyen a la serie de puntos) */
.cab-grupos{display:flex;align-items:center;gap:6px;margin-left:auto}
.cg{position:relative}
.cg-btn{display:flex;align-items:center;gap:8px;padding:8px 11px 8px 12px;border-radius:10px;border:1px solid var(--line);background:var(--glass);font-size:14px;font-weight:600;color:var(--ink);cursor:pointer;white-space:nowrap;transition:border-color .2s,background-color .2s}
.cg-btn i{width:8px;height:8px;border-radius:50%;background:var(--c);box-shadow:0 0 8px var(--c);flex:none}
.cg-btn .ic{width:15px;height:15px;color:var(--ink-3);transition:transform .25s}
.cg-btn:hover,.cg.abierto .cg-btn{border-color:color-mix(in srgb,var(--c) 55%,transparent);background:var(--glass-2)}
.cg-btn.aqui{border-color:color-mix(in srgb,var(--c) 60%,transparent);background:color-mix(in srgb,var(--c) 13%,transparent)}
.cg.abierto .cg-btn .ic{transform:rotate(180deg)}
.cg-menu{position:absolute;top:calc(100% + 10px);left:50%;width:min(380px,92vw);padding:8px;border-radius:16px;background:rgba(13,20,26,.98);border:1px solid var(--line-2);box-shadow:0 22px 60px rgba(0,0,0,.55);opacity:0;visibility:hidden;transform:translate(-50%,-6px);transition:opacity .18s,transform .22s var(--ease),visibility 0s .22s;z-index:120}
.cg-menu::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.cg.abierto .cg-menu{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .18s,transform .22s var(--ease)}
.cg-tit{margin:4px 8px 6px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--c)}
.cg-tit span{color:var(--ink-3);text-transform:none;letter-spacing:0;font-family:var(--sans);font-size:12px}
.cg-menu .ind-it{padding:9px 10px}
.cg-menu .ind-it .ico{width:34px;height:34px}
@media (max-width:1380px){.cab-ind .t{display:none}}
@media (max-width:1120px){.cab-grupos{display:none}.cab-ind .t{display:inline}.cab-der{margin-left:auto}}
@media (max-width:760px){.cab-flecha,.cab-der .btn{display:none}.cab-in{gap:10px}.cab-ind{margin-left:auto;max-width:60vw}}
@media (max-width:420px){.marca .x,.marca .dx{display:none}}

.indice{position:fixed;left:0;right:0;top:var(--cab-h);z-index:99;max-height:calc(100vh - var(--cab-h));max-height:calc(100dvh - var(--cab-h));overflow:auto;background:rgba(9,14,18,.97);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--line-2);box-shadow:0 40px 80px -30px rgba(0,0,0,.8);opacity:0;transform:translateY(-10px);visibility:hidden;transition:opacity .25s,transform .3s var(--ease),visibility 0s .3s}
.indice.abierto{opacity:1;transform:none;visibility:visible;transition:opacity .25s,transform .3s var(--ease)}
.ind-in{padding-top:26px;padding-bottom:30px}
.ind-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.ind-top p{margin:0;font-size:14px;color:var(--ink-3)}
.ind-grupos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ind-g h4{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--c);font-weight:600;margin:0 0 10px;display:flex;align-items:center;gap:8px}
.ind-g h4::before{content:"";width:14px;height:2px;background:var(--c)}
.ind-it{display:grid;grid-template-columns:auto 1fr;gap:2px 12px;align-items:center;padding:10px 12px;border-radius:12px;text-decoration:none;border:1px solid transparent;transition:background-color .2s,border-color .2s}
.ind-it:hover{background:var(--glass-2);border-color:var(--line)}
.ind-it.aqui{background:color-mix(in srgb,var(--c) 12%,transparent);border-color:color-mix(in srgb,var(--c) 40%,transparent)}
.ind-it .ico{grid-row:span 2;width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--c) 16%,transparent);color:var(--c)}
.ind-it b{font-size:15px;font-weight:600;line-height:1.25}
.ind-it b small{font-family:var(--mono);font-size:11px;color:var(--ink-3);font-weight:500;margin-right:6px}
.ind-it span{font-size:13px;color:var(--ink-3);line-height:1.35}
.ind-it.inicio{display:inline-grid;margin-bottom:6px}
@media (max-width:900px){.ind-grupos{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.ind-grupos{grid-template-columns:1fr}.ind-it span{display:none}.ind-it .ico{grid-row:auto;width:32px;height:32px}}

/* ── aparición al hacer scroll ──────────────────────────────────────── */
.js .rv{opacity:0;transform:translateY(26px);transition:opacity .85s var(--ease),transform .85s var(--ease)}
.js .rv.in{opacity:1;transform:none}
.js .rv.d1{transition-delay:.08s}.js .rv.d2{transition-delay:.16s}.js .rv.d3{transition-delay:.24s}.js .rv.d4{transition-delay:.32s}.js .rv.d5{transition-delay:.4s}
@media (prefers-reduced-motion:reduce){.js .rv{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* ── secciones ──────────────────────────────────────────────────────── */
.sec{position:relative;padding:clamp(76px,9vw,128px) 0}
.sec.alt{background:var(--bg-2)}
.sec.hondo{background:var(--bg-3)}
.sec.brillo::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(55% 45% at 50% 0%,rgba(124,92,255,.16),transparent 70%)}
.sec.claro{background:var(--light);color:var(--l-ink);color-scheme:light}
.sec.claro .lead{color:var(--l-ink2)}
.sec.claro .lead b{color:var(--l-ink)}
.sec.claro .ey{color:var(--l-ink2)}
.sec.claro .ey b{color:var(--tea-d)}
.sec.claro .gt{background:linear-gradient(100deg,#4419F5,#7C5CFF);-webkit-background-clip:text;background-clip:text}
.sec>.wrap{position:relative}
.rejilla{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(60% 60% at 50% 40%,#000,transparent 80%);mask-image:radial-gradient(60% 60% at 50% 40%,#000,transparent 80%);opacity:.6}

/* ═══════════════ HÉROE DE PÁGINA ═══════════════════════════════════ */
.heroe{position:relative;padding:calc(var(--cab-h) + clamp(36px,6vw,80px)) 0 clamp(56px,7vw,96px);overflow:hidden;isolation:isolate}
.heroe-fondo{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.heroe-fondo::before{content:"";position:absolute;width:70vmax;height:70vmax;left:-22vmax;top:-34vmax;border-radius:50%;background:radial-gradient(circle,rgba(124,92,255,.38),transparent 62%)}
.heroe-fondo::after{content:"";position:absolute;width:46vmax;height:46vmax;right:-16vmax;bottom:-24vmax;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c,var(--cor)) 26%,transparent),transparent 64%)}
.heroe-fondo .rejilla{-webkit-mask-image:radial-gradient(70% 70% at 60% 30%,#000,transparent 80%);mask-image:radial-gradient(70% 70% at 60% 30%,#000,transparent 80%)}
.heroe-in{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:center}
.heroe-txt .h1{margin:0 0 22px}
.heroe-txt .lead{margin:0 0 26px}
.heroe-txt .btns{margin-top:28px}
.chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.chips li{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:var(--glass);border:1px solid var(--line);font-size:13.5px;color:var(--ink-2)}
.chips li .ic{width:15px;height:15px;color:var(--c,var(--tea-2))}
.heroe-vis{position:relative;min-height:300px}
@media (max-width:920px){.heroe-in{grid-template-columns:1fr}.heroe-vis{max-width:560px;width:100%;margin:0 auto}}
/* visual genérico del héroe: icono del módulo en órbita (se sustituye por la animación de cada página) */
.orbita{position:relative;aspect-ratio:1;max-width:460px;margin:0 auto;display:grid;place-items:center}
.orbita i{position:absolute;inset:var(--in,0);border-radius:50%;border:1px solid var(--line-2)}
.orbita i:nth-child(1){--in:0;border-style:dashed;animation:gira 60s linear infinite}
.orbita i:nth-child(2){--in:13%;animation:gira 40s linear infinite reverse}
.orbita i:nth-child(3){--in:26%;border-color:color-mix(in srgb,var(--c,var(--tea-2)) 45%,transparent)}
.orbita i::after{content:"";position:absolute;top:-5px;left:50%;width:10px;height:10px;border-radius:50%;background:var(--c,var(--tea-2));box-shadow:0 0 14px var(--c,var(--tea-2))}
.orbita i:nth-child(3)::after{display:none}
.orbita .nucleo{width:34%;aspect-ratio:1;border-radius:28%;display:grid;place-items:center;background:linear-gradient(145deg,color-mix(in srgb,var(--c,var(--tea-2)) 30%,#15232D),#111C24);border:1px solid color-mix(in srgb,var(--c,var(--tea-2)) 50%,transparent);box-shadow:0 30px 80px -30px var(--c,var(--tea-2)),inset 0 1px 0 rgba(255,255,255,.12);color:var(--c,var(--tea-2))}
.orbita .nucleo .ic{width:44%;height:44%;stroke-width:1.4}
.orbita .sat{position:absolute;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:12px;background:rgba(21,35,45,.9);border:1px solid var(--line-2);font-size:13px;font-weight:500;white-space:nowrap;box-shadow:0 14px 30px -14px rgba(0,0,0,.7);animation:flota 6s ease-in-out infinite}
.orbita .sat .ic{width:15px;height:15px;color:var(--c,var(--tea-2))}
.orbita .sat:nth-of-type(1){top:8%;left:0}
.orbita .sat:nth-of-type(2){top:44%;right:-4%;animation-delay:-2s}
.orbita .sat:nth-of-type(3){bottom:6%;left:8%;animation-delay:-4s}
@keyframes gira{to{transform:rotate(360deg)}}
@keyframes flota{50%{transform:translateY(-8px)}}
@media (max-width:560px){.orbita .sat{font-size:12px;padding:6px 9px}.orbita .sat:nth-of-type(2){right:0}}

/* ── chip «módulo que se añade o se quita» ──────────────────────────── */
.chip-mod{display:inline-flex;align-items:center;gap:12px;padding:8px 14px 8px 8px;border-radius:999px;background:var(--glass);border:1px solid var(--line-2);cursor:pointer;text-align:left;transition:border-color .25s,background-color .25s}
.chip-mod:hover{border-color:var(--c,var(--tea-2))}
.chip-mod .sw{position:relative;width:40px;height:24px;border-radius:999px;background:rgba(255,255,255,.14);flex:none;transition:background-color .3s}
.chip-mod .sw::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .3s var(--ease)}
.chip-mod[aria-pressed="true"] .sw{background:var(--c,var(--tea-2))}
.chip-mod[aria-pressed="true"] .sw::after{transform:translateX(16px)}
.chip-mod .tx{display:flex;flex-direction:column;line-height:1.2}
.chip-mod .tx b{font-size:13.5px;font-weight:600}
.chip-mod .tx small{font-size:12px;color:var(--ink-3)}
.chip-mod-nota{display:block;margin-top:10px;font-size:13.5px;color:var(--ink-3);min-height:1.4em;transition:color .3s}
.sec.claro .chip-mod{background:#fff;border-color:var(--l-line)}
.sec.claro .chip-mod .tx small{color:var(--l-ink3)}

/* ═══════════════ NARRACIÓN EN AUDIO ═══════════════════════════════════ */
.narr{border-radius:18px;background:linear-gradient(160deg,rgba(27,45,57,.9),rgba(17,28,36,.9));border:1px solid var(--line-2);overflow:hidden;max-width:760px}
.narr-top{display:flex;align-items:center;gap:14px;padding:14px 16px}
.narr-pl{width:48px;height:48px;border-radius:50%;border:0;flex:none;cursor:pointer;display:grid;place-items:center;background:var(--tea-2);color:#0B1115;box-shadow:0 0 0 0 rgba(150,123,255,.5);transition:transform .2s,box-shadow .3s}
.narr-pl:hover{transform:scale(1.06)}
.narr-pl .ic{width:20px;height:20px}
.narr.sonando .narr-pl{box-shadow:0 0 0 8px rgba(150,123,255,.14)}
.narr-t{flex:1;min-width:0}
.narr-t b{display:block;font-size:15px;font-weight:600;line-height:1.3}
.narr-t span{font-size:13px;color:var(--ink-3)}
.narr-onda{display:flex;align-items:center;gap:3px;height:28px;flex:none}
.narr-onda i{width:3px;border-radius:2px;background:var(--tea-2);height:20%;opacity:.5;transition:height .15s}
.narr.sonando .narr-onda i{animation:onda 1s ease-in-out infinite;opacity:1}
.narr-onda i:nth-child(2){animation-delay:-.2s!important}.narr-onda i:nth-child(3){animation-delay:-.5s!important}.narr-onda i:nth-child(4){animation-delay:-.7s!important}.narr-onda i:nth-child(5){animation-delay:-.35s!important}
@keyframes onda{0%,100%{height:20%}50%{height:100%}}
.narr-barra{height:4px;background:rgba(255,255,255,.08);cursor:pointer}
.narr-barra i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--tea),var(--tea-3))}
.narr-txt{max-height:0;overflow:auto;transition:max-height .5s var(--ease);list-style:none;margin:0;padding:0 16px}
.narr.abierta .narr-txt{max-height:240px;padding:10px 16px 14px}
.narr-txt li{display:grid;grid-template-columns:44px 1fr;gap:10px;padding:6px 8px;border-radius:8px;font-size:14.5px;line-height:1.5;color:var(--ink-3);cursor:pointer;transition:color .3s,background-color .3s}
.narr-txt li .q{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;padding-top:4px;color:var(--ink-3)}
.narr-txt li.ahora{color:var(--ink);background:rgba(150,123,255,.08)}
.narr-txt li.ahora .q{color:var(--tea-2)}
.narr-txt li.ya{color:var(--ink-2)}
.narr-ver{border:0;background:none;color:var(--ink-3);font-size:12.5px;cursor:pointer;padding:6px 8px;border-radius:8px;flex:none}
.narr-ver:hover{color:var(--ink)}
.narr.pendiente .narr-pl{background:rgba(255,255,255,.1);color:var(--ink-3);cursor:not-allowed}
.narr.pendiente .narr-onda,.narr.pendiente .narr-ver,.narr.pendiente .narr-barra{display:none}
@media (max-width:560px){.narr-onda{display:none}.narr-txt li{grid-template-columns:1fr}.narr-txt li .q{padding:0}}

/* ═══════════════ ANTES / AHORA ═════════════════════════════════════════ */
.aa{position:relative}
.aa-bar{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:26px;flex-wrap:wrap}
.aa-sw{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:12px;background:var(--glass);border:1px solid var(--line-2)}
.aa-sw button{position:relative;z-index:1;border:0;background:none;padding:10px 26px;border-radius:9px;font-size:15px;font-weight:600;color:var(--ink-2);cursor:pointer;transition:color .3s}
.aa-sw button[aria-pressed="true"]{color:#fff}
.aa-sw .k{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:9px;background:var(--cor);transition:transform .45s var(--ease),background-color .45s}
.aa[data-estado="ahora"] .aa-sw .k{transform:translateX(100%);background:var(--tea)}
.aa[data-estado="ahora"] .aa-sw button[aria-pressed="true"]{color:#fff}
.aa-pista{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.aa-cols{display:grid;grid-template-columns:1fr 56px 1fr;gap:0 4px;align-items:end;margin-bottom:10px;padding:0 4px}
.aa-cols span{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
.aa-cols span:first-child{color:var(--cor-2)}
.aa-cols span:last-child{color:var(--tea-2);grid-column:3}
.aa-filas{list-style:none;display:grid;gap:10px}
.aa-f{display:grid;grid-template-columns:1fr 56px 1fr;align-items:stretch}
.aa-a,.aa-b{position:relative;display:grid;grid-template-columns:40px 1fr;gap:4px 14px;align-content:start;padding:16px 18px;border-radius:14px;border:1px solid var(--line);transition:opacity .6s,filter .6s,border-color .6s,background-color .6s,transform .6s var(--ease)}
.aa-a{background:rgba(34,211,238,.05)}
.aa-b{background:rgba(124,92,255,.07);border-color:rgba(150,123,255,.22)}
.aa-a .ico,.aa-b .ico{grid-row:span 2;width:40px;height:40px;border-radius:10px;display:grid;place-items:center}
.aa-a .ico{background:rgba(34,211,238,.13);color:var(--cor-2)}
.aa-b .ico{background:rgba(150,123,255,.15);color:var(--tea-2)}
.aa-a b,.aa-b b{font-size:15.5px;font-weight:600;line-height:1.35}
.aa-a span,.aa-b span{font-size:14.5px;color:var(--ink-2);line-height:1.5}
.aa-a b{text-decoration:line-through;text-decoration-color:transparent;text-decoration-thickness:2px;transition:text-decoration-color .6s}
.aa-flecha{position:relative;display:grid;place-items:center}
.aa-flecha::before{content:"";position:absolute;left:8px;right:8px;top:50%;height:2px;background:linear-gradient(90deg,var(--cor),var(--tea-2));transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.aa-flecha .ic{position:relative;width:22px;height:22px;padding:4px;border-radius:50%;background:var(--bg);color:var(--tea-2);box-sizing:content-box;border:1px solid var(--line-2);opacity:0;transition:opacity .4s .3s}
.aa-f.hecho .aa-flecha::before{transform:scaleX(1)}
.aa-f.hecho .aa-flecha .ic{opacity:1}
.js .aa-f .aa-b{opacity:.18;transform:translateX(-10px)}
.js .aa-f.hecho .aa-b{opacity:1;transform:none}
.aa[data-estado="ahora"] .aa-f.hecho .aa-a{opacity:.55;filter:saturate(.4)}
.aa[data-estado="ahora"] .aa-f.hecho .aa-a b{text-decoration-color:var(--cor)}
.aa[data-estado="antes"] .aa-f .aa-b{opacity:.18;filter:saturate(.3)}
.aa[data-estado="antes"] .aa-f .aa-a{border-color:rgba(34,211,238,.35);background:rgba(34,211,238,.09)}
@media (max-width:760px){
  .aa-cols{display:none}
  .aa-f{grid-template-columns:1fr;gap:0}
  .aa-flecha{height:34px}
  .aa-flecha::before{left:50%;right:auto;top:6px;bottom:6px;width:2px;height:auto;transform:scaleY(0);transform-origin:top;background:linear-gradient(180deg,var(--cor),var(--tea-2))}
  .aa-f.hecho .aa-flecha::before{transform:scaleY(1)}
  .aa-flecha .ic{transform:rotate(90deg)}
  .js .aa-f .aa-b{transform:translateY(-8px)}
  .aa-a::before{content:"Antes";position:absolute;top:10px;right:12px;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--cor-2)}
  .aa-b::before{content:"Ahora";position:absolute;top:10px;right:12px;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--tea-2)}
  .aa-a b,.aa-b b{padding-right:44px}
}
.sec.claro .aa-a{background:#F0FCFE;border-color:#CAEEF5}
.sec.claro .aa-b{background:#EAE5FA;border-color:#C3B7F2}
.sec.claro .aa-a span,.sec.claro .aa-b span{color:var(--l-ink2)}

/* ═══════════════ QUÉ HACE LA IA ═══════════════════════════════════════ */
.iah{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;list-style:none}
.iah>li{position:relative;padding:22px 22px 18px;border-radius:18px;background:linear-gradient(170deg,rgba(27,45,57,.85),rgba(13,20,25,.85));border:1px solid var(--line);overflow:hidden;transition:border-color .3s,transform .3s var(--ease)}
.iah>li:hover{border-color:var(--line-2);transform:translateY(-3px)}
.iah>li::before{content:"";position:absolute;inset:auto -30% -60% auto;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c,var(--tea-2)) 22%,transparent),transparent 65%);pointer-events:none}
.iah .ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--c,var(--tea-2)) 15%,transparent);color:var(--c,var(--tea-2));margin-bottom:16px}
.iah .ico .ic{width:22px;height:22px}
.iah h3{font-family:var(--display);font-size:19px;font-weight:600;letter-spacing:-.015em;line-height:1.25;margin:0 0 8px}
.iah p{font-size:15px;color:var(--ink-2);line-height:1.55;margin:0 0 14px}
.iah .log{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;color:var(--c,var(--tea-2));padding:8px 10px;border-radius:8px;background:rgba(0,0,0,.25);border:1px solid var(--line);min-height:34px;white-space:nowrap;overflow:hidden}
.iah .log::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none;animation:parpadeo 1.4s ease-in-out infinite}
.iah .log .cur{display:inline-block;width:7px;height:13px;background:currentColor;margin-left:1px;vertical-align:-2px;animation:parpadeo 1s steps(2) infinite}
@keyframes parpadeo{50%{opacity:.25}}
@media (max-width:980px){.iah{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.iah{grid-template-columns:1fr}}

/* ═══════════════ PANEL DE DEMOSTRACIÓN (marco de app) ═════════════════ */
.demo{position:relative}
.demo-nota{margin:14px 0 0;font-size:13.5px;color:var(--ink-3);text-align:center}
.app{position:relative;border-radius:18px;overflow:hidden;background:var(--a-bg);color:var(--a-ink);font-family:var(--sans);font-size:14px;line-height:1.45;border:1px solid rgba(255,255,255,.14);box-shadow:0 60px 120px -50px rgba(124,92,255,.55),0 30px 70px -36px rgba(0,0,0,.85);color-scheme:light}
.app-bar{display:flex;align-items:center;gap:14px;height:48px;padding:0 16px;background:#fff;border-bottom:1px solid var(--a-line)}
.app-puntos{display:flex;gap:6px;flex:none}
.app-puntos i{width:10px;height:10px;border-radius:50%;background:#E2E6E9}
.app-logo{display:flex;align-items:center;gap:8px;font-weight:700;letter-spacing:-.01em;white-space:nowrap;flex:0 1 auto;min-width:0;max-width:55%;overflow:hidden}
.app-logo::before{content:"";width:22px;height:22px;border-radius:7px;background:linear-gradient(135deg,#7C5CFF,#896EF6)}
.app-ruta{font-size:13px;color:var(--a-ink3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.app-ruta b{color:var(--a-ink);font-weight:600}
.app-bar .der{margin-left:auto;display:flex;align-items:center;gap:10px;flex:none}
.app-vivo{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--a-ok);background:#E6F7EF;padding:4px 9px;border-radius:999px}
.app-vivo::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;animation:parpadeo 1.4s infinite}
.app-av{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;color:#fff;background:linear-gradient(135deg,#7C5CFF,#3B11F0)}
.app-cuerpo{display:grid;grid-template-columns:200px minmax(0,1fr);min-height:460px}
.app-cuerpo.sin-lat{grid-template-columns:minmax(0,1fr)}
.app-lat{background:var(--a-side);border-right:1px solid var(--a-line);padding:14px 10px;display:flex;flex-direction:column;gap:2px}
.app-lat h6{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--a-ink3);font-weight:600;margin:12px 8px 6px}
.app-lat h6:first-child{margin-top:2px}
.app-lat a,.app-lat button{display:flex;align-items:center;gap:9px;padding:7px 9px;border-radius:8px;font-size:13.5px;color:var(--a-ink2);text-decoration:none;border:0;background:none;text-align:left;cursor:pointer;width:100%}
.app-lat a .ic,.app-lat button .ic{width:16px;height:16px}
.app-lat .on{background:#fff;color:var(--a-ink);font-weight:600;box-shadow:0 1px 3px rgba(21,31,39,.08)}
.app-lat .on .ic{color:var(--a-tea)}
.app-lat .cnt{margin-left:auto;font-size:11px;font-weight:600;background:#E3EAEF;color:var(--a-ink2);border-radius:999px;padding:1px 7px}
.app-main{padding:18px;min-width:0}
.app-h{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.app-h h5{font-size:18px;font-weight:700;letter-spacing:-.01em;margin:0}
.app-h p{margin:2px 0 0;font-size:13px;color:var(--a-ink3)}
.app-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:9px;border:1px solid var(--a-line);background:#fff;color:var(--a-ink);font-size:13px;font-weight:600;cursor:pointer;transition:background-color .2s,border-color .2s,transform .2s;white-space:nowrap}
.app-btn .ic{width:15px;height:15px}
.app-btn:hover{border-color:#A18DF8}
.app-btn.pri{background:var(--a-tea);border-color:var(--a-tea);color:#fff}
.app-btn.pri:hover{background:#2D00E6}
.app-btn.cor{background:var(--a-cor);border-color:var(--a-cor);color:#fff}
.app-btn:disabled{opacity:.45;cursor:default}
.app-btn.pulsa{animation:pulsa 1.6s ease-in-out infinite}
@keyframes pulsa{0%,100%{box-shadow:0 0 0 0 rgba(83,47,242,.45)}50%{box-shadow:0 0 0 7px rgba(83,47,242,0)}}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.kpi{background:#fff;border:1px solid var(--a-line);border-radius:12px;padding:10px 12px;min-width:0}
.kpi small{display:block;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--a-ink3);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kpi b{display:block;font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin-top:2px}
.kpi span{font-size:12px;color:var(--a-ink3)}
.kpi.tea b{color:var(--a-tea)}.kpi.cor b{color:var(--a-cor)}.kpi.ok b{color:var(--a-ok)}
.caja{background:#fff;border:1px solid var(--a-line);border-radius:12px;padding:12px 14px;min-width:0}
.caja h6{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;font-weight:700;margin:0 0 10px}
.caja h6 small{font-weight:500;color:var(--a-ink3);font-size:12px}
.tabla{width:100%;border-collapse:collapse;font-size:13px}
.tabla th{text-align:left;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--a-ink3);font-weight:600;padding:6px 8px;border-bottom:1px solid var(--a-line);white-space:nowrap}
.tabla td{padding:8px;border-bottom:1px solid #EEF1F4;vertical-align:middle}
.tabla tr:last-child td{border-bottom:0}
.tabla td b{font-weight:600}
.tabla td small{display:block;color:var(--a-ink3);font-size:11.5px}
.tabla tr.nueva{animation:fila .7s var(--ease)}
@keyframes fila{from{background:#E1DBF9;transform:translateY(-6px);opacity:0}to{background:transparent;opacity:1;transform:none}}
.tabla-scroll{overflow:auto;max-width:100%}
.tag{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;padding:3px 8px;border-radius:999px;background:#EDF0F3;color:var(--a-ink2);white-space:nowrap}
.tag .ic{width:12px;height:12px}
.tag.tea{background:#E1DBF9;color:#3B11F0}
.tag.ok{background:#E3F6EC;color:#11804F}
.tag.cor{background:#E4F9FD;color:#1D90A6}
.tag.amb{background:#F0FDD6;color:#5E8D08}
.tag.bad{background:#FCE4E7;color:#B42B3C}
.tag.ia{background:#131C24;color:#BFADFF}
.barra-p{height:8px;border-radius:99px;background:#E8ECF0;overflow:hidden}
.barra-p i{display:block;height:100%;width:var(--p,0%);border-radius:99px;background:var(--a-tea);transition:width 1s var(--ease)}
.barra-p.cor i{background:var(--a-cor)}.barra-p.amb i{background:var(--a-amb)}.barra-p.ok i{background:var(--a-ok)}
.pest{display:flex;gap:4px;border-bottom:1px solid var(--a-line);margin:0 0 14px;overflow-x:auto;scrollbar-width:none}
.pest::-webkit-scrollbar{display:none}
.pest button{border:0;background:none;padding:9px 12px;font-size:13.5px;font-weight:600;color:var(--a-ink3);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;display:inline-flex;align-items:center;gap:7px}
.pest button .ic{width:15px;height:15px}
.pest button[aria-selected="true"]{color:var(--a-ink);border-bottom-color:var(--a-tea)}
.pest button .cnt{font-size:11px;background:#E8ECF0;border-radius:99px;padding:0 6px}
.ia-aviso{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:10px;background:#131C24;color:#E0D9FC;font-size:13px;line-height:1.45}
.ia-aviso .ic{width:16px;height:16px;color:#B6F23A;margin-top:2px}
.ia-aviso b{color:#fff}
.toast-app{position:absolute;right:16px;bottom:16px;z-index:5;max-width:min(340px,calc(100% - 32px));display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;background:#131C24;color:#EBE7FB;font-size:13px;box-shadow:0 20px 40px -16px rgba(0,0,0,.6);opacity:0;transform:translateY(10px);transition:opacity .3s,transform .4s var(--ease);pointer-events:none}
.toast-app.ver{opacity:1;transform:none}
.toast-app .ic{width:16px;height:16px;color:var(--tea-3);margin-top:2px}
@media (max-width:860px){.app-cuerpo{grid-template-columns:1fr}.app-lat{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--a-line);padding:8px;scrollbar-width:none}.app-lat::-webkit-scrollbar{display:none}.app-lat h6{display:none}.app-lat a,.app-lat button{width:auto;white-space:nowrap}.kpis{grid-template-columns:1fr 1fr}.app-ruta{display:none}}
@media (max-width:560px){.app-main{padding:12px}.app-bar{padding:0 12px;gap:10px}.app-puntos{display:none}.kpi b{font-size:19px}.app-vivo{display:none}}

/* ═══════════════ CÓMO ENCAJA CON EL RESTO ═════════════════════════════ */
.encaje{position:relative;display:grid;grid-template-columns:1fr minmax(200px,260px) 1fr;gap:20px 40px;align-items:center}
.encaje svg.enc-lineas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.enc-lineas path{fill:none;stroke:var(--line-2);stroke-width:1.5}
.enc-lineas path.flujo{stroke:var(--tea-2);stroke-width:2;stroke-dasharray:4 10;animation:flujo 1.4s linear infinite;opacity:.8}
@keyframes flujo{to{stroke-dashoffset:-28}}
.enc-centro{grid-column:2;grid-row:1 / span 3;position:relative;z-index:1;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;text-align:center;padding:24px;background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--c,var(--tea-2)) 30%,#15232D),#0D1419 75%);border:1px solid color-mix(in srgb,var(--c,var(--tea-2)) 55%,transparent);box-shadow:0 0 0 12px color-mix(in srgb,var(--c,var(--tea-2)) 7%,transparent),0 30px 90px -30px var(--c,var(--tea-2))}
.enc-centro .ic{width:34px;height:34px;color:var(--c,var(--tea-2));margin:0 auto 8px;stroke-width:1.5}
.enc-centro b{display:block;font-family:var(--display);font-size:19px;font-weight:600;letter-spacing:-.02em;line-height:1.15}
.enc-centro small{display:block;font-size:12px;color:var(--ink-3);margin-top:6px;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase}
.enc-lista{display:contents;list-style:none}
.enc-it{position:relative;z-index:1}
.enc-it a{display:grid;grid-template-columns:38px 1fr;gap:2px 12px;align-items:center;padding:12px 14px;border-radius:14px;background:rgba(21,35,45,.92);border:1px solid var(--line);text-decoration:none;transition:border-color .25s,transform .25s var(--ease)}
.enc-it a:hover{border-color:var(--c);transform:translateY(-2px)}
.enc-it .ico{grid-row:span 2;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--c) 16%,transparent);color:var(--c)}
.enc-it .nom{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--c);font-weight:600}
.enc-it .que{font-size:14.5px;color:var(--ink);line-height:1.4}
.enc-it .que b{font-weight:600}
.enc-it.izq{grid-column:1}.enc-it.der{grid-column:3}
.enc-pie{grid-column:1 / -1;text-align:center;font-size:14px;color:var(--ink-3);margin:8px 0 0;display:flex;align-items:center;justify-content:center;gap:8px}
.enc-pie .ic{width:16px;height:16px;color:var(--tea-2)}
@media (max-width:860px){
  .encaje{grid-template-columns:1fr;gap:12px}
  .enc-centro{grid-column:1;grid-row:auto!important;width:200px;margin:0 auto 10px}
  .enc-it{grid-row:auto!important}
  .enc-it.izq,.enc-it.der{grid-column:1}
  .encaje svg.enc-lineas{display:none}
  .enc-it::before{content:"";position:absolute;left:32px;top:-12px;height:12px;width:2px;background:linear-gradient(var(--line-2),var(--c))}
}

/* ═══════════════ STAND 3D (three.js · stand3d.js) ═══════════════════════
   <div class="escena"><canvas></canvas><span class="est"></span><button class="remontar">…</button></div> */
.escena{position:relative;aspect-ratio:1/0.92;border-radius:26px;background:radial-gradient(80% 70% at 50% 60%,rgba(124,92,255,.22),transparent 70%),linear-gradient(180deg,rgba(21,35,45,.6),rgba(11,18,24,.2));border:1px solid var(--line);overflow:hidden}
.escena canvas{position:absolute;inset:0;width:100%;height:100%}
.escena .est{position:absolute;left:16px;bottom:14px;display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--tea-3);z-index:2}
.escena .est::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--tea-2);box-shadow:0 0 10px var(--tea-2)}
.escena .remontar{position:absolute;right:14px;bottom:10px;z-index:2;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line-2);background:rgba(11,18,24,.6);border-radius:10px;padding:7px 11px;font-size:13px;color:var(--ink-2);cursor:pointer}
.escena .remontar:hover{color:var(--ink);border-color:var(--tea-2)}
.escena .remontar .ic{width:15px;height:15px}
.escena.sin-webgl{background:url("img/stand-poster.png") center/contain no-repeat,radial-gradient(80% 70% at 50% 60%,rgba(124,92,255,.22),transparent 70%)}

/* ═══════════════ BLOQUE DE VÍDEO ═════════════════════════════════════ */
.video{position:relative;aspect-ratio:16/9;border-radius:22px;overflow:hidden;background:#0A0F14;border:1px solid var(--line-2);box-shadow:0 60px 120px -50px rgba(124,92,255,.6),0 30px 80px -40px rgba(0,0,0,.9)}
.video video,.video .poster,.video img.poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.video .poster{display:block}
.video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;display:flex;align-items:center;gap:14px;padding:12px 22px 12px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.28);background:rgba(11,18,24,.6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;font-weight:600;font-size:16px;cursor:pointer;transition:transform .3s var(--ease),background-color .3s}
.video-play:hover{transform:translate(-50%,-50%) scale(1.04);background:rgba(11,18,24,.8)}
.video-play .bola{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--tea-2);color:#0B1115;box-shadow:0 0 0 0 rgba(150,123,255,.6);animation:latido 2.2s ease-in-out infinite}
.video-play .bola .ic{width:22px;height:22px;margin-left:3px}
@keyframes latido{0%,100%{box-shadow:0 0 0 0 rgba(150,123,255,.55)}60%{box-shadow:0 0 0 16px rgba(150,123,255,0)}}
.video-etq{position:absolute;left:16px;bottom:14px;z-index:3;font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.8);background:rgba(11,18,24,.55);padding:6px 10px;border-radius:8px}
.video.reproduciendo .video-play,.video.reproduciendo .video-etq,.video.reproduciendo .poster{display:none}
.video-aviso{position:absolute;left:50%;bottom:64px;transform:translateX(-50%);z-index:4;background:rgba(11,18,24,.9);border:1px solid var(--line-2);padding:8px 14px;border-radius:10px;font-size:13.5px;white-space:nowrap;opacity:0;transition:opacity .3s}
.video-aviso.ver{opacity:1}
@media (max-width:560px){.video{border-radius:14px}.video-play{padding:8px;font-size:0;gap:0}.video-play .bola{width:52px;height:52px}.video-etq{display:none}.video-aviso{white-space:normal;width:86%;text-align:center;bottom:16px}}

/* ═══════════════ ANTERIOR / SIGUIENTE ═════════════════════════════════ */
.pasos{padding:clamp(48px,6vw,80px) 0;background:var(--bg-3);border-top:1px solid var(--line)}
.pasos-in{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:stretch}
.paso{display:flex;flex-direction:column;gap:6px;padding:20px 22px;border-radius:16px;border:1px solid var(--line);background:var(--glass);text-decoration:none;transition:border-color .25s,transform .25s var(--ease),background-color .25s}
.paso:hover{border-color:var(--c);transform:translateY(-2px);background:var(--glass-2)}
.paso small{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.paso small .ic{width:15px;height:15px}
.paso b{font-family:var(--display);font-size:clamp(18px,1.8vw,22px);font-weight:600;letter-spacing:-.02em;line-height:1.2}
.paso b em{font-style:normal;font-family:var(--mono);font-size:.62em;color:var(--c);margin-right:8px;vertical-align:.18em}
.paso span{font-size:14px;color:var(--ink-3)}
.paso.sig{text-align:right;align-items:flex-end}
.paso.vacio{visibility:hidden}
.pasos-ind{display:flex;align-items:center;justify-content:center;padding:0 10px}
.pasos-ind button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line-2);background:none;border-radius:999px;padding:10px 16px;font-size:14px;font-weight:600;color:var(--ink-2);cursor:pointer}
.pasos-ind button:hover{color:var(--ink);border-color:var(--tea-2)}
.pasos-ind .ic{width:16px;height:16px}
@media (max-width:760px){.pasos-in{grid-template-columns:1fr 1fr}.pasos-ind{grid-column:1 / -1;grid-row:2}.paso{padding:14px 16px}.paso span{display:none}}

/* ═══════════════ LLAMADA A LA ACCIÓN + PIE ═════════════════════════════ */
.cta{position:relative;padding:clamp(80px,10vw,140px) 0;overflow:hidden;isolation:isolate;text-align:center}
.cta::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 70% at 50% 100%,rgba(124,92,255,.35),transparent 70%),radial-gradient(40% 50% at 85% 10%,rgba(34,211,238,.16),transparent 70%)}
.cta .h2{max-width:16em;margin:0 auto 20px}
.cta .lead{margin:0 auto 32px}
.cta .btns{justify-content:center}
.cta-datos{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px;margin-top:30px;font-size:14px;color:var(--ink-3)}
.cta-datos span{display:inline-flex;align-items:center;gap:8px}
.cta-datos .ic{width:16px;height:16px;color:var(--tea-2)}
.pie{background:var(--bg-3);border-top:1px solid var(--line);padding:28px 0 34px;font-size:13.5px;color:var(--ink-3)}
.pie-in{display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;align-items:center}
.pie b{color:var(--ink-2);font-weight:600}
.pie a{color:var(--ink-2);text-decoration:none}
.pie a:hover{color:var(--ink)}

/* ═══════════════ TEXTO PROVISIONAL (páginas por completar) ═════════════ */
.provisional{position:relative;outline:1.5px dashed rgba(182,242,58,.65);outline-offset:6px;border-radius:6px}
.provisional::before{content:"Provisional";position:absolute;top:-17px;right:0;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#101701;background:var(--amb);padding:1px 7px;border-radius:5px;z-index:2}
.hueco{display:grid;place-items:center;text-align:center;min-height:240px;padding:30px;border-radius:18px;border:1.5px dashed rgba(182,242,58,.5);background:repeating-linear-gradient(135deg,rgba(182,242,58,.04) 0 14px,transparent 14px 28px);color:var(--ink-3);font-size:15px}
.hueco b{display:block;color:var(--amb);font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}

/* ── utilidades ─────────────────────────────────────────────────────── */
.dos{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,64px);align-items:center}
@media (max-width:900px){.dos{grid-template-columns:1fr}}
.tarjetas{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;list-style:none}
.tarjeta{padding:22px;border-radius:16px;background:var(--glass);border:1px solid var(--line)}
.tarjeta h3{font-family:var(--display);font-size:18px;font-weight:600;margin:0 0 8px;letter-spacing:-.015em}
.tarjeta p{font-size:15px;color:var(--ink-2);margin:0}
.sec.claro .tarjeta{background:#fff;border-color:var(--l-line)}
.sec.claro .tarjeta p{color:var(--l-ink2)}
.mt-0{margin-top:0}.mt-1{margin-top:12px}.mt-2{margin-top:24px}.mt-3{margin-top:40px}.mt-4{margin-top:64px}
.centro{text-align:center}
.nota{font-size:13.5px;color:var(--ink-3)}

/* final de página: más claro que hay más páginas */
.pasos-ind{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}
.pasos-n{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.pasos-ind button{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:14px;border:1px solid color-mix(in srgb,var(--tea-2) 60%,transparent);background:color-mix(in srgb,var(--tea) 16%,transparent);color:var(--ink);font-size:16px;font-weight:700;cursor:pointer;box-shadow:0 0 0 0 color-mix(in srgb,var(--tea-2) 40%,transparent);animation:pide 2.6s ease-out infinite;transition:background-color .2s,transform .2s}
.pasos-ind button:hover{background:color-mix(in srgb,var(--tea) 28%,transparent);transform:translateY(-1px)}
.pasos-ind button .ic{width:19px;height:19px;color:var(--tea-2)}
@keyframes pide{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--tea-2) 45%,transparent)}70%,100%{box-shadow:0 0 0 14px transparent}}
.paso.sig{border-color:color-mix(in srgb,var(--c) 55%,transparent);background:color-mix(in srgb,var(--c) 11%,var(--glass))}
.paso.sig small{color:var(--c)}
/* píldora «hay más · sigue bajando» con aro de progreso */
.sigue{position:fixed;left:50%;bottom:18px;z-index:95;display:flex;align-items:center;gap:12px;padding:8px 18px 8px 8px;border-radius:999px;background:rgba(13,20,26,.94);border:1px solid color-mix(in srgb,var(--c) 55%,transparent);box-shadow:0 14px 40px rgba(0,0,0,.5),0 0 24px color-mix(in srgb,var(--c) 20%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);text-decoration:none;color:var(--ink);opacity:0;visibility:hidden;transform:translate(-50%,20px);transition:opacity .3s,transform .35s var(--ease),visibility 0s .35s}
.sigue.ver{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .3s,transform .35s var(--ease)}
.sigue-aro{position:relative;width:40px;height:40px;flex:none;display:flex;align-items:center;justify-content:center;color:var(--c)}
.sigue-aro svg:not(.ic){position:absolute;inset:0;width:40px;height:40px;transform:rotate(-90deg)}
.sigue-aro circle{fill:none;stroke-width:3}
.sigue-aro .f{stroke:rgba(255,255,255,.12)}
.sigue-aro .p{stroke:var(--c);stroke-linecap:round;stroke-dasharray:106.8;stroke-dashoffset:calc(106.8 * (1 - var(--p,0)));transition:stroke-dashoffset .12s linear}
.sigue-aro .ic{width:18px;height:18px;animation:baja 1.4s ease-in-out infinite}
@keyframes baja{0%,100%{transform:translateY(-2px)}50%{transform:translateY(3px)}}
.sigue-t{display:flex;flex-direction:column;line-height:1.2}
.sigue-t small{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.sigue-t b{font-size:14.5px;font-weight:700;white-space:nowrap}
.sigue.fondo .sigue-t small{color:var(--c)}
.sigue.va{transform:translate(-50%,-6px) scale(1.04)}
@media (max-width:600px){.sigue{bottom:12px;max-width:calc(100vw - 24px)}.sigue-t b{font-size:13.5px;overflow:hidden;text-overflow:ellipsis}}
@media (prefers-reduced-motion:reduce){.pasos-ind button,.sigue-aro .ic{animation:none}}

/* ═══════════════ TEMA CLARO ═══════════════════════════════════════════════
   marca.json → "tema": "claro" → aplicar_marca.py escribe <html data-tema="claro">.
   TODO lo del tema claro va bajo html[data-tema="claro"] (aquí y al final de cada pag/*.css):
   con "oscuro" no cambia nada.
   · Fondo blanco limpio; secciones alternas con un tinte frío muy suave; texto en tinta casi negra.
   · El color de marca (violeta en el modelo) va SOLO en la cabecera, sus desplegables y el índice.
   · En el resto, el acento es el amarillo flúor --acento (marca.json → "acento_claro"; lo escribe
     aplicar_marca.py en el bloque de abajo). El amarillo no se lee como texto sobre blanco: se usa como
     RELLENO (botones, subrayador de los títulos, chips activos, cajas de icono) con tinta encima, y el
     texto de acento va en tinta (--tinta). Los colores de grupo (Captar, Diseñar, Dirigir) no cambian. */
/*ACENTO CLARO*/html[data-tema="claro"]{--acento:#EDFF1F}/*FIN ACENTO CLARO*/
html[data-tema="claro"]{
  color-scheme:light;
  --tinta:#0F1720;
  /* derivados del acento (siguen solos a --acento) */
  --acento-suave:color-mix(in srgb,var(--acento) 15%,#fff);     /* fondos de tarjeta */
  --acento-medio:color-mix(in srgb,var(--acento) 62%,#fff);     /* cajas de icono, etiquetas */
  --acento-borde:color-mix(in srgb,var(--acento) 72%,#5A6600);  /* bordes y trazos que se ven sobre blanco */
  --acento-sombra:color-mix(in srgb,var(--acento) 75%,#4D5700);
  --bg:#FFFFFF; --bg-2:#F3F8FC; --bg-3:#EDF4F9; --panel:#FFFFFF; --panel-2:#F4F7FA;
  --line:#E0E6EC; --line-2:#CAD4DE;
  --glass:#FFFFFF; --glass-2:#F3F6F9;
  --ink:#0F1720; --ink-2:#384651; --ink-3:#51606C;
  /* la marca (violeta) se repone solo en la cabecera (ver «cabecera» abajo) */
  --tea:var(--acento); --tea-2:var(--tinta); --tea-3:var(--tinta); --tea-d:var(--tinta);
  --cor:#0E7490; --cor-2:#0E7490;
  --amb:#4A770A;
  --ok:#11804F; --bad:#D63B4D;
  /* grupos: Captar sigue en el violeta de la marca (versión oscura, legible) */
  --g-vender:#5B3DF0;
  --gr-tea:linear-gradient(100deg,#0F1720 0%,#0F1720 100%);
  --gr-cor:linear-gradient(100deg,#0891B2 0%,#558F0A 100%);
  --gr-mix:linear-gradient(100deg,#0F1720 0%,#0F1720 100%);
  --light:#FFFFFF;
  /* rellenos vivos */
  --viva-tea:var(--acento); --viva-cor:#22D3EE; --viva-amb:#B6F23A;
  --sombra-1:0 1px 2px rgba(15,23,32,.05),0 8px 22px -14px rgba(15,23,32,.2);
  --sombra-2:0 2px 6px rgba(15,23,32,.05),0 26px 56px -30px rgba(15,23,32,.3);
}
html[data-tema="claro"] ::selection{background:var(--acento);color:var(--tinta)}
html[data-tema="claro"] .salto{color:#fff}
/* títulos: la palabra destacada en tinta, con un trazo de rotulador amarillo debajo */
html[data-tema="claro"] :is(.gt,.gm,.gc),html[data-tema="claro"] .sec.claro .gt{color:var(--tinta);-webkit-text-fill-color:var(--tinta);background:linear-gradient(180deg,transparent 0 66%,var(--acento) 66% 88%,transparent 88%);-webkit-background-clip:border-box;background-clip:border-box;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .06em;margin:0 -.03em}
/* antetítulos: punto de tinta con halo amarillo; el texto destacado, en tinta */
html[data-tema="claro"] .ey{color:var(--ink-2)}
html[data-tema="claro"] .ey i{width:9px;height:9px;background:var(--c,var(--tinta));box-shadow:var(--c,0 0 0 3.5px var(--acento))}
/* botones: el principal, amarillo con tinta; el de la cabecera sigue en el color de marca (abajo) */
html[data-tema="claro"] .btn-tea{background:var(--acento);color:var(--tinta);box-shadow:inset 0 0 0 1px rgba(15,23,32,.07),0 12px 26px -14px var(--acento-sombra)}
html[data-tema="claro"] .btn-tea:hover{background:color-mix(in srgb,var(--acento) 90%,#2A3000);box-shadow:inset 0 0 0 1px rgba(15,23,32,.1),0 18px 34px -16px var(--acento-sombra)}
html[data-tema="claro"] .btn-cor{box-shadow:0 10px 26px -12px rgba(14,116,144,.55)}
html[data-tema="claro"] .btn-cor:hover{background:#0B5F77}
html[data-tema="claro"] .btn-borde{box-shadow:var(--sombra-1)}
html[data-tema="claro"] .btn-borde:hover{border-color:var(--tinta)}
/* cabecera, desplegables e índice: AQUÍ vive el color de marca */
html[data-tema="claro"] header.cab,html[data-tema="claro"] .indice{--tea:#7C5CFF;--tea-2:#5B3DF0;--tea-3:#532FF2;--tea-d:#3B11F0;--viva-tea:#7C5CFF}
html[data-tema="claro"] header.cab{background:rgba(255,255,255,.86)}
html[data-tema="claro"] header.cab.bajado{background:rgba(255,255,255,.95);box-shadow:0 6px 24px -14px rgba(15,23,32,.25)}
html[data-tema="claro"] header.cab .btn-tea{background:var(--tea-2);color:#fff;box-shadow:0 10px 26px -12px rgba(91,61,240,.65)}
html[data-tema="claro"] header.cab .btn-tea:hover{background:#4A2BE8;box-shadow:0 16px 34px -14px rgba(91,61,240,.75)}
html[data-tema="claro"] .cab-ind .n{color:#fff}
html[data-tema="claro"] .cab-ind:hover,html[data-tema="claro"] .cab-ind[aria-expanded="true"]{background:#fff}
html[data-tema="claro"] .serie a::before{background:rgba(15,23,32,.14)}
html[data-tema="claro"] .serie a:hover::before{background:rgba(15,23,32,.3)}
html[data-tema="claro"] .serie a.visto::before{background:color-mix(in srgb,var(--c) 45%,transparent)}
html[data-tema="claro"] .serie a.aqui::before{background:var(--c)}
html[data-tema="claro"] .serie a span{background:#fff;box-shadow:var(--sombra-1)}
html[data-tema="claro"] .cg-btn:hover,html[data-tema="claro"] .cg.abierto .cg-btn{background:#fff}
html[data-tema="claro"] .cg-btn.aqui{background:color-mix(in srgb,var(--c) 13%,#fff)}
html[data-tema="claro"] .cg-menu{background:rgba(255,255,255,.99);box-shadow:0 24px 60px -18px rgba(15,23,32,.3),0 2px 8px rgba(15,23,32,.06)}
html[data-tema="claro"] .indice{background:rgba(255,255,255,.98);box-shadow:0 40px 80px -30px rgba(15,23,32,.35)}
html[data-tema="claro"] .ind-it:hover{background:color-mix(in srgb,var(--tea) 7%,#fff)}
/* secciones y fondos: blanco limpio, toques de amarillo y cian (sin velos lila) */
html[data-tema="claro"] .sec.brillo::before{background:radial-gradient(55% 45% at 50% 0%,color-mix(in srgb,var(--acento) 22%,transparent),transparent 70%)}
html[data-tema="claro"] .sec.claro{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
html[data-tema="claro"] .rejilla{opacity:.5}
html[data-tema="claro"] .heroe-fondo::before{background:radial-gradient(circle,color-mix(in srgb,var(--acento) 40%,transparent),transparent 62%)}
html[data-tema="claro"] .heroe-fondo::after{background:radial-gradient(circle,color-mix(in srgb,var(--c,var(--viva-cor)) 18%,transparent),transparent 64%)}
/* en las páginas de Captar, el héroe y sus piezas usan el acento, no el violeta del grupo */
html[data-tema="claro"] :is(.heroe,.heroe .ey,.heroe .chips,.iah)[style*="--c:var(--g-vender)"]{--c:initial!important}
html[data-tema="claro"] .chips li{box-shadow:0 1px 2px rgba(15,23,32,.04)}
html[data-tema="claro"] .orbita i:nth-child(3){border-color:color-mix(in srgb,var(--c,var(--acento-borde)) 55%,transparent)}
html[data-tema="claro"] .orbita i::after{background:var(--c,var(--acento));box-shadow:var(--c,0 0 0 2px var(--tinta))}
html[data-tema="claro"] .orbita .nucleo{background:linear-gradient(145deg,color-mix(in srgb,var(--c,var(--acento)) 22%,#fff),#fff);border-color:color-mix(in srgb,var(--c,var(--acento-borde)) 55%,transparent);box-shadow:0 30px 70px -30px color-mix(in srgb,var(--c,var(--acento-sombra)) 70%,transparent),inset 0 1px 0 #fff}
html[data-tema="claro"] .orbita .sat{background:rgba(255,255,255,.96);box-shadow:var(--sombra-1)}
html[data-tema="claro"] .chip-mod{box-shadow:var(--sombra-1)}
html[data-tema="claro"] .chip-mod .sw{background:rgba(15,23,32,.16)}
html[data-tema="claro"] .chip-mod .sw::after{box-shadow:0 1px 3px rgba(15,23,32,.3)}
html[data-tema="claro"] .chip-mod[aria-pressed="true"] .sw{background:var(--c,var(--tinta))}
/* narración */
html[data-tema="claro"] .narr{background:#fff;box-shadow:var(--sombra-1)}
html[data-tema="claro"] .narr-pl{background:var(--acento);color:var(--tinta);box-shadow:inset 0 0 0 1px rgba(15,23,32,.08),0 0 0 0 color-mix(in srgb,var(--acento) 50%,transparent)}
html[data-tema="claro"] .narr.sonando .narr-pl{box-shadow:inset 0 0 0 1px rgba(15,23,32,.08),0 0 0 8px color-mix(in srgb,var(--acento) 35%,transparent)}
html[data-tema="claro"] .narr-onda i{background:var(--tinta)}
html[data-tema="claro"] .narr-barra{background:rgba(15,23,32,.08)}
html[data-tema="claro"] .narr-barra i{background:var(--tinta)}
html[data-tema="claro"] .narr-txt li.ahora{background:var(--acento-suave)}
html[data-tema="claro"] .narr.pendiente .narr-pl{background:rgba(15,23,32,.08);color:var(--ink-3);box-shadow:none}
/* antes / ahora: el «Ahora» en amarillo */
html[data-tema="claro"] .aa-sw{background:#fff;box-shadow:var(--sombra-1)}
html[data-tema="claro"] .aa[data-estado="ahora"] .aa-sw .k{background:var(--acento);box-shadow:inset 0 0 0 1px rgba(15,23,32,.08)}
html[data-tema="claro"] .aa[data-estado="ahora"] .aa-sw button[aria-pressed="true"]{color:var(--tinta)}
html[data-tema="claro"] .aa-a{background:#fff}
html[data-tema="claro"] .aa-b{background:var(--acento-suave);border-color:var(--acento-borde);box-shadow:var(--sombra-1)}
html[data-tema="claro"] .aa-a .ico{background:rgba(34,211,238,.16)}
html[data-tema="claro"] .aa-b .ico{background:var(--acento);color:var(--tinta)}
html[data-tema="claro"] .aa-cols span:last-child{color:var(--tinta)}
html[data-tema="claro"] .aa-flecha::before{background:linear-gradient(90deg,var(--viva-cor),var(--acento-borde))}
html[data-tema="claro"] .aa[data-estado="ahora"] .aa-f.hecho .aa-a{opacity:.7}
html[data-tema="claro"] .aa[data-estado="antes"] .aa-f .aa-a{border-color:rgba(14,116,144,.35);background:#F0FBFD}
@media (max-width:760px){
  html[data-tema="claro"] .aa-flecha::before{background:linear-gradient(180deg,var(--viva-cor),var(--acento-borde))}
  html[data-tema="claro"] .aa-b::before{color:var(--tinta);background:var(--acento);padding:2px 7px;border-radius:6px;top:8px}
}
/* qué hace la IA (sin --c: cajas de icono amarillas con tinta) */
html[data-tema="claro"] .iah>li{background:#fff;box-shadow:var(--sombra-1)}
html[data-tema="claro"] .iah>li::before{background:radial-gradient(circle,color-mix(in srgb,var(--c,var(--acento)) 16%,transparent),transparent 65%)}
html[data-tema="claro"] .iah .ico{background-color:color-mix(in srgb,var(--c,transparent) 15%,transparent);background-image:var(--c,linear-gradient(var(--acento-medio),var(--acento-medio)));color:var(--c,var(--tinta))}
html[data-tema="claro"] .iah .log{background:color-mix(in srgb,var(--c,var(--acento)) 7%,#F7F9FB);border-color:color-mix(in srgb,var(--c,var(--acento-borde)) 22%,var(--line))}
/* marco de app (ya era claro): borde y sombra neutros para que se despegue del fondo */
html[data-tema="claro"] .app{border-color:var(--line-2);box-shadow:0 50px 100px -55px color-mix(in srgb,var(--acento-sombra) 55%,transparent),0 24px 50px -30px rgba(15,23,32,.3)}
/* cómo encaja */
html[data-tema="claro"] .enc-lineas path.flujo{stroke:var(--tinta);opacity:.55}
html[data-tema="claro"] .enc-centro{background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--c,var(--acento)) 22%,#fff),#fff 75%);border-color:color-mix(in srgb,var(--c,var(--acento-borde)) 60%,transparent);box-shadow:0 0 0 12px color-mix(in srgb,var(--c,var(--acento)) 12%,transparent),0 30px 80px -34px var(--c,var(--acento-sombra))}
html[data-tema="claro"] .enc-it a{background:#fff;box-shadow:var(--sombra-1)}
/* stand 3D: solo el marco (el modelo no se toca) */
html[data-tema="claro"] .escena{background:radial-gradient(80% 70% at 50% 60%,color-mix(in srgb,var(--acento) 24%,transparent),transparent 70%),linear-gradient(180deg,#FFFFFF,#EAF3F8);box-shadow:var(--sombra-2)}
html[data-tema="claro"] .escena .est{background:rgba(255,255,255,.9);padding:5px 10px;border-radius:8px;box-shadow:var(--sombra-1)}
html[data-tema="claro"] .escena .est::before{background:var(--acento);box-shadow:0 0 0 2px var(--tinta)}
html[data-tema="claro"] .escena .remontar{background:rgba(255,255,255,.9);box-shadow:var(--sombra-1)}
html[data-tema="claro"] .escena.sin-webgl{background:url("img/stand-poster.png") center/contain no-repeat,radial-gradient(80% 70% at 50% 60%,color-mix(in srgb,var(--acento) 24%,transparent),transparent 70%),linear-gradient(180deg,#FFFFFF,#EAF3F8)}
/* vídeo (solo el marco y el botón) */
html[data-tema="claro"] .video{box-shadow:0 50px 100px -50px color-mix(in srgb,var(--acento-sombra) 60%,transparent),0 26px 60px -36px rgba(15,23,32,.4)}
html[data-tema="claro"] .video-play .bola{background:var(--acento);color:var(--tinta);box-shadow:0 0 0 0 color-mix(in srgb,var(--acento) 60%,transparent)}
html[data-tema="claro"] .video-aviso{background:rgba(255,255,255,.97);color:var(--ink)}
/* final de página, llamada a la acción, pie */
html[data-tema="claro"] .paso{box-shadow:var(--sombra-1)}
html[data-tema="claro"] .paso.sig{background:color-mix(in srgb,var(--c) 7%,#fff)}
html[data-tema="claro"] .pasos-ind button{background:var(--acento-suave);border-color:var(--acento-borde)}
html[data-tema="claro"] .pasos-ind button:hover{background:var(--acento-medio)}
html[data-tema="claro"] .cta::before{background:radial-gradient(60% 70% at 50% 100%,color-mix(in srgb,var(--acento) 34%,transparent),transparent 70%),radial-gradient(40% 50% at 85% 10%,rgba(34,211,238,.14),transparent 70%)}
html[data-tema="claro"] .pie{color:var(--ink-3)}
html[data-tema="claro"] .tarjeta{box-shadow:var(--sombra-1)}
html[data-tema="claro"] .provisional::before{color:#fff}
html[data-tema="claro"] .toast-app .ic{color:var(--tinta)}
/* píldora «hay más · sigue bajando»: aro de tinta con el progreso en amarillo */
html[data-tema="claro"] .sigue{--c:var(--acento)!important;background:rgba(255,255,255,.97);border-color:var(--acento-borde);box-shadow:0 14px 36px -10px rgba(15,23,32,.3),0 0 22px color-mix(in srgb,var(--acento) 30%,transparent)}
html[data-tema="claro"] .sigue-aro{background:var(--tinta);border-radius:50%;color:var(--acento)}
html[data-tema="claro"] .sigue-aro .f{stroke:rgba(255,255,255,.16)}
html[data-tema="claro"] .sigue.fondo .sigue-t small{color:var(--tinta)}
/* la flecha del aro: «.sigue-aro svg» también cogía el icono (quedaba arriba a la izquierda y girado). En oscuro sigue igual. */
html[data-tema="claro"] .sigue-aro .ic{position:relative;inset:auto;transform:none}
