/* Mapa del cerebro: estilos aislados del tema. Todo cuelga de #np-mapa.
   El reset devuelve los elementos a los valores del navegador para que Kadence no se cuele. */
#np-mapa :where(div,section,aside,header,nav,article,h1,h2,h3,h4,p,ul,ol,li,a,b,strong,i,em,small,span,label,button,input,canvas,img,svg){all:revert}
#np-mapa{position:relative;width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:0;margin-top:0;margin-bottom:0;isolation:isolate;background:var(--esc);font-style:normal;font-weight:400;letter-spacing:normal;text-transform:none;word-break:normal;overflow-wrap:normal;hyphens:manual;text-indent:0;box-sizing:border-box}
/* Sistema visual de Notas de producto: papel + tinta, escenario oscuro con retícula, acento lima, azul "sistema".
   Layout: cabecera de blog > escenario 3D a sangre con carril de exploración a la izquierda y ficha a la derecha > nota de lectura. */
#np-mapa{
  --tinta:#14171A; --papel:#F4F1EA; --papel-claro:#FBF9F4; --acento:#C2F04A;
  --sistema:#1F4DFF; --gris:#5A5F66; --borde:#E8E3D8; --cabecera:#FFFFFF;
  --bg:var(--papel); --fg:#2B2F34; --titulo:var(--tinta);
  /* escenario: siempre oscuro, como el hero del blog */
  --esc:#0E1114; --esc-linea:rgba(194,200,207,.055); --esc-panel:rgba(14,17,20,.78);
  --esc-texto:#C2C8CF; --esc-tenue:#8A93A0; --esc-borde:#2B2F34;
  --display:'Archivo',system-ui,sans-serif;
  --lectura:'Newsreader',Georgia,serif;
  --tecnico:'Martian Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
}



#np-mapa *{box-sizing:border-box}
#np-mapa [hidden]{display:none!important}

#np-mapa{color:var(--fg);font-family:var(--lectura);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased;text-align:left}
#np-mapa a{color:var(--sistema)}
#np-mapa button{font:inherit;color:inherit}
#np-mapa :focus-visible{outline:2px solid var(--acento);outline-offset:2px}

/* ---------- escenario ---------- */
#np-mapa .esc{position:relative;background:var(--esc);color:var(--esc-texto);height:min(88vh,860px);min-height:600px;overflow:hidden;
  background-image:linear-gradient(var(--esc-linea) 1px,transparent 1px),linear-gradient(90deg,var(--esc-linea) 1px,transparent 1px),
  radial-gradient(ellipse at 55% 45%,rgba(31,77,255,.16),transparent 60%);
  background-size:32px 32px,32px 32px,100% 100%}
#np-mapa #gl{position:absolute;inset:0;display:block;width:100%;height:100%;touch-action:none;cursor:grab}
#np-mapa #gl.arrastrando{cursor:grabbing}
#np-mapa #gl.sobre{cursor:pointer}
#np-mapa #etiquetas{position:absolute;inset:0;pointer-events:none;overflow:hidden}
#np-mapa .et{position:absolute;left:0;top:0;font-family:var(--tecnico);font-size:10.5px;letter-spacing:.04em;color:#E6E9EC;white-space:nowrap;
  transform:translate(-50%,-50%);padding:2px 5px;background:rgba(14,17,20,.62);border-left:2px solid var(--c,#C2C8CF);will-change:transform,opacity;transition:opacity .2s}
#np-mapa .et.baja{background:rgba(90,95,102,.9);color:#F4F1EA;border-left-color:#C2C8CF}
#np-mapa .et.comp{color:#14171A;background:#FF9F43;border-left-color:#FF9F43;font-weight:500}
#np-mapa .et.fuerte{color:var(--tinta);background:var(--acento);border-left-color:var(--acento);font-weight:500}

/* carril izquierdo */
#np-mapa .carril{position:absolute;left:20px;top:20px;bottom:20px;width:300px;display:flex;flex-direction:column;gap:10px;z-index:5;pointer-events:none}
#np-mapa .carril>*{pointer-events:auto}
#np-mapa .cabeza .kicker{font-family:var(--tecnico);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--esc-tenue);margin:0}
#np-mapa .cabeza h1{font-family:var(--display);font-weight:800;font-size:40px;line-height:.98;letter-spacing:-.035em;color:#F4F1EA;margin:6px 0 10px;text-wrap:balance}
#np-mapa .cabeza .regla{width:44px;height:4px;background:var(--acento)}
#np-mapa .cabeza p{font-size:15px;line-height:1.4;color:var(--esc-texto);margin:10px 0 0;max-width:32ch}
#np-mapa .panel{background:var(--esc-panel);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--esc-borde);padding:14px;min-height:0}
#np-mapa .panel.scroll{overflow:auto;flex:1}
#np-mapa .etq{font-family:var(--tecnico);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--esc-tenue);margin:0 0 10px;display:flex;justify-content:space-between;gap:8px}
#np-mapa .etq button{background:none;border:0;padding:0;cursor:pointer;color:var(--esc-tenue);font:inherit;letter-spacing:inherit;text-decoration:underline;text-underline-offset:3px}
#np-mapa .etq button:hover{color:var(--acento)}
#np-mapa .buscar{position:relative}
#np-mapa #q{width:100%;background:#0B0D10;border:1px solid var(--esc-borde);color:#F4F1EA;font-family:var(--tecnico);font-size:12px;padding:10px 12px;border-radius:0}
#np-mapa #q::placeholder{color:#6B737D}
#np-mapa #resultados{position:absolute;left:0;right:0;top:100%;background:#0B0D10;border:1px solid var(--esc-borde);border-top:0;list-style:none;margin:0;padding:4px 0;z-index:8;max-height:260px;overflow:auto}
#np-mapa #resultados li button{display:flex;gap:8px;align-items:center;width:100%;text-align:left;background:none;border:0;padding:7px 12px;cursor:pointer;font-family:var(--tecnico);font-size:11.5px;color:var(--esc-texto)}
#np-mapa #resultados li button:hover,#np-mapa #resultados li button.activo{background:#1A1F25;color:#fff}
#np-mapa .cuad{width:8px;height:8px;flex:none;background:var(--c)}
#np-mapa .rutas{display:grid;grid-template-columns:1fr 1fr;gap:6px}
#np-mapa .ruta{display:flex;gap:8px;align-items:baseline;text-align:left;background:transparent;border:1px solid var(--esc-borde);padding:8px 9px;cursor:pointer;font-family:var(--display);font-weight:500;font-size:13.5px;color:#E6E9EC;transition:border-color .15s,background .15s}
#np-mapa .ruta small{font-family:var(--tecnico);font-size:10px;color:var(--esc-tenue)}
#np-mapa .ruta:hover{border-color:#5A5F66}
#np-mapa .ruta[aria-pressed="true"]{background:var(--acento);border-color:var(--acento);color:var(--tinta)}
#np-mapa .ruta[aria-pressed="true"] small{color:var(--tinta)}
#np-mapa .subetq{font-family:var(--tecnico);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#6B737D;margin:12px 0 6px}
#np-mapa .circ{display:flex;flex-direction:column;gap:2px}
#np-mapa .circ button{display:flex;align-items:center;gap:10px;background:none;border:0;padding:5px 2px;cursor:pointer;font-family:var(--tecnico);font-size:11px;color:var(--esc-texto);text-align:left}
#np-mapa .circ button .linea{width:22px;height:3px;background:var(--c);flex:none}
#np-mapa .circ button .n{margin-left:auto;color:#6B737D;font-variant-numeric:tabular-nums}
#np-mapa .circ button[aria-pressed="false"]{color:#5A5F66}
#np-mapa .circ button[aria-pressed="false"] .linea{background:transparent;outline:1px dashed #5A5F66;outline-offset:-1px}
#np-mapa .circ button:hover{color:#fff}
#np-mapa .ajustes{display:flex;flex-wrap:wrap;gap:6px}
#np-mapa .chip{font-family:var(--tecnico);font-size:10.5px;letter-spacing:.06em;background:transparent;border:1px solid var(--esc-borde);color:var(--esc-texto);padding:6px 9px;cursor:pointer}
#np-mapa .chip[aria-pressed="true"]{border-color:var(--acento);color:var(--acento)}
#np-mapa .chip:hover{border-color:#5A5F66}

/* ficha derecha */
#np-mapa .ficha{position:absolute;right:20px;top:20px;max-height:calc(100% - 40px);width:360px;background:var(--papel-claro);color:#2B2F34;z-index:6;display:flex;flex-direction:column;border:1px solid var(--borde);box-shadow:0 20px 50px rgba(0,0,0,.35)}
#np-mapa{--ficha-bg:#FBF9F4;--ficha-fg:#2B2F34;--ficha-tit:#14171A;--ficha-borde:#E8E3D8;--ficha-gris:#5A5F66;--ficha-hover:#F1EDE3}


#np-mapa .ficha{background:var(--ficha-bg);color:var(--ficha-fg);border-color:var(--ficha-borde)}
#np-mapa .ficha-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid var(--ficha-borde);font-family:var(--tecnico);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ficha-gris)}
#np-mapa .ficha-top .grupo{display:flex;align-items:center;gap:8px;min-width:0}
#np-mapa .cerrar{background:none;border:1px solid var(--ficha-borde);width:28px;height:28px;cursor:pointer;color:var(--ficha-gris);font-family:var(--tecnico);font-size:14px;line-height:1;flex:none}
#np-mapa .cerrar:hover{color:var(--ficha-tit);border-color:var(--ficha-gris)}
#np-mapa .ficha-cuerpo{overflow:auto;padding:16px 18px 20px;min-height:0}
#np-mapa .ficha h2{font-family:var(--display);font-weight:800;font-size:28px;line-height:1.02;letter-spacing:-.025em;color:var(--ficha-tit);margin:0 0 4px;text-wrap:balance}
#np-mapa .ficha .abrev{font-family:var(--tecnico);font-size:11px;color:var(--ficha-gris);letter-spacing:.06em}
#np-mapa .ficha p{margin:12px 0 0;font-size:16.5px;line-height:1.5}
#np-mapa .dato{margin-top:16px;padding:12px 14px;background:var(--tinta);color:#E6E9EC;font-family:var(--lectura);font-size:15px;line-height:1.45;position:relative}
#np-mapa .dato b{display:block;font-family:var(--tecnico);font-weight:500;font-size:10px;letter-spacing:.14em;color:var(--acento);margin-bottom:4px}
#np-mapa .ficha h3{font-family:var(--tecnico);font-weight:500;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ficha-gris);margin:20px 0 6px}
#np-mapa .lista{list-style:none;margin:0;padding:0;border-top:1px solid var(--ficha-borde)}
#np-mapa .lista li{border-bottom:1px solid var(--ficha-borde)}
#np-mapa .lista button{display:grid;grid-template-columns:14px 16px 1fr;align-items:center;gap:6px;width:100%;background:none;border:0;padding:8px 2px;text-align:left;cursor:pointer;font-family:var(--display);font-size:14px;font-weight:500;color:var(--ficha-tit)}
#np-mapa .lista button:hover{background:var(--ficha-hover)}
#np-mapa .lista .dir{font-family:var(--tecnico);font-size:11px;color:var(--ficha-gris)}
#np-mapa .lista small{display:block;font-family:var(--tecnico);font-weight:400;font-size:10px;color:var(--ficha-gris);letter-spacing:.02em}
#np-mapa .pasos{list-style:none;margin:14px 0 0;padding:0;counter-reset:p}
#np-mapa .pasos li{counter-increment:p}
#np-mapa .pasos button{display:grid;grid-template-columns:26px 1fr;gap:8px;width:100%;text-align:left;background:none;border:0;border-top:1px solid var(--ficha-borde);padding:10px 2px;cursor:pointer;color:var(--ficha-fg)}
#np-mapa .pasos button::before{content:counter(p,decimal-leading-zero);font-family:var(--tecnico);font-size:10.5px;color:var(--ficha-gris);padding-top:3px}
#np-mapa .pasos button:hover{background:var(--ficha-hover)}
#np-mapa .pasos button.activo{background:var(--tinta);color:#E6E9EC}
#np-mapa .pasos button.activo::before{color:var(--acento)}
#np-mapa .pasos button.activo .tramo{color:#fff}
#np-mapa .tramo{display:block;font-family:var(--display);font-weight:700;font-size:13.5px;color:var(--ficha-tit);margin-bottom:2px}
#np-mapa .pasos .txt{font-size:15px;line-height:1.4}
#np-mapa .acciones{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
#np-mapa .btn{font-family:var(--tecnico);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:9px 12px;border:1px solid var(--ficha-tit);background:var(--ficha-tit);color:var(--ficha-bg);cursor:pointer}
#np-mapa .btn.sec{background:transparent;color:var(--ficha-tit)}
#np-mapa .btn:hover{opacity:.85}
#np-mapa .chips{display:flex;flex-wrap:wrap;gap:6px}
#np-mapa .chips button{font-family:var(--tecnico);font-size:10.5px;padding:5px 8px;border:1px solid var(--ficha-borde);background:transparent;cursor:pointer;color:var(--ficha-fg)}
#np-mapa .chips button:hover{border-color:var(--ficha-gris)}
#np-mapa .sug{display:grid;gap:6px;margin-top:14px}

#np-mapa .pista{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);font-family:var(--tecnico);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#6B737D;z-index:4;white-space:nowrap;pointer-events:none}
#np-mapa .abrir-carril{display:none}
#np-mapa .aviso{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--tecnico);font-size:12px;color:var(--esc-tenue);z-index:3;text-align:center;padding:24px}

/* ---------- modo redes ---------- */
#np-mapa .modos{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--esc-borde);background:var(--esc-panel)}
#np-mapa .modos button{background:transparent;border:0;padding:10px 8px;font-family:var(--tecnico);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--esc-texto);cursor:pointer}
#np-mapa .modos button[aria-pressed="true"]{background:#F4F1EA;color:var(--tinta)}
#np-mapa .barras{display:grid;gap:2px;margin-top:4px}
#np-mapa .barra{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:center;background:none;border:0;padding:5px 2px;cursor:pointer;text-align:left;font-family:var(--display);font-size:13.5px;font-weight:500;color:var(--ficha-tit)}
#np-mapa .barra:hover{background:var(--ficha-hover)}
#np-mapa .barra .bn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#np-mapa .seg{display:flex;gap:3px}#np-mapa .seg i{width:20px;height:9px;background:var(--ficha-borde);display:block}
#np-mapa .subs button[aria-pressed="true"]{background:var(--ficha-tit);color:var(--ficha-bg);border-color:var(--ficha-tit)}
#np-mapa .fuentes-f{margin:0;padding-left:18px;font-size:14px;line-height:1.4}#np-mapa .fuentes-f li{margin:4px 0}
#np-mapa .chip:disabled{opacity:.4;cursor:not-allowed}
#np-mapa .evi{border-top:1px solid var(--ficha-borde);padding-top:10px;margin-top:12px}
#np-mapa .evi p{margin:6px 0 0;font-size:15.5px;line-height:1.45}
#np-mapa .ev{display:inline-block;font-family:var(--tecnico);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:3px 6px;border:1px solid var(--ficha-borde);color:var(--ficha-gris)}
#np-mapa .evf{font-size:13.5px!important}#np-mapa .evf a{color:var(--sistema)}
#np-mapa .rbar{display:grid;gap:6px;margin-top:10px}
#np-mapa .rrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;align-items:center;font-family:var(--tecnico);font-size:11px;color:var(--ficha-gris)}
#np-mapa .rrow .rn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#np-mapa .rrow .rt{height:9px;background:var(--ficha-borde);display:block;grid-column:1/-1;grid-row:2}
#np-mapa .rrow .rt i{display:block;height:100%;background:var(--ficha-gris)}
#np-mapa .rrow.cog{color:var(--ficha-tit)}#np-mapa .rrow.cog .rt i{background:var(--ficha-tit)}
#np-mapa .rrow .rv{text-align:right;font-variant-numeric:tabular-nums}
#np-mapa .cadena{display:grid;gap:0;border-left:2px solid var(--ficha-borde);margin-left:4px}
#np-mapa .eslabon{padding:6px 0 8px 12px}#np-mapa .eslabon p{margin:4px 0 0!important;font-size:15px!important}
#np-mapa .ev.med{background:var(--ficha-tit);color:var(--ficha-bg);border-color:var(--ficha-tit)}
#np-mapa .ev.aso{border-style:solid}
#np-mapa .ev.inf{border-style:dashed;color:var(--ficha-tit)}
#np-mapa .sello{position:absolute;left:50%;top:18px;transform:translateX(-50%);z-index:5;display:flex;align-items:center;gap:10px;background:rgba(14,17,20,.86);border:1px solid var(--esc-borde);padding:8px 12px;max-width:min(520px,calc(100% - 700px));min-width:260px}
#np-mapa .sello .sn{font-family:var(--display);font-weight:800;font-size:18px;color:#C2F04A}
#np-mapa .sello .st{font-family:var(--tecnico);font-size:11px;color:#E6E9EC;letter-spacing:.03em}
#np-mapa .sello .ev{border-color:#5A5F66;color:#C2C8CF;flex:none}
#np-mapa .sello .ev.med{background:#F4F1EA;color:#14171A;border-color:#F4F1EA}
#np-mapa .sello .ev.inf{border:1px dashed #C2F04A;color:#C2F04A}
#np-mapa .sello .ev.lec{border:1px dashed #9AA1A9}
#np-mapa .pasosf{display:grid;gap:8px;margin-top:12px}
#np-mapa .pasosf button{display:grid;grid-template-columns:30px 1fr;gap:10px;text-align:left;background:none;border:1px solid var(--ficha-borde);padding:10px;cursor:pointer;color:var(--ficha-fg)}
#np-mapa .pasosf button:hover{border-color:var(--ficha-gris)}
#np-mapa .pasosf button[aria-selected="true"]{border:2px solid var(--ficha-tit);background:var(--ficha-hover);padding:9px}
#np-mapa .pasosf .pn{font-family:var(--display);font-weight:800;font-size:24px;line-height:1;color:var(--ficha-gris)}
#np-mapa .pasosf button[aria-selected="true"] .pn{color:var(--ficha-tit)}
#np-mapa .pasosf .pt b{display:block;font-family:var(--display);font-size:15px;color:var(--ficha-tit)}
#np-mapa .pasosf .pt small{display:block;font-family:var(--tecnico);font-size:10.5px;color:var(--ficha-gris);margin:3px 0 6px;line-height:1.4}
#np-mapa .compara{margin-top:14px;padding:12px;border:1px solid var(--ficha-borde);background:var(--ficha-hover)}
#np-mapa .compara-top{display:flex;justify-content:space-between;gap:10px;font-family:var(--display);font-weight:700;font-size:13.5px;color:var(--ficha-tit)}
#np-mapa .compara-top small{font-family:var(--tecnico);font-weight:400;font-size:10px;color:var(--ficha-gris);letter-spacing:.04em}
#np-mapa #fT{width:100%;margin-top:10px;accent-color:var(--ficha-tit)}
#np-mapa .ficha .leyf{display:flex;flex-wrap:wrap;gap:12px;font-family:var(--tecnico);font-size:10.5px;color:var(--ficha-gris);margin:12px 0 0!important}
#np-mapa #dominios{grid-template-columns:1fr 1fr}
#np-mapa .rutas.n3{grid-template-columns:repeat(3,minmax(0,1fr))}
#np-mapa .rutas.n3 .ruta{font-size:12px;padding:7px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}

/* ---------- modo evolución, ideas y documentación ---------- */
#np-mapa .modos{grid-template-columns:repeat(3,minmax(0,1fr))}
#np-mapa .modos button{padding:10px 4px;letter-spacing:.06em}
#np-mapa .ficha{max-height:calc(100% - 96px)}
#np-mapa .ev.lec{border-style:dashed}
#np-mapa .btn-docs{position:absolute;right:20px;bottom:20px;width:360px;z-index:6;display:flex;align-items:center;gap:8px;background:rgba(14,17,20,.88);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--esc-borde);color:#F4F1EA;padding:11px 14px;cursor:pointer;font-family:var(--tecnico);font-size:11px;letter-spacing:.12em;text-transform:uppercase;text-align:left}
#np-mapa .btn-docs::after{content:"→";margin-left:auto;color:var(--acento)}
#np-mapa .btn-docs:hover,#np-mapa .btn-docs[aria-expanded="true"]{border-color:var(--acento);color:var(--acento)}
#np-mapa .btn-docs .n{background:var(--acento);color:var(--tinta);padding:2px 6px;letter-spacing:.04em}
#np-mapa .btn-docs .corto{display:none}
#np-mapa .docs{position:absolute;right:0;top:0;bottom:0;width:440px;max-width:100%;z-index:10;background:var(--ficha-bg);color:var(--ficha-fg);border-left:1px solid var(--ficha-borde);display:flex;flex-direction:column;box-shadow:-20px 0 50px rgba(0,0,0,.4)}
#np-mapa .docs-top{padding:14px 18px 12px;border-bottom:1px solid var(--ficha-borde)}
#np-mapa .docs-top .fila{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
#np-mapa .docs-kicker{font-family:var(--tecnico);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ficha-gris);margin:0 0 4px}
#np-mapa .docs h2{font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:-.02em;line-height:1;color:var(--ficha-tit);margin:0}
#np-mapa .docs-intro{margin:8px 0 0;font-size:14.5px;line-height:1.4;color:var(--ficha-gris)}
#np-mapa .docs-vistas{display:grid;grid-template-columns:1fr 1fr;margin-top:12px;border:1px solid var(--ficha-borde)}
#np-mapa .docs-vistas button{background:none;border:0;padding:8px;font-family:var(--tecnico);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;color:var(--ficha-fg)}
#np-mapa .docs-vistas button[aria-pressed="true"]{background:var(--ficha-tit);color:var(--ficha-bg)}
#np-mapa .docs-cuerpo{overflow:auto;padding:0 18px 24px;min-height:0;flex:1}
#np-mapa .docs-cuerpo h3{font-family:var(--tecnico);font-weight:500;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ficha-tit);margin:22px 0 4px;display:flex;justify-content:space-between;gap:8px;border-bottom:2px solid var(--ficha-tit);padding-bottom:6px}
#np-mapa .docs-cuerpo h3 small{font:inherit;color:var(--ficha-gris)}
#np-mapa .docs-cuerpo h3.base{border-bottom-color:var(--ficha-borde);color:var(--ficha-gris)}
#np-mapa .doc{border-bottom:1px solid var(--ficha-borde);padding:12px 2px;transition:background .3s}
#np-mapa .doc.foco{background:var(--ficha-hover);box-shadow:inset 3px 0 0 var(--ficha-tit);padding-left:12px}
#np-mapa .doc-top{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}
#np-mapa .doc-m{font-family:var(--tecnico);font-size:10.5px;color:var(--ficha-gris)}
#np-mapa .doc h4{font-family:var(--display);font-weight:700;font-size:15px;line-height:1.25;margin:8px 0 0;color:var(--ficha-tit)}
#np-mapa .doc h4 a{color:inherit;text-decoration:underline;text-decoration-color:var(--ficha-gris);text-underline-offset:3px}
#np-mapa .doc-h{margin:6px 0 0;font-size:15px;line-height:1.45}
#np-mapa .doc-l{margin:8px 0 0;font-family:var(--tecnico);font-size:10.5px;line-height:1.5;color:var(--ficha-gris)}
#np-mapa .doc-l b{font-weight:500;color:var(--ficha-tit);letter-spacing:.08em;text-transform:uppercase;margin-right:4px}
#np-mapa .doc-usos{display:flex;flex-wrap:wrap;gap:5px;align-items:center;margin-top:8px}
#np-mapa .doc-usos>span{font-family:var(--tecnico);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ficha-gris);margin-right:2px}
#np-mapa .doc-usos button{font-family:var(--tecnico);font-size:10.5px;padding:4px 7px;border:1px solid var(--ficha-borde);background:transparent;cursor:pointer;color:var(--sistema)}
#np-mapa .doc-usos button:hover{border-color:var(--sistema)}
#np-mapa .enlace-docs{display:flex;align-items:center;gap:8px;width:100%;margin-top:16px;background:none;border:1px dashed var(--ficha-gris);padding:10px 12px;cursor:pointer;font-family:var(--tecnico);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ficha-tit);text-align:left}
#np-mapa .enlace-docs::after{content:"→";margin-left:auto}
#np-mapa .enlace-docs:hover{border-style:solid}
/* ideas emergentes */
#np-mapa .ideas{position:absolute;inset:0;pointer-events:none;z-index:5;overflow:hidden}
#np-mapa .idea{position:absolute;left:0;top:0;opacity:0;transition:opacity .35s;will-change:transform}
#np-mapa .idea.vis{opacity:1}
#np-mapa .idea-punto{position:absolute;left:-6px;top:-6px;width:12px;height:12px;border:2px solid #C2F04A;border-radius:50%;box-shadow:0 0 14px rgba(194,240,74,.85)}
#np-mapa .idea-tarjeta{position:absolute;left:16px;bottom:16px;width:252px;pointer-events:auto;background:rgba(14,17,20,.5);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);border:1px solid rgba(194,240,74,.55);box-shadow:0 0 24px rgba(194,240,74,.12);padding:10px 12px;color:#F4F1EA;transform:translateY(var(--dy,0px))}
#np-mapa .idea-tarjeta::before{content:"";position:absolute;left:-16px;bottom:-16px;width:23px;height:1px;background:rgba(194,240,74,.75);transform-origin:0 0;transform:rotate(-45deg)}
#np-mapa .idea.izq .idea-tarjeta{left:auto;right:16px}
#np-mapa .idea.izq .idea-tarjeta::before{left:auto;right:-16px;transform-origin:100% 0;transform:rotate(45deg)}
#np-mapa .idea.abajo .idea-tarjeta{bottom:auto;top:16px;transform:translateY(calc(var(--dy,0px)*-1))}
#np-mapa .idea.abajo .idea-tarjeta::before{bottom:auto;top:-16px;transform:rotate(45deg)}
#np-mapa .idea.abajo.izq .idea-tarjeta::before{transform:rotate(-45deg)}
#np-mapa .idea.fija .idea-tarjeta{border-color:#C2F04A;background:rgba(14,17,20,.8)}
#np-mapa .idea-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
#np-mapa .idea .ev{border-color:#5A5F66;color:#C2C8CF}
#np-mapa .idea .ev.med{background:#F4F1EA;color:#14171A;border-color:#F4F1EA}
#np-mapa .idea .ev.inf{border:1px dashed #C2F04A;color:#C2F04A}
#np-mapa .idea .ev.lec{border:1px dashed #9AA1A9}
#np-mapa .idea-top button{background:none;border:0;color:#8A93A0;cursor:pointer;font-size:16px;line-height:1;padding:0 2px}
#np-mapa .idea-top button:hover{color:#fff}
#np-mapa .idea-t{margin:7px 0 0;font-family:var(--display);font-weight:700;font-size:15.5px;line-height:1.2;color:#F4F1EA;text-wrap:balance}
#np-mapa .idea-s{margin:5px 0 0;font-family:var(--tecnico);font-size:10.5px;line-height:1.45;color:#C2C8CF}
#np-mapa .idea-acc{display:flex;gap:6px;margin-top:9px}
#np-mapa .idea-acc button{font-family:var(--tecnico);font-size:10px;letter-spacing:.08em;text-transform:uppercase;background:transparent;border:1px solid #3A4047;color:#C2C8CF;padding:4px 7px;cursor:pointer}
#np-mapa .idea-acc button:hover,#np-mapa .idea-acc button[aria-pressed="true"]{border-color:#C2F04A;color:#C2F04A}
#np-mapa .idea.movil{transform:none!important;left:16px;right:16px}
#np-mapa .idea.movil .idea-punto,#np-mapa .idea.movil .idea-tarjeta::before{display:none}
#np-mapa .idea.movil .idea-tarjeta{position:static;width:auto;transform:none;background:rgba(14,17,20,.82)}
/* fichas de evolución */
#np-mapa .medidor{margin-top:14px;padding:12px;border:1px solid var(--ficha-borde);background:var(--ficha-hover)}
#np-mapa .med-n{display:flex;align-items:baseline;gap:10px}
#np-mapa .med-n b{font-family:var(--display);font-weight:800;font-size:40px;letter-spacing:-.03em;color:var(--ficha-tit);font-variant-numeric:tabular-nums;line-height:1}
#np-mapa .med-n span{font-family:var(--tecnico);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ficha-gris)}
#np-mapa .med-bar{height:10px;background:var(--ficha-borde);margin-top:10px}#np-mapa .med-bar i{display:block;height:100%;background:var(--ficha-tit);transition:width .4s}
#np-mapa .med-meta{display:flex;justify-content:space-between;gap:8px;margin-top:8px;font-family:var(--tecnico);font-size:10.5px;color:var(--ficha-gris)}
#np-mapa .rbar button.rrow{background:none;border:0;padding:0;cursor:pointer;text-align:left;width:100%;font:inherit;font-family:var(--tecnico);font-size:11px}
#np-mapa .rbar button.rrow:hover .rn{color:var(--ficha-tit);text-decoration:underline}
#np-mapa .rrow.danado .rt i{background:var(--ficha-borde);outline:1px dashed var(--ficha-gris)}#np-mapa .rrow.danado .rn{text-decoration:line-through}
#np-mapa .etapas{display:grid;gap:4px;margin-top:4px}
#np-mapa .etapas button{background:none;border:0;padding:4px 0;font-family:var(--tecnico);font-size:10px;color:var(--ficha-gris);cursor:pointer;text-align:center;line-height:1.3}
#np-mapa .etapas button:first-child{text-align:left}#np-mapa .etapas button:last-child{text-align:right}
#np-mapa .etapas button[aria-current="true"]{color:var(--ficha-tit);font-weight:500;text-decoration:underline;text-underline-offset:3px}
#np-mapa #eT{width:100%;margin-top:10px;accent-color:var(--ficha-tit)}
#np-mapa .estado2{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--ficha-borde);border:1px solid var(--ficha-borde);margin-top:12px}
#np-mapa .estado2>div{background:var(--ficha-bg);padding:8px 10px}
#np-mapa .estado2 span{display:block;font-family:var(--tecnico);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--ficha-gris)}
#np-mapa .estado2 b{display:block;font-family:var(--display);font-size:14.5px;color:var(--ficha-tit);margin-top:3px;line-height:1.2}
#np-mapa .canales{display:grid;gap:4px;margin-top:10px;font-family:var(--tecnico);font-size:10.5px;color:var(--ficha-fg)}
#np-mapa .canales span{display:flex;align-items:center;gap:8px}#np-mapa .canales i{width:18px;height:4px;display:block;flex:none}
#np-mapa .et.tracto{font-style:italic;background:rgba(40,32,22,.72);color:#EDE3C8}
#np-mapa .et.dq{background:rgba(120,40,140,.85);color:#fff;border-left-color:#E47BFF}
#np-mapa{--c-azar:#3D5BD9;--c-hub:#D9432F}


#np-mapa .vista{margin:4px 0 12px;padding:10px;border:1px solid var(--ficha-borde)}
#np-mapa .vista-t{display:block;font-family:var(--tecnico);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ficha-gris);margin-bottom:6px}
#np-mapa .vista-b{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--ficha-borde)}
#np-mapa .vista-b button{background:none;border:0;padding:7px 4px;font-family:var(--tecnico);font-size:10.5px;letter-spacing:.06em;cursor:pointer;color:var(--ficha-fg)}
#np-mapa .vista-b button[aria-pressed="true"]{background:var(--ficha-tit);color:var(--ficha-bg)}
#np-mapa .ficha .vista-ley{display:grid;gap:4px;margin:8px 0 0!important;font-family:var(--tecnico);font-size:10.5px!important;line-height:1.35!important;color:var(--ficha-gris)}
#np-mapa .vista-ley span{display:flex;align-items:center;gap:8px}
#np-mapa .vista-ley i{display:block;flex:none;width:20px}
#np-mapa .vista-ley i.tubo{height:4px;border-radius:2px;background:#CDBF9A}
#np-mapa .vista-ley i.hilo{height:2px;background:var(--ficha-tit)}
#np-mapa .medidor2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;padding:12px;border:1px solid var(--ficha-borde);background:var(--ficha-hover)}
#np-mapa .mh{font-family:var(--tecnico)!important;font-size:10px!important;letter-spacing:.1em;text-transform:uppercase;color:var(--ficha-tit);margin:0 0 6px!important}
#np-mapa .mrow{display:grid;grid-template-columns:1fr auto;gap:2px 6px;align-items:baseline;margin-bottom:8px}
#np-mapa .mrow .mn{font-family:var(--tecnico);font-size:10.5px;color:var(--ficha-gris)}
#np-mapa .mrow b{font-family:var(--display);font-weight:800;font-size:20px;color:var(--ficha-tit);font-variant-numeric:tabular-nums}
#np-mapa .mrow .mt{grid-column:1/-1;height:6px;background:var(--ficha-borde);display:block}#np-mapa .mrow .mt i{display:block;height:100%;background:var(--ficha-tit);transition:width .4s}
#np-mapa .med-meta2{display:grid;gap:3px;margin-top:8px;font-family:var(--tecnico);font-size:10.5px;color:var(--ficha-gris)}
#np-mapa .med-meta2 .dqt{color:#B04BC4}
#np-mapa .estado2.e4{grid-template-columns:1fr 1fr}
#np-mapa .barras3{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:6px}
#np-mapa .b3{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;align-items:end;height:110px;position:relative;padding-top:16px}
#np-mapa .b3n{position:absolute;left:0;top:0;font-family:var(--tecnico);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ficha-tit)}
#np-mapa .b3c{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%}
#np-mapa .b3c i{display:block;width:100%;background:var(--ficha-tit);border-radius:4px 4px 0 0}
#np-mapa .b3c:nth-child(3) i{opacity:.75}#np-mapa .b3c:nth-child(4) i{opacity:.45}
#np-mapa .b3c small{font-family:var(--tecnico);font-size:9.5px;color:var(--ficha-gris);margin-top:4px}
#np-mapa .curva{margin:6px 0 0;position:relative}
#np-mapa .curva figcaption{font-family:var(--tecnico);font-size:10.5px;color:var(--ficha-tit);margin-bottom:4px}
#np-mapa .curva svg{width:100%;height:auto;display:block;font-family:var(--tecnico);font-size:9px;fill:var(--ficha-gris)}
#np-mapa .curva-ley{display:flex;gap:14px;flex-wrap:wrap;font-family:var(--tecnico);font-size:10.5px;color:var(--ficha-fg);margin-top:4px}
#np-mapa .curva-ley span{display:flex;align-items:center;gap:6px}#np-mapa .curva-ley i{display:block;width:18px;height:2px}#np-mapa .curva-ley i.dash{height:0;border-top:2px dashed}
#np-mapa .curva-tip{position:absolute;top:20px;background:var(--ficha-bg);border:1px solid var(--ficha-borde);padding:6px 8px;font-family:var(--tecnico);font-size:10.5px;display:grid;gap:2px;pointer-events:none;box-shadow:0 4px 12px rgba(0,0,0,.15);color:var(--ficha-fg)}
#np-mapa .curva-tip span{display:flex;align-items:center;gap:6px}#np-mapa .curva-tip i{width:10px;height:2px;display:block}
#np-mapa .mods{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:5px}
#np-mapa .mods li{display:flex;gap:8px;align-items:baseline;font-family:var(--display);font-weight:500;font-size:14px;color:var(--ficha-tit)}
#np-mapa .mods li .cuad{transform:translateY(-1px)}
#np-mapa #panelEvol .ruta small{display:block;margin-top:2px;font-size:10px}
#np-mapa #panelEvol .ruta{flex-direction:column;gap:0}
@media (max-width:980px){ #np-mapa .btn-docs{width:320px} }
@media (max-width:820px){
  #np-mapa .ficha{max-height:46%}
  #np-mapa .btn-docs{right:16px;top:16px;bottom:auto;width:auto;padding:9px 11px;font-size:10.5px}
  #np-mapa .btn-docs::after{content:none}
  #np-mapa .btn-docs .largo{display:none}#np-mapa .btn-docs .corto{display:inline}
  #np-mapa .docs{width:auto;left:0;border-left:0}
}

/* ---------- móvil ---------- */
@media (max-width:980px){
  #np-mapa .ficha{width:320px}
  #np-mapa .carril{width:270px}
  #np-mapa .cabeza h1{font-size:36px}
}
@media (max-width:820px){
  #np-mapa .esc{height:calc(100svh - 60px);min-height:560px}
  #np-mapa .carril{left:0;top:0;bottom:0;width:min(88vw,330px);padding:16px;background:rgba(11,13,16,.96);transform:translateX(-102%);transition:transform .25s ease;overflow:auto;z-index:9}
  #np-mapa .carril.abierto{transform:none}
  #np-mapa .carril .panel.scroll{flex:none;overflow:visible}
  #np-mapa .abrir-carril{display:block;position:absolute;left:16px;top:16px;z-index:7;font-family:var(--tecnico);font-size:11px;letter-spacing:.12em;text-transform:uppercase;background:var(--acento);color:var(--tinta);border:0;padding:9px 12px;cursor:pointer}
  #np-mapa .ficha{left:0;right:0;top:auto;bottom:0;width:auto;max-height:46%;border-left:0;border-right:0}
  #np-mapa .ficha h2{font-size:24px}
  #np-mapa .pista{display:none}
  #np-mapa .sello{left:16px;right:16px;top:60px;transform:none;max-width:none;min-width:0}
}
@media (prefers-reduced-motion: reduce){#np-mapa .carril{transition:none}}
/* enlace al Laboratorio y estado de la versión */
#np-mapa .cabeza .kicker a{color:inherit;text-decoration:none;border-bottom:1px solid #5A5F66}#np-mapa .cabeza .kicker a:hover{color:var(--acento);border-color:var(--acento)}#np-mapa .cabeza .kicker{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}#np-mapa .cabeza .version{display:inline-block;background:var(--acento);color:var(--tinta);padding:3px 7px;letter-spacing:.08em}
