/* ayuda.css — cómo se ve la ayuda de Loea Solutions.
 * ═══════════════════════════════════════════════════════════════════════
 * Aquí no hay ni una fórmula, así que vive en el NÚCLEO y no en un área.
 * Es la regla de oro del `CLAUDE.md` de la raíz, y aplica entera: la ficha
 * de `VF` y la de `NUMEROLETRAS` se dibujan igual, y `en` va a querer la
 * misma. Dejarla dentro de `ax` habría sido el caso `#cards` otra vez, con
 * 363 reglas en vez de 22.
 *
 * (`ARMAZON-DEL-PANEL.md` §9 decía «lo de la ficha es del menú». Se escribió
 * el 27 ago 2026, antes del rediseño y antes de que `en` decidiera reusar
 * estas piezas. Queda corregido aquí.)
 *
 * ── POR QUÉ ES UN SOLO ARCHIVO Y NO OCHO ──────────────────────────────
 * El diseño se decidió en `docs/referencia/_ayuda/` **por capas**: cada
 * opción se cargaba encima de la anterior y sólo pisaba lo que cambiaba, que
 * es lo que permitía abrir dos y compararlas sin tocar la de abajo. Ocho
 * archivos y una guerra de especificidad documentada capa por capa.
 *
 * Eso servía para DECIDIR. Para publicar no: aquí van concatenadas **en el
 * mismo orden**, que es la única manera de garantizar que lo que se ve es
 * exactamente lo que se aprobó. Se comprobó comparando los estilos calculados
 * contra la maqueta, propiedad por propiedad.
 *
 * Quedan reglas que una capa posterior pisa —el `background:none` del banner
 * en la G, que la I devuelve— y eso es deuda a limpiar en frío, con la
 * comparación delante. NO se limpió al migrar: una cosa es mudar y otra
 * reescribir, y hacerlas juntas es como se pierde el parecido.
 *
 * ── EL ORDEN IMPORTA ──────────────────────────────────────────────────
 * Las secciones de abajo van en el orden en que se cargaban. Mover una es
 * cambiar el diseño, aunque no se toque ni una declaración.
 * ═══════════════════════════════════════════════════════════════════════ */



/* ════════════════════════════════════════════════════════════════════
   LA BASE · el `<style>` en línea de la ayuda publicada, tal cual
   · viene de `docs/referencia/_ayuda/base.css`
   ════════════════════════════════════════════════════════════════════ */

/* base.css — el <style> EN LINEA de `ax/src/taskpane/ayuda.html`, copiado tal
   cual el 29 ago 2026 y sin una sola declaracion cambiada. Es el punto de
   partida de las opciones de al lado: cada `opcion-*.css` se carga DESPUES y
   solo pisa lo que quiere cambiar.

   NO se edita. Si la ayuda de verdad cambia, esto se vuelve a copiar. */

    /* ── Mismo sistema visual que la web app äx (docs/referencia/suite-actuarial.jsx) ── */
    /* El vocabulario de la ayuda ya no tiene colores propios: es un ALIAS del
       de la familia (../../../nucleo/panel/loea.css), igual que el del panel.
       Con eso el modo oscuro llega solo, sin una segunda lista que mantener.
       `--accent` es el acento de TEXTO (se aclara en oscuro); donde el verde
       es SUPERFICIE con texto claro encima va `--loea-acc-fondo`, que no
       cambia. Las maquetas de hoja de Excel (table.hoja, table.mini) y el
       bloque de codigo conservan sus colores: son la REPRESENTACION de una
       hoja y de una consola, no parte del tema de la pagina. */
    :root{
      --bg:var(--loea-bg); --surface:var(--loea-card); --surface2:var(--loea-soft);
      --ink:var(--loea-ink); --dim:var(--loea-mut);
      --accent:var(--loea-acc); --accent-soft:var(--loea-soft); --on-accent:var(--loea-on-acc);
      --brass:var(--loea-brass); --brass-soft:var(--loea-brass-soft);
      --line:var(--loea-line); --grid:rgba(14,107,88,.08);
      --shadow:var(--loea-sombra-1);
      --radius:var(--loea-radio);
      /* Los --font-* mandan desde ../../../nucleo/panel/loea.css. Se repiten
         aqui A PROPOSITO: si esa hoja no cargara, sin este respaldo la ayuda
         entera se veria en Times New Roman. Mismos valores, cero diferencia
         visual. Se borran cuando la ayuda pase entera a los tokens --loea-*
         (PLAN.md, Fase 12). */
      /* Los --font-* vienen de ../../../nucleo/panel/loea.css: panel y ayuda
         comparten ya la pareja del catalogo (Newsreader + IBM Plex Sans).
         Se repiten aqui como RESPALDO: si esa hoja no cargara, sin esto la
         ayuda entera se veria en Times New Roman. */
      --font-display:'Newsreader', Georgia, 'Times New Roman', serif;
      --font-body:'IBM Plex Sans','Segoe UI', system-ui, sans-serif;
      --font-mono:'IBM Plex Mono', ui-monospace, 'SF Mono', Consolas, monospace;
      --font-math:'Newsreader','Cambria Math','Cambria','Times New Roman',serif;
    }
    *{box-sizing:border-box;}
    body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;}
    a{color:var(--accent);}
    [hidden]{display:none !important;}
    :focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px;}

    /* barra superior */
    .ax-topbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 20px;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40;}
    .ax-brand{display:flex;align-items:center;gap:11px;min-width:max-content;text-decoration:none;color:var(--ink);}
    /* El isotipo de Academia LOEA: el complemento trae varias materias, y el
       cuadrado verde con la aa serif solo hablaba de la actuarial. */
    .ax-logo{width:40px;height:40px;border-radius:11px;background:url("assets/icon-128.png") center/contain no-repeat;}
    .ax-logo .sub{font-size:11px;vertical-align:sub;}
    .ax-brand-name{font-family:var(--font-display);font-weight:600;font-size:17px;}
    .ax-brand-tag{font-size:10.5px;color:var(--dim);letter-spacing:.09em;text-transform:uppercase;}
    .ax-search{flex:1 1 240px;max-width:520px;position:relative;}
    .ax-search input{width:100%;padding:9px 34px 9px 36px;border-radius:999px;border:1px solid var(--line);background:var(--surface2);color:var(--ink);font:inherit;font-size:13.5px;}
    .ax-search input::placeholder{color:var(--dim);}
    .ax-search .ic{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--dim);display:flex;}
    .ax-search .clr{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--dim);cursor:pointer;font-size:15px;padding:2px 6px;}
    .ax-top-actions{margin-left:auto;display:flex;align-items:center;gap:8px;}
    .ax-plan{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;padding:7px 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface2);color:var(--ink);text-decoration:none;white-space:nowrap;}
    .ax-plan .dot{width:8px;height:8px;border-radius:50%;background:var(--loea-acc-fondo);}
    .ax-plan.volver{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);}
    .ax-plan.area{cursor:pointer;}
    .ax-plan.area.off{opacity:.5;font-weight:500;}
    .ax-plan.area.off .dot{background:var(--dim,#8a9a92);}

    /* cinta de módulos */
    .ax-ribbon{background:var(--surface);border-bottom:1px solid var(--line);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:22px 22px;}
    .ax-tabs{display:flex;gap:2px;overflow-x:auto;padding:10px 12px 0;scrollbar-width:thin;}
    .ax-tab{appearance:none;background:transparent;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:8px 14px 10px;border-radius:12px 12px 0 0;color:var(--dim);font:inherit;min-width:max-content;border-bottom:3px solid transparent;transition:color .15s ease,background .15s ease;text-decoration:none;}
    .ax-tab:hover{background:var(--surface2);color:var(--ink);}
    .ax-tab.active{color:var(--ink);border-bottom-color:var(--accent);background:var(--surface2);}
    .ax-tab-top{display:flex;align-items:baseline;gap:7px;}
    .ax-tab-num{font-family:var(--font-mono);font-size:9.5px;color:var(--dim);letter-spacing:.05em;}
    .ax-tab-sym{font-family:var(--font-display);font-style:italic;font-size:15.5px;color:var(--accent);line-height:1;}
    .ax-tab.premium .ax-tab-sym{color:var(--brass);}
    .ax-tab-name{font-size:12.5px;font-weight:600;letter-spacing:.01em;display:flex;align-items:center;gap:6px;}
    .lk{color:var(--brass);display:inline-flex;}
    /* Los chips ENVUELVEN. Con `min-width:max-content` el grupo medía lo que
       midieran sus chips y nunca envolvía, así que el padre desplazaba: con 2 a 9
       chips cabía y no se notaba, pero «Todas las herramientas» tiene 25 —unos
       2500 px— y salía una tira con barra de desplazamiento (26 ago 2026).
       Aquí hay ancho de navegador de sobra; el que no puede crecer a lo alto es
       el panel, y ése lleva flechas. */
    .ax-ctx{display:flex;flex-wrap:wrap;gap:10px 20px;padding:10px 20px;background:var(--surface2);border-bottom:1px solid var(--line);}
    .ax-ctx-group{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;}
    .ax-ctx-label{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);font-weight:700;padding-right:2px;}
    .ax-ctx-sep{width:1px;align-self:stretch;background:var(--line);flex:0 0 1px;}
    .ax-chip{appearance:none;font:inherit;font-size:12.5px;font-weight:500;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;display:flex;align-items:center;gap:6px;white-space:nowrap;text-decoration:none;}
    .ax-chip:hover{border-color:var(--accent);}
    .ax-chip.active{background:var(--loea-acc-fondo);border-color:var(--accent);color:var(--on-accent);}
    .ax-chip.off{opacity:.55;cursor:not-allowed;}
    .ax-chip.off:hover{border-color:var(--line);}

    /* contenido */
    .ax-main{max-width:1180px;margin:0 auto;padding:26px 20px 46px;}
    .ax-hero{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:8px;padding-bottom:18px;border-bottom:1px solid var(--line);}
    .ax-hero h1{font-family:var(--font-display);font-size:clamp(26px,4vw,36px);font-weight:500;margin:0 0 6px;letter-spacing:.1px;}
    .ax-hero h1 .not{font-family:var(--font-math);font-weight:500;font-size:.7em;color:var(--dim);margin-left:12px;}
    .ax-hero p{margin:0;color:var(--dim);max-width:660px;font-size:14px;}
    .ax-hero-meta{display:flex;gap:8px;flex-wrap:wrap;}
    .ax-tagchip{font-size:11.5px;font-weight:600;padding:5px 11px;border-radius:999px;background:var(--accent-soft);color:var(--accent);white-space:nowrap;}
    .ax-tagchip.brass{background:var(--brass-soft);color:var(--brass);}
    .ax-sechead{display:flex;align-items:baseline;gap:10px;margin:28px 0 14px;}
    .ax-sechead .letra{font-family:var(--font-display);font-style:italic;color:var(--accent);font-size:22px;}
    .ax-sechead h2{font-family:var(--font-display);font-size:20px;font-weight:500;margin:0;letter-spacing:-.015em;}
    .ax-sechead .cnt{color:var(--loea-mut-2);font-size:11.5px;font-family:var(--font-mono);}
    .ax-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:16px;}
    .ax-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px 18px 16px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px;}
    .ax-eyebrow{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);font-weight:500;}
    .ax-card h3{font-family:var(--font-display);font-size:19px;font-weight:500;margin:0;letter-spacing:-.01em;}
    .ax-card h3 a{color:inherit;text-decoration:none;}
    .ax-card h3 a:hover{color:var(--accent);}
    .ax-fn{font-family:var(--font-mono);font-size:12px;color:var(--accent);font-weight:600;margin-top:3px;}
    .ax-tex{background:var(--surface2);border-left:3px solid var(--accent);border-radius:8px;padding:12px 14px;overflow-x:auto;font-family:var(--font-math);font-size:17px;text-align:center;}
    .ax-tex + .ax-tex{margin-top:-4px;}
    /* Tabla dentro de un paso del método. Los números van a la derecha y en
       tipografía tabular: una columna de cifras que no se alinea no se puede
       comparar de un vistazo, que es para lo único que sirve la tabla. */
    .ax-tabla{overflow-x:auto;margin:10px 0 4px;}
    .ax-tabla table{border-collapse:collapse;width:100%;font-size:14px;}
    .ax-tabla th,.ax-tabla td{padding:7px 12px;border-bottom:1px solid var(--line);text-align:right;}
    .ax-tabla th:first-child,.ax-tabla td:first-child{text-align:left;}
    .ax-tabla thead th{font-weight:600;color:var(--dim);border-bottom:2px solid var(--line);white-space:nowrap;}
    .ax-tabla td{font-variant-numeric:tabular-nums;}
    .ax-tabla tbody tr:last-child td{border-bottom:none;}
    .ax-tex.multi{text-align:left;display:grid;gap:6px;}
    /* Los pasos del método: para las funciones cuyo resultado no se puede
       comprobar de un vistazo, como una simulación. */
    .paso{border-left:2px solid var(--line);padding:2px 0 2px 18px;margin:14px 0;}
    .paso h3{font-family:var(--font-display);font-size:17px;font-weight:500;margin:0 0 6px;letter-spacing:-.01em;display:flex;align-items:center;gap:9px;}
    .paso .np{display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px;border-radius:50%;background:var(--accent);color:#fff;font-family:var(--font-mono);font-size:12px;font-weight:600;flex:none;}
    .paso p{margin:6px 0;}
    .ax-vars{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:13px;margin:0;}
    .ax-vars dt{color:var(--ink);font-weight:500;font-family:var(--font-mono);font-size:12px;}
    .ax-vars dt small{color:var(--dim);font-weight:400;}
    .ax-vars dd{margin:0;color:var(--dim);}
    .ax-sup{font-size:12.5px;color:var(--dim);border-top:1px dashed var(--line);padding-top:10px;}
    .ax-sup b{color:var(--ink);font-weight:600;}
    .ax-ej{border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:var(--surface2);}
    .ax-ej-label{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);font-weight:700;margin-bottom:6px;}
    .ax-ej p{margin:0 0 8px;font-size:13px;}
    .ax-ej-row{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:2px 0;}
    .ax-ej-row .k{color:var(--dim);font-family:var(--font-mono);font-size:12px;}
    .ax-ej-row .v{font-family:var(--font-mono);font-weight:500;text-align:right;}
    .ax-more{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12.5px;}
    .ax-more a{font-weight:600;text-decoration:none;}
    .ax-more span{color:var(--dim);}
    .ang{display:inline-block;border-top:1px solid currentColor;border-right:1px solid currentColor;padding:0 3px 0 2px;font-size:.72em;vertical-align:-.15em;line-height:1.1;}
    code{font-family:var(--font-mono);font-size:12px;background:var(--surface2);border:1px solid var(--line);border-radius:4px;padding:0 4px;}

    /* módulo en construcción */
    .ax-locked{max-width:680px;margin:34px auto 10px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:var(--shadow);position:relative;overflow:hidden;}
    .ax-locked::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--brass),var(--accent));}
    .ax-locked.build::before{background:var(--loea-acc-fondo);}
    .ax-locked-sym{font-family:var(--font-display);font-style:italic;font-size:38px;color:var(--brass);line-height:1;}
    .ax-locked.build .ax-locked-sym{color:var(--accent);}
    .ax-locked h2{font-family:var(--font-display);margin:8px 0 4px;font-size:26px;font-weight:600;}
    .ax-locked .sub{color:var(--dim);font-size:14px;margin:0;}
    .ax-locked ul{margin:16px 0 6px;padding:0;list-style:none;display:grid;gap:8px;}
    .ax-locked li{display:flex;gap:10px;font-size:13.5px;color:var(--dim);}
    .ax-locked li::before{content:"—";color:var(--brass);flex:0 0 auto;}
    .ax-locked.build li::before{color:var(--accent);}
    .ax-locked .hint{font-size:12px;color:var(--dim);margin-top:16px;}

    /* ficha completa de una función */
    .ficha .crumb{font-size:12px;color:var(--dim);margin:0 0 6px;}
    .ficha .crumb a{text-decoration:none;}
    .ficha h2{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-weight:500;border-bottom:1px solid var(--line);padding-bottom:6px;margin:28px 0 10px;}
    .ficha p{margin:6px 0;font-size:14px;}
    .ficha .cols{display:grid;grid-template-columns:1fr;gap:0 28px;}
    @media (min-width:980px){ .ficha .cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);} }
    .sint{font-family:var(--font-mono);font-size:13.5px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:10px;padding:10px 14px;}
    table.args{border-collapse:collapse;width:100%;background:var(--surface);border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:13px;}
    table.args th{background:var(--surface2);text-align:left;padding:7px 10px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);}
    table.args td{padding:7px 10px;border-top:1px solid var(--line);vertical-align:top;}
    table.args td.an{font-family:var(--font-mono);font-weight:600;white-space:nowrap;font-size:12.5px;}
    table.args td.rq{white-space:nowrap;font-size:11px;font-weight:600;}
    table.args td.rq.si{color:#B23A3A;} table.args td.rq.no{color:var(--dim);font-weight:500;}
    .hoja-wrap{overflow-x:auto;margin:10px 0 4px;}
    table.hoja{border-collapse:collapse;font-size:12.5px;background:#fff;font-family:"Segoe UI",system-ui,sans-serif;}
    table.hoja th{background:#E9ECEA;color:#444;font-weight:500;border:1px solid #C9CFCB;padding:3px 10px;min-width:34px;text-align:center;}
    table.hoja th.rn{min-width:28px;}
    table.hoja td{border:1px solid #C9CFCB;padding:3px 10px;min-width:70px;text-align:left;white-space:nowrap;}
    table.hoja td.fx{background:#FFF4CC;outline:2px solid var(--accent);outline-offset:-2px;font-weight:600;}
    table.hoja td.sp{background:#EEF5F1;}
    table.hoja.salida th{background:var(--accent-soft);color:var(--accent);}
    .barra{display:flex;gap:10px;align-items:center;font-family:var(--font-mono);font-size:12.5px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:5px 8px;margin-top:4px;}
    .barra .ref{background:#E9ECEA;padding:1px 7px;border-radius:4px;}
    .barra .res{color:var(--brass);font-weight:600;margin-left:auto;}
    .salida-t{font-size:12.5px;color:var(--dim);margin-top:12px;}
    ul.extra{margin:10px 0 0 18px;padding:0;font-size:13px;}
    ul.extra li{margin:4px 0;}
    table.mini{border-collapse:collapse;margin:6px 0;font-size:12.5px;background:#fff;}
    table.mini th,table.mini td{border:1px solid #C9CFCB;padding:2px 10px;text-align:center;}
    table.mini th{background:#E9ECEA;font-weight:600;}
    .ref{font-size:13px;color:var(--dim);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 14px;}
    .ficha ul.notas{margin:6px 0 0 18px;padding:0;font-size:13.5px;}
    .ver a{font-family:var(--font-mono);text-decoration:none;font-size:13px;}
    
    .ax-footer{border-top:1px solid var(--line);margin-top:34px;padding:20px;color:var(--dim);font-size:12.5px;}
    .ax-footer-inner{max-width:1180px;margin:0 auto;display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;}
    @media (max-width:640px){ .ax-brand-tag{display:none;} .ax-main{padding:20px 14px 40px;} .ax-tab-name{font-size:11.5px;} }


/* ════════════════════════════════════════════════════════════════════
   LA PIEL · tipografía editorial, la lámina del módulo, las cajas
   · viene de `docs/referencia/_ayuda/opcion-c.css`
   ════════════════════════════════════════════════════════════════════ */

/* ══════════════════════════════════════════════════════════════════════
   OPCION C · «con carácter» — la misma pagina, vestida
   ══════════════════════════════════════════════════════════════════════
   La apuesta mas conservadora de las tres: no mueve ni una pieza de sitio.
   Misma barra, misma cinta, mismas tarjetas en tres columnas, mismo orden de
   lectura. Lo que cambia es que la pagina DICE de quien es.

   El diagnostico del que sale: hoy la ayuda es gris sobre hueso de arriba
   abajo, y el verde de la familia solo asoma en dos chips y en el filo
   izquierdo de las formulas. Una pagina que se abre en gris no se distingue
   de cualquier documentacion, y esta es la cara publica del complemento.

   Riesgo: el menor. Si manana no gusta, se borra este archivo y la ayuda es
   exactamente la que era.
   ══════════════════════════════════════════════════════════════════════ */

/* ── La barra: de blanca a verde ────────────────────────────────────────
   `--loea-acc-fondo` es el verde SUPERFICIE de la familia —el mismo de la
   cabecera del panel— y no cambia entre claro y oscuro, asi que la marca se
   ve igual en los dos temas. Es literalmente la misma barra que ve el alumno
   dentro de Excel: abrir la ayuda deja de sentirse como salir a otro sitio. */
.ax-topbar{background:var(--loea-acc-fondo);border-bottom:0;color:var(--loea-on-acc);
  box-shadow:0 1px 0 rgba(0,0,0,.10),0 8px 24px -20px rgba(0,0,0,.5);}
.ax-brand,.ax-brand-name{color:var(--loea-on-acc);}
.ax-brand-tag{color:rgba(255,255,255,.72);}
.ax-logo{border-radius:11px;background-color:rgba(255,255,255,.92);padding:0;
  box-shadow:0 2px 8px rgba(0,0,0,.22);}
/* El buscador, translucido sobre el verde: sigue siendo el elemento mas ancho
   de la barra, que es lo que tiene que ser en una pagina de consulta. */
.ax-search input{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.34);
  color:var(--loea-on-acc);}
.ax-search input::placeholder{color:rgba(255,255,255,.66);}
.ax-search .ic,.ax-search .clr{color:rgba(255,255,255,.78);}
.ax-plan{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.34);color:var(--loea-on-acc);}
.ax-plan.volver{background:var(--loea-card);border-color:var(--loea-card);color:var(--loea-acc);}
.ax-plan .dot{background:#fff;}
.ax-plan.area.off{opacity:.62;}
.ax-plan.area.off .dot{background:rgba(255,255,255,.5);}

/* ── La cinta: pestañas de verdad ───────────────────────────────────────
   Hoy el modulo abierto se marca con un filo de 3 px que compite con la
   cuadricula del fondo. Aqui la pestana activa se LEVANTA —fondo de tarjeta,
   esquinas altas, sombra— y las demas se hunden. Es la metafora de siempre y
   se entiende sin leer. */
.ax-ribbon{background:var(--loea-soft);background-image:none;border-bottom:1px solid var(--loea-line);}
.ax-tabs{padding:9px 12px 0;gap:3px;}
.ax-tab{border-bottom:0;padding:9px 15px 11px;position:relative;top:1px;}
.ax-tab:hover{background:rgba(255,255,255,.55);}
.ax-tab.active{background:var(--loea-card);color:var(--loea-ink);
  box-shadow:0 -2px 10px -6px rgba(0,0,0,.4);}
.ax-tab.active::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,var(--loea-acc-vivo),var(--loea-acc-fondo));
  border-radius:3px 3px 0 0;}
.ax-tab-num{font-size:10px;}
.ax-tab-sym{font-size:17px;}

/* ── El hero: una portada, no un titulo suelto ──────────────────────────
   La lamina del modulo a la derecha, recortada en banda y desvanecida hacia
   el texto para que no compita con el. Las 12 ya existen y aqui no costaban
   nada: ver `_lamina.js`. Si un modulo no tuviera lamina, queda el degradado
   y no se nota que falta. */
.ax-hero{position:relative;overflow:hidden;border-bottom:0;border-radius:var(--loea-radio);
  padding:26px 28px;margin:0 0 6px;align-items:center;
  background:linear-gradient(105deg,var(--loea-soft) 0%,var(--loea-soft) 46%,transparent 78%),
             var(--lamina, none) right center/cover no-repeat,var(--loea-soft);
  border:1px solid var(--loea-line);}
.ax-hero > div:first-child{position:relative;z-index:1;max-width:62%;}
.ax-hero h1{font-size:clamp(28px,4.2vw,40px);letter-spacing:-.015em;}
.ax-hero p{color:var(--loea-mut);max-width:52ch;}
.ax-hero-meta{position:relative;z-index:1;}
.ax-tagchip{background:var(--loea-card);border:1px solid var(--loea-line);
  box-shadow:0 1px 3px rgba(0,0,0,.06);}

/* ── Los rotulos de seccion, con peso ───────────────────────────────────
   Hoy la letra de seccion es una cursiva de 22 px que se pierde. Se convierte
   en un disco de acento: a la altura del ojo cuando se recorre la pagina. */
.ax-sechead{margin:34px 0 16px;align-items:center;}
.ax-sechead .letra{width:34px;height:34px;flex:none;display:grid;place-items:center;
  border-radius:11px;font-size:17px;font-style:italic;
  background:linear-gradient(140deg,var(--loea-acc-vivo),var(--loea-acc-fondo));
  color:var(--loea-on-acc);box-shadow:0 3px 11px -4px rgba(31,85,96,.5);}
.ax-sechead h2{font-size:23px;}

/* ── Las tarjetas: la formula es la protagonista ────────────────────────
   Es lo que el alumno viene a ver, y hoy es una caja gris mas entre las
   demas. Se le da superficie propia, mas aire y el filo en degradado. La
   tarjeta entera reacciona al raton: hoy no reacciona nada y no parece que
   se pueda entrar. */
.ax-card{border-radius:14px;padding:20px;transition:transform .16s cubic-bezier(.2,.7,.3,1),
  box-shadow .16s,border-color .16s;}
.ax-card:hover{transform:translateY(-2px);border-color:transparent;
  box-shadow:0 14px 34px -20px rgba(0,0,0,.45);}
.ax-tex{background:var(--loea-card);border:1px solid var(--loea-line);border-left:3px solid transparent;
  border-image:linear-gradient(var(--loea-acc-vivo),var(--loea-acc-fondo)) 1;
  border-radius:0;padding:15px 16px;font-size:18.5px;}
.ax-fn{display:inline-block;background:var(--loea-soft);color:var(--loea-acc);
  padding:3px 9px;border-radius:6px;font-size:11.5px;letter-spacing:.02em;}
.ax-eyebrow{color:var(--loea-mut-2);}


/* ════════════════════════════════════════════════════════════════════
   EL MARCO · el menú de módulos de pie, a la izquierda
   · viene de `docs/referencia/_ayuda/opcion-e-menu.css`
   ════════════════════════════════════════════════════════════════════ */

/* ══════════════════════════════════════════════════════════════════════
   OPCIÓN E · la C con el menú de la B
   ══════════════════════════════════════════════════════════════════════
   Elegido el 30 ago 2026. No es un archivo nuevo con todo dentro: se carga
   DESPUÉS de `opcion-c.css` y sólo hace dos cosas — poner el índice de pie a
   la izquierda, y deshacer lo que la C había hecho suponiendo que las
   pestañas seguían acostadas. Si mañana se retoca la C, esta capa la sigue.

   ── Lo que se hereda de cada una ──────────────────────────────────────
     De la C   la barra verde, la lámina en el encabezado, los rótulos de
               sección en disco, las tarjetas con relieve y la fórmula de
               protagonista. Todo eso no se toca aquí.
     De la B   los 12 módulos de pie en columna fija, con sus secciones
               anidadas debajo, y la barra de arriba más baja con el
               buscador al centro.

   ── El conflicto que había que resolver, y no era de color ────────────
   La C convierte la pestaña activa en una pestaña DE VERDAD: se levanta,
   redondea las esquinas de arriba y se cuelga una barra de acento del borde
   superior con `::after`. Esa metáfora es de una cinta horizontal y no
   significa nada en una columna: de pie, «levantarse» no es hacia arriba,
   es hacia la derecha. Así que el `::after` no se borra — se gira. La barra
   de acento pasa del borde de arriba al de la izquierda, que es donde el ojo
   busca la marca de «estás aquí» cuando lee una lista vertical.
   ══════════════════════════════════════════════════════════════════════ */

/* ── La barra de arriba: la verde de la C, pero baja ────────────────────
   En un manual lo que más se usa es buscar, así que el buscador se lleva el
   centro y el ancho. La marca se encoge: ya la lleva el color de la barra. */
.ax-topbar{padding:9px 20px;z-index:60;}
.ax-logo{width:32px;height:32px;border-radius:9px;}
.ax-brand-name{font-size:15.5px;}
.ax-brand-tag{display:none;}
.ax-search{max-width:600px;margin:0 auto;}
.ax-search input{padding:8px 34px 8px 36px;}

@media (min-width:900px){
  /* ── El armazón ──────────────────────────────────────────────────────
     El <body> no cambia —header, nav, main, footer, en ese orden—; lo único
     que cambia es dónde los coloca la rejilla. Ni una línea de HTML. */
  body{display:grid;grid-template-columns:272px minmax(0,1fr);
    grid-template-areas:"cab cab" "nav main" "nav pie";
    grid-template-rows:auto 1fr auto;min-height:100vh;}
  .ax-topbar{grid-area:cab;}
  .ax-ribbon{grid-area:nav;}
  .ax-main{grid-area:main;}
  .ax-footer{grid-area:pie;}

  /* ── El índice ───────────────────────────────────────────────────────
     `--alto-cab` lo mide el propio HTML al cargar: la barra de la C cambia
     de alto con el tema y con el ancho, y un número escrito a mano aquí
     dejaría el índice tapado o despegado en cuanto algo cambie. */
  .ax-ribbon{background:var(--loea-card);background-image:none;
    border-right:1px solid var(--loea-line);border-bottom:0;
    position:sticky;top:var(--alto-cab,58px);align-self:start;
    max-height:calc(100vh - var(--alto-cab,58px));overflow-y:auto;
    padding:14px 0 24px;}

  /* Los módulos, de pie. */
  .ax-tabs{flex-direction:column;overflow:visible;padding:0;gap:0;}
  .ax-tab{flex-direction:row;align-items:center;gap:10px;width:100%;
    padding:9px 18px;border-radius:0;min-width:0;top:0;
    border-left:3px solid transparent;}
  .ax-tab:hover{background:var(--loea-soft);}
  .ax-tab.active{background:var(--loea-soft);color:var(--loea-ink);box-shadow:none;}
  /* La barra de acento de la C, girada: de la ceja al canto izquierdo. */
  .ax-tab.active::after{left:0;right:auto;top:0;bottom:0;width:3px;height:auto;
    border-radius:0 3px 3px 0;
    background:linear-gradient(var(--loea-acc-vivo),var(--loea-acc-fondo));}
  .ax-tab-top{flex-direction:row;align-items:center;gap:9px;min-width:44px;}
  .ax-tab-num{font-size:10px;opacity:.7;}
  .ax-tab-sym{font-size:16px;}
  .ax-tab-name{font-size:13px;font-weight:500;}
  .ax-tab.active .ax-tab-name{font-weight:700;}

  /* Las secciones del módulo abierto, anidadas debajo del índice y no en una
     segunda tira arriba: es donde el ojo ya está. */
  .ax-ctx{flex-direction:column;align-items:stretch;gap:2px;background:transparent;
    border-bottom:0;border-top:1px solid var(--loea-line-soft);
    margin:14px 14px 0;padding:14px 0 0;}
  .ax-ctx-group{flex-direction:column;align-items:stretch;gap:2px;}
  .ax-ctx-sep{display:none;}
  .ax-ctx-label{padding:0 4px 6px;}
  .ax-chip{justify-content:flex-start;border:0;background:transparent;
    border-radius:7px;padding:6px 10px;font-size:12.5px;white-space:normal;text-align:left;}
  .ax-chip:hover{background:var(--loea-soft);border-color:transparent;}
  .ax-chip.active{background:var(--loea-soft);color:var(--loea-acc);font-weight:700;}

  .ax-main{max-width:1120px;margin:0;padding:22px 30px 46px;}
}

/* ── Bajo 900 px no hay columna que valga ───────────────────────────────
   272 px de índice sobre una ventana estrecha dejan el contenido en un canal
   ilegible. Ahí se vuelve a la cinta acostada de la C, que para eso sigue
   escrita: es su comportamiento por defecto y no hay que repetirlo. */


/* ════════════════════════════════════════════════════════════════════
   EL ANCHO · el tope de la columna de lectura
   · viene de `docs/referencia/_ayuda/opcion-e2-tope.css`
   ════════════════════════════════════════════════════════════════════ */

/* ══════════════════════════════════════════════════════════════════════
   E2 · «se estira, pero el texto no»
   ══════════════════════════════════════════════════════════════════════
   La respuesta de en medio, y la que menos puede salir mal.

   Distingue dos cosas que la E1 trata igual:

     lo que SE OJEA   el listado de fórmulas de un módulo. Cuanto más quepa,
                      mejor: son tarjetas, se barren con la vista, y una
                      columna más son cuatro fórmulas más sin desplazar.
     lo que SE LEE    la ficha de una fórmula. Ahí el ancho no es una ventaja
                      sino un problema: un renglón de 190 caracteres se lee
                      peor que uno de 90, tenga el monitor el tamaño que tenga.

   Así que el listado va a todo lo ancho y la ficha se queda en un tope
   cómodo. El hueco de la derecha no desaparece del todo en la ficha —se
   reduce— pero lo que queda ya no es desperdicio: es margen, y el margen se
   lee. Si lo que molesta es ver blanco, la que lo llena de verdad es la E3.
   ══════════════════════════════════════════════════════════════════════ */

@media (min-width:900px){
  /* El contenedor deja de topar; quien topa ahora es cada cosa según lo que
     sea. `clamp` en vez de un número: entre 1120 y 1760 crece con la ventana
     y nunca pasa de ahí. */
  .ax-main{max-width:none;padding-left:34px;padding-right:34px;}

  /* Lo que se ojea: sin tope, y tarjetas algo más anchas para que el salto de
     columnas ocurra donde el contenido lo agradece y no cada 330 px. */
  .ax-cards{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));}

  /* Lo que se lee: tope, y centrado en el espacio que queda. */
  .ficha,.ax-locked{max-width:clamp(1060px,86vw,1360px);}
  .ax-hero{max-width:none;}

  /* Y el tope de la FICHA no basta: a 1360 px los párrafos seguían saliendo a
     162 caracteres por renglón, que es casi lo mismo que la E1 y deja a esta
     opción sin su propio argumento. Lo que hay que topar es el TEXTO, no su
     contenedor — la tabla de argumentos, la hoja de ejemplo y las ecuaciones
     sí quieren todo el ancho, y por eso no entran en esta lista. */
  .ficha > p,
  .ficha .paso p,
  .ficha ul.notas,
  .ficha .ref{max-width:82ch;}
}

/* Con sitio de sobra, la ficha reparte mejor sus dos columnas: la de la
   izquierda —sintaxis y ecuaciones— necesita menos que la tabla de
   argumentos, que es la que hoy se aprieta y parte las descripciones en
   cuatro renglones. */
@media (min-width:1180px){
  .ficha .cols{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:30px;}
}


/* ════════════════════════════════════════════════════════════════════
   LA FICHA · la anatomía del canvas y la ventana de Excel
   · viene de `docs/referencia/_ayuda/opcion-g.css`
   ════════════════════════════════════════════════════════════════════ */

/* ══════════════════════════════════════════════════════════════════════
   OPCIÓN G · la ficha del canvas, sobre el contenido de verdad
   ══════════════════════════════════════════════════════════════════════
   Va encima de la E3: el marco no se toca —barra verde, índice de módulos de
   pie, ancho aprovechado—. Lo que cambia es la FICHA, con la anatomía del
   canvas `Ayuda Loea.dc.html` (30 ago 2026).

   ── LO QUE SE TOMA DEL CANVAS ─────────────────────────────────────────
     · Título grande con el icono en cuadro, y la descripción debajo.
     · Cada apartado con un <h2> de 19 px y una regla que lo cierra: se ve
       dónde empieza y acaba cada cosa sin tarjetas que encajonen.
     · La sintaxis en una caja con cabecera «‹› Fórmula de Excel».
     · La tabla de argumentos con la píldora Obligatorio/Opcional al lado de
       la descripción, no en columna aparte.
     · La ecuación partida: la fórmula a la izquierda, de dónde sale a la
       derecha.
     · La GUÍA VISUAL: la ventana de Excel flotando sobre un fondo de color,
       con sombra. Lo monta `_hoja-viva.js`.
     · Los pasos como tres tarjetas con el número en disco.
     · Los ejemplos como tabla fórmula · descripción · resultado.
     · Los comentarios como avisos en crema con el código en píldora.

   ── LO QUE NO SE TOMA, Y ES A PROPÓSITO ───────────────────────────────
   LOS COLORES. El canvas trae su propia paleta —verde #0E7A46, textos
   #1A2E25/#3D5247, líneas #DCE3DF— y son PARECIDOS a los de la familia pero
   no son los mismos: el acento de la familia es #1E5B54. Copiarlos metería
   una segunda paleta en el complemento, la ayuda dejaría de casar con el
   panel, y el modo oscuro habría que escribirlo dos veces. Así que aquí no
   nace ni un color: todo son `--loea-*`. La forma es del canvas, el color es
   de la familia. (`nucleo/docs/ARMAZON-DEL-PANEL.md`: la paleta no se
   negocia.)

   ── LO QUE FALTA, Y NO ES CÓDIGO ──────────────────────────────────────
   Dos apartados del canvas no existen en el catálogo y no se pueden inventar
   desde aquí:
     · «DE DÓNDE SALE» — la traducción de cada símbolo a lenguaje llano. Hay
       que escribirla por fórmula. Es la idea más valiosa del canvas.
     · «ERRORES COMUNES» con su código (#¡VALOR!, #¡N/A!). Hoy hay
       «Comentarios», que se le parecen pero no traen código.
   Mientras no existan, esta hoja pinta lo que sí hay y no deja huecos.
   ══════════════════════════════════════════════════════════════════════ */

/* ── La columna de la ficha ─────────────────────────────────────────────
   El canvas la deja en 820 px. Aquí se le da más, porque el hueco de la
   derecha fue justo lo que se pidió arreglar: la LECTURA se topa en 82
   caracteres, y las piezas anchas —la ventana de Excel, los ejemplos— usan
   todo el carril. */
.ficha{max-width:clamp(820px,72vw,1180px);}
.ficha > p,.ficha .paso p,.ficha ul.notas{max-width:80ch;}

/* ── Portada de la fórmula ──────────────────────────────────────────── */
.ficha .crumb{font-size:12.5px;color:var(--loea-mut-2);}
.ficha .ax-hero{display:block;border-bottom:0;padding:0;margin:18px 0 0;
  background:none;min-height:0;}
.ficha .ax-hero h1{font-size:clamp(27px,3.4vw,34px);font-weight:700;
  font-family:var(--font-body);letter-spacing:-.012em;color:var(--loea-ink);}
.ficha .ax-hero h1 .not{font-family:var(--font-math,var(--font-display));
  color:var(--loea-mut);font-size:.62em;}
.ficha .ax-hero p{color:var(--loea-mut);max-width:64ch;font-size:14.5px;}

/* ── Los rótulos de apartado ────────────────────────────────────────────
   `text-transform:none` no sobra: el de la ayuda de hoy es una etiqueta
   monoespaciada de 11 px EN MAYÚSCULAS, y el `font:` en atajo cambia familia
   y tamaño pero no toca las mayúsculas — se quedaban gritando a 19 px. */
.ficha h2{font:700 19px var(--font-body);text-transform:none;
  margin:42px 0 0;padding-bottom:10px;letter-spacing:-.005em;
  color:var(--loea-ink);border-bottom:1px solid var(--loea-line);}

/* ── Sintaxis ───────────────────────────────────────────────────────── */
.ficha .sint{margin-top:18px;border:1px solid var(--loea-line);border-radius:10px;
  overflow:hidden;background:var(--loea-card);padding:0;}
.ficha .sint::before{content:"‹› Fórmula de Excel";display:block;
  background:var(--loea-soft);padding:9px 16px;
  font:500 11.5px var(--font-mono);color:var(--loea-mut);}
.ficha .sint code,.ficha .sint > *{display:block;padding:16px 18px;
  font-family:var(--font-mono);font-size:14.5px;color:var(--loea-acc);}

/* ── Argumentos: la píldora va PEGADA a la descripción ──────────────── */
.ficha table.args{width:100%;border-collapse:collapse;margin-top:14px;
  border:1px solid var(--loea-line);border-radius:10px;overflow:hidden;font-size:13px;}
.ficha table.args th{background:var(--loea-soft);text-align:left;
  font:700 11px var(--font-body);letter-spacing:.09em;text-transform:uppercase;
  color:var(--loea-mut-2);padding:10px 16px;border:0;}
.ficha table.args td{padding:13px 16px;border:0;border-top:1px solid var(--loea-line-soft);
  vertical-align:top;line-height:1.55;color:var(--loea-mut);}
.ficha table.args td.an{font-family:var(--font-mono);font-size:12.5px;
  color:var(--loea-brass);white-space:nowrap;width:150px;}
/* La píldora: verde el requerido, latón el opcional — el latón es el color
   del candado y de lo que puedes omitir en toda la familia. */
.ficha table.args td.rq{width:1%;white-space:nowrap;}
.ficha table.args td.rq::first-line{line-height:1;}
.ficha table.args td.rq > *,.ficha table.args td.rq{font:700 10px var(--font-body);
  letter-spacing:.05em;}
.ficha table.args td.rq.si{color:var(--loea-acc);}

/* ── La ecuación, partida ───────────────────────────────────────────── */
.ficha .ax-tex,.ficha .cols .ax-tex{margin-top:18px;border:1px solid var(--loea-line);
  border-left:1px solid var(--loea-line);border-radius:10px;
  background:var(--loea-card);padding:24px 26px;font-size:23px;}

/* ── La guía visual: la ventana de Excel sobre color ────────────────── */
.ficha .xl{margin-top:20px;border-radius:8px;overflow:hidden;background:var(--loea-card);
  box-shadow:0 18px 44px -18px rgba(20,40,60,.42);border:1px solid var(--loea-line);}
/* El marco de color detrás, que es lo que hace que la ventana FLOTE. En vez
   del azul del canvas va el acento de la familia, muy rebajado: el azul no
   pertenece a ninguna paleta de las cinco áreas. */
.ficha .hoja-wrap,.ficha .xl{position:relative;}
.ficha .xl{margin-left:0;margin-right:0;}
.ficha .lectura .xl,.ficha > .xl{outline:26px solid var(--loea-soft);
  outline-offset:0;margin:46px 26px 46px;}
.xl-titulo{display:flex;align-items:center;gap:10px;padding:7px 12px;font-size:11px;
  color:var(--loea-mut);background:var(--loea-bg);border-bottom:1px solid var(--loea-line);}
.xl-titulo .logo{background:#107C41;color:#fff;border-radius:4px;padding:2px 6px;
  font:700 10px var(--font-body);}
.xl-titulo .botones{margin-left:auto;color:var(--loea-mut-2);}
.xl-cinta{display:flex;align-items:center;gap:16px;padding:6px 12px;font-size:11px;
  color:var(--loea-mut);background:var(--loea-card);border-bottom:1px solid var(--loea-line);}
.xl-cinta .act{color:var(--loea-acc);font-weight:600;
  border-bottom:2px solid var(--loea-acc);padding-bottom:4px;margin-bottom:-7px;}
.xl-cinta .xl-mandos{margin-left:auto;display:flex;gap:7px;}
.xl-cinta button{font:inherit;font-size:11.5px;font-weight:600;padding:4px 11px;
  border-radius:6px;border:1px solid var(--loea-line);background:var(--loea-bg);
  color:var(--loea-acc);cursor:pointer;width:auto;margin:0;}
.xl-cinta button:hover{background:var(--loea-soft);border-color:var(--loea-acc);}
.xl-cinta button[disabled]{opacity:.45;cursor:default;}
.xl-fbar{display:flex;align-items:stretch;font-family:var(--font-mono);font-size:12px;
  border-bottom:1px solid var(--loea-line);background:var(--loea-card);}
.xl-fbar .celda{width:54px;padding:6px 8px;border-right:1px solid var(--loea-line);
  color:var(--loea-mut);}
.xl-fbar .fx{width:30px;padding:6px 0;text-align:center;border-right:1px solid var(--loea-line);
  color:var(--loea-acc);font-style:italic;font-family:var(--font-display);}
.xl-fbar .val{flex:1;padding:6px 10px;color:var(--loea-ink);white-space:pre;}
.xl-fbar .cursor{display:inline-block;width:7px;background:var(--loea-acc);
  animation:xl-parpadeo 1s steps(1) infinite;}
@keyframes xl-parpadeo{50%{opacity:0;}}
.xl-rejilla{overflow-x:auto;}
.xl .hoja-wrap{margin:0;}
.xl table.hoja td.viva{animation:xl-entra .38s cubic-bezier(.2,.7,.3,1);}
@keyframes xl-entra{from{background:var(--loea-soft);transform:scale(.97);}to{transform:none;}}
.xl table.hoja td.foco{outline:2px solid var(--loea-acc);outline-offset:-2px;}
.xl table.hoja td.tecleando{font-family:var(--font-mono);color:var(--loea-acc);}
.xl-pie{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;padding:9px 13px;
  border-top:1px solid var(--loea-line);background:var(--loea-bg);
  font-size:11.5px;color:var(--loea-mut);}
.xl-pie .dice{flex:1;min-width:200px;}
.xl-pie .puntos{display:flex;gap:6px;}
.xl-pie .puntos i{width:7px;height:7px;border-radius:50%;background:var(--loea-line);display:block;
  transition:background .2s;}
.xl-pie .puntos i.on{background:var(--loea-acc);}
/* La barra de fórmula original ya la enseña la ventana. */
.barra.xl-oculta{display:none;}

/* ── Los pasos, como tarjetas ───────────────────────────────────────── */
@media (min-width:900px){
  .ficha .pasos-tira{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:16px;margin-top:18px;}
}
.ficha .paso{border:1px solid var(--loea-line);border-radius:10px;padding:18px;
  background:var(--loea-card);margin:0;}
.ficha .paso + .paso{border-top:1px solid var(--loea-line);padding-top:18px;margin-top:0;}
.ficha .paso .np{position:static;width:24px;height:24px;border-radius:50%;
  background:var(--loea-acc-fondo);color:var(--loea-on-acc);border:0;
  font:700 12px var(--font-body);display:flex;align-items:center;justify-content:center;}
.ficha .paso h3{font-size:14px;font-weight:700;margin:12px 0 0;}
.ficha .paso p{font-size:12.5px;line-height:1.6;color:var(--loea-mut);margin:6px 0 0;max-width:none;}

/* ── Ejemplos ───────────────────────────────────────────────────────── */
.ficha ul.extra{list-style:none;margin:18px 0 0;padding:0;
  border:1px solid var(--loea-line);border-radius:10px;overflow:hidden;}
.ficha ul.extra li{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline;
  padding:13px 16px;margin:0;font-size:12.5px;color:var(--loea-mut);
  border-top:1px solid var(--loea-line-soft);}
.ficha ul.extra li:first-child{border-top:0;}
.ficha ul.extra code{font-family:var(--font-mono);font-size:12px;color:var(--loea-acc);}

/* ── Comentarios, con forma de aviso ────────────────────────────────── */
.ficha ul.notas{list-style:none;padding:0;margin:18px 0 0;display:flex;
  flex-direction:column;gap:10px;}
.ficha ul.notas li{background:var(--loea-brass-soft);border:1px solid var(--loea-brass-line);
  border-radius:10px;padding:13px 18px;font-size:13px;line-height:1.55;
  color:var(--loea-ink);margin:0;}

/* ── Verificación, y el pie ─────────────────────────────────────────── */
.ficha .ref{margin-top:18px;background:var(--loea-soft);border:0;
  border-left:3px solid var(--loea-acc);border-radius:0 10px 10px 0;
  padding:18px 22px;font-size:13px;line-height:1.65;color:var(--loea-mut);}
.ficha .ver{margin-top:22px;padding-top:18px;border-top:1px solid var(--loea-line);
  display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:12.5px;
  color:var(--loea-mut-2);}
.ficha .ver a{font-family:var(--font-mono);font-size:12px;text-decoration:none;
  border:1px solid var(--loea-line);border-radius:6px;padding:3px 9px;
  background:var(--loea-soft);color:var(--loea-acc);}
.ficha .ver a:hover{border-color:var(--loea-acc);}


/* ════════════════════════════════════════════════════════════════════
   LAS DOS ZONAS · lectura a la izquierda, carril pegajoso a la derecha
   · viene de `docs/referencia/_ayuda/opcion-e3-carril.css`
   ════════════════════════════════════════════════════════════════════ */

/* ══════════════════════════════════════════════════════════════════════
   E3 · «carril» — el hueco se llena con lo que ya estaba
   ══════════════════════════════════════════════════════════════════════
   Las otras dos discuten CUÁNTO ancho ocupar. Ésta discute con QUÉ.

   El diagnóstico: los 598 px de la derecha no sobran porque el contenido sea
   estrecho — sobran porque la ficha está montada en un solo hilo vertical,
   como un documento impreso. En una pantalla ancha eso desperdicia la mitad
   del sitio y además obliga a desplazar hacia arriba cada vez que uno quiere
   recordar el orden de los argumentos mientras sigue el paso 2.

   Así que la ficha se parte en dos:

     lectura   lo que se lee de corrido: qué calcula, el paso a paso, el
               ejemplo, los comentarios.
     carril    lo que se CONSULTA mientras se lee lo otro: la sintaxis, la
               tabla de argumentos, la referencia y las relacionadas. Pegado
               a la derecha, siempre a la vista.

   Nada se inventa y nada se repite: son los mismos apartados de la ficha,
   colocados según para qué sirve cada uno. El reparto lo hace `_carril.js`,
   que es un andamio de maqueta — ver su cabecera.

   En contra: hay que decidir bien qué va a cada lado, y esa decisión es por
   TIPO de apartado, no por fórmula. Si mañana una ficha trae un apartado
   nuevo, cae en la columna de lectura por defecto, que es lo prudente.
   ══════════════════════════════════════════════════════════════════════ */

@media (min-width:900px){
  .ax-main{max-width:none;padding-left:34px;padding-right:34px;}
  /* Lo que se ojea, a todo lo ancho: aquí sí cuantas más quepan, mejor. */
  .ax-cards{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));}
}

/* Por debajo de 1180 px un carril de 400 dejaría la lectura en un canal
   estrecho, que es peor que el hueco. Ahí la ficha se queda en un hilo, y
   `_carril.js` no estorba: las dos zonas caen una debajo de otra. */
@media (min-width:1180px){
  .ficha{display:grid;grid-template-columns:minmax(0,1fr) clamp(340px,26vw,440px);
    gap:0 38px;align-items:start;}
  .ficha > .cabecera{grid-column:1 / -1;}
  .ficha > .lectura{grid-column:1;min-width:0;}
  /* El carril no se mueve. `--alto-cab` lo mide la propia página: es la barra
     verde de la E, y su alto cambia con el tema y con el ancho. */
  .ficha > .carril{grid-column:2;position:sticky;
    top:calc(var(--alto-cab,58px) + 22px);
    max-height:calc(100vh - var(--alto-cab,58px) - 44px);overflow-y:auto;
    display:flex;flex-direction:column;gap:18px;
    padding-left:22px;border-left:1px solid var(--loea-line);}

  /* Dentro del carril no hay dos columnas que valgan: se apilan. */
  .ficha > .carril .cols{display:block;}
  .ficha > .carril .cols > * + *{margin-top:18px;}
  /* Y los rótulos de apartado bajan de tamaño: en el carril son etiquetas de
     consulta, no titulares de lectura. */
  .ficha > .carril h2{font-size:15px;font-family:var(--font-body);font-weight:700;
    letter-spacing:.02em;margin:0 0 8px;padding-bottom:7px;
    border-bottom:1px solid var(--loea-line-soft);}
  .ficha > .carril .ref{font-size:13px;}
  .ficha > .carril .ver{font-size:12.5px;}
  .ficha > .carril table.args{font-size:12.5px;}

  /* La lectura recupera una medida de renglón sana aunque la ventana sea
     enorme: es justo lo que la E1 pierde. */
  .ficha > .lectura > p,
  .ficha > .lectura .paso p{max-width:78ch;}
}

/* Con muchísimo sitio, la hoja de ejemplo deja de apretarse contra el carril
   y se le da aire: es la pieza que más se mira de toda la ficha. */
@media (min-width:1560px){
  .ficha{gap:0 52px;}
  .ficha > .lectura .hoja-wrap{max-width:none;}
}


/* ════════════════════════════════════════════════════════════════════
   EL ÁRBITRO · lo que chocaba entre la G y la E3
   · viene de `docs/referencia/_ayuda/opcion-h.css`
   ════════════════════════════════════════════════════════════════════ */

/* ══════════════════════════════════════════════════════════════════════
   OPCIÓN H · la mezcla — 30 ago 2026
   ══════════════════════════════════════════════════════════════════════
   Lo pedido: el menú y el listado de la G, la ficha en DOS ZONAS de la E3, y
   la ventana de Excel animada de la G dentro.

   Se cargan cuatro capas en este orden y esta hoja sólo resuelve lo que
   chocaba entre ellas:

     opcion-c.css        la barra verde, la lámina, las tarjetas con relieve
     opcion-e-menu.css   los 12 módulos de pie a la izquierda
     opcion-e2-tope.css  el listado a todo lo ancho
     opcion-g.css        la ficha con la anatomía del canvas + la ventana XL
     opcion-e3-carril.css  la ficha partida en lectura | carril
     opcion-h.css        ESTA — el árbitro

   ── LO QUE CHOCABA, Y NO ERA COLOR ────────────────────────────────────
   La G da por hecho que la ficha es UNA columna: se topa en 1180 px y centra
   todo. La E3 da por hecho que son DOS y ocupa el ancho entero. Cargadas una
   detrás de otra, la última ganaba a medias: la rejilla de dos zonas se
   quedaba dentro de un contenedor topado, así que el carril se estrechaba y
   volvía a sobrar sitio a la derecha — justo lo que la E3 venía a arreglar.

   Aquí manda la E3 en el REPARTO y la G en el ASPECTO. Es la única regla que
   hace falta tener en la cabeza si mañana alguien retoca esto.
   ══════════════════════════════════════════════════════════════════════ */

@media (min-width:1180px){
  /* El tope de la G se levanta: quien decide el ancho es la rejilla. */
  .ficha{max-width:none;}

  /* ── El carril, con el aspecto de la G ────────────────────────────────
     Los rótulos de la G miden 19 px, que en una columna de lectura están
     bien y en un carril de 440 son un titular gritando al lado de otro.
     En el carril bajan a etiqueta. */
  .ficha > .carril h2{font:700 13.5px var(--font-body);margin:0 0 8px;
    padding-bottom:7px;letter-spacing:.01em;}
  .ficha > .carril .sint{margin-top:0;}
  .ficha > .carril .sint code,.ficha > .carril .sint > *{font-size:12.5px;padding:12px 14px;}
  .ficha > .carril .sint::before{font-size:10.5px;padding:7px 14px;}
  .ficha > .carril table.args{margin-top:14px;font-size:12px;}
  .ficha > .carril table.args td{padding:10px 12px;}
  .ficha > .carril table.args td.an{width:auto;}
  .ficha > .carril table.args th{padding:9px 12px;font-size:10px;}
  /* Las ecuaciones se quedan en la LECTURA aunque `.cols` viaje al carril:
     son lo que explica la fórmula, no algo que se consulte de reojo. Y a 440
     px una ecuación con exponentes se parte fatal. */
  .ficha > .carril .ax-tex{font-size:16px;padding:14px 12px;margin-top:12px;}

  /* ── La ventana de Excel, en la columna de lectura ────────────────────
     La G le pone un marco de 26 px de color para que FLOTE. En la lectura,
     más estrecha que la página entera de la G, ese marco se comía el ancho
     útil de la hoja: se reduce, y el efecto se mantiene. */
  .ficha > .lectura .xl{outline-width:16px;margin:34px 16px;}

  /* El derrame de la tabla de amortización son 6 columnas; en la lectura no
     caben sin apretarse. Que la hoja se desplace ELLA, y no la página. */
  .ficha > .lectura .xl-rejilla{max-height:none;}
  .ficha > .lectura .xl table.hoja{min-width:520px;}
}

/* Por debajo de 1180 px no hay dos zonas —la E3 ya lo dice— así que la ficha
   vuelve a ser la de la G, de una columna, y esta hoja no estorba. */

/* ══════════════════════════════════════════════════════════════════════
   Segunda vuelta — lo que se pidió al verla, 30 ago 2026
   ══════════════════════════════════════════════════════════════════════
     1. Volvió el banner: la G lo había apagado.
     2. Fuera la fórmula del título.
     3. Las ecuaciones eran enormes.
     4. Se compone como matemáticas, no como texto con exponentes.
   El carril fijo se queda como está: es lo que sí gustó.
   ══════════════════════════════════════════════════════════════════════ */

/* ── 1 · El banner vuelve ───────────────────────────────────────────────
   La G apagó el fondo del encabezado (`background:none`) porque su ficha era
   una página de documentación sobria, sin imagen. Pero la lámina del módulo
   ya estaba hecha y es lo que le da cara a la ficha: se devuelve, con la
   misma receta de la C — el degradado tapa la izquierda para que el título
   se lea, y la imagen asoma por la derecha. */
.ficha .ax-hero{position:relative;overflow:hidden;
  border:1px solid var(--loea-line);border-radius:var(--loea-radio);
  padding:26px 28px;margin:18px 0 0;min-height:118px;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;
  background:linear-gradient(105deg,var(--loea-soft) 0%,var(--loea-soft) 52%,transparent 82%),
             var(--lamina,none) right center/cover no-repeat,var(--loea-soft);}
.ficha .ax-hero > *{position:relative;z-index:1;}
.ficha .ax-hero > div:first-child{max-width:64%;}
.ficha .ax-hero p{color:var(--loea-mut);}

/* ── 2 · La fórmula sale del título ─────────────────────────────────────
   El `<h1>` traía la notación pegada al nombre —«Valor futuro de un capital
   S = C(1+i)ⁿ»— y competía con él: dos cosas distintas leyéndose como una
   sola frase. La ecuación no se pierde, está en «Cómo se calcula», en el
   carril, y ahí es donde se va a buscar. */
.ficha .ax-hero h1 .not{display:none;}

/* ── 3 y 4 · Las ecuaciones ─────────────────────────────────────────────
   Estaban a 23 px y con 26 px de relleno: tres cajas del tamaño de un
   párrafo cada una para tres renglones. Y se veían como texto con
   exponentes, no como matemáticas.

   Lo que cambia: la familia pasa a `--font-math` —Newsreader, la serif de la
   familia, que es la que compone bien la cursiva matemática—, el cuerpo baja,
   los superíndices se colocan a mano (el `vertical-align` por defecto los
   deja demasiado altos y abre el interlineado), y la caja se vuelve un filo
   en vez de un marco.

   No es LaTeX de verdad: para eso haría falta KaTeX, que son ~280 KB más
   fuentes y hay que decidir si el complemento se los lleva dentro —no puede
   depender de una CDN, se abre sin red—. Esto es lo que se consigue sin esa
   decisión. */
.ficha .ax-tex{font-family:var(--font-math,var(--font-display));
  font-size:19px;line-height:1.9;padding:15px 18px;
  background:var(--loea-bg);border:1px solid var(--loea-line);
  border-left:3px solid var(--loea-acc);border-radius:8px;
  text-align:center;}
.ficha .ax-tex i,.ficha .ax-tex em{font-style:italic;}
.ficha .ax-tex sup{font-size:.68em;vertical-align:.52em;line-height:0;}
.ficha .ax-tex sub{font-size:.68em;vertical-align:-.22em;line-height:0;}

/* Dentro de un paso son APOYO de lo que se está leyendo, no el asunto: van
   más chicas, pegadas entre ellas y sin marco, como una cita. */
.ficha .paso .ax-tex{font-size:16px;line-height:1.75;padding:8px 14px;
  background:transparent;border:0;border-left:2px solid var(--loea-line);
  border-radius:0;text-align:left;margin:0;}
.ficha .paso .ax-tex + .ax-tex{margin-top:0;border-top:0;}
.ficha .paso .ax-tex:first-of-type{margin-top:12px;}

/* En el carril se quedan compactas: ahí son referencia de reojo. */
.ficha > .carril .ax-tex{font-size:16px;line-height:1.8;padding:10px 12px;}

/* ── El carril se queda a la DERECHA ────────────────────────────────────
   Probado a la izquierda el 30 ago 2026 y descartado al verlo. Se anota el
   camino y no sólo el destino, porque a la izquierda es una idea razonable
   —la sintaxis es lo que más se consulta— y sin esta nota alguien la va a
   volver a proponer:

     · A la izquierda quedaban 712 px de columnas antes de empezar a leer
       (272 del índice de módulos + 440 del carril). Dos barras seguidas, y
       el texto empujado a un tercio de la pantalla.
     · El índice y el carril son ambos «cosas al lado», y pegados se leían
       como una sola barra ancha en vez de como dos herramientas distintas.

   Así que aquí no hay ninguna regla: manda `opcion-e3-carril.css`, que ya lo
   pone a la derecha. Este hueco es el registro de que se intentó. */

/* ── La ventana de Excel deja de estirarse ──────────────────────────────
   Se veía enorme y medio vacía: la hoja de ejemplo usa tres o cuatro
   columnas y la ventana ocupaba los 1050 px de la lectura, así que quedaba
   un palmo de blanco a la derecha de la última celda — y la tabla de
   comprobación, que cabe de sobra ahí, iba debajo.

   `width:max-content` hace que la ventana mida su hoja. Y `.xl-fila`
   —la arma `_hoja-viva.js`— pone a su lado lo que venía debajo. Es `flex`
   con `wrap`: cuando la hoja es ancha (la tabla de amortización son seis
   columnas y 29 filas de derrame) la fila envuelve sola y todo vuelve a
   quedar uno debajo de otro. No hace falta una regla por fórmula. */
.ficha .xl-fila{display:flex;flex-wrap:wrap;align-items:flex-start;
  gap:22px 26px;margin:34px 0;}
.ficha .xl-fila > *{margin-top:0;margin-bottom:0;}
/* Lo que acompaña a la ventana va en UNA sola columna —el rótulo, su tabla y
   el aviso son la misma cosa: lo que la fórmula devolvió—, y se apila dentro.
   Crece si sobra sitio, se encoge si falta, y por debajo de 300 px se va a su
   propio renglón. */
.ficha .xl-lado{flex:1 1 320px;min-width:0;padding-top:6px;}
.ficha .xl-lado > *{margin:0;max-width:100%;}
/* La tabla de comprobación mide lo suyo y no se estira a la columna. */
.ficha .xl-lado table{width:auto;}

.ficha .xl{max-width:100%;flex:0 0 auto;}   /* el ancho lo mide `_hoja-viva.js` */
/* El marco de color que la hace flotar se ajusta al nuevo tamaño. */
.ficha > .lectura .xl,.ficha > .xl{margin:0;outline-width:14px;}
.ficha .xl-fila{padding:14px;}

/* La rejilla NO lleva `overflow-x:auto` por omision: un contenedor con
   desplazamiento no aporta su ancho natural al padre, asi que con
   `width:max-content` la ventana se encogia al minimo y la tabla de
   amortizacion —seis columnas— quedaba con barra dentro de una ventana
   estrecha. Se le pone el desplazamiento SOLO cuando de verdad no cabe. */
.ficha .xl{overflow:hidden;}
.ficha .xl-rejilla{overflow-x:auto;}

/* La hoja venía con `width:100%` de `base.css`. Dentro de una ventana que
   mide `max-content` eso es circular —la tabla pide el 100 % de un padre que
   está esperando a saber cuánto mide la tabla— y el navegador resuelve por lo
   mínimo: la ventana se quedaba en el ancho de la cinta, 560 px, aunque la
   hoja tuviera seis columnas. Con `width:auto` la tabla dice lo que mide y la
   ventana la sigue, hasta donde haya sitio. */
.ficha .xl table.hoja{width:auto;min-width:0;}
.ficha .xl .hoja-wrap{min-width:0;}

/* ── La receta, al lado de la ventana ───────────────────────────────────
   Los pasos de la animación, escritos y todos a la vez. Rellena el hueco de
   la derecha con lo único que de verdad faltaba: poder leer lo que la
   animación cuenta sin tener que verla correr. Cada renglón es pulsable. */
.ficha .xl-pasos{list-style:none;counter-reset:none;margin:0;padding:0;
  width:100%;display:flex;flex-direction:column;gap:2px;}
.ficha .xl-pasos li{display:flex;gap:11px;align-items:flex-start;
  padding:8px 10px;border-radius:8px;font-size:12.5px;line-height:1.5;
  color:var(--loea-mut);cursor:pointer;
  transition:background .18s,color .18s;}
.ficha .xl-pasos li:hover{background:var(--loea-soft);}
.ficha .xl-pasos .n{flex:none;width:20px;height:20px;border-radius:50%;
  display:grid;place-items:center;font:600 10.5px var(--font-mono);
  background:var(--loea-line-soft);color:var(--loea-mut-2);
  transition:background .18s,color .18s;}
/* El que ya pasó se apaga; el de ahora se enciende. Así la lista hace de
   barra de progreso sin ser una barra de progreso. */
.ficha .xl-pasos li.hecho{color:var(--loea-mut-2);}
.ficha .xl-pasos li.hecho .n{background:var(--loea-soft);color:var(--loea-acc);}
.ficha .xl-pasos li.ahora{background:var(--loea-soft);color:var(--loea-ink);font-weight:600;}
.ficha .xl-pasos li.ahora .n{background:var(--loea-acc-fondo);color:var(--loea-on-acc);}


/* ════════════════════════════════════════════════════════════════════
   LOS ARREGLOS · banner, ecuaciones en un solo sitio, el tecleo
   · viene de `docs/referencia/_ayuda/opcion-i.css`
   ════════════════════════════════════════════════════════════════════ */

/* ══════════════════════════════════════════════════════════════════════
   OPCIÓN I · los tres arreglos a la H — 30 ago 2026
   ══════════════════════════════════════════════════════════════════════
   La H se miró y salieron tres cosas. Esta hoja es la SÉPTIMA capa y sólo
   arregla esas tres: **no toca `opcion-h.css` ni ninguna de las de abajo**,
   así que la H sigue existiendo igual y las dos se pueden comparar.

     1. «se perdió el banner»
     2. «esto quedó muy grande»
     3. «la fórmula de arriba no me gusta» — y sí gusta la de las cajas

   Lo que NO se toca, porque gustó: el índice fijo de la izquierda, el carril
   pegajoso con la sintaxis, y las ecuaciones con aspecto de LaTeX.

   ── 1 · EL BANNER NO SE PERDIÓ: ESTABA APAGADO ────────────────────────
   Medido en la página, no supuesto. El `.ax-hero` de la ficha **existe** y
   `_lamina.js` ya le había puesto su imagen:

       <div class="ax-hero" data-mod="01"
            style="--lamina: url('…/laminas/mod-01.jpg')">

   Lo que pasaba es que `opcion-g.css` lo aplana a propósito —«Portada de la
   fórmula»— con `background:none; padding:0; min-height:0`, y por
   especificidad (`.ficha .ax-hero`, 0-2-0) le gana a la C (`.ax-hero`, 0-1-0),
   que era quien pintaba la lámina. O sea: la imagen se cargaba en cada ficha
   y no se veía nunca.

   Aquí se devuelve el tratamiento de la C —lámina a la derecha, desvanecida
   hacia el texto— con un selector de 0-3-0 para ganarle a la G sin editarla.

   ── 2 · «MUY GRANDE» NO ERA EL TAMAÑO: ERA CONTENIDO REPETIDO ─────────
   Las tres ecuaciones salían **dos veces** en la misma pantalla: en el paso 1
   de «Cómo se hace» y otra vez en el carril, bajo «Cómo se calcula». La
   palabra «Compuesto:» aparecía dos veces en el texto de la página. Viene de
   la capa G y la E3 la arrastra.

   Bajar tipografías no habría arreglado eso. Se deja **un solo sitio**, y cuál
   se eligió mirando, con un interruptor que traía esta maqueta: **el CARRIL**,
   decidido el 30 ago 2026. Ahí quedan pegajosas y a mano mientras se lee, que
   es como se consulta una fórmula. Así la página mide 1 422 px; en la lectura
   medía 1 743. El interruptor cumplió y se borró.

   ── 3 · LA NOTACIÓN, EN UN SOLO REGISTRO ──────────────────────────────
   El `<h1>` traía la fórmula pegada al título, chiquita y sin caja:

       <h1>Valor futuro de un capital<span class="not">S = C(1+i)ⁿ</span></h1>

   Compite con un título de 34 px y dice lo mismo que las cajas de abajo, que
   están mejor puestas. Se quita del título; la notación vive en las cajas.
   ══════════════════════════════════════════════════════════════════════ */

/* ── 1 · El banner de la ficha ────────────────────────────────────────
   `.ficha > .cabecera .ax-hero` = 0-3-0, que le gana a `.ficha .ax-hero`
   (0-2-0) de la G. No hace falta `!important` y por eso no se usa: un
   `!important` aquí obligaría a otro en la capa siguiente, y así siempre.

   La `.cabecera` ocupa `grid-column: 1 / -1`, o sea las dos zonas: el banner
   sale a todo lo ancho, por encima de la lectura y del carril. */
.ficha > .cabecera .ax-hero{
  display:flex; align-items:center; gap:20px;
  margin:14px 0 4px; padding:24px 28px;
  border:1px solid var(--loea-line); border-radius:var(--loea-radio);
  overflow:hidden; min-height:0;
  /* Tres capas: el velo que protege al texto, la lámina, y el color de
     respaldo por si el módulo no tuviera imagen — así no se nota que falta. */
  background:
    linear-gradient(100deg,var(--loea-soft) 0%,var(--loea-soft) 54%,rgba(0,0,0,0) 86%),
    var(--lamina,none) right center/cover no-repeat,
    var(--loea-soft);
}
/* El texto, por encima de la imagen y sin invadirla. */
.ficha > .cabecera .ax-hero > div:first-child{position:relative; z-index:1; max-width:62%;}
.ficha > .cabecera .ax-hero-meta{position:relative; z-index:1;}
/* El chip de sección se despega del fondo suave: sobre la lámina, un chip
   transparente desaparece. */
.ficha > .cabecera .ax-tagchip{
  background:var(--loea-card); border:1px solid var(--loea-line);
  box-shadow:0 1px 3px rgba(0,0,0,.06);}
/* La miga de pan se sube al banner en vez de flotar encima de él. */
.ficha > .cabecera .crumb{margin-bottom:2px;}

/* ── 3 · Fuera la notación del título ─────────────────────────────────
   Mismo selector que la G (0-3-0), y esta hoja carga después: gana. */
.ficha .ax-hero h1 .not{display:none;}

/* ── 2 · Las ecuaciones, en UN solo sitio: EL CARRIL ──────────────────
   Salían dos veces: en el paso 1 de «Cómo se hace» y otra vez en el carril,
   bajo «Cómo se calcula». Se quitan de la lectura y se quedan en el carril.

   Aquí vivían tres reglas y un interruptor para elegir mirando. Se eligió el
   30 ago 2026 y quedó una sola regla: la que apaga la copia de la lectura.
   La `:root:not(.ecu-lectura)` de antes valía 0-6-0 y ésta 0-4-0 — sigue
   ganando, porque lo único que toca `display` en un `.ax-tex` es
   `.ax-tex.multi` de la base, que vale 0-2-0. */
.ficha > .lectura .pasos-tira .ax-tex{display:none;}

/* ── 4 · El bloque derramado, ya DENTRO de la ventana ─────────────────
   Lo muda `_hoja-viva.js` sólo cuando esa tabla ES el derrame — misma forma
   que la que declara la celda de la fórmula. Aquí no se decide nada: se le
   da el aire para que se lea como una segunda región de la misma hoja y no
   como una tabla pegada por accidente.

   El desplazamiento se deja en UNA sola pieza, la rejilla. Cada `.hoja-wrap`
   traía el suyo de `base.css`, y con dos scrollers anidados la hoja y su
   derrame se desplazaban por separado: la fórmula quedaba mirando a unas
   columnas y el resultado a otras, que es exactamente lo contrario de lo que
   esta ventana enseña. */
.xl .xl-rejilla > .hoja-wrap{overflow:visible;}

.xl .xl-rejilla > .salida-t{
  margin:16px 0 6px; padding:0 1px;
  font:600 10.5px var(--font-mono,ui-monospace,monospace); letter-spacing:.1em;
  text-transform:uppercase; color:var(--loea-mut-2);}

/* Cuando la tabla enseña menos filas de las que la fórmula derrama —`RRC`
   son 14 y se ven 7— se dice, en vez de dejar creer que eso es todo. */
.xl.xl-recortado .xl-rejilla > .salida-t::after{
  content:" · extracto"; text-transform:none; letter-spacing:0; opacity:.72;}

/* Cuando lo que se muda dentro es un RESUMEN y no el bloque, el rótulo lo
   dice con todas sus letras y se marca aparte: dentro de una ventana de Excel
   una rejilla se lee como celdas de la hoja, y estas no lo son. */
.xl.xl-resumen .xl-rejilla > .salida-t{color:var(--loea-mut);}
.xl.xl-resumen .xl-rejilla > .hoja-wrap{
  border-left:3px solid var(--loea-line); padding-left:10px;}

/* ── 5 · La fórmula que se teclea no ensancha la columna ──────────────
   En Excel, un texto más largo que su celda se desborda por encima de las
   vacías de la derecha; la columna no se mueve. Aquí pasaba lo contrario:
   `=LOEA.AC.LX(A2:B6, 62, 1000)` estiraba la tabla, la tabla dejaba de caber
   en la ventana y la fórmula salía CORTADA por el borde — y ese paso existe
   precisamente para leerla.

   El `<span>` va absoluto, así que no ocupa sitio en la rejilla. Se le pone
   el amarillo de la celda de fórmula para que se lea como una sola cosa y no
   como texto flotando sobre la hoja. */
.xl table.hoja td.tecleando{position:relative;}
.xl table.hoja td.tecleando .tecleo{
  position:absolute; right:0; top:0; min-width:100%;
  padding:3px 10px; text-align:right; white-space:nowrap;
  background:#FFF4CC; color:inherit; font-weight:600; z-index:3;}

/* Y cuando no cabe ni llegando al borde izquierdo de la hoja, se desborda al
   otro lado y la ventana se ensancha para darle sitio: hacia la izquierda no
   valdría, porque lo que se sale por ahí no se puede alcanzar. */
.xl table.hoja td.tecleando .tecleo.tecleo-der{
  right:auto; left:0; text-align:left;}


/* ════════════════════════════════════════════════════════════════════
   LA FICHA DE UNA HERRAMIENTA · pantallas del panel y hoja que cambia
   (7 oct 2026, «la D con la B al final» del dueño, sobre
   docs/referencia/maqueta-ayuda-herramientas.html). Sólo aparece si la
   ficha trae `pantallas` u `hoja`; si no, la herramienta se ve como antes.
   ════════════════════════════════════════════════════════════════════ */

/* Un paso: la pantalla del panel a su tamaño (340 px) y sus viñetas al lado. */
.ficha .herr-paso{display:grid;grid-template-columns:340px 1fr;gap:28px;align-items:start;margin:22px 0 30px;}
.ficha .herr-paso .txt h3{font:600 20px var(--font-display);margin:4px 0 6px;}
.ficha .herr-paso .txt h3 i{font-style:normal;color:var(--loea-mut);}
.ficha .herr-paso .txt p{color:var(--loea-mut);margin:0 0 10px;}
.ficha .herr-paso .txt ul{margin:0;padding-left:18px;}
.ficha .herr-paso .txt li{margin:6px 0;}
@media (max-width:820px){.ficha .herr-paso{grid-template-columns:1fr;}}

/* La pantalla del panel, dibujada. No se pulsa: es una imagen hecha con datos. */
.pan{width:340px;max-width:100%;border:1px solid var(--loea-line);border-radius:14px;overflow:hidden;
  background:var(--loea-card);box-shadow:0 14px 34px -16px rgba(20,40,60,.4);font-size:13px;line-height:1.4;}
.pan .marca{display:flex;align-items:center;gap:10px;padding:14px 16px;background:var(--loea-acc-fondo);
  color:var(--loea-on-acc);font-weight:700;}
.pan .marca .iso{width:26px;height:26px;border-radius:6px;background:#0f1c33;display:grid;place-items:center;
  color:#f2b84b;font-size:13px;}
.pan .marca small{display:block;font-weight:400;opacity:.85;}
.pan .marca .chip{margin-left:auto;border:1px solid rgba(255,255,255,.5);border-radius:999px;padding:3px 10px;font-size:12px;}
.pan .barra2{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--loea-line);font-weight:700;}
.pan .barra2 span{border:1px solid var(--loea-line);border-radius:6px;padding:1px 8px;font-weight:400;}
.pan .pasos{display:flex;gap:6px;padding:12px 14px 4px;}
.pan .pasos b{flex:1;text-align:center;border:1px solid var(--loea-line);border-radius:6px;padding:5px 0;
  font:600 11.5px var(--font-mono);color:var(--loea-mut);}
.pan .pasos b.on{background:var(--loea-acc-fondo);color:var(--loea-on-acc);border-color:var(--loea-acc-fondo);}
.pan .cuerpo{padding:12px 14px 16px;}
.pan label{display:block;font-weight:700;margin:6px 0 4px;}
.pan label small{font-weight:400;color:var(--loea-mut);}
.pan .sel{border:1px solid var(--loea-line);border-radius:8px;padding:8px 10px;background:var(--loea-bg);
  display:flex;justify-content:space-between;gap:8px;}
.pan .fila-campo{display:flex;gap:6px;align-items:stretch;}
.pan .fila-campo .sel{flex:1;}
.pan .sel.inp{background:var(--loea-card);font-family:var(--font-mono);font-size:12.5px;}
.pan .usar{flex:none;display:flex;align-items:center;border:1px solid var(--loea-line);border-radius:8px;padding:0 8px;
  font-size:11.5px;color:var(--loea-acc);background:var(--loea-bg);white-space:nowrap;}
.pan .meta{font:600 10.5px var(--font-mono);letter-spacing:.06em;color:var(--loea-mut);margin:5px 0 10px;text-transform:uppercase;}
.pan .seg{background:#e3f1e8;color:#1f6b3a;border-radius:8px;padding:8px 10px;margin:10px 0;}
.pan .avi{background:#fbe9c8;color:#8a5a00;border-radius:8px;padding:8px 10px;margin:10px 0;}
.pan .go{display:block;text-align:center;background:var(--loea-acc-fondo);color:var(--loea-on-acc);border-radius:8px;
  padding:10px;font-weight:700;margin-top:10px;}
.pan .nums{display:flex;justify-content:space-around;text-align:center;margin:6px 0 12px;}
.pan .nums b{display:block;font:700 22px var(--font-display);}
.pan .grupo{border-left:3px solid #c98a00;padding:6px 10px;margin:8px 0;background:var(--loea-bg);border-radius:0 8px 8px 0;}
.pan .grupo small{display:block;color:#8a5a00;font-family:var(--font-mono);font-size:11px;}
.pan .grupo.bien{border-left-color:#2e7d4f;}
.pan .grupo.bien small{color:#1f6b3a;}
.pan .grupo em{display:block;font-style:normal;color:var(--loea-mut);}
.pan p{margin:6px 0;}

/* La hoja de la herramienta lleva las marcas del catálogo de Herramientas. */
.xl-herr table.hoja td.hd{font-weight:700;background:var(--loea-bg);}
.xl-herr table.hoja td.nvo{box-shadow:inset 0 0 0 2px var(--loea-acc);}
.xl-herr table.hoja td.ok{background:#e3f1e8;color:#1f6b3a;font-weight:700;}
.xl-herr table.hoja td.avi{background:#fbe9c8;color:#8a5a00;font-weight:700;}
.xl-herr table.hoja td.mal{background:#f8d9d4;color:#9b2c1f;}
.xl-herr table.hoja td.gris{color:var(--loea-mut-2);}
.xl-herr table.hoja td.vac{background:repeating-linear-gradient(45deg,transparent 0 5px,var(--loea-soft) 5px 7px);}
.xl-herr table.hoja td.vac0{color:transparent;}
.xl-herr table.hoja td.foco{outline:2px solid var(--loea-acc);outline-offset:-2px;}
.xl-herr .xl-pest{display:flex;gap:2px;padding:0 8px;border-top:1px solid var(--loea-line);background:var(--loea-bg);font-size:11.5px;}
.xl-herr .xl-pest span{padding:5px 12px;color:var(--loea-mut);}
.xl-herr .xl-pest span.on{background:var(--loea-card);color:var(--loea-acc);font-weight:600;border-bottom:2px solid var(--loea-acc);}
.ficha ul.herr-vin{margin:16px 26px 0;padding-left:18px;}
.ficha ul.herr-vin li{margin:6px 0;}

/* ════════════════════════════════════════════════════════════════════
   CADA CELDA SE ALINEA COMO EN EXCEL (7 oct 2026, la «B» del dueño)
   ════════════════════════════════════════════════════════════════════
   El texto a la izquierda (la regla de `table.hoja td`, arriba), los números
   y las fechas a la derecha, VERDADERO/FALSO y los errores al centro. Las
   marcas las pone `ficha.js` («LA ALINEACIÓN DE EXCEL») mirando lo que dice
   la celda, porque las hojas se animan y una celda cambia de texto a número.
   Antes iba TODO a la derecha: la regla de la primera columna nunca se
   aplicaba, porque la primera celda del renglón es el número de fila.
   Lo eligió el dueño en docs/referencia/maqueta-alineacion-hoja.html. */
table.hoja td.al-n{text-align:right;}
table.hoja td.al-c{text-align:center;}

/* ════════════════════════════════════════════════════════════════════
   LOS BLOQUES NUEVOS DE LA PANTALLA (8 oct 2026, pedidos de las áreas)
   ════════════════════════════════════════════════════════════════════ */
/* El color de cada materia: la pantalla dibujada salía siempre en el verde de
   Actuarial —el de la página—, también la de Enseñanza, que es ciruela. Los
   valores son los de `panel/paletas.css`; allí van sobre `:root`, aquí sobre
   cada pantalla, porque una página de ayuda enseña varias materias. */
.pan[data-area="ec"]{--loea-acc:#274690;--loea-acc-fondo:#274690;--loea-on-acc:#F2F6FF;}
.pan[data-area="co"]{--loea-acc:#3E4C57;--loea-acc-fondo:#3E4C57;--loea-on-acc:#FFFFFF;}
.pan[data-area="tl"]{--loea-acc:#563C86;--loea-acc-fondo:#563C86;--loea-on-acc:#FFFFFF;}
.pan[data-area="en"]{--loea-acc:#7A3563;--loea-acc-fondo:#7A3563;--loea-on-acc:#FFFFFF;}
:root[data-tema="oscuro"] .pan[data-area="ec"]{--loea-acc:#93AEE8;}
:root[data-tema="oscuro"] .pan[data-area="co"]{--loea-acc:#86A4BB;}
:root[data-tema="oscuro"] .pan[data-area="tl"]{--loea-acc:#9986BB;}
:root[data-tema="oscuro"] .pan[data-area="en"]{--loea-acc:#BB86A9;}
/* La casilla de un formulario (`{ casilla, marcada }`). */
.pan .cas{display:flex;align-items:center;gap:8px;margin:8px 0;font-size:13px;}
.pan .cas .box{width:16px;height:16px;flex:0 0 16px;border:1.5px solid var(--loea-mut);border-radius:4px;display:grid;place-items:center;
  font-size:11px;line-height:1;color:var(--loea-on-acc);background:var(--loea-card);}
.pan .cas .box.on{background:var(--loea-acc-fondo);border-color:var(--loea-acc-fondo);}
/* Una CAPTURA en lugar de la pantalla (`imagen`): mismo sitio, más ancha,
   porque es una página web y no un panel de 340 px. */
.ficha .herr-paso.con-img{grid-template-columns:minmax(0,560px) 1fr;}
@media (max-width:1100px){.ficha .herr-paso.con-img{grid-template-columns:1fr;}}
.herr-paso .pan-img{margin:0;max-width:100%;}
.herr-paso .pan-img img{display:block;width:100%;height:auto;border:1px solid var(--loea-line);border-radius:12px;box-shadow:0 6px 18px rgba(0,0,0,.08);}

/* «La idea, en un dibujo» (12 oct 2026): el bloque de arriba de la ficha, con el
   problema de la vida real y sus dibujos (ayuda.js, renderFacil). Los SVG traen
   sus colores de los tokens, para verse también en el tema oscuro. */
.ficha .facil{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px 20px 20px;margin:4px 0 26px;}
.ficha .facil-rotulo{font:700 11px var(--font-mono,ui-monospace);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin:0 0 10px;}
.ficha .facil-cab{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;}
.ficha .facil-cab .facil-rotulo{margin:0;}
.ficha .facil-otra{font:600 13px inherit;font-family:inherit;color:var(--accent);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:5px 12px;cursor:pointer;}
.ficha .facil-otra:hover{background:var(--accent-soft);border-color:var(--accent);}
.ficha .enpanel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px 20px 20px;margin:0 0 26px;}
.ficha .enpanel-pasos{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
@media (max-width:1100px){.ficha .enpanel-pasos{grid-template-columns:repeat(2,1fr);}}
.ficha .enpanel-paso p{margin:8px 0 0;font-size:14px;line-height:1.45;}
.ficha .enpanel-paso b{color:var(--accent);}
.ficha .enpanel-marco{position:relative;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;}
.ficha .enpanel-marco img{display:block;width:100%;height:auto;}
.ficha .enpanel-num{position:absolute;top:8px;left:8px;width:26px;height:26px;border-radius:50%;background:var(--accent);color:#fff;font-weight:800;font-size:13px;display:grid;place-items:center;box-shadow:0 1px 4px rgba(0,0,0,.25);}
.ficha .enpanel-aro{position:absolute;border:3px solid #C98A1B;border-radius:9px;box-shadow:0 0 0 3px rgba(201,138,27,.25);}
.ficha .facil-problema{font-size:18px;line-height:1.5;background:var(--accent-soft);border-radius:12px;padding:14px 18px;}
.ficha .facil-problema b{color:var(--accent);}
.ficha .facil h3{margin:18px 0 8px;font-size:15px;}
.ficha .facil-cuenta{background:var(--accent-soft);border-radius:12px;padding:12px 18px;overflow-x:auto;}
.ficha .facil-cuenta>div+div{margin-top:6px;}
/* Centrado: desde el 12 oct cada SVG lleva su max-width natural (Actuarial), así
   que en una pantalla ancha queda más chico que el recuadro. */
.ficha .facil-dibujo svg{display:block;width:100%;height:auto;margin:0 auto;}
/* La letra de los dibujos la pone el propio SVG (atributo font-family): una
   regla aquí le ganaba y movía los argumentos de su flecha (Actuarial). */
