// TAROT — Descripciones extendidas para lectura (bilingüe ES/EN)
// Para cada una de las 78 cartas: lectura/sombra en ES y EN.
// Indexado por card.name exactamente como aparece en data.jsx.

const READING_MEANINGS = {
  // ─── ARCANOS MAYORES ─────────────────────────────────────────────────────
  'EL CAOS': {
    lectura:   'Estás en un momento sin forma todavía. No fuerces decisión: deja fermentar las posibilidades antes de cortar.',
    lecturaEn: 'You are in a moment that still has no form. Do not force decision: let the possibilities ferment before cutting.',
    sombra:    'Confundir apertura con indecisión perpetua. El no-elegir también elige.',
    sombraEn:  'Mistaking openness for perpetual indecision. Not choosing is also choosing.',
  },
  'EL OBSERVADOR': {
    lectura:   'La pregunta es desde dónde miras. Cambiar la posición del observador cambia lo observable — empieza por ahí.',
    lecturaEn: 'The question is from where you are looking. Changing the observer’s position changes the observable — start there.',
    sombra:    'Creer que tu mirada es neutra. Toda descripción inscribe al descriptor.',
    sombraEn:  'Believing your gaze is neutral. Every description inscribes the describer.',
  },
  'LA INFORMACIÓN': {
    lectura:   'Una señal pide ser leída como diferencia, no como ruido. Lo importante no es el dato sino qué cambia al recibirlo.',
    lecturaEn: 'A signal asks to be read as difference, not noise. What matters is not the datum but what changes upon receiving it.',
    sombra:    'Acumular datos sin que ninguno haga diferencia. Saber más para entender lo mismo.',
    sombraEn:  'Accumulating data without any making a difference. Knowing more to understand the same.',
  },
  'AUTO-ORGANIZACIÓN': {
    lectura:   'No necesitas diseñador: lo que pide la situación es bajar al nivel local y dejar que el orden emerja desde las interacciones.',
    lecturaEn: 'You don’t need a designer: the situation asks you to descend to the local level and let order emerge from interactions.',
    sombra:    'Esperar emergencia donde solo hay desorden. No toda agitación se vuelve forma.',
    sombraEn:  'Expecting emergence where there is only disorder. Not every agitation becomes form.',
  },
  'LA JERARQUÍA': {
    lectura:   'Una estructura de niveles está ordenando la escena. Aprovéchala para coordinar — pero recuerda que su eficiencia tiene fecha de caducidad.',
    lecturaEn: 'A level structure is ordering the scene. Use it to coordinate — but remember its efficiency has an expiration date.',
    sombra:    'Confundir la jerarquía con la realidad. El nivel no es el territorio.',
    sombraEn:  'Mistaking the hierarchy for reality. The level is not the territory.',
  },
  'EL LOCK-IN': {
    lectura:   'Una decisión vieja sigue mandando hoy. Lo que era contingente al inicio se volvió necesario — y limita lo que puedes elegir ahora.',
    lecturaEn: 'An old decision is still in command today. What was contingent at the start became necessary — and limits what you can choose now.',
    sombra:    'Defender lo dado como si hubiera sido elegido. Path dependence enmascarada como destino.',
    sombraEn:  'Defending the given as if it had been chosen. Path dependence masked as destiny.',
  },
  'EL ACOPLAMIENTO': {
    lectura:   'Dos sistemas perturban sus derivas sin perder autonomía. La pregunta no es fundirse sino sostener el ritmo de la influencia mutua.',
    lecturaEn: 'Two systems perturb each other’s drift without losing autonomy. The question is not to merge but to sustain the rhythm of mutual influence.',
    sombra:    'Acoplarse hasta perder el sí mismo. Cuando ya no hay dos, no hay relación.',
    sombraEn:  'Coupling to the point of losing the self. When there are no longer two, there is no relation.',
  },
  'EL ATRACTOR': {
    lectura:   'Mira lo que la trayectoria orbita, no por dónde pasa. El destino se revela en lo que el sistema rodea sin tocar.',
    lecturaEn: 'Watch what the trajectory orbits, not where it passes. Destiny reveals itself in what the system circles without touching.',
    sombra:    'Tomar la órbita por libertad. Los atractores también encierran.',
    sombraEn:  'Mistaking the orbit for freedom. Attractors also enclose.',
  },
  'LA ROBUSTEZ': {
    lectura:   'La situación pide sostener función ante lo conocido — pero esa misma fortaleza ciega a lo nuevo. La robustez tiene precio.',
    lecturaEn: 'The situation asks you to maintain function under the known — but that very strength blinds to the new. Robustness has a price.',
    sombra:    'Volverse antifrágil para lo familiar, frágil para todo lo inesperado.',
    sombraEn:  'Becoming antifragile to the familiar, fragile to everything unexpected.',
  },
  'LEJOS DEL EQUILIBRIO': {
    lectura:   'Lo que está vivo aquí se sostiene solo mientras fluya energía. No busques quietud: busca el flujo que te mantiene organizado.',
    lecturaEn: 'What is alive here sustains itself only while energy flows. Don’t seek stillness: seek the flow that keeps you organized.',
    sombra:    'Confundir descanso con muerte, o desgaste con flujo vital.',
    sombraEn:  'Confusing rest with death, or wear with vital flow.',
  },
  'LA BIFURCACIÓN': {
    lectura:   'Un parámetro mínimo está a punto de partir en dos lo que parecía único. Atiende al detalle que decide, no a la masa que persiste.',
    lecturaEn: 'A minimal parameter is about to split in two what seemed one. Attend to the detail that decides, not the mass that persists.',
    sombra:    'Esperar el cambio en lo grande mientras lo pequeño ya lo decidió.',
    sombraEn:  'Waiting for change in the large while the small already decided it.',
  },
  'LA HOMEOSTASIS': {
    lectura:   'Permanecer igual cuesta trabajo constante. Reconoce el esfuerzo invisible que sostiene la quietud — y elige si quieres seguir pagándolo.',
    lecturaEn: 'Remaining the same costs constant work. Recognize the invisible effort that sustains the stillness — and choose whether to keep paying it.',
    sombra:    'Confundir homeostasis con inmovilidad. La estabilidad es ajuste continuo, no falta de cambio.',
    sombraEn:  'Confusing homeostasis with immobility. Stability is continuous adjustment, not the lack of change.',
  },
  'EL RE-ENCUADRE': {
    lectura:   'No es la situación lo que está trabado: es el marco. Cuando no puedas avanzar, gira la pregunta antes que la respuesta.',
    lecturaEn: 'It is not the situation that is stuck: it is the frame. When you cannot advance, turn the question before the answer.',
    sombra:    'Re-encuadrar como evasión. Cambiar el marco no cambia los hechos.',
    sombraEn:  'Reframing as evasion. Changing the frame does not change the facts.',
  },
  'LA DISOLUCIÓN': {
    lectura:   'Una forma debe disolverse para que la siguiente nazca. No es final sino paso — pero el paso pide despedida real.',
    lecturaEn: 'A form must dissolve for the next to be born. Not an end but a passage — and the passage asks for real farewell.',
    sombra:    'Retener lo que ya murió. El cadáver organizativo intoxica la nueva forma.',
    sombraEn:  'Holding onto what has already died. The organizational corpse poisons the new form.',
  },
  'ACOPLE DE ESCALAS': {
    lectura:   'Lo micro y lo macro se están explicando mutuamente — pero solo si los lees juntos. Ninguna escala alcanza sola.',
    lecturaEn: 'The micro and the macro are explaining each other — but only if you read them together. No single scale suffices alone.',
    sombra:    'Pensar que una sola escala es la real. Reducir y totalizar son la misma trampa.',
    sombraEn:  'Thinking that a single scale is the real one. Reductionism and totalization are the same trap.',
  },
  'EL RUNAWAY': {
    lectura:   'Algo se está amplificando a sí mismo sin freno. Antes de seguir alimentándolo, pregúntate qué sustrato está consumiendo para crecer.',
    lecturaEn: 'Something is amplifying itself without brake. Before feeding it further, ask what substrate it is consuming to grow.',
    sombra:    'Tomar la aceleración por progreso. El bucle positivo sin freno termina por agotar su propio combustible.',
    sombraEn:  'Mistaking acceleration for progress. The positive loop without brake ends by exhausting its own fuel.',
  },
  'EL COLAPSO': {
    lectura:   'La estructura ya no puede pagar el coste de sí misma. Lo que cae no fracasa: muestra que el cimiento se había olvidado.',
    lecturaEn: 'The structure can no longer pay the cost of itself. What falls does not fail: it shows the foundation had been forgotten.',
    sombra:    'Esperar el colapso como castigo en vez de leerlo como información. La caída también enseña.',
    sombraEn:  'Awaiting collapse as punishment rather than reading it as information. The fall also teaches.',
  },
  'EL ATRACTOR EXTRAÑO': {
    lectura:   'Hay un orden que no se repite pero tampoco escapa. Te mueves dentro de una forma fractal — el patrón se revela solo de lejos.',
    lecturaEn: 'There is an order that does not repeat yet does not escape. You move within a fractal form — the pattern reveals itself only from afar.',
    sombra:    'Confundir la complejidad con el azar. No todo lo no-repetitivo es caótico.',
    sombraEn:  'Confusing complexity with chance. Not everything non-repetitive is chaotic.',
  },
  'LA NO-LINEALIDAD': {
    lectura:   'La relación entre lo que pones y lo que sale no es proporcional. Pequeñas entradas pueden producir grandes salidas — o ninguna.',
    lecturaEn: 'The relation between what you put in and what comes out is not proportional. Small inputs may produce large outputs — or none.',
    sombra:    'Esperar respuestas lineales en un sistema no lineal. La intuición miente cerca de los umbrales.',
    sombraEn:  'Expecting linear responses in a nonlinear system. Intuition lies near thresholds.',
  },
  'LA SINCRONIZACIÓN': {
    lectura:   'Sin director, lo que se acopla termina marcando el mismo ritmo. Aprovecha la coherencia que ya se está contagiando — o protege la fase si te conviene desfasarte.',
    lecturaEn: 'Without a conductor, what couples ends up beating the same rhythm. Use the coherence already spreading — or protect the phase if you need to stay out of sync.',
    sombra:    'Sincronizarse por inercia. No toda coherencia compartida es deseable.',
    sombraEn:  'Synchronizing by inertia. Not every shared coherence is desirable.',
  },
  'TRANSICIÓN DE FASE': {
    lectura:   'El sistema como todo está cambiando de régimen. Lo que eras antes del umbral deja de tener sentido al cruzarlo — y eso es lo que se pide.',
    lecturaEn: 'The system as a whole is changing regime. What you were before the threshold ceases to make sense once crossed — and that is what is asked.',
    sombra:    'Querer cruzar la fase manteniendo intacta la identidad anterior. La transición exige reorganización, no continuidad.',
    sombraEn:  'Trying to cross the phase while keeping the prior identity intact. The transition demands reorganization, not continuity.',
  },
  'CLAUSURA OPERACIONAL': {
    lectura:   'Lo que se sostiene a sí mismo gana el derecho a un mundo. Reconoce el bucle cerrado de procesos que te hace posible — y cuídalo.',
    lecturaEn: 'What sustains itself earns the right to a world. Recognize the closed loop of processes that makes you possible — and care for it.',
    sombra:    'Confundir clausura con aislamiento. El sistema cerrado en operación está abierto en flujo.',
    sombraEn:  'Confusing closure with isolation. The system closed in operation is open in flow.',
  },

  // ─── PALO CAOS ──────────────────────────────────────────────────────────
  'PERTURBACIÓN': {
    lectura:   'Algo entró desde afuera y desordenó lo dado. El cambio no nace dentro: aprovecha la grieta que se acaba de abrir.',
    lecturaEn: 'Something entered from outside and disordered the given. Change is not born inside: use the crack that just opened.',
    sombra:    'Tratar la perturbación como interrupción. Es lo que vuelve posible empezar a pensar.',
    sombraEn:  'Treating perturbation as interruption. It is what makes thinking possible.',
  },
  'FLUCTUACIÓN': {
    lectura:   'Una pequeña desviación local podría crecer y reorganizar el todo. Lo que aún no se nota ya está decidiendo.',
    lecturaEn: 'A small local deviation could grow and reorganize the whole. What is not yet noticed is already deciding.',
    sombra:    'Suprimir la fluctuación pensando que es ruido. Toda nueva forma nace de una desviación que duró.',
    sombraEn:  'Suppressing the fluctuation thinking it is noise. Every new form is born of a deviation that lasted.',
  },
  'RUIDO': {
    lectura:   'El canal está saturado. La pregunta no es callarlo sino distinguir señal de fondo — el ruido obliga a escuchar de otra manera.',
    lecturaEn: 'The channel is saturated. The question is not to silence it but to distinguish signal from ground — noise forces listening otherwise.',
    sombra:    'Confundir saturación con riqueza. El ruido sin discernimiento solo ensordece.',
    sombraEn:  'Confusing saturation with richness. Noise without discernment only deafens.',
  },
  'AZAR': {
    lectura:   'Algo genuinamente impredecible aporta variación irreducible. No todo se explica: parte del sistema vive de lo que no se planeó.',
    lecturaEn: 'Something genuinely unpredictable brings irreducible variation. Not everything explains itself: part of the system lives off what was not planned.',
    sombra:    'Convertir el azar en mensaje. Lo aleatorio no es signo, es materia prima.',
    sombraEn:  'Turning chance into message. The random is not sign, it is raw material.',
  },
  'DIVERGENCIA': {
    lectura:   'Dos comienzos casi iguales ya no llegarán al mismo lugar. Acepta el horizonte de predicción — más allá, las trayectorias se separan.',
    lecturaEn: 'Two nearly identical beginnings will no longer arrive at the same place. Accept the prediction horizon — beyond it, trajectories separate.',
    sombra:    'Insistir en predecir donde el sistema ya divergió. La planificación tiene alcance limitado.',
    sombraEn:  'Insisting on prediction where the system has already diverged. Planning has limited reach.',
  },
  'TURBULENCIA': {
    lectura:   'La energía se rompe en cascadas hacia escalas más finas. No vas a poder laminar este flujo: aprende a fluir distinto dentro de él.',
    lecturaEn: 'Energy breaks in cascades toward finer scales. You won’t be able to laminate this flow: learn to flow differently within it.',
    sombra:    'Tratar de calmar la turbulencia con orden frontal. Lo turbulento pide ser navegado, no domesticado.',
    sombraEn:  'Trying to calm turbulence with frontal order. The turbulent asks to be navigated, not tamed.',
  },
  'AVALANCHA': {
    lectura:   'La tensión acumulada pide liberarse de golpe. Una pequeña adición basta porque todas las anteriores ya pesan.',
    lecturaEn: 'Accumulated tension asks to release all at once. A small addition is enough because all the previous ones already weigh.',
    sombra:    'Esperar la avalancha como sorpresa. La regla era simple, solo te negaste a mirarla.',
    sombraEn:  'Awaiting the avalanche as surprise. The rule was simple, you only refused to look at it.',
  },
  'INCERTIDUMBRE': {
    lectura:   'Lo que enfrentas no es desconocido: es indecidible desde este marco. Algunas preguntas no esperan respuesta — piden otro lenguaje.',
    lecturaEn: 'What you face is not unknown: it is undecidable from this frame. Some questions do not await an answer — they ask for another language.',
    sombra:    'Forzar respuestas donde la indecidibilidad es estructural. Saber qué no se puede saber también es saber.',
    sombraEn:  'Forcing answers where undecidability is structural. Knowing what cannot be known is also knowing.',
  },
  'ENTROPÍA': {
    lectura:   'El orden no es lo natural: es lo costoso. Si quieres mantener forma, calcula la energía que vas a tener que gastar para hacerlo.',
    lecturaEn: 'Order is not the natural: it is the costly. If you want to maintain form, calculate the energy you will need to spend to do it.',
    sombra:    'Olvidar el coste termodinámico de la organización. Todo orden importado paga en desorden exportado.',
    sombraEn:  'Forgetting the thermodynamic cost of organization. Every imported order pays in exported disorder.',
  },
  'CISNE NEGRO': {
    lectura:   'El evento que cambia tu vida no estaba en tu lista. Lo extremo, raro, retrospectivamente narrable se acaba de instalar — y aún no lo ves.',
    lecturaEn: 'The event that changes your life was not on your list. The extreme, rare, retrospectively narratable has just installed itself — and you still don’t see it.',
    sombra:    'Construir narrativas que hacen previsible lo impredecible. La historia oficial es la trampa del cisne negro.',
    sombraEn:  'Building narratives that make the unpredictable predictable. The official story is the black swan’s trap.',
  },
  'EL EXPLORADOR': {
    lectura:   'Alguien (tú u otro) está caminando sin mapa. Es momento de explorar sin objetivo — aprender del territorio antes de cartografiarlo.',
    lecturaEn: 'Someone (you or another) is walking without a map. It is time to explore without a goal — learn the territory before mapping it.',
    sombra:    'Confundir explorar con dispersar. No todo paseo enseña, pero menos enseña el atajo apurado.',
    sombraEn:  'Confusing exploring with scattering. Not every walk teaches, but the hurried shortcut teaches less.',
  },
  'EL MUTANTE': {
    lectura:   'Una variación está entrando al sistema sin saber aún si es ventaja o error. Lo nuevo necesita protección antes que evaluación.',
    lecturaEn: 'A variation is entering the system not yet knowing if it is advantage or error. The new needs protection before evaluation.',
    sombra:    'Premiar la mutación por novedad. Equivocarse a tiempo es adaptarse; equivocarse siempre es derroche.',
    sombraEn:  'Rewarding mutation for novelty. Erring on time is adapting; erring always is waste.',
  },
  'LA CISNE NEGRA': {
    lectura:   'Una persona, evento o decisión irreversible está reorganizando el mapa. Lo que parecía detalle resultó ser el pivote.',
    lecturaEn: 'A person, event, or irreversible decision is reorganizing the map. What seemed a detail turned out to be the pivot.',
    sombra:    'Convertirse en cisne negro de los demás sin asumirlo. Quien pivota la historia ajena debería saberlo.',
    sombraEn:  'Becoming a black swan to others without assuming it. Whoever pivots another’s history should know it.',
  },
  'EL DEMONIO': {
    lectura:   'Aparece la tentación del control total — saberlo todo, predecirlo todo. Recuerda que es promesa imposible, y por eso mismo seductora.',
    lecturaEn: 'The temptation of total control appears — knowing everything, predicting everything. Remember it is an impossible promise, and for that very reason seductive.',
    sombra:    'Quien sueña con saberlo todo elige no entender nada. El determinismo es la forma elegante de la ceguera.',
    sombraEn:  'Whoever dreams of knowing all chooses to understand nothing. Determinism is the elegant form of blindness.',
  },

  // ─── PALO INTERACCIÓN ───────────────────────────────────────────────────
  'CONTACTO': {
    lectura:   'Algo cruzó una frontera y la frontera empezó a importar. Antes del contacto, todo era lo mismo — ahora algo se diferencia.',
    lecturaEn: 'Something crossed a boundary and the boundary began to matter. Before contact, everything was the same — now something differentiates.',
    sombra:    'Tratar todo encuentro como contacto. Lo verdadero deja huella en la frontera.',
    sombraEn:  'Treating every encounter as contact. The real leaves a trace at the boundary.',
  },
  'SEÑAL': {
    lectura:   'Un patrón pide ser oído, no solo dicho. Comunicar no es emitir: es que algo se mueva del otro lado.',
    lecturaEn: 'A pattern asks to be heard, not just said. To communicate is not to emit: it is for something to move on the other side.',
    sombra:    'Confundir hablar con comunicar. La señal sin receptor es ruido a la espera.',
    sombraEn:  'Confusing speaking with communicating. The signal without a receiver is noise waiting.',
  },
  'RETROALIMENTACIÓN': {
    lectura:   'La salida está volviendo como entrada. El sistema se está volviendo sensible a sí mismo — bucle por leer y por dosificar.',
    lecturaEn: 'Output is returning as input. The system is becoming sensitive to itself — a loop to read and to dose.',
    sombra:    'Vivir sin retroalimentación o ahogarse en ella. Hay tanto déficit como exceso de feedback.',
    sombraEn:  'Living without feedback or drowning in it. There is as much deficit as excess of feedback.',
  },
  'COOPERACIÓN': {
    lectura:   'Lo coordinado produce más que la suma aislada. La situación pide confianza calculada: dar primero porque el otro también lo hizo.',
    lecturaEn: 'The coordinated produces more than the isolated sum. The situation calls for calculated trust: give first because the other did too.',
    sombra:    'Confundir cooperación con sumisión. Cooperar requiere dos que conserven autonomía.',
    sombraEn:  'Confusing cooperation with submission. To cooperate requires two who keep their autonomy.',
  },
  'CONFLICTO': {
    lectura:   'Los intereses se cruzan y eso revela qué importa de verdad. Un conflicto bien planteado es información sobre las prioridades.',
    lecturaEn: 'Interests cross and that reveals what truly matters. A well-posed conflict is information about priorities.',
    sombra:    'Evitar el conflicto como cuidado. Lo que no se discute se decide a tus espaldas.',
    sombraEn:  'Avoiding conflict as care. What is not discussed is decided behind your back.',
  },
  'NEGOCIACIÓN': {
    lectura:   'Buscas un equilibrio donde ninguno gana del todo pero todos siguen jugando. Acordar es decidir qué se conserva del otro.',
    lecturaEn: 'You seek an equilibrium where no one fully wins but everyone keeps playing. To agree is to decide what is preserved of the other.',
    sombra:    'Negociar sin marco común. Sin terreno compartido, todo trato se vuelve cesión.',
    sombraEn:  'Negotiating without a shared frame. Without common ground, every deal becomes a concession.',
  },
  'CONTAGIO': {
    lectura:   'Un patrón — idea, gesto, virus — se transmite por proximidad y se vuelve estructura. Lo que tocas te toca también.',
    lecturaEn: 'A pattern — idea, gesture, virus — transmits by proximity and becomes structure. What you touch touches you too.',
    sombra:    'Contagiarse de lo que no elegiste. La proximidad sin discernimiento te convierte en transmisor pasivo.',
    sombraEn:  'Being infected by what you did not choose. Proximity without discernment turns you into a passive transmitter.',
  },
  'COMPETENCIA': {
    lectura:   'Una presión filtra lo que funciona mejor. La selección no diseña pero ordena — y termina haciéndoles parecerse a quienes compiten por lo mismo.',
    lecturaEn: 'A pressure filters what works better. Selection does not design but it orders — and ends up making alike those who compete for the same thing.',
    sombra:    'Competir por lo mismo te vuelve más parecido a tu rival. La rivalidad imita más que la cooperación.',
    sombraEn:  'Competing for the same thing makes you more like your rival. Rivalry imitates more than cooperation.',
  },
  'INTERCAMBIO': {
    lectura:   'Hay transferencia recíproca donde cada parte valora más lo del otro que lo propio. El valor vive de la asimetría de deseo.',
    lecturaEn: 'There is reciprocal transfer where each party values the other’s more than its own. Value lives off the asymmetry of desire.',
    sombra:    'Igualar el intercambio mata la transacción. Sin diferencia de valor no hay flujo.',
    sombraEn:  'Equalizing the exchange kills the transaction. Without value difference there is no flow.',
  },
  'RED': {
    lectura:   'La trama de relaciones tiene propiedades que ningún nodo posee. Lo importante no son los nodos sino los puentes que aceptaste.',
    lecturaEn: 'The web of relations has properties no node possesses. What matters is not the nodes but the bridges you accepted.',
    sombra:    'Confundir red con suma de contactos. La red es topología, no inventario.',
    sombraEn:  'Confusing network with the sum of contacts. The network is topology, not inventory.',
  },
  'EL MENSAJERO': {
    lectura:   'Alguien cruza fronteras llevando información sin pertenecer del todo a ninguna orilla. Quien traduce, cambia lo que traduce.',
    lecturaEn: 'Someone crosses borders carrying information, belonging fully to no shore. Who translates changes what they translate.',
    sombra:    'Tomar al mensajero por mensaje. El intermediario también escribe.',
    sombraEn:  'Taking the messenger for the message. The intermediary also writes.',
  },
  'EL CATALIZADOR': {
    lectura:   'Algo o alguien acelera lo que iba a pasar y sale intacto. Bajar la barrera basta cuando el deseo ya estaba.',
    lecturaEn: 'Something or someone accelerates what was going to happen and emerges intact. Lowering the barrier is enough when the desire was already there.',
    sombra:    'Buscar catalizador cuando lo que falta es deseo. No todo lento se acelera con un empujón.',
    sombraEn:  'Seeking a catalyst when what is missing is desire. Not every slowness speeds up with a push.',
  },
  'LA ESCUCHA': {
    lectura:   'Alguien se deja perturbar por el otro sin disolverse. Comprender no es estar de acuerdo: es haber sido modificado.',
    lecturaEn: 'Someone lets themselves be perturbed by the other without dissolving. To understand is not to agree: it is to have been modified.',
    sombra:    'Escuchar sin transformarse, o transformarse sin escuchar. Ambas son fallas del acoplamiento.',
    sombraEn:  'Listening without transformation, or transforming without listening. Both are failures of coupling.',
  },
  'EL VÍNCULO': {
    lectura:   'Una relación resiste el conflicto sin quebrarse — la confianza ya tiene historia de reparaciones. Lo que persiste no es el afecto sino su reparación.',
    lecturaEn: 'A relation withstands conflict without breaking — trust already has a history of repairs. What persists is not affection but its repair.',
    sombra:    'Confundir vínculo con dependencia. El vínculo sano admite distancia.',
    sombraEn:  'Confusing bond with dependence. A healthy bond admits distance.',
  },

  // ─── PALO ORDEN ─────────────────────────────────────────────────────────
  'LA DISTINCIÓN': {
    lectura:   'Es momento de trazar la marca que separa "esto" de "lo demás". Pensar empieza siempre por cortar: el corte es tu primer acto.',
    lecturaEn: 'It is time to trace the mark that separates "this" from "the rest". Thinking always begins by cutting: the cut is your first act.',
    sombra:    'Distinguir donde lo importante era seguir indiferenciado. No todo merece nombre propio.',
    sombraEn:  'Distinguishing where what mattered was to stay undifferentiated. Not everything deserves a proper name.',
  },
  'REPETICIÓN': {
    lectura:   'Algo vuelve y confirma que se estabilizó. La segunda vez ya hay regla — aprovéchala para reconocerla o para romperla a tiempo.',
    lecturaEn: 'Something returns and confirms it stabilized. The second time, there is already a rule — use it to recognize it or to break it in time.',
    sombra:    'Repetir como ritual sin sentido. La repetición que dejó de transformar es solo desgaste.',
    sombraEn:  'Repeating as senseless ritual. Repetition that ceased to transform is only wear.',
  },
  'SIMETRÍA': {
    lectura:   'Lo que no cambia al cambiar es lo que vale la pena medir. Busca las invariancias antes que los detalles que varían.',
    lecturaEn: 'What does not change when things change is what is worth measuring. Seek the invariances before the varying details.',
    sombra:    'Imponer simetría donde lo asimétrico era el punto. No toda diferencia debe equilibrarse.',
    sombraEn:  'Imposing symmetry where the asymmetrical was the point. Not every difference must be balanced.',
  },
  'PATRÓN': {
    lectura:   'La relación se repite en contextos distintos y por eso ya es legible. El patrón es lo que la mirada aprendió a esperar.',
    lecturaEn: 'The relation repeats in different contexts and so is already legible. A pattern is what the gaze has learned to expect.',
    sombra:    'Ver patrones donde solo hay coincidencia. La pareidolia cognitiva crea reglas falsas.',
    sombraEn:  'Seeing patterns where there is only coincidence. Cognitive pareidolia creates false rules.',
  },
  'GRADIENTE': {
    lectura:   'Una diferencia orienta el flujo. Toda dirección aquí es deuda con una diferencia — lee qué desnivel manda.',
    lecturaEn: 'A difference orients the flow. Every direction here is a debt to a difference — read which slope commands.',
    sombra:    'Eliminar el gradiente buscando equilibrio. Sin diferencia no hay dirección, solo quietud entrópica.',
    sombraEn:  'Eliminating the gradient in search of equilibrium. Without difference there is no direction, only entropic stillness.',
  },
  'PROTOCOLO': {
    lectura:   'Dos partes acuerdan respetar una regla para entenderse aunque no se conozcan. Compartir reglas es prestar futuro.',
    lecturaEn: 'Two parties agree to respect a rule in order to understand each other even without knowing each other. Sharing rules is lending future.',
    sombra:    'Confundir protocolo con burocracia. El protocolo vivo se discute; el muerto, se aplica.',
    sombraEn:  'Confusing protocol with bureaucracy. The living protocol is discussed; the dead one, applied.',
  },
  'ESTRUCTURA': {
    lectura:   'Un conjunto de relaciones sobrevive al cambio de sus elementos. No te define lo que eres sino con qué te relacionas.',
    lecturaEn: 'A set of relations survives the change of its elements. What defines you is not what you are but what you relate to.',
    sombra:    'Reificar la estructura como destino. La estructura es relación, no esencia.',
    sombraEn:  'Reifying the structure as destiny. Structure is relation, not essence.',
  },
  'INVARIANTE': {
    lectura:   'Algo permanece igual bajo todas las operaciones admitidas — el esqueleto del cambio. Mira lo que dura para entender lo que se mueve.',
    lecturaEn: 'Something remains the same under all admitted operations — the skeleton of change. Watch what lasts to understand what moves.',
    sombra:    'Tomar la invariancia por permanencia absoluta. Todo invariante lo es solo dentro de su grupo de operaciones.',
    sombraEn:  'Taking invariance for absolute permanence. Every invariant is only such within its group of operations.',
  },
  'NORMA': {
    lectura:   'Un patrón frecuente se volvió obligación. Cuando el "es" se vuelve "debe", aparece la ley — pregúntate si quieres que aparezca.',
    lecturaEn: 'A frequent pattern became obligation. When the "is" becomes "ought", law appears — ask yourself if you want it to appear.',
    sombra:    'Confundir la norma con lo natural. La norma es histórica, aunque pretenda ser eterna.',
    sombraEn:  'Confusing the norm with the natural. The norm is historical, even if it pretends to be eternal.',
  },
  'CRISTAL': {
    lectura:   'Una sola regla aplicada hasta el infinito produce máximo orden con mínima información. Pero toda perfección formal es promesa de no cambiar.',
    lecturaEn: 'A single rule applied to infinity produces maximum order with minimum information. But every formal perfection is a promise not to change.',
    sombra:    'Buscar la pureza cristalina como ideal. Lo demasiado ordenado dejó de poder aprender.',
    sombraEn:  'Seeking crystalline purity as ideal. The too-ordered has ceased to be able to learn.',
  },
  'EL CLASIFICADOR': {
    lectura:   'Alguien aprende a separar lo confuso en categorías útiles. Nombrar bien es ya casi entender.',
    lecturaEn: 'Someone learns to separate confusion into useful categories. To name well is already almost to understand.',
    sombra:    'Clasificar para no pensar más. La taxonomía perfecta es la trampa que congela el objeto.',
    sombraEn:  'Classifying in order to think no more. The perfect taxonomy is the trap that freezes the object.',
  },
  'EL CARTÓGRAFO': {
    lectura:   'Alguien traza el mapa que vuelve transitable lo desconocido. Un buen mapa miente útilmente.',
    lecturaEn: 'Someone draws the map that makes the unknown passable. A good map lies usefully.',
    sombra:    'Confundir mapa y territorio. El cartógrafo enamorado de su mapa deja de actualizarlo.',
    sombraEn:  'Confusing map and territory. The cartographer in love with their map stops updating it.',
  },
  'LA REGLA': {
    lectura:   'Algo produce los mismos efectos cada vez. Cuando una regla se obedece sin pensar, ya gobierna — para bien o para mal.',
    lecturaEn: 'Something produces the same effects each time. When a rule is obeyed without thought, it already governs — for good or ill.',
    sombra:    'Convertir la regla en ídolo. La regla que no admite excepción dejó de servir a su propósito.',
    sombraEn:  'Turning the rule into an idol. The rule that admits no exception ceased to serve its purpose.',
  },
  'EL ALGORITMO': {
    lectura:   'Una secuencia finita resuelve toda una clase de problemas. Lo que se puede automatizar deja de necesitarte.',
    lecturaEn: 'A finite sequence solves a whole class of problems. What can be automated ceases to need you.',
    sombra:    'Algoritmizar lo que pedía juicio. No todo procedimiento es decisión justa.',
    sombraEn:  'Algorithmizing what called for judgment. Not every procedure is a just decision.',
  },

  // ─── PALO ORGANIZACIÓN ──────────────────────────────────────────────────
  'LA MEMBRANA': {
    lectura:   'Una distinción YO/NO-YO se sostiene en el tiempo y permite que un sistema empiece. Sin afuera no hay adentro: sin frontera no hay vida.',
    lecturaEn: 'A SELF/NOT-SELF distinction holds across time and lets a system begin. Without outside there is no inside: without boundary there is no life.',
    sombra:    'Endurecer la membrana hasta volverla muro. La frontera viva es permeable; la cerrada, mata por dentro.',
    sombraEn:  'Hardening the membrane until it becomes a wall. The living boundary is permeable; the closed one kills from within.',
  },
  'DIFERENCIACIÓN': {
    lectura:   'Partes iguales se vuelven distintas para servir mejor al todo. Ser parte exige renunciar a ser todo.',
    lecturaEn: 'Equal parts become distinct to better serve the whole. To be a part requires renouncing being the whole.',
    sombra:    'Diferenciarse hasta romper con el todo. La diferenciación sin retorno es secesión.',
    sombraEn:  'Differentiating to the point of breaking with the whole. Differentiation without return is secession.',
  },
  'ESPECIALIZACIÓN': {
    lectura:   'Acumulas capacidad sobre un rango cada vez más estrecho. Eficiencia comprada con flexibilidad — sabe cuánto vas a depender.',
    lecturaEn: 'You accumulate capacity over an ever narrower range. Efficiency bought with flexibility — know how much you will depend.',
    sombra:    'Especializarse hasta no poder cambiar de ambiente. El experto extremo es frágil ante el cambio de contexto.',
    sombraEn:  'Specializing to the point of being unable to change environment. The extreme expert is fragile to context change.',
  },
  'COORDINACIÓN': {
    lectura:   'Hay capacidad de actuar como uno sin perder la pluralidad. Lo que se coordina no se manda — más caro, más vivo.',
    lecturaEn: 'There is capacity to act as one without losing plurality. What is coordinated is not commanded — costlier, more alive.',
    sombra:    'Confundir coordinación con jerarquía. Coordinarse no es obedecer.',
    sombraEn:  'Confusing coordination with hierarchy. To coordinate is not to obey.',
  },
  'METABOLISMO': {
    lectura:   'Lo que entra se transforma en lo que sostiene. La permanencia es ritmo — vivir es saber gastar exactamente lo que entra.',
    lecturaEn: 'What enters transforms into what sustains. Permanence is rhythm — to live is to know how to spend exactly what enters.',
    sombra:    'Metabolizar todo lo que llega sin distinguir nutriente de tóxico. No todo lo digerible alimenta.',
    sombraEn:  'Metabolizing all that arrives without distinguishing nutrient from toxin. Not everything digestible nourishes.',
  },
  'ADAPTACIÓN': {
    lectura:   'Un cambio interno mantiene viable la relación con un entorno cambiante. Cambiar para seguir siendo es la forma adulta de durar.',
    lecturaEn: 'An internal change keeps viable the relation with a changing environment. Changing in order to remain is the adult form of lasting.',
    sombra:    'Adaptarse hasta perder lo que valía la pena conservar. Algunas adaptaciones son rendiciones disfrazadas.',
    sombraEn:  'Adapting to the point of losing what was worth keeping. Some adaptations are surrenders in disguise.',
  },
  'MEMORIA': {
    lectura:   'El sistema actúa hoy modificado por lo que le pasó antes. Lo que no se olvida nos hace posibles.',
    lecturaEn: 'The system acts today modified by what happened before. What is not forgotten makes us possible.',
    sombra:    'Recordar más de lo que conviene. La memoria sin olvido bloquea el aprendizaje.',
    sombraEn:  'Remembering more than is fitting. Memory without forgetting blocks learning.',
  },
  'APRENDIZAJE': {
    lectura:   'Estás modificando tu propia regla para responder a clases nuevas de problemas. Aprender es cambiar lo que cambia.',
    lecturaEn: 'You are modifying your own rule to respond to new classes of problems. To learn is to change what changes.',
    sombra:    'Aprender sin desaprender. El aprendizaje que no abandona lo viejo se vuelve archivo, no capacidad.',
    sombraEn:  'Learning without unlearning. Learning that does not abandon the old becomes archive, not capacity.',
  },
  'AUTOPOIESIS': {
    lectura:   'Una red de procesos produce los componentes que producen la red. Lo vivo no se vive: se hace.',
    lecturaEn: 'A network of processes produces the components that produce the network. The living is not lived: it is made.',
    sombra:    'Querer producirse sin entorno. Toda autopoiesis necesita afuera para tener adentro.',
    sombraEn:  'Wanting to produce oneself without environment. All autopoiesis needs an outside to have an inside.',
  },
  'ECOSISTEMA': {
    lectura:   'Sistemas acoplados se sostienen unos a otros sin coordinador central. Nadie sobrevive solo aunque crea que sí.',
    lecturaEn: 'Coupled systems sustain each other without central coordinator. No one survives alone, even if they believe so.',
    sombra:    'Pensar el ecosistema como armonía. Hay competencia, predación y simbiosis — todo a la vez.',
    sombraEn:  'Thinking the ecosystem as harmony. There is competition, predation, and symbiosis — all at once.',
  },
  'EL APRENDIZ': {
    lectura:   'Alguien todavía depende del afuera para regularse. Lo primero que se aprende es a depender bien.',
    lecturaEn: 'Someone still depends on the outside to regulate. The first thing one learns is how to depend well.',
    sombra:    'Quedarse en aprendiz sin asumir el sistema propio. La dependencia infantilizada se prolonga indefinidamente.',
    sombraEn:  'Staying an apprentice without assuming one’s own system. Infantilized dependence prolongs itself indefinitely.',
  },
  'EL ORGANIZADOR': {
    lectura:   'Su sola presencia configura el patrón en torno suyo. Estar ahí basta cuando lo que importa es la posición.',
    lecturaEn: 'Its mere presence configures the pattern around it. Being there is enough when what matters is position.',
    sombra:    'Confundir organizar con controlar. El organizador no manda: orienta.',
    sombraEn:  'Confusing organizing with controlling. The organizer does not command: it orients.',
  },
  'LA HOMEÓSTATA': {
    lectura:   'Alguien mantiene viables las variables críticas en un entorno cambiante. Cuidar es ajustar invisiblemente para que nada caiga.',
    lecturaEn: 'Someone keeps critical variables viable in a changing environment. To care is to adjust invisibly so nothing falls.',
    sombra:    'Cuidar tanto que nadie aprende a fallar. Homeostasis externa sostenida vuelve dependiente al adentro.',
    sombraEn:  'Caring so much that no one learns to fail. Sustained external homeostasis makes the inside dependent.',
  },
  'EL SISTEMA': {
    lectura:   'Una totalidad se sostiene y se reproduce. Lo que se sostiene a sí mismo gana el derecho a un mundo.',
    lecturaEn: 'A totality sustains and reproduces itself. What sustains itself earns the right to a world.',
    sombra:    'Cerrarse hasta dejar de necesitar el exterior. El sistema sin perturbación se calcifica.',
    sombraEn:  'Closing in until ceasing to need the outside. The system without perturbation calcifies.',
  },
};

function getMeaning(card) {
  return READING_MEANINGS[card.name] || {
    lectura: card.principle,    lecturaEn: card.principleEn || card.principle,
    sombra: '—', sombraEn: '—',
  };
}

Object.assign(window, { READING_MEANINGS, getMeaning });
